aiscript icon indicating copy to clipboard operation
aiscript copied to clipboard

🔋 A lightweight scripting language runing on JavaScript

Results 199 aiscript issues
Sort by recently updated
recently updated
newest added

以下の部分では普通の `Error` が使われているため、Playgroundでエラーが表示されない https://github.com/aiscript-dev/aiscript/blob/2f103d2d639704b7012763503272ec9d2144f54b/src/parser/plugins/validate-type.ts#L11 ## 例 ``` @(): T {}

bug

#892 でパーサーが名前空間内の属性付き宣言をパースできるようになりましたが、インタープリターの `collectNsMember` では属性が無視されています。 `__eval` 内の宣言についての部分を見ると、右辺の式を評価した後に、宣言に付いている属性を評価して、右辺の値の `attr` パラメータを属性の値に書き換えていることがわかります。 https://github.com/aiscript-dev/aiscript/blob/2f103d2d639704b7012763503272ec9d2144f54b/src/interpreter/index.ts#L651-L662 一方で、 `collectNsMember` の対応する部分を見ると、式を評価した後、そのままスコープに追加していることがわかります。 https://github.com/aiscript-dev/aiscript/blob/2f103d2d639704b7012763503272ec9d2144f54b/src/interpreter/index.ts#L251-L271

bug

`parseExpr` の `isStatic` が `true` のとき、if式などは許容されませんが、ラベルがついていると許容されます。 https://github.com/aiscript-dev/aiscript/blob/2f103d2d639704b7012763503272ec9d2144f54b/src/parser/syntaxes/expressions.ts#L290-L292 ## 例 ``` ### meta_name #label: if true {

bug

Bumps [esbuild](https://github.com/evanw/esbuild) to 0.25.8 and updates ancestor dependencies [esbuild](https://github.com/evanw/esbuild), [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) and [@vitejs/plugin-vue](https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue). These dependencies need to be updated together. Updates `esbuild` from 0.21.5 to 0.25.8 Release notes Sourced from esbuild's...

dependencies
javascript

Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.10 to 5.4.21. Release notes Sourced from vite's releases. v5.4.21 Please refer to CHANGELOG.md for details. v5.4.20 Please refer to CHANGELOG.md for details. v5.4.19 Please refer to...

dependencies
javascript

以下のような、配列のスライス記法を提案します。 ``` let a = [0, 1, 2, 3]

# What - 数値リテラルの整数部分または小数部分の0を省略できるようになります。 - 整数でない数値リテラルは、整数部分が0の場合、0を省略して記述できるようになります。 例: `.5` - 整数の数値リテラルは、小数部分の0を省略して記述できるようになります。 例: `5.` # Why #950 # Additional info (optional)

`src/interpreter/index.ts`の`Interpreter`クラスが巨大すぎて開発がしづらい。 `Interpreter`にノードの処理内容を全部持たせるのではなく、ノードの種類ごとに処理内容をファイルに分割したほうがいいかもしれない。

interpreter