Programming In Lua book 3rd edition page 38 から
演習 4.5:なぜ Lua には
goto
関数から飛び出せないという制限があるのか説明できますか? (ヒント: その機能をどのように実装しますか?)
なぜそうなのかについては、いくつかの推測があります。
- ある関数から別の関数にジャンプし、2 番目の関数が戻ってきた場合、PC はどこに行くのでしょうか?
- 持っているが、そのコード行の後に
a = f()
fを実行する場合、 の値は何ですか?goto
a
- プラットフォームの呼び出し規約が異なるため、標準の動作を定義することはできませんか?
著者はその問いにどう答えるのだろうか。多分私は彼に電子メールを送ります。
それまでの間、他の誰かが何かアイデアを持っていますか?