Enviar pesquisa
Carregar
Common Lisp ユーザへのScheme紹介
•
0 gostou
•
1,504 visualizações
たけおか しょうぞう
Seguir
Common Lisp を知っている人に、Schemeを軽く紹介
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 14
Baixar agora
Baixar para ler offline
Recomendados
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Preferred Networks
型安全性入門
型安全性入門
Akinori Abe
ユーザーインタビューからその後どうするの?得られた情報を「UXデザイン」に落とし込む方法 | UXデザイン基礎セミナー 第3回
ユーザーインタビューからその後どうするの?得られた情報を「UXデザイン」に落とし込む方法 | UXデザイン基礎セミナー 第3回
Yoshiki Hayama
Glibc malloc internal
Glibc malloc internal
Motohiro KOSAKI
AAをつくろう!
AAをつくろう!
Takami Sato
Lispmeetup #56 Common lispによるwebスクレイピング技法
Lispmeetup #56 Common lispによるwebスクレイピング技法
Satoshi imai
KLabのゲーム開発を支える開発環境
KLabのゲーム開発を支える開発環境
KLab Inc. / Tech
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説
Unity Technologies Japan K.K.
Recomendados
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Preferred Networks
型安全性入門
型安全性入門
Akinori Abe
ユーザーインタビューからその後どうするの?得られた情報を「UXデザイン」に落とし込む方法 | UXデザイン基礎セミナー 第3回
ユーザーインタビューからその後どうするの?得られた情報を「UXデザイン」に落とし込む方法 | UXデザイン基礎セミナー 第3回
Yoshiki Hayama
Glibc malloc internal
Glibc malloc internal
Motohiro KOSAKI
AAをつくろう!
AAをつくろう!
Takami Sato
Lispmeetup #56 Common lispによるwebスクレイピング技法
Lispmeetup #56 Common lispによるwebスクレイピング技法
Satoshi imai
KLabのゲーム開発を支える開発環境
KLabのゲーム開発を支える開発環境
KLab Inc. / Tech
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説
Unity Technologies Japan K.K.
Scapyで作る・解析するパケット
Scapyで作る・解析するパケット
Takaaki Hoyo
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
はじめてのこんぴゅうとしぇえだあ〜ComputeShaderに入門してみた話〜
はじめてのこんぴゅうとしぇえだあ〜ComputeShaderに入門してみた話〜
めーぷる しろっぷ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
Yoshiki Hayama
「顧客の声を聞かない」とはどういうことか
「顧客の声を聞かない」とはどういうことか
Yoshiki Hayama
Unity 2018-2019を見据えたDeNAのUnity開発のこれから [DeNA TechCon 2019]
Unity 2018-2019を見据えたDeNAのUnity開発のこれから [DeNA TechCon 2019]
DeNA
人生で大事なことは XP白本と参考文献に教わった in ESM
人生で大事なことは XP白本と参考文献に教わった in ESM
Takeshi Kakeda
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
Yoshiki Hayama
OpenVRやOpenXRの基本的なことを調べてみた
OpenVRやOpenXRの基本的なことを調べてみた
Takahiro Miyaura
子供の言語獲得と機械の言語獲得
子供の言語獲得と機械の言語獲得
Yuya Unno
YoctoをつかったDistroの作り方とハマり方
YoctoをつかったDistroの作り方とハマり方
wata2ki
レシピの作り方入門
レシピの作り方入門
Nobuhiro Iwamatsu
上っ面スクラムチームにならないために気を付けたいこと
上っ面スクラムチームにならないために気を付けたいこと
IIJ
技術紹介: S2E: Selective Symbolic Execution Engine
技術紹介: S2E: Selective Symbolic Execution Engine
Asuka Nakajima
【Unity道場スペシャル 2017京都】スマホゲーム開発者なら知っておくべきチートのリスク&対策
【Unity道場スペシャル 2017京都】スマホゲーム開発者なら知っておくべきチートのリスク&対策
Unity Technologies Japan K.K.
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門
masayoshi takahashi
エンジニアから飛んでくるマサカリを受け止める心得
エンジニアから飛んでくるマサカリを受け止める心得
Reimi Kuramochi Chiba
【Unity道場】VectorGraphicsで作る エモい表現
【Unity道場】VectorGraphicsで作る エモい表現
Unity Technologies Japan K.K.
PEGで構文解析をする
PEGで構文解析をする
jiro4989
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
Yoshifumi Kawai
Lispマシン・シミュレータの紹介
Lispマシン・シミュレータの紹介
たけおか しょうぞう
昔の外付けキャッシュ & コヒーレント・キャッシュ
昔の外付けキャッシュ & コヒーレント・キャッシュ
たけおか しょうぞう
Mais conteúdo relacionado
Mais procurados
Scapyで作る・解析するパケット
Scapyで作る・解析するパケット
Takaaki Hoyo
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
はじめてのこんぴゅうとしぇえだあ〜ComputeShaderに入門してみた話〜
はじめてのこんぴゅうとしぇえだあ〜ComputeShaderに入門してみた話〜
めーぷる しろっぷ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
Yoshiki Hayama
「顧客の声を聞かない」とはどういうことか
「顧客の声を聞かない」とはどういうことか
Yoshiki Hayama
Unity 2018-2019を見据えたDeNAのUnity開発のこれから [DeNA TechCon 2019]
Unity 2018-2019を見据えたDeNAのUnity開発のこれから [DeNA TechCon 2019]
DeNA
人生で大事なことは XP白本と参考文献に教わった in ESM
人生で大事なことは XP白本と参考文献に教わった in ESM
Takeshi Kakeda
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
Yoshiki Hayama
OpenVRやOpenXRの基本的なことを調べてみた
OpenVRやOpenXRの基本的なことを調べてみた
Takahiro Miyaura
子供の言語獲得と機械の言語獲得
子供の言語獲得と機械の言語獲得
Yuya Unno
YoctoをつかったDistroの作り方とハマり方
YoctoをつかったDistroの作り方とハマり方
wata2ki
レシピの作り方入門
レシピの作り方入門
Nobuhiro Iwamatsu
上っ面スクラムチームにならないために気を付けたいこと
上っ面スクラムチームにならないために気を付けたいこと
IIJ
技術紹介: S2E: Selective Symbolic Execution Engine
技術紹介: S2E: Selective Symbolic Execution Engine
Asuka Nakajima
【Unity道場スペシャル 2017京都】スマホゲーム開発者なら知っておくべきチートのリスク&対策
【Unity道場スペシャル 2017京都】スマホゲーム開発者なら知っておくべきチートのリスク&対策
Unity Technologies Japan K.K.
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門
masayoshi takahashi
エンジニアから飛んでくるマサカリを受け止める心得
エンジニアから飛んでくるマサカリを受け止める心得
Reimi Kuramochi Chiba
【Unity道場】VectorGraphicsで作る エモい表現
【Unity道場】VectorGraphicsで作る エモい表現
Unity Technologies Japan K.K.
PEGで構文解析をする
PEGで構文解析をする
jiro4989
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
Yoshifumi Kawai
Mais procurados
(20)
Scapyで作る・解析するパケット
Scapyで作る・解析するパケット
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
はじめてのこんぴゅうとしぇえだあ〜ComputeShaderに入門してみた話〜
はじめてのこんぴゅうとしぇえだあ〜ComputeShaderに入門してみた話〜
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「顧客の声を聞かない」とはどういうことか
「顧客の声を聞かない」とはどういうことか
Unity 2018-2019を見据えたDeNAのUnity開発のこれから [DeNA TechCon 2019]
Unity 2018-2019を見据えたDeNAのUnity開発のこれから [DeNA TechCon 2019]
人生で大事なことは XP白本と参考文献に教わった in ESM
人生で大事なことは XP白本と参考文献に教わった in ESM
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
OpenVRやOpenXRの基本的なことを調べてみた
OpenVRやOpenXRの基本的なことを調べてみた
子供の言語獲得と機械の言語獲得
子供の言語獲得と機械の言語獲得
YoctoをつかったDistroの作り方とハマり方
YoctoをつかったDistroの作り方とハマり方
レシピの作り方入門
レシピの作り方入門
上っ面スクラムチームにならないために気を付けたいこと
上っ面スクラムチームにならないために気を付けたいこと
技術紹介: S2E: Selective Symbolic Execution Engine
技術紹介: S2E: Selective Symbolic Execution Engine
【Unity道場スペシャル 2017京都】スマホゲーム開発者なら知っておくべきチートのリスク&対策
【Unity道場スペシャル 2017京都】スマホゲーム開発者なら知っておくべきチートのリスク&対策
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門
エンジニアから飛んでくるマサカリを受け止める心得
エンジニアから飛んでくるマサカリを受け止める心得
【Unity道場】VectorGraphicsで作る エモい表現
【Unity道場】VectorGraphicsで作る エモい表現
PEGで構文解析をする
PEGで構文解析をする
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
ライブラリ作成のすゝめ - 事例から見る個人OSS開発の効能
Semelhante a Common Lisp ユーザへのScheme紹介
Lispマシン・シミュレータの紹介
Lispマシン・シミュレータの紹介
たけおか しょうぞう
昔の外付けキャッシュ & コヒーレント・キャッシュ
昔の外付けキャッシュ & コヒーレント・キャッシュ
たけおか しょうぞう
Ichigojam ossc-170819
Ichigojam ossc-170819
たけおか しょうぞう
無脳スマートスピーカを 越えレレレのレ
無脳スマートスピーカを 越えレレレのレ
たけおか しょうぞう
お化け
お化け
たけおか しょうぞう
フラグ色々&その遅延評価-仮想機械インタープリタ書きのための-
フラグ色々&その遅延評価-仮想機械インタープリタ書きのための-
たけおか しょうぞう
RISC-V User level ISA
RISC-V User level ISA
たけおか しょうぞう
Dataflow140711-a@Kernel/VM北陸1
Dataflow140711-a@Kernel/VM北陸1
たけおか しょうぞう
Dataflow140711@Kernel/VM北陸1
Dataflow140711@Kernel/VM北陸1
たけおか しょうぞう
What's Operating System?
What's Operating System?
Naruhiko Ogasawara
[Java Day Tokyo 2018]50分で最新技術学習の基礎を身につける(SOMPO Systems Daisuke Nishino)
[Java Day Tokyo 2018]50分で最新技術学習の基礎を身につける(SOMPO Systems Daisuke Nishino)
Daisuke Nishino
Os真髄
Os真髄
magoroku Yamamoto
Lisp_chibi_machine 190427
Lisp_chibi_machine 190427
たけおか しょうぞう
Lispマシン ドキュメント和訳とか、 ちびLispとか
Lispマシン ドキュメント和訳とか、 ちびLispとか
たけおか しょうぞう
xv6 + mist32 + mruby
xv6 + mist32 + mruby
Hirotaka Kawata
そういえばRとはなんだったか
そういえばRとはなんだったか
Nobukuni Kino
はじめよう TypeScript - 入門から実践まで - 素の JavaScript とはさようなら!
はじめよう TypeScript - 入門から実践まで - 素の JavaScript とはさようなら!
Jun-ichi Sakamoto
ワークショップ「ゲーム開発チームにおけるパトレット」
ワークショップ「ゲーム開発チームにおけるパトレット」
Masaru Nagaku
Cloudlatex講習
Cloudlatex講習
Nobutaka Shimada
高速にコンテナを起動できるイメージフォーマット (NTT Tech Conference #2)
高速にコンテナを起動できるイメージフォーマット (NTT Tech Conference #2)
Akihiro Suda
Semelhante a Common Lisp ユーザへのScheme紹介
(20)
Lispマシン・シミュレータの紹介
Lispマシン・シミュレータの紹介
昔の外付けキャッシュ & コヒーレント・キャッシュ
昔の外付けキャッシュ & コヒーレント・キャッシュ
Ichigojam ossc-170819
Ichigojam ossc-170819
無脳スマートスピーカを 越えレレレのレ
無脳スマートスピーカを 越えレレレのレ
お化け
お化け
フラグ色々&その遅延評価-仮想機械インタープリタ書きのための-
フラグ色々&その遅延評価-仮想機械インタープリタ書きのための-
RISC-V User level ISA
RISC-V User level ISA
Dataflow140711-a@Kernel/VM北陸1
Dataflow140711-a@Kernel/VM北陸1
Dataflow140711@Kernel/VM北陸1
Dataflow140711@Kernel/VM北陸1
What's Operating System?
What's Operating System?
[Java Day Tokyo 2018]50分で最新技術学習の基礎を身につける(SOMPO Systems Daisuke Nishino)
[Java Day Tokyo 2018]50分で最新技術学習の基礎を身につける(SOMPO Systems Daisuke Nishino)
Os真髄
Os真髄
Lisp_chibi_machine 190427
Lisp_chibi_machine 190427
Lispマシン ドキュメント和訳とか、 ちびLispとか
Lispマシン ドキュメント和訳とか、 ちびLispとか
xv6 + mist32 + mruby
xv6 + mist32 + mruby
そういえばRとはなんだったか
そういえばRとはなんだったか
はじめよう TypeScript - 入門から実践まで - 素の JavaScript とはさようなら!
はじめよう TypeScript - 入門から実践まで - 素の JavaScript とはさようなら!
ワークショップ「ゲーム開発チームにおけるパトレット」
ワークショップ「ゲーム開発チームにおけるパトレット」
Cloudlatex講習
Cloudlatex講習
高速にコンテナを起動できるイメージフォーマット (NTT Tech Conference #2)
高速にコンテナを起動できるイメージフォーマット (NTT Tech Conference #2)
Mais de たけおか しょうぞう
いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加した
いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加した
たけおか しょうぞう
SOAR:Smalltalk on RISC
SOAR:Smalltalk on RISC
たけおか しょうぞう
俺ASICと俺CPU“松竹V(しょうちくぶい)”
俺ASICと俺CPU“松竹V(しょうちくぶい)”
たけおか しょうぞう
あるRISC-V CPUの 浮動小数点数(異常なし)
あるRISC-V CPUの 浮動小数点数(異常なし)
たけおか しょうぞう
RISC-Vの可能性
RISC-Vの可能性
たけおか しょうぞう
RISC-Vの可能性
RISC-Vの可能性
たけおか しょうぞう
どうして昔の人は八進数でしゃべるのか?
どうして昔の人は八進数でしゃべるのか?
たけおか しょうぞう
Riscv+fpga200606
Riscv+fpga200606
たけおか しょうぞう
Takep lpc1114-190614
Takep lpc1114-190614
たけおか しょうぞう
Takep lpc1114-190613
Takep lpc1114-190613
たけおか しょうぞう
初歩的な部品の知識
初歩的な部品の知識
たけおか しょうぞう
Takepino LPC1114
Takepino LPC1114
たけおか しょうぞう
大昔のMMU
大昔のMMU
たけおか しょうぞう
Mt basic as-os_on_danbot
Mt basic as-os_on_danbot
たけおか しょうぞう
Axeai 170421
Axeai 170421
たけおか しょうぞう
Openhard150114
Openhard150114
たけおか しょうぞう
ロボット用Open Source Software
ロボット用Open Source Software
たけおか しょうぞう
Robot Language and a Tail Recursive Interpreter
Robot Language and a Tail Recursive Interpreter
たけおか しょうぞう
Dataflow140711
Dataflow140711
たけおか しょうぞう
Mais de たけおか しょうぞう
(19)
いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加した
いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加した
SOAR:Smalltalk on RISC
SOAR:Smalltalk on RISC
俺ASICと俺CPU“松竹V(しょうちくぶい)”
俺ASICと俺CPU“松竹V(しょうちくぶい)”
あるRISC-V CPUの 浮動小数点数(異常なし)
あるRISC-V CPUの 浮動小数点数(異常なし)
RISC-Vの可能性
RISC-Vの可能性
RISC-Vの可能性
RISC-Vの可能性
どうして昔の人は八進数でしゃべるのか?
どうして昔の人は八進数でしゃべるのか?
Riscv+fpga200606
Riscv+fpga200606
Takep lpc1114-190614
Takep lpc1114-190614
Takep lpc1114-190613
Takep lpc1114-190613
初歩的な部品の知識
初歩的な部品の知識
Takepino LPC1114
Takepino LPC1114
大昔のMMU
大昔のMMU
Mt basic as-os_on_danbot
Mt basic as-os_on_danbot
Axeai 170421
Axeai 170421
Openhard150114
Openhard150114
ロボット用Open Source Software
ロボット用Open Source Software
Robot Language and a Tail Recursive Interpreter
Robot Language and a Tail Recursive Interpreter
Dataflow140711
Dataflow140711
Último
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Último
(12)
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Common Lisp ユーザへのScheme紹介
1.
Common Lisper向けの Scheme紹介 2018.JUN.23 たけおか@AXE/たけおかラボ @takeoka
2.
たけおか 1977年(高校2年生): MITのJames Slagleの書いたAIの教科書(日本語版)を読んで 「○×」を打つプログラムを8bitマイコンTK-80(8080,RAM
512Bytes)の機械語で書く 1980年代: UNIXの仮名漢字変換システムWnnや Temporal Prolog(時相論理Prolog)を京 大数解研の地下辺りで作ったり。渋谷や神保町辺りで国産X Window端末などの設計開 発に携わる。TCP/IPスタックを自分で書く 1987年ごろ、湯淺さんにSchemeを教えてもらった 1990年代初頭:豊橋技科大 湯淺研にて、1024PE規模の超並列計算機“SM-1”のLSIハード ウェア、基本ソフトウェアの設計開発に携わる。 Common Lispで開発ツール書いた。 当時、超並列計算機は、ニューラルネットのシミュレーションによく使用された 現在: 組み込みOSを作らせたり、AI開発 湯淺研 SM-1 フロントエンドはSparc 開発環境はCommon LispとC 萩谷さんに貰った (サインはしてくれない) 湯淺さんのScheme本 岩波書店 (1991/10/29) (買ってません (^^; )
3.
● Scheme を知らない人 向け
紹介 目次 ● funcall かっこわるい ● schemeには、遅延評価がある ● schemeには、継続がある
4.
funcall かっこわるい ● schemeは、関数定義するとクロージャ(関数閉包)ができ る ● クロージャに 実引数を適用するのに、なにも要らない –
CLは、funcall とか apply とか eval とかが必要
5.
Common Lisp * (funcall
#'cdr '(a s d)) (S D) 関数さまは、 明示して 呼び出して 差し上げる なんだ? この記号わ? function の省略形
6.
funcall かっこわるい (defvar baka) BAKA *
(setq baka (let ((sum 0)) (lambda (x) (incf sum x)))) #<CLOSURE (LAMBDA (X)) {100219D05B}> * (funcall baka 2) 2 * (funcall baka 2) 4 * > (define aaa nil) #<unspecified> > (set! aaa (let ((sum 0)) (lambda (x) (let()(set! sum (+ sum x)) sum)))) #<unspecified> > aaa #<CLOSURE <anon> (x) (#@begin (#@set! #@sum (#@+ #@sum #@x)) #@sum)> > (aaa 1) 1 > (aaa 1) 2 > (aaa 1) 3 Common Lisp Scheme (scm) ←funcallは 楽しくない ←いいね
7.
schemeでは、関数が第一級オブジェクト ● クロージャに 実引数を適用するのに、なにも要らない ● schemeは 関数(定義)が別の名前空間ではない –
フツーの変数に、関数(クロージャ)が保持される ● 関数が、1st class object (第一級オブジェクト) ● 一級オブジェクトとは、フツーのデータとして扱えるもの – schemeのクロージャは、変数に入れたり、引数として渡せる ● CommonLispは、関数定義の名前空間が別 – defun すると、特別な名前空間で管理される – funcallなどで呼び出し
8.
delay/force ● schemeには、遅延評価がある ● 遅延された 計算は promise
と呼ぶ
9.
delayとforce > (define laz
(delay (let() (print "foo")(+ 1 2)))) #<unspecified> > laz #<promise 3> > (force laz) "foo" 3 > (force laz) 3 > (force laz) 3 >(promise? laz) #t ←評価は一回だけしか行われない ←遅延オブジェクト
10.
continuation 継続 ● schemeには、continuation 「継続」がある ● 大域脱出
(catch/throw, setjmp/longjmp) に使う ● 継続は、スレッド実体と同じもの ● コルーチン/スレッドとして扱える ● (スレッド)スケジューラは居ない – 自スレッドの休止 & 他スレッド 起床 を自分で行う = コルーチン – continuation passing ● ※最適化 手法(CPS変換)のことではない ● UNIXマガジン 1991.JAN に同様の記事を書いたよ – ruby のまつもとゆきひろ氏も、読んでいた.rubyには最初から継続が ある
11.
call/cc (call-with-current-continuation bar) ● call-with-current-continuationは、呼び出し時の継続 を生成して、それを引数として、ここではbarを評価する ● この例では、bar を呼び出す ● barの引数に
継続が渡される ● barに渡された継続を評価すると、 call/cc した人の処理を再開する ● call-with-current-continuationは、しばしば call/cc という省略形が使われる
12.
continuation 継続でのコルーチン > (define
(foo) (let ((cc (call-with-current-continuation bar) )) (do () (#f) (display "Hello") (set! cc (call-with-current-continuation cc))))) #<unspecified> > (define (bar cc) (do ()(#f) (display "World") (set! cc (call-with-current-continuation cc)))) #<unspecified> > (foo) WorldHelloWorldHelloWorldHelloWorldHelloWorldHelloWorldHelloWorldHelloWorld HelloWorldHelloWorldHelloWorldHelloWorldHelloWorldHelloWorldHelloWorldHello WorldHelloWorldHelloWorldHelloWorldHelloWorldHelloWorldHelloWorldHelloWorld HelloWorldHelloWorldHelloWorldHelloWorldHelloWorldHelloWorldHelloWorldHello 4) barでのcall/ccで生成された 継続が、返り値となる ↓ 3) 呼び出し時に 受け取った継続を 評価し、fooを再開。 call/cc しながらなので、 fooの再開時に、barの継続が渡る 1)ここの継続を持って barを呼び出す 2) fooからcall/ccで 呼びだされた時のfooの継続が入る 5) bar再開
13.
超絶おまけ 神戸大 Fast Lisp(TAKITAC-7)
, Lispマシン 神戸大 工学部のビルに展示されている 瀧先生が作った 1979年2月10日に完動した. マイクロ命令サイクル300nsecのインター プリタ が当時の汎用大型計算機上に実装された LISPコンパイラと同程度の速度性能を示し た TAKITAC-7のアーキテクチャは 後のFACOM-αとNTTのELISが継承した. http://museum.ipsj.or.jp/computer/other/000 1.html いつか神戸大で関西Lispをやりましょう! 瀧先生にLispマシンの話をして頂くとか
14.
以上
Baixar agora