Lisp Scheme Part38at TECH
Lisp Scheme Part38 - 暇つぶし2ch651:デフォルトの名無しさん
14/05/18 16:17:18.84 mmOjks5D
へ?
((f 継続 出力地のポインタ) 入力)

652:デフォルトの名無しさん
14/05/19 00:47:23.24 ifX/zEHk
>>651
その方式って何処かで推奨されてるの?

653:デフォルトの名無しさん
14/05/19 06:14:16.82 SdRbB6EK
ワシはアナルにプチトマト入れたり出したりしとる
ごっつう気持ちええで~

654:デフォルトの名無しさん
14/05/19 23:46:00.75 UTlgg7GA
そうか

655:デフォルトの名無しさん
14/05/20 14:44:18.95 DHV6nY+2
そもそも継続って何ですか?

656:デフォルトの名無しさん
14/05/20 16:03:54.48 UDjxMmTz
プログラムを実行していると、関数呼び出してから元に戻ったり、
ループの先頭に戻ったりするでしょ。
その戻るために必要な「状態」のこと。

657:デフォルトの名無しさん
14/05/20 23:27:40.42 r2BdXUha
>>655
機械が次に実行する事に必要な情報

658:デフォルトの名無しさん
14/05/21 00:02:07.52 0uwvVSSn
継続はsetjmp継続呼び出しはlongjmp
ただしsetjmpした環境を持ちまわればどこでもlongjmpできる点のみが違う
要するにコストの高いsetjmp
大抵の実装ではcall/ccを呼んだ時点でその継続はヒープに移動するところがsetjmpと違う
以後全てはヒープに移動した継続を自動的に参照する

659:デフォルトの名無しさん
14/05/21 17:24:23.10 tufOZY/+
setjmpはcall/ccだよ。継続保存。

660:デフォルトの名無しさん
14/05/21 17:25:07.31 tufOZY/+
jmpbufが継続ね。不完全ながらも。

661: ◆QZaw55cn4c
14/05/21 18:14:44.40 7/zI56kW
>>658
thx!!

662:デフォルトの名無しさん
14/05/22 12:47:33.86 X7SJFDRl
しかしCは凄いな。
当時よくこのレベルでの抽象化を思いついたもんだ。

663:デフォルトの名無しさん
14/05/22 17:44:17.78 MMgx68uU
非局所脱出は別に珍しいものじゃなかったでしょ

まあライブラリでやっちゃったのは凄いとは思うけど

664:デフォルトの名無しさん
14/05/22 21:16:16.23 jXtoQOHc
C自身でポータブルに書けるなら凄いかも知れんが。

665:デフォルトの名無しさん
14/05/22 21:43:25.64 Fu9GuZb0
シグナルハンドラーからlongjmpとか結構凄い。

666:はちみつ餃子 ◆8X2XSCHEME
14/05/22 23:56:16.26 N8DUxA9y
C++ だと Boost.Context もあるよ

667:デフォルトの名無しさん
14/05/28 12:55:28.88 X/2WS0UX
だれかcで処理系作ったて人コード見せてほしいっす

668:デフォルトの名無しさん
14/05/29 00:11:50.72 NFEFAaY+
見せたら俺Lispじゃなくなってしまう

大学の演習で簡易版を作らされたから、ネットにいっぱい転がってるはずなんだけどな

669:デフォルトの名無しさん
14/05/29 03:22:56.46 knodhQSh
>>667
Schemeだとcallccで面倒だけど、普通にLisp1系なら1週間有れば趣味でも実装できるっしょ?

670:デフォルトの名無しさん
14/05/29 04:00:08.17 IYXfC5c1
教科書も参考事例もなしに完全に自力だけで再発明しようとするとけっこう苦労すると思うぞ

671:デフォルトの名無しさん
14/05/29 04:02:31.10 IYXfC5c1
たとえばマーク&スイープ法を自力で思いつける人ってどれだけいるだろうか?


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch