Gauche > Archives > 2021/02/08

2021/02/08 15:44:56 UTCkaki
#
aproposを改修しようと思ってるんですが、aproposに期待される挙動って、検索するのは可視な束縛だけですよね?っていうのと、横に表示されるモジュール名のところ、単に元のモジュール名を表示するのとimportの仕方(prefixとか)を表示するのと考えられると思うんですが、どっちがいいでしょう?あと束縛を検索する機能はline editで補完を実装するときにも使えますし、切り出してexportしたいと思っています。
#
import側でrenameしたときの module-exports おかしくないですか?
#
gosh> (use scheme.ilist :rename ((icar foo) (icdr bar)))
gosh> (module-exports (car (module-imports (current-module))))
(bar icar foo icdr)
2021/02/08 16:03:48 UTCkaki
#
モジュールイントロスペクションに、モジュールの外から可視な束縛の一覧を得るのが欲しいですね
2021/02/08 17:29:16 UTCkaki
#
思い出したタイミングでついでに書いちゃいますが、-fread-editでバックスペースやカーソル移動すると表示がめっちゃチラチラします。Terminal.appです。
2021/02/08 18:02:02 UTCshiro
#
チラチラ: 最小限の描画プリミティブで描いてるので、毎回全部描き直してるのが原因ですね。cursesみたいに差分だけ描くようにすればいいはずで、そのためにtext.console.framebufferというのがあるんですが、まだ中途半端なところで止まってます。
2021/02/08 20:48:59 UTCkaki
#
gosh> (autoload scheme.ilist icar)
#<undef>
gosh> icar
"load.c", line 1132 (ScmObj Scm_ResolveAutoload(ScmAutoload *, int)): Assertion failed: f != NULL
#
ワーオ
2021/02/08 21:01:01 UTCkaki
#
autoloadってimportはせずにそこに直接束縛を生やすんですね。(useするのかと勘違いしていた)
#
$ gosh -q
gosh> (autoload scheme.base features)
#<undef>
gosh> features
#<closure (features)>
gosh> (module-imports (current-module)) 
()
gosh> (use gauche.interactive)
gosh> (apropos 'features)
features                       (user)