SlideShare a Scribd company logo
1 of 18
Download to read offline
プログラミング言語を作る
合同勉強会in 大都会岡山 -2018 Winter-
自己紹介
● 小西 雅也
● 株式会社クレオフーガ
○ インフラ & Webアプリケーション開発
● @orepublic
● 勉強会
○ Okayama.rb
○ 岡山システムプログラミング勉強会
● 趣味
○ OSの再インストール
今日話すこと
● LISP系のプログラミング言語を作りました
● LISPとは
● 作るまで
○ 字句解析
○ 構文解析(構文木構築)
○ 実行
目的
プログラミング言語自作にとりかかれるように
なんで作るのか
● プログラミング言語作れるってかっこいい
● 自分で作れると知って以来、いつか作ってみたかった
● いつかが一生来ない気がしてきたので、着手した
プログラミング言語作りました
プログラミング言語作りました
● mrubyでLISPライクな言語を実装
● mrispと言います
● インタプリタ型の言語です
LISPとは
● リスト構造、木構造の式でプログラムを記述する(S式)
○ (* 3 (+ 2 5))
○ ((fn* [a b] (- a b)) 100 50)
● リストの先頭が関数もしくは演算子
● 続くリストが引数
○ 引数も、さらにリスト構造になることもある
● 構文のルールが少ない
プログラミング言語を作るまで
● 字句解析
○ 入力の文字列をトークンに分解する
● 構文解析
○ トークンの並びから、抽象構文木を作る
● 実行
○ 抽象構文木を解釈して、実行していく
字句解析
● 入力文字列から言語の構文要素の最小単位に分解する
● 最小単位
○ プログラミング言語の意味上、それ以上分解できない塊
○ トークンと呼ぶ
○ 例)
■ ( + 1 3 ) → “(“ , “+” , “1” , “3” , “)”
■ (def! a 6) → “(“ , “def!” , “a” , “6” , “)”
○ スペース(空白)はトークンの区切りとしての意味はあるが、字句解析の段階で取り除かれる
構文解析
● トークンの並びを、ルールに従って解析して、構文木を作る
● 例)
入力
if a==1
then
print ‘aは1’
else
print ‘aは1以外’
end
ルール
[a-z]* → 式
[0-9]* → 式
式 == 式 → 式
‘xxxx’ → 式
if 式 then 式 else 式 end
 → if式
if
式
(a == 1)
式
(‘aは1’)
式
(‘aは1以外’)
実行
● 作成した構文木をたどって、実行していく
if
式
(a == 1)
式
(‘aは1’)
式
(‘aは1以外’)
mrispの実装
● make a lisp (mal)
○ https://github.com/kanaka/mal
● 実装方法を説明するドキュメント
● 74の言語で実装されているソースコード付き
○ ドキュメント読んで、ピンと来なくても自分が得意な言語の実装例が見える
○ 各ステップの動作検証するテストコード付き
● mrispは、いまのところstep5 までの機能を実装
○ 四則演算
○ 変数定義
○ 無名関数
○ if
○ 再帰
○ print
mrispの実装(字句解析)
● 正規表現にて分解
○ /[s,]*(~@|[[]{}()'`~^@]|"(?:.|[^"])*"|;.*|[^s[]{}('"`,;)]*)/
○ マッチした文字列を、配列で取得
○ この段階で不要な文字(空白)も取り除く
● 正規表現でうまくいかないパターンもある
○ 例) コメントのネスト
■ /* aaa /* bbb */ ccc*/
○ mrispではコメントを扱っていない
mrispの実装(構文解析)
● LISPはS式で記述
● S式は、構文木の形をしている
● 例) if
○ (if (= a 1) (prn ‘aは1’) (prn ‘aは1以外’))
● mrisp では、S式をそのままrubyの配列に変換している
○ [:if, [:=, a, 1], [:prn, ‘aは1’], [:prn ‘aは1以外’]]
● ルールが少なく、構文木に変換しやすい
if
式
(= a 1)
式
(‘aは1’)
式
(‘aは1以外’)
mrispの実装(実行)
● 配列を先頭から辿っていき、要素を見て実行(リストの先頭が演算子・関数)
● if, def!, let*, fn* などは予約後
● [:if, [:=, a, 1], [:prn, ‘aは1’], [:prn ‘aは1以外’]]
● 例) 実装の一部
mrispの実装(実行)
● def! などの実行は、動的に連想配列に定義を追加
● 例) (def! a 1) (def! b ( + 1 2))
env = {
‘a’: 1,
‘b’: 3,
}
まとめ
● LISP系言語を作りました
● LISP系インタプリタは作るハードル低い(と思う)
○ make a lisp 以外にも、たくさん情報がある
● 字句解析
● 構文解析
● 実行
まとめ
● プログラミング言語を作ろう

