マガジンのカバー画像

Monkey言語の拡張

11
Go言語でつくるインタプリタ,で実装しているMonkey言語を拡張してみた経過のメモです.
運営しているクリエイター

記事一覧

Monkey言語:冪乗の二項演算子"^"実装

目標「2^3」のような冪乗の演算をMonkey言語に実装する. 字句解析トークンの定義 token/to…

之山
8か月前

ブラウザ上で.wavをドロップ,再生

目標タイトル通り,ブラウザ上に.wavファイルをドロップさせ,その音源が再生できるようにした…

之山
1年前

Monkey言語:サンプル音源の再生

目標組み込み関数sampleを作成して,引数によって録音された音源を流せるようにしたい. この…

之山
1年前

XMLHttpRequestでブラウザからローカルファイルにアクセスしようとしたけど無理だった

背景この記事で,ブラウザから,ローカルにあるテキストファイルを読み込む必要がでたので,XM…

之山
1年前

Go言語:ファイル入出力

環境・macOS Big Sur ver. 12.6 (21G115) ・MacBook Air M1, 2020 メモリ 8GB ・go1.18.3 da…

之山
1年前

Monkey言語:組み込み関数playの実装

テストを書くevaluator/evaluator_test.goに次のようなテストを書く. func TestPlayFunction…

之山
1年前

Monkey言語のREPLの入力をブラウザのテキストボックスから行う

環境・macOS Big Sur ver. 11.5.1(20G80) -> 12.6 (21G115) ・MacBook Air M1, 2020 メモリ 8GB ・go1.18.3 darwin/arm64 背景ここの記事から引き継いでいる. Monkey言語というのは,この参考書で作成している独自の言語である. REPLとはRead, Eval, Print, Loopの略であり,入力を読み込んで,インタプリタに送って評価し,その結果を出力し,また最初に戻るという

WebAudioAPIを言語に組み込む際に困ったこと

main.goにサーバーとしてのコードを付け加える. main.go package mainimport( "fmt" "os" "…

之山
1年前

Monkey言語:WebAudioAPIを組み込む

目標組み込み関数playを,WebAudioAPIを使ってシンセサイザーを鳴らすことができるようにする…

之山
1年前
1

Monkey言語:loop文の実装

これで実装してるMonkey言語を拡張します. loop文とはwhile文の簡略版みたいなもので,while…

之山
2年前

Monekey言語:FLOATの実装

書籍「Go言語でつくるインタプリタ」で実装しているMonkey言語にfloat型を実装してみる.自分…

之山
2年前