| パラダイム | マルチパラダイム:オブジェクト指向、分散、データフロー |
|---|---|
| デザイン: | E. ディーン トリブル |
| 初登場 | 1996 |
| タイピングの規律 | 未入力 |
| 影響を受けた | |
| 並行論理プログラミング、アクター | |
| 影響を受けた | |
| え | |
Joule は、分散アプリケーションを構築するために設計された、機能安全で超並列な データフロー プログラミング言語です。[1]ブロック内のステートメントの順序はブロックの操作とは無関係なほど並列です。ステートメントは、入力に基づいて可能な限り実行されます。Joule ではすべて、メッセージを送信することによって行われます。制御フローはありません。代わりに、プログラマーがデータの流れを記述するため、データフロー プログラミング言語になります。[要出典]
Jouleの開発は1994年にカリフォルニア州パロアルトのAgoricsで始まりました。[2]これはEプログラミング言語の前身と考えられています。[3] [4]
言語構文
数字はASCIIの 0~9から成り、識別子はUnicode の数字、文字、および文字で始まる演算子文字のシーケンスです。また、Unicode シーケンス (空白を含む) をストレート (' ') または標準 (' ') の単一引用符で囲んで識別子を形成することもできます。バックスラッシュはエスケープ文字です。キーワードは、情報を送信するためのキーワード•を除き、文字で始まる必要があります。演算子は、 Unicode の数字、文字、および演算子文字のシーケンスで構成され、演算子文字で始まります。ラベルは識別子の後にコロン (':') が続きます。[5]
根本的に、Joule は命令型言語であり、したがって文ベースの言語です。豊富な式構文を持ち、簡単にその下にあるリレーショナル構文に変換できます。複雑な式は別の文になり、元の式の場所が結果チャネルのアクセプタへの参照に置き換えられます。したがって、ネストされた式は、埋め込み文と完全に並行して計算されます。[5]
金額 <= 残高の場合
• 口座引落し: 金額
それ以外
• アカウントレポートバウンス:
終わり
識別子はサーバーと通信するためのチャネルを指定することができます。この場合、そのチャネルにバインドされていると言われます。 [5]
参考文献
- ^ Miller, Mark Samuel (2006)。「堅牢な構成: アクセス制御と同時実行制御への統一されたアプローチに向けて」ジョンズ ホプキンス大学。
{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)が必要です - ^ フリーモント、デイヴィッド(1994年10月)。「サイバー斧を待つ」スピン誌10 ( 7):88。
- ^ 「Agoric Computing & Smart Contracts の関連リンク」。erights.org。Eの
Joule に対する恩義はいくら強調してもし過ぎることはない。
- ^ 「E プログラマーズ マニュアル」。Electric Communities。1996 年 7 月 19 日。E
プログラミング言語は、現在 Dean Tribble、Norm Hardy、および Agorics, Inc. の同僚によって開発されている言語 Joule から大きな影響を受けています。
- ^ abc 「Joule: 分散アプリケーションの基礎: 4.2. 式」(PDF) . 1 . Agorics, Inc. 2004 年 12 月 20 日: 31–33 . 2012 年 8 月 29 日閲覧。
{{cite journal}}:ジャーナルを引用するには|journal=(ヘルプ)が必要です
外部リンク
- Joule: 分散アプリケーション基盤
- C2: Promise パイプライン