More Related Content

What's hot

Writing One Liner by Golang(Japanese)
Writing One Liner by Golang(Japanese)Writing One Liner by Golang(Japanese)
Writing One Liner by Golang(Japanese)kuwa1 桑島
 
Keynoteを使った画像作成 for 関モバ9
Keynoteを使った画像作成 for 関モバ9Keynoteを使った画像作成 for 関モバ9
Keynoteを使った画像作成 for 関モバ9studioshin
 
いわみくとMeetup第15回
いわみくとMeetup第15回いわみくとMeetup第15回
いわみくとMeetup第15回Satomi Tsujita
 
ソースコードをAAに変換するやつやってみた
ソースコードをAAに変換するやつやってみたソースコードをAAに変換するやつやってみた
ソースコードをAAに変換するやつやってみたTakahashi Koki
 
リーガルテックへ凸って見えた楽しい踊り方
リーガルテックへ凸って見えた楽しい踊り方リーガルテックへ凸って見えた楽しい踊り方
リーガルテックへ凸って見えた楽しい踊り方Katsuhiro Honda
 
OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島Tomohiko Himura
 
地方フリーランスとして ゆるいチームで生き抜いてる話
地方フリーランスとして ゆるいチームで生き抜いてる話地方フリーランスとして ゆるいチームで生き抜いてる話
地方フリーランスとして ゆるいチームで生き抜いてる話Tomoe Sawai
 
第二回東海北陸ロボコン交流会 豊田高専プレゼン
第二回東海北陸ロボコン交流会 豊田高専プレゼン第二回東海北陸ロボコン交流会 豊田高専プレゼン
第二回東海北陸ロボコン交流会 豊田高専プレゼン東海北陸ロボコン 交流会
 
2017/06/30 色を付けて幸せになろう sago35
2017/06/30 色を付けて幸せになろう sago352017/06/30 色を付けて幸せになろう sago35
2017/06/30 色を付けて幸せになろう sago35Masaaki Takasago
 
○○したら受託開発が180°変わった(10分版)
○○したら受託開発が180°変わった(10分版)○○したら受託開発が180°変わった(10分版)
○○したら受託開発が180°変わった(10分版)Atsushi Harada
 
関東地方で北海道を味わおう~上京した皆様へ~
関東地方で北海道を味わおう~上京した皆様へ~関東地方で北海道を味わおう~上京した皆様へ~
関東地方で北海道を味わおう~上京した皆様へ~洋史 東平
 

What's hot (15)

Writing One Liner by Golang(Japanese)
Writing One Liner by Golang(Japanese)Writing One Liner by Golang(Japanese)
Writing One Liner by Golang(Japanese)
 
Keynoteを使った画像作成 for 関モバ9
Keynoteを使った画像作成 for 関モバ9Keynoteを使った画像作成 for 関モバ9
Keynoteを使った画像作成 for 関モバ9
 
いわみくとMeetup第15回
いわみくとMeetup第15回いわみくとMeetup第15回
いわみくとMeetup第15回
 
ソースコードをAAに変換するやつやってみた
ソースコードをAAに変換するやつやってみたソースコードをAAに変換するやつやってみた
ソースコードをAAに変換するやつやってみた
 
リーガルテックへ凸って見えた楽しい踊り方
リーガルテックへ凸って見えた楽しい踊り方リーガルテックへ凸って見えた楽しい踊り方
リーガルテックへ凸って見えた楽しい踊り方
 
Ruby confchina impression
Ruby confchina impressionRuby confchina impression
Ruby confchina impression
 
OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島OSC2013 HIROSHIMA ライトニングトーク すごい広島
OSC2013 HIROSHIMA ライトニングトーク すごい広島
 
地方フリーランスとして ゆるいチームで生き抜いてる話
地方フリーランスとして ゆるいチームで生き抜いてる話地方フリーランスとして ゆるいチームで生き抜いてる話
地方フリーランスとして ゆるいチームで生き抜いてる話
 
第二回東海北陸ロボコン交流会 豊田高専プレゼン
第二回東海北陸ロボコン交流会 豊田高専プレゼン第二回東海北陸ロボコン交流会 豊田高専プレゼン
第二回東海北陸ロボコン交流会 豊田高専プレゼン
 
2017/06/30 色を付けて幸せになろう sago35
2017/06/30 色を付けて幸せになろう sago352017/06/30 色を付けて幸せになろう sago35
2017/06/30 色を付けて幸せになろう sago35
 
○○したら受託開発が180°変わった(10分版)
○○したら受託開発が180°変わった(10分版)○○したら受託開発が180°変わった(10分版)
○○したら受託開発が180°変わった(10分版)
 
Ciecleci
CiecleciCiecleci
Ciecleci
 
Jissou
JissouJissou
Jissou
 
Ruby with My Life
Ruby with My LifeRuby with My Life
Ruby with My Life
 
関東地方で北海道を味わおう~上京した皆様へ~
関東地方で北海道を味わおう~上京した皆様へ~関東地方で北海道を味わおう~上京した皆様へ~
関東地方で北海道を味わおう~上京した皆様へ~
 

Similar to プログラミング言語を作る

括弧を使わないLispプログラミング
括弧を使わないLispプログラミング括弧を使わないLispプログラミング
括弧を使わないLispプログラミングYuta Mizushima
 
あと一つプログラミング言語を
覚えたら死ぬ! 脳みそがパンクしそうな
あなたのための
nodeJSことはじめ
あと一つプログラミング言語を
覚えたら死ぬ! 脳みそがパンクしそうな
あなたのための
nodeJSことはじめあと一つプログラミング言語を
覚えたら死ぬ! 脳みそがパンクしそうな
あなたのための
nodeJSことはじめ
あと一つプログラミング言語を
覚えたら死ぬ! 脳みそがパンクしそうな
あなたのための
nodeJSことはじめ文樹 高橋
 
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022Takayuki Shimizukawa
 
ブラウザでかんたんプログラミング!さらにお手軽に体験できるようになった日本語プログラミング言語「なでしこ」最新情報のご紹介
ブラウザでかんたんプログラミング!さらにお手軽に体験できるようになった日本語プログラミング言語「なでしこ」最新情報のご紹介ブラウザでかんたんプログラミング!さらにお手軽に体験できるようになった日本語プログラミング言語「なでしこ」最新情報のご紹介
ブラウザでかんたんプログラミング!さらにお手軽に体験できるようになった日本語プログラミング言語「なでしこ」最新情報のご紹介Masaya Hayashi
 
Sphinxを使って本を書こう #pyconjp 2012
Sphinxを使って本を書こう #pyconjp 2012Sphinxを使って本を書こう #pyconjp 2012
Sphinxを使って本を書こう #pyconjp 2012Takayuki Shimizukawa
 
ShibuyalispTT#4 LT 他言語で作ったWEBページをLispでも!
ShibuyalispTT#4 LT 他言語で作ったWEBページをLispでも!ShibuyalispTT#4 LT 他言語で作ったWEBページをLispでも!
ShibuyalispTT#4 LT 他言語で作ったWEBページをLispでも!Toshiaki Maki
 
Pythonで始める競技プログラミング
Pythonで始める競技プログラミングPythonで始める競技プログラミング
Pythonで始める競技プログラミングshunki fujiwara
 
PyPy 紹介
PyPy 紹介PyPy 紹介
PyPy 紹介shoma h
 
利根川講演@北海道20170113
利根川講演@北海道20170113利根川講演@北海道20170113
利根川講演@北海道20170113Yuta Tonegawa
 
二求の塾 プログラミング講座(2019-08-10)
二求の塾 プログラミング講座(2019-08-10)二求の塾 プログラミング講座(2019-08-10)
二求の塾 プログラミング講座(2019-08-10)Atsuo Yamasaki
 
オープンソースのスクリーンリーダーNVDAとLibreOffice
オープンソースのスクリーンリーダーNVDAとLibreOfficeオープンソースのスクリーンリーダーNVDAとLibreOffice
オープンソースのスクリーンリーダーNVDAとLibreOfficeTakuya Nishimoto
 
Goで始める言語処理系実装入門
Goで始める言語処理系実装入門Goで始める言語処理系実装入門
Goで始める言語処理系実装入門虎の穴 開発室
 
西区勉強会用スライド
西区勉強会用スライド西区勉強会用スライド
西区勉強会用スライドHiromi Kai
 
プログラミングのことはじめ 互助会 20160507 バージョン
プログラミングのことはじめ 互助会 20160507 バージョンプログラミングのことはじめ 互助会 20160507 バージョン
プログラミングのことはじめ 互助会 20160507 バージョンManabu Murakami
 
言語処理するのに Python でいいの? #PyDataTokyo
言語処理するのに Python でいいの? #PyDataTokyo言語処理するのに Python でいいの? #PyDataTokyo
言語処理するのに Python でいいの? #PyDataTokyoShuyo Nakatani
 
IPAmj明朝の漢字を検索
IPAmj明朝の漢字を検索IPAmj明朝の漢字を検索
IPAmj明朝の漢字を検索Ryusei Yamaguchi
 
プログラミング同好会とすごい合同勉強会
プログラミング同好会とすごい合同勉強会プログラミング同好会とすごい合同勉強会
プログラミング同好会とすごい合同勉強会nemumu
 

Similar to プログラミング言語を作る (20)

括弧を使わないLispプログラミング
括弧を使わないLispプログラミング括弧を使わないLispプログラミング
括弧を使わないLispプログラミング
 
あと一つプログラミング言語を
覚えたら死ぬ! 脳みそがパンクしそうな
あなたのための
nodeJSことはじめ
あと一つプログラミング言語を
覚えたら死ぬ! 脳みそがパンクしそうな
あなたのための
nodeJSことはじめあと一つプログラミング言語を
覚えたら死ぬ! 脳みそがパンクしそうな
あなたのための
nodeJSことはじめ
あと一つプログラミング言語を
覚えたら死ぬ! 脳みそがパンクしそうな
あなたのための
nodeJSことはじめ
 
Easy easy2
Easy easy2Easy easy2
Easy easy2
 
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
プログラマーとの出会い - Hello, Programmer! at PyCon Kyushu 2022
 
ブラウザでかんたんプログラミング!さらにお手軽に体験できるようになった日本語プログラミング言語「なでしこ」最新情報のご紹介
ブラウザでかんたんプログラミング!さらにお手軽に体験できるようになった日本語プログラミング言語「なでしこ」最新情報のご紹介ブラウザでかんたんプログラミング!さらにお手軽に体験できるようになった日本語プログラミング言語「なでしこ」最新情報のご紹介
ブラウザでかんたんプログラミング!さらにお手軽に体験できるようになった日本語プログラミング言語「なでしこ」最新情報のご紹介
 
Sphinxを使って本を書こう #pyconjp 2012
Sphinxを使って本を書こう #pyconjp 2012Sphinxを使って本を書こう #pyconjp 2012
Sphinxを使って本を書こう #pyconjp 2012
 
ShibuyalispTT#4 LT 他言語で作ったWEBページをLispでも!
ShibuyalispTT#4 LT 他言語で作ったWEBページをLispでも!ShibuyalispTT#4 LT 他言語で作ったWEBページをLispでも!
ShibuyalispTT#4 LT 他言語で作ったWEBページをLispでも!
 
Pythonで始める競技プログラミング
Pythonで始める競技プログラミングPythonで始める競技プログラミング
Pythonで始める競技プログラミング
 
LL Onsen 2008 OpenPrinting
LL Onsen 2008 OpenPrintingLL Onsen 2008 OpenPrinting
LL Onsen 2008 OpenPrinting
 
PyPy 紹介
PyPy 紹介PyPy 紹介
PyPy 紹介
 
利根川講演@北海道20170113
利根川講演@北海道20170113利根川講演@北海道20170113
利根川講演@北海道20170113
 
二求の塾 プログラミング講座(2019-08-10)
二求の塾 プログラミング講座(2019-08-10)二求の塾 プログラミング講座(2019-08-10)
二求の塾 プログラミング講座(2019-08-10)
 
オープンソースのスクリーンリーダーNVDAとLibreOffice
オープンソースのスクリーンリーダーNVDAとLibreOfficeオープンソースのスクリーンリーダーNVDAとLibreOffice
オープンソースのスクリーンリーダーNVDAとLibreOffice
 
Goで始める言語処理系実装入門
Goで始める言語処理系実装入門Goで始める言語処理系実装入門
Goで始める言語処理系実装入門
 
西区勉強会用スライド
西区勉強会用スライド西区勉強会用スライド
西区勉強会用スライド
 
プログラミングのことはじめ 互助会 20160507 バージョン
プログラミングのことはじめ 互助会 20160507 バージョンプログラミングのことはじめ 互助会 20160507 バージョン
プログラミングのことはじめ 互助会 20160507 バージョン
 
言語処理するのに Python でいいの? #PyDataTokyo
言語処理するのに Python でいいの? #PyDataTokyo言語処理するのに Python でいいの? #PyDataTokyo
言語処理するのに Python でいいの? #PyDataTokyo
 
IPAmj明朝の漢字を検索
IPAmj明朝の漢字を検索IPAmj明朝の漢字を検索
IPAmj明朝の漢字を検索
 
RvizPlugin作成入門
RvizPlugin作成入門RvizPlugin作成入門
RvizPlugin作成入門
 
プログラミング同好会とすごい合同勉強会
プログラミング同好会とすごい合同勉強会プログラミング同好会とすごい合同勉強会
プログラミング同好会とすごい合同勉強会
 

More from Masaya Konishi

ElasticBeanstalkでのRailsアプリ運用
ElasticBeanstalkでのRailsアプリ運用ElasticBeanstalkでのRailsアプリ運用
ElasticBeanstalkでのRailsアプリ運用Masaya Konishi
 
Rubyにメソッドを追加して遊ぶ話
Rubyにメソッドを追加して遊ぶ話Rubyにメソッドを追加して遊ぶ話
Rubyにメソッドを追加して遊ぶ話Masaya Konishi
 
Mrubyについて 第16回 岡山ruby, ruby on rails勉強会
Mrubyについて   第16回 岡山ruby, ruby on rails勉強会Mrubyについて   第16回 岡山ruby, ruby on rails勉強会
Mrubyについて 第16回 岡山ruby, ruby on rails勉強会Masaya Konishi
 
私とRubyの付き合い方 - 岡山Ruby会議02
私とRubyの付き合い方 - 岡山Ruby会議02私とRubyの付き合い方 - 岡山Ruby会議02
私とRubyの付き合い方 - 岡山Ruby会議02Masaya Konishi
 
Rubyで楽々サーバー管理 - 岡山Ruby会議01 -
Rubyで楽々サーバー管理 - 岡山Ruby会議01 -Rubyで楽々サーバー管理 - 岡山Ruby会議01 -
Rubyで楽々サーバー管理 - 岡山Ruby会議01 -Masaya Konishi
 
rabbit - 第10回 岡山Ruby, Ruby on Rails勉強会
rabbit - 第10回 岡山Ruby, Ruby on Rails勉強会rabbit - 第10回 岡山Ruby, Ruby on Rails勉強会
rabbit - 第10回 岡山Ruby, Ruby on Rails勉強会Masaya Konishi
 

More from Masaya Konishi (7)

ElasticBeanstalkでのRailsアプリ運用
ElasticBeanstalkでのRailsアプリ運用ElasticBeanstalkでのRailsアプリ運用
ElasticBeanstalkでのRailsアプリ運用
 
Rubyにメソッドを追加して遊ぶ話
Rubyにメソッドを追加して遊ぶ話Rubyにメソッドを追加して遊ぶ話
Rubyにメソッドを追加して遊ぶ話
 
Mrubyについて 第16回 岡山ruby, ruby on rails勉強会
Mrubyについて   第16回 岡山ruby, ruby on rails勉強会Mrubyについて   第16回 岡山ruby, ruby on rails勉強会
Mrubyについて 第16回 岡山ruby, ruby on rails勉強会
 
FizzBuzzで学ぶRuby
FizzBuzzで学ぶRubyFizzBuzzで学ぶRuby
FizzBuzzで学ぶRuby
 
私とRubyの付き合い方 - 岡山Ruby会議02
私とRubyの付き合い方 - 岡山Ruby会議02私とRubyの付き合い方 - 岡山Ruby会議02
私とRubyの付き合い方 - 岡山Ruby会議02
 
Rubyで楽々サーバー管理 - 岡山Ruby会議01 -
Rubyで楽々サーバー管理 - 岡山Ruby会議01 -Rubyで楽々サーバー管理 - 岡山Ruby会議01 -
Rubyで楽々サーバー管理 - 岡山Ruby会議01 -
 
rabbit - 第10回 岡山Ruby, Ruby on Rails勉強会
rabbit - 第10回 岡山Ruby, Ruby on Rails勉強会rabbit - 第10回 岡山Ruby, Ruby on Rails勉強会
rabbit - 第10回 岡山Ruby, Ruby on Rails勉強会
 

Recently uploaded

自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 

Recently uploaded (9)

自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 

プログラミング言語を作る