aiscript
aiscript copied to clipboard
🔋 A lightweight scripting language runing on JavaScript
CHANGELOGの一番下に更新事項を毎回書いていくとマージの仕様上?毎回conflictすることになる ## 対策案 changelogsフォルダを用意し、そこに1コミットごとに1ファイルでlogを書く そしてリリースの際にまとめてCHANGELOGにくっつける
[参考](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array#%E3%82%A4%E3%83%B3%E3%82%B9%E3%82%BF%E3%83%B3%E3%82%B9%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89) ### 参照系 - [x] `@(v: arr).at(index: num): value` 添え字アクセス。indexが負の時は末尾からの位置指定。範囲外はnullを返す。 cf. #514 #661 ### 走査系 - [x] `@(v: arr).every(func: @(item: value, index: num){ bool }): bool` `@(v: arr).some(func: @(item: value,...
## 現状 compの結果が同じである要素は元の逆順になってしまう。 ## 変更方法 ここを`compValue.value
### 端の検索 - [x] `str.starts_with(prefix: str, start: num = 0): bool` prefixで始まっているか `str.ends_with(suffix: str): bool` suffixで終わっているか #652 ### 端の削除 - [ ] `str.remove_prefix(prefix: str): str` 先頭が`prefix`なら削除 - [ ] `str.remove_suffix(suffix:...
```aiscript @func(arg) { return exists arg } func() ``` 引数 `arg` を省略した場合でも、`exists arg` はtrueを返します。 (引数の省略は正式な構文ではないが……) 引数を省略した場合、そのまま扱うとエラーになってしまうので、existsで判定できると助かります。 - 関連PR: #475
AiScriptのJavaScript APIについての話です。 現状では、`Interpreter`にエラーコールバック( #348 )を設定しているか否かで「一部が止まれば全体が止まる」か「一部が止まっても他の部分は動き続ける」かが変わります。 これを、エラーコールバックの有無とは独立に別のオプションで設定できるようにしたいと考えています。 ## Why misskeyの機能作成中にニーズが生じたため。 https://github.com/misskey-dev/misskey/pull/13564
#585 では`to_hex`で文字列化する場合の処理について話題にしましたが、`to_str`についても定めておきたいです
JavaScriptの演算をそのまま使っているためすべて浮動小数点演算になっている。 実現できれば巨大な整数も扱えるようになりそう?
できたらいいなという程度 小数演算で発生する誤差が軽減される