タグ

lispとjavaに関するkknsdのブックマーク (3)

  • Lisp系でGoogle App Engine開発、Closureという選択肢 | エンタープライズ | マイコミジャーナル

    Web applications for communication and collaboration Google Code Blog: Better performance in App Engine with new Lisp language Clojureにおいて、Google App Engineで稼働するアプリケーションの開発言語としてClojureを選択したユースケースが紹介されている。GAEがサポートしているプログラミング言語はJavaPythonのみだが、Java仮想マシンで動作するプログラミング言語であればJavaバージョンで利用できる。 ClojureはLispの地方言語のひとつ。Java仮想マシンで動作し、インタプリタとしてもコンパイルして直接Javaバイトコードを生成してJava仮想マシンで動作させることもできる。紹介されている内容によればClojureを採

  • ClojureがSTMとLISPをJVMにもたらす

    Clojure(リンク)はLISPファミリの言語のかなり新しいメンバであり、Javaプラットフォームで動作する。2007年に導入され、すで高い関心を集めている。ひとつの理由はClojureの並行処理へのアプローチであり、ソフトウェアトランザクショナルメモリ(STM)のコンセプトを踏まえている。 Stuart Halloway氏は「Programming Clojure」(リンク) (Pragmatic Programmersで公開されている)の著者であるが、このは現在ベータ版である。私達はStuart氏とClojureやSTM、ツール、さらにたくさんのことを話した。 InfoQ: Clojureは並行処理の支援にSTMを使用していますが、STMについて簡単に教えて下さい。 STMはもっと大きな話である、ミュータブルな状態のための明確なAPIの一部です。みなさんのコードを純粋な機能的でミュ

    ClojureがSTMとLISPをJVMにもたらす
  • ガベージコレクションの実装法と評価

    1.はじめに プログラミング言語とはシステム化する対象物を抽象化し、コンピュータで処理可能なコードを記述するために用いる人工言語である。プログラミング言語はコンピュータの機械語と一対一の対応をもったアセンブラから始まり、コンパイラを用いて機械語に翻訳することを前提としたコンパイラ言語、インタプリタと呼ばれるプログラムがソースコードを解釈し実行するスクリプト言語と、記述できる抽象度を高める方向へと進化してきた。 プログラミング言語はその存在理由から、より抽象度の高い記述が行えること、すばやい開発を行える事が求められる。抽象度の高い記述とは、プログラムがどういう処理を行うか(HOW)ではなく何の処理を行うか(WHAT)を記述しやすい構文、機能を持っていることを、すばやい開発とは記述性の高さ、コードの密度の高さ、バグの発生しにくい構文、機能を持っていることをさす。 この抽象度の高い記述、すばやい

  • 1