NYAGOS - The Nihongo Yet Another GOing Shell .

English / Japanese

Since 4.1 .

NYAGOS 4.0 では、パイプライン等で実行される複数の goroutine から 同一の Lua インスタンスを呼び出すことがあり、Lua API 呼び出し時に panic を起こす問題がありました。

NYAGOS 4.1 では、それを回避するために、コマンド発行の度に別の Lua インスタンスを新規に作成して、Lua インスタンスの競合を回避し、 安定をはかりました。

ただし、別のインスタンスでは、変数・テーブル領域が完全に別になり、 このままでは nyagos.alias[] 等に代入された関数自身すら、新しい Lua インスタンス(goroutine)から見えないという問題があります。

そのため、グローバルテーブル nyagos[] 以下と share[] 以下に代入された 変数・関数については、Go言語側で保持し、新インスタンスの同テーブルより 参照できるようにしました。

とはいえ、これによって、従来稼動していた Lua スクリプトの互換性が 損われる結果となりました。NYAGOS 4.0 で動作していたスクリプトが 4.1 にて同様に動くには、下記の修正が必要です。

local t = share.foo
t[1] = 'x'
share.foo = t

NYAGOS 4.1.9_3 .

(4017.05.13)

NYAGOS 4.1.9_2 .

(2017.04.03)

NYAGOS 4.1.9_1 .

(2017.03.28)

NYAGOS 4.1.9_0 .

(2017.03.27)

NYAGOS 4.1.8_0 .

(2017.02.15)

NYAGOS 4.1.7_0 .

(2016.11.29)

NYAGOS 4.1.6_1 .

(2016.09.07)

NYAGOS 4.1.6_0 .

(2016.09.07)

NYAGOS 4.1.5_1 .

(2016.07.31)

NYAGOS 4.1.5_0 .

(2016.07.31)

NYAGOS 4.1.4_1 .

(2016.06.12)

NYAGOS 4.1.4_0 .

(2016.05.29)

NYAGOS 4.1.3_1 .

(2016.05.08)

NYAGOS 4.1.3_0 .

(2016.05.05)

(2016.05.17 追記) .

NYAGOS 4.1.2_0 .

(2016.03.29)

NYAGOS 4.1.1_2 .

(2016.02.17)

NYAGOS 4.1.1_1 .

(2016.02.16)

NYAGOS 4.1.1_0 .

(2016.01.15)

NYAGOS 4.1.0_0 .

(2016.01.03)

NYAGOS 4.1-beta .

(2015.12.13)