[ 新規に投稿する ]

サブルーチンの呼び出しネスト回数の緩和についてNo.01257
ockeghem さん 17/06/23 23:06 [ コメントを投稿する ]
秀丸を随分長く使っていますが、秀丸マクロについては最近使い始めたものです。
秀丸マクロそのものを使うのではなく、TypeScript風の言語から秀丸マクロのスクリプトを生成するプログラムを作っています。このプログラム(コンパイラ)自身もTypeScript風の言語(TypeScriptのサブセット)として書かれていまして、最近自分自身をコンパイルできるようになりました。
しかし、「callされたサブルーチンからさらにサブルーチンを呼ぶこともできます。最高20回程度重複可能です。」という制限にひっかかってしまい、関数呼び出しの三重にネストした程度の式でエラーになってしまいます。

他ではあまりニーズはないことと思うので恐縮ではあるのですが、この 20回という制限を緩和してはいただけないでしょうか?

コンパイラは、自分自身をコンパイルして動かせるようになった段階でオープンソースとして公開したいと希望しております。

以上、よろしくお願いいたします。
[ ]
RE:01257 サブルーチンの呼び出しネスト回数の緩和についてNo.01258
秀丸担当 さん 17/06/26 09:30 [ コメントを投稿する ]
 
サブルーチンのネストの上限は確かに20回の制限があります。
無制限にするとしたらプロセスをまたぐなどの都合があって面倒になるのですが、
単純に上限の数を増やすだけであれば簡単な修正でできると思います。

別言語からマクロを生成するというのはすごいですね。
三重ネストで20回消費するようなマクロが生成されるということだとしたら、
約7倍(140回)以上あればいいでしょうか。
それでよければ140回か、きりのいいところで200回くらいにしてみようかと思い
ます。
[ ]
RE:01258 サブルーチンの呼び出しネスト回数の緩和についてNo.01259
ockeghem さん 17/06/26 10:03 [ コメントを投稿する ]
>
≪全文引用されていたのでコミュニテックス会議室システムが引用部分を省略処理しました。≫
>ます。

ありがとうございます。まずは200回あればなんとかなるとは思います。ネストの回数制限は多ければ多いほどありがたいですが、無理のない範囲で対応お願いできればと思います。ぜひよろしくお願い致します。
[ ]
RE:01259 サブルーチンの呼び出しネスト回数の緩和についてNo.01264
ockeghem さん 17/07/11 21:38 [ コメントを投稿する ]
>ありがとうございます。まずは200回あればなんとかなるとは思います。

すみません。β版でさっそく実装してくださっていたことを見落としていました。
今日気づいて試したのですが、サブルーチンのネストは20回のままのように見えます。下記のサンプルで試しました。


func:
  insert str(##1) + "\n";
  call func ##1 + 1;
  return #n;

call func 0;

上記ですと、20まで表示して、「callのネストが深すぎます」とエラーになります。
ご確認のほど、よろしくお願いします。
[ ]
RE:01264 サブルーチンの呼び出しネスト回数の緩和についてNo.01265
秀丸担当 さん 17/07/12 16:50 [ コメントを投稿する ]
 
ご確認ありがとうございます。
その通りでした。
手元では修正していたものが、公開されているバージョンには反映されていませ
んでした。
次のβ版では修正させていただきます。
[ ]
RE:01265 サブルーチンの呼び出しネスト回数の緩和についてNo.01266
ockeghem さん 17/07/12 22:23 [ コメントを投稿する ]
>手元では修正していたものが、公開されているバージョンには反映されていませんでした。
>次のβ版では修正させていただきます。

確認ありがとうございます。よろしくお願いいたします。
[ ]
RE:01266 サブルーチンの呼び出しネスト回数の緩和についてNo.01267
秀丸担当 さん 17/07/20 17:00 [ コメントを投稿する ]
 
サブルーチンのネストのネストの修正について、タイミング的に正式となってし
まいましたが、V8.73の正式版で修正しています。
[ ]
RE:01267 サブルーチンの呼び出しネスト回数の緩和についてNo.01268
ockeghem さん 17/08/12 19:33 [ コメントを投稿する ]
>
>サブルーチンのネストのネストの修正について、タイミング的に正式となってし
>まいましたが、V8.73の正式版で修正しています。

今回の件、本当にありがとうございました。おかけで、「秀スクリプト」の感性にこぎつけました。ブログ記事を書きましたので、よろしければ、ご笑覧ください。

http://blog.tokumaru.org/2017/08/hidescript.html
[ ]

[ 新規に投稿する ]