タグ

Interpreterに関するsonota88のブックマーク (7)

  • インタプリタの作り方 -言語設計/開発の基本と2つの方式による実装-

    インタプリタの作り方 -言語設計/開発の基と2つの方式による実装- Robert Nystrom(著), 吉川邦夫(訳) インプレス 5,940円 (5,400円+税) 書はインタープリタのプログラミングを材料にプログラミング言語の開発を学ぶものです。プログラミング言語を構成する「字句解析」「式評価」「制御フロー」「関数」などの要素、さらに書では「クロージャ」「スーパークラス」「ガベージコレクション」などモダンな言語における定番の要素も取り扱います。 関連サイト書の関連ページが用意されています。 インタプリタの作り方 -言語設計/開発の基と2つの方式による実装- | インプレス内容紹介●言語を書く 書はインタープリタのプログラミングを材料に、プログラミング言語の開発を学ぶものです。プログラミング言語を構成する「字句解析」「式評価」「制御フロー」「関数」などの要素、さらに書では

    インタプリタの作り方 -言語設計/開発の基本と2つの方式による実装-
  • Build software better, together

  • Node.jsでつくるNode.js - もくじ - Qiita

    はじめに 「RubyでつくるRuby ゼロから学びなおすプログラミング言語入門」(ラムダノート, Amazon) というを手を動かしながら読んで、非常に感銘を受けました。そんなおりに PythonでつくるPythonという記事を読み、自分でもNode.jsでミニNode.js作りにチャンレンジすることにしました。 予想以上に手間取り端折った部分もありますが、なんとか最後はブートストラップまで行くことができました。 目次 ミニインタープリター編 Step1:ソースのパース ... 初めての esprima Step2:単純化 ... 抽象構文木(AST)を単純化 Step 3: +演算子を評価する ... 足し算を実行 Step 4: 四則演算で電卓を作る ... 電卓を作るところまでと、比較演算子の実装 Step 5: 変数を使う ... 変数の宣言、代入、参照 Step 6: 条件分岐

    Node.jsでつくるNode.js - もくじ - Qiita
    sonota88
    sonota88 2021/07/05
    「RubyでつくるRuby」の Node.js 版
  • Crafting Interpreters

    Ever wanted to make your own programming language or wondered how they are designed and built? If so, this book is for you. Crafting Interpreters contains everything you need to implement a full-featured, efficient scripting language. You’ll learn both high-level concepts around parsing and semantics and gritty details like bytecode representation and garbage collection. Your brain will light up w

  • Go言語でつくるインタプリタがグランドフィナーレを迎えました - ゆーすけべー日記

    いよいよ「Go言語でつくるインタプリタ」がグランドフィナーレを迎えた。 そして、これで終わりだ。やり遂げた。これまでは私が誘う小さなお祝いを軽くあしらってきたとしても、いよいよ愉快なパーティ帽を被ってよい時間だ。 抜粋:: Thorsten Ball “Go言語でつくるインタプリタ” やったー。パーティーだ! なんでこのを読んだの? 今までコンピュータサイエンをまともに学んだことがなかった。 大学生の時分、授業では「プログラミング」と銘打つものがあるくらいで、 Javaでアプレットを作ったり、Cでシステムプログラミングをしたりという程度だった。 あとは独学。あくまで目的達成のための学習。 GUIやWebアプリの高レイヤーの実装ばかりで、 中がどうなってるのかあんまり理解できてなかった(いわゆる電子工作は好きだったけど)。 で、なんとかやってきたんだけど、 コンピュータサイエンスを学んでい

    Go言語でつくるインタプリタがグランドフィナーレを迎えました - ゆーすけべー日記
  • Crafting Interpreters

    Ever wanted to make your own programming language or wondered how they are designed and built? If so, this book is for you. Crafting Interpreters contains everything you need to implement a full-featured, efficient scripting language. You’ll learn both high-level concepts around parsing and semantics and gritty details like bytecode representation and garbage collection. Your brain will light up w

  • jqのGo実装 gojq を作りました! ― スタックマシン型インタープリタによるイテレータセマンティクスの実装 - プログラムモグモグ

    jqはとても便利なコマンドです。 JSONを返すAPIを実装するときや、SaaSのAPIから特定の情報を抜き出してシェル変数に代入するときなど、web開発や運用には欠かせないツールとなっています。 しかし、私にとってjqのクエリを一発で書くのは容易ではなく、思い通りの出力が得られないことがよくありました。 難しいエラーメッセージに悩まされて、jqで書くのを諦めて別の言語で書き直すこともありました。 jqの十八番と思える場面で使いこなせないのは、なかなか悔しいものがあります。 ツールを使うのが難しいなら、同じものを作ってしまえばよいのです。 jqの全ての機能を実装する jqを言語としてきちんと書けるようになる jqを完全に理解する jqの全ての機能を自分で実装してしまえば、jqがどういうものか、クエリがどのように処理されるのか、詳しくなれるはずです。 jqを得意な言語と言えるようになって、ク

    jqのGo実装 gojq を作りました! ― スタックマシン型インタープリタによるイテレータセマンティクスの実装 - プログラムモグモグ
  • 1