タグ

javascriptとimplementationに関するjjzakのブックマーク (5)

  • JavaScript で Lisp の処理系 (と REPL) を実装してみた - mooz deceives you

    MiSPLi: http://mooz.github.com/mispli/ MiSPLi Emacs に出会ったのが三年前. それから一年程して elisp をいじり始めたので, 僕と Lisp との付き合いはかれこれ二年ほどになる. JavaScript を始めたのが一年前だから, 僕の中では C 言語に次いで付き合いの長い言語だ. 必要にかられたときにちょこちょこと elisp を書いて, 終わったらしばらく別れを告げる. そんな中途半端な付き合いを続けていた三月も終盤, 竹内先生の書かれた「初めての人のための LISP」を読み, その内容に深い感銘を受けた. Lisp を Lisp で実装する, といった章があり, これまで何となしに使っていた Lisp の中身を垣間見ることができたような, そんな気分になっていた. その時に, 「ひょっとしたら僕にも Lisp の処理系を実装でき

    JavaScript で Lisp の処理系 (と REPL) を実装してみた - mooz deceives you
  • » 土日で作るコンパイラ: エスキュービズム ラボ Blog

    数字Numは0か、先頭が0でない0から9の文字列です。 これで文法を定義できました。 実際に動くプログラムにするため、コンパイラコンパイラとよばれる、言語処理系の開発に特化したコンパイラを使用してみましょう。この記事では、Javaによるコンパイラコンパイラ実装であるJavaCCを使います。 JavaCC:https://javacc.dev.java.net/ Downloadsからを取得して適当なフォルダに展開してください。 展開したフォルダのbinフォルダにパスを通せばjavaccコマンドを利用できるようになります。 ところで、上記のEBNF表記上は特に区別されていませんが、一般に、言語処理系は字句解析と構文解析とよばれる処理ににわけてソースコードを解析します。 字句解析は構文解析の準備処理です。まず入力された文字列を空白文字や特定の記号などで区切っていきます。区切られたそれぞれの文字

  • Tamarin 近況 - steps to phantasien t(2008-05-06)

    公開. から一年半. 最近はどうなってんのなかなーと Tamarin 周辺を見てみると, いろいろ変わっていた. 目玉は新しい JIT の仕組みである "Tamarin-Tracing". 略して TT. それと, TT に付随して入った Forth によるインタプリタ実装. 例のごとく マイコミジャーナル に ニュースがあった. よくまとまっているけれどまとまり過ぎている. もう少し詳しくみてみることに. 一次情報は ソースコード, Mozilla Wiki や tamarin-devel リスト などを参照ください. アーキテクチャ概観 これまでの Tamarin (Tamarin Central: TC) は, JIT の際に ABC -> MIR -> ネイティブコードと 2 段階の変換を行っていた. TT ではこれが 1 段増え, ABC -> IL -> LIR -> ネイティ

  • Forthfreak wiki

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    Forthfreak wiki
    jjzak
    jjzak 2007/08/14
    Bashで実装したForth
  • CodeZine:JavaScriptでつくるSchemeインタプリタの基礎の基礎(lisp)

    はじめに 現存するプログラミング言語の中で2番目に古いのがLispです。生まれは古くても、いまだに使われ続け、また、Rubyなどの新しい言語にも影響を与えています。そのLispの派生であり、シンプルさが売りなのがSchemeです。 ここではSchemeの簡単なインタプリタをJavaScriptで作ってみます。対象読者 稿はLispやSchemeは少し触ったことはあるけど、インタプリタは書いたことがないという方を読者対象としています。また、JavaScriptの文法や、簡単なデータ構造についての知識を前提とし、説明は省きます。必要な環境 テキストエディタと、JavaScriptが動くWebブラウザがあれば十分です。他に特に用意するものはありません。概要作成するインタプリタについて インタプリタのコードはJavaScriptで書き、HTMLのフォームを使って、Schemeのプログラムの入力お

  • 1