Hatena::Groupcadr

わだばLisperになる このページをアンテナに追加 RSSフィード

2004 | 12 |
2005 | 01 | 02 | 07 | 10 | 11 |
2006 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 11 |

2010-07-04

(32)Concurrent Common LISP(1988)

| 20:20 | (32)Concurrent Common LISP(1988) - わだばLisperになる を含むブックマーク はてなブックマーク - (32)Concurrent Common LISP(1988) - わだばLisperになる

まったりとCiNiiのLISP関係の論文を漁っておりますが、今回は、

Concurrent Common LISPは、Concurrent LISPというLISP1.5をベースに並列処理機能を付加した処理系のベースをCommon Lispにしたもののようです。

Concurrent LISPでは、プロセスは、それ単体でフォームを評価することができる実体として定義されているそうで特徴としては、

  1. 動的に起動され親子関係がある
  2. プロセスのIDもしくは、プロセスの親子関係でプロセスを特定できる
  3. プロセス間のコミュニケーションのため変数の共有とメッセージの送信機能がある

等があるそうです。

Common Lispには並列の機能はありませんが、並列機能の拡張として

  • starteval
  • cr
  • ccr

という3つのスペシャルフォームを用意しているようです。

また、プロセス間の変数の共有は、親プロセスの大域変数で行なうとのこと。

ちなみに、Concurrent Common LISPが稼動していたマシンはどうやらSonyのNEWSだった模様。