タグ

lispとJavaに関するt_43zのブックマーク (4)

  • Armed Bear Common Lisp (ABCL) - ANSI Common Lisp on the Java Virtual Machine

    Armed Bear Common Lisp (ABCL) is a full implementation of the Common Lisp language featuring both an interpreter and a compiler, running in the JVM. Originally started to be a scripting language for the J editor, it now supports JSR-223 (Java scripting API): it can be a scripting engine in any Java application. Additionally, it can be used to implement (parts of) the application using Java to Lisp

  • Part4 Javaで作るオリジナル言語

    Part4では,Lisp(リスプ:List Processor)インタプリタをJava言語を使って作っていきます。Lispは非常に歴史が古く,様々な分野で利用されている言語です。しかし,皆さんの中にはLisp自体をよく知らないという方もいらっしゃるかもしれません。どんなものを作るかわからないままでは面白みも半減してしまいますから,まずはLispのごく基的な動作を紹介しましょう。 まずは簡単Lisp講座 Lispの質は,すべてがリスト(正確にはS式,詳細は後述)で表現されることにあります。リストは要素を順序付きで並べたもので,“(1 2 3 4)”のように要素の並びをカッコでくくって表記します。このリストの要素は1,2,3,4の四つです。 「すべてがリストで表現される」という言葉の通り,Lispではプログラムもこのようなリストとして表現します。Lisp処理系は,与えられたリストの一つ目の

    Part4 Javaで作るオリジナル言語
  • JVM上のLISPの検討

    JVM上に両方の主な方言の実装がありますが、Schemeがより完成されています。Armed Bear Common Lisp (www.armedbear.org/abcl.html)は、合理的に完成されたCommon Lisp規格の実装ですが、別のCommon Lispシステムがインストールされていないかぎり、ディストリビューションをビルドできないという問題があり、初心者には悩みの種になるかもしれません。 Scheme陣営には、2つの主なプレーヤー、Kawa (www.gnu.org/software/kawaとSISC (www.sisc-scheme.org-- Schemeコードの第2のインタプリタ)があります。この記事のサンプルではKawaを使用します。Kawaは、実際にはJavaバイトコードにコンパイルされた新しい言語を作成するフレームワークであり、Schemeはその実装の1つ

    JVM上のLISPの検討
  • Lisp言語を元にJavaScriptやCSSファイルを生成「ParenScript」:phpspot開発日誌

    ParenScript ParenScript is a small lispy language that can be compiled to JavaScript. Lisp言語を元にJavaScriptCSSファイルを生成「ParenScript」。 次のLISPコードをまず書きます。 (js (defun foobar (a b) (return (+ a b)))) ParenScript Compilerを使ってコンパイルすると、次のJavaScriptコードに変換されます。 function foobar(a, b) { return a + b; } Lisperにはうれしい機能なんでしょうかね。 それにしても、1つの言語を書いて、他の仕組みも作成する仕組みがあれば、1言語のみ知っておけば他の物も作れる、ということでなかなか便利ですね。 言語間の仕様の違いなどもあるので

  • 1