FINEARCHS
FINEARCHS
仕様の形としては直感的でないですが、パフォーマンス的には確かにそうですね…
それだと機能が減るだけで変更のメリットが何もないような気がしますが…
> 直感的でない部分が排除されることで、API全体の分かりやすさは向上すると思います。 うーんまあ確かにそうかもです > AiScriptではコードポイントの配列を文字列の内部表現にするのもアリな気がしました。 今の実装だと文字列処理では内部的にはJavaScriptの文字列をそのまま使っている訳ですが、それらを全部独自実装に置き換える感じですか?
毎回変換すると重くなりそうなので両方保持しておきたい気もします キャッシュみたいに必要次第で持っておくのもいいかも
> `@Arr:from_hex(hex: str): arr` 数値の境目は何で区切る感じですか?
to_hexだけプリミティブプロパティ化する感じですね。 正直`@Num:from_hex(hex: str): num`の名前空間が引数ではなく返り値の型になっている点が気になりますが、`Str`にすると更に違和感が大きくなる気がするので特例で`Num:`でもいいと思います。
> `@Hex:to_num(hex: str): num` これ一つのために名前空間を作るのか…という気はしますね
まあ`@Num:from_hex(hex: str): num`でよさそうですかね
リテラルは一般的に`null`や`12`、`'hoge'`のような"記法"(またはその記法で記したもの)のことを指すので、 リテラルで表記されたものでなくても(例えば`Math:PI.to_str()`など)使えるプリミティブプロパティ(仮)に対して"リテラルプロパティ"は不適当な名称な気がします
ただ、"プリミティブプロパティ"の方にも「一般的に配列はプリミティブ型ではない」という問題があります