Radio and PodcastRadio and PodcastLive Radio & Podcasts
28. プログラミング言語のブートストラッピング問題、コードとの互換性を保ちつつ言語を変更していく話 (川合史朗) artwork
Technology

28. プログラミング言語のブートストラッピング問題、コードとの互換性を保ちつつ言語を変更していく話 (川合史朗)

Turing Complete FM by Rui Ueyama

Jul 24, 20181:15:09Technology

Gauche Schemeの作者の川合史朗さんと言語処理系についての話をしました。GaucheのCコードとの互換性を保ちつつ無限リストを導入するために採用したトリックや、Gauche自身で書かれているGaucheを過去のバージョンでビルドするために気をつけていることなどの話をしました。 出演者: 川合史朗 ( @anohana )、Rui Ueyama ( @rui314 ) ハッシュタグは です。 TCFMはサポーターの投げ銭によって...

About This Episode

28. プログラミング言語のブートストラッピング問題、コードとの互換性を保ちつつ言語を変更していく話 (川合史朗) is an episode from Turing Complete FM by Rui Ueyama. Gauche Schemeの作者の川合史朗さんと言語処理系についての話をしました。GaucheのCコードとの互換性を保ちつつ無限リストを導入するために採用したトリックや、Gauche自身で書かれているGaucheを過去のバージョンでビルドするために気をつけて...

Podcast

This episode belongs to Turing Complete FM.

Listen Online

Use the player on this page to stream the episode online.

Episode Details

Published Jul 24, 2018, 1:15:09 long, audio available.

Questions About This Episode

What is 28. プログラミング言語のブートストラッピング問題、コードとの互換性を保ちつつ言語を変更していく話 (川合史朗) about?

Gauche Schemeの作者の川合史朗さんと言語処理系についての話をしました。GaucheのCコードとの互換性を保ちつつ無限リストを導入するために採用したトリックや、Gauche自身で書かれているGaucheを過去のバージョンでビルドするために気をつけていることなどの話をしました。 出演者: 川合史朗 ( @anohana )、Rui Ueyama ( @rui314 ) ハッシュタグは です。 TCFMはサポーターの投げ銭によって収益を上げています。このコンテンツに課金してもいいよという方はぜひ クリエイター支援サイトPatreon から登録してご協力ください。 イントロ (0:00) 電卓そろばん対決の動画存在しました (2:28) Gaucheとそのほかのプログラムのリリースプロセス (3:33) コンパイラのブートストラッピング問題とバージョン間の互換性 (4:51) GCCやClangにおけるブートストラッピング問題 (18:08) Goでは言語仕様がフリーズされていてGo 1の間は変更されない (19:41) Webブラウザの6週間のリリースサイクルは短いのか長いのか (20:35) FirefoxもClangとlldにスイッチ (21:32) Gaucheがstdioを使わずに独自bufferred IOを実装している理由 (22:58) FILE構造体の内部にアクセスする(移植性のない)実装 (26:41) プログラム終了時にバッファをフラッシュしないといけない (27:13) stdioではstdinを読もうとしたらstdoutがフラッシュされる (28:24) 遅延シーケンス(無限リスト) (31:05) Cレベルでの互換性を保ったままconsセルを遅延シーケンスにするトリック (34:52) 遅延シーケンスをどこで使っているのか (37:29) 遅延シーケンスのパフォーマンス最適化 (38:45) Clojure言語のTransducerという仕組み (42:07) カリー化とは何か (46:06) キーワードとシンボル (48:09) キーワードをシンボルのサブクラスにして発生した問題 (54:27) Scheme言語仕様にはキーワードはない(シンボルで十分?) (56:08) 現在仕様策定中のScheme言語仕様R7RS (58:27) R6RSの言語仕様は振り返ってみて良いものといえるのだろうか? (1:00:12) 標準化委員会が作る言語仕様と個人の作品としての言語仕様 (1:03:55) Goの言語仕様の変更のプロポーザル (1:05:09) Schemeでは言語仕様を実験的に拡張して良さそうなら標準化するというのがよくある流れ (1:06:51) 言語仕様策定の投票権は全員平等なのが本当によいのか (1:09:19) Schemeは誰でも参加できるところがよいところ (1:10:02) C++のトライグラフの廃止に最後まで反対していたのはIBMとカナダ (1:11:14) エンディング (1:13:22) Running for Grace (Shiroさんの出ている映画) Gauche Scheme Consセル (Wikipedia) stdioにおけるバッファのフラッシュのルール Go言語仕様 Clojure言語 Transducers カリー化 (Wikipedia) Haskell (Wikipedia) ハスケル・カリー (Wikipedia) SRFI(サーフィー) R6RS(現行の最新のScheme言語仕様) トライグラフ (Wikipedia)

Where can I listen to 28. プログラミング言語のブートストラッピング問題、コードとの互換性を保ちつつ言語を変更していく話 (川合史朗)?

You can listen to 28. プログラミング言語のブートストラッピング問題、コードとの互換性を保ちつつ言語を変更していく話 (川合史朗) online on Radio and Podcast. Open the player on this page to stream the available audio.

Which podcast is 28. プログラミング言語のブートストラッピング問題、コードとの互換性を保ちつつ言語を変更していく話 (川合史朗) from?

28. プログラミング言語のブートストラッピング問題、コードとの互換性を保ちつつ言語を変更していく話 (川合史朗) is an episode from Turing Complete FM by Rui Ueyama.

How long is this episode?

This episode is 1:15:09 long.

When was this episode published?

This episode was published on Jul 24, 2018.

Can I save 28. プログラミング言語のブートストラッピング問題、コードとの互換性を保ちつつ言語を変更していく話 (川合史朗) for later?

Yes. Use the heart button on the episode page to add it to your favorite episodes list.

Are there related episodes from Turing Complete FM?

Yes. This page shows related episodes from Turing Complete FM when more episodes are available from the podcast feed.

Quick Answers About This Episode

Where can I listen to 28. プログラミング言語のブートストラッピング問題、コードとの互換性を保ちつつ言語を変更していく話 (川合史朗)?

You can listen to 28. プログラミング言語のブートストラッピング問題、コードとの互換性を保ちつつ言語を変更していく話 (川合史朗) on this page when the episode audio is available from the podcast feed.

Which podcast is this episode from?

28. プログラミング言語のブートストラッピング問題、コードとの互換性を保ちつつ言語を変更していく話 (川合史朗) is from Turing Complete FM by Rui Ueyama.

What are the episode details?

Published Jul 24, 2018 and 1:15:09 long