Nemerleなどの言語は、コードの考え方をサポートしています。彼らの実用的な使い方を知りたい。コードの使い方は?
答えて
構築物はまた、少なくとも[ウィキペディア(http://en.wikipedia.org/wiki/Chord_(concurrency)によれば、Cω言語(ならびにポリフォニックC位)に存在するように思われる。
(複数のデータベース・プログラミングを含むように見えるコードの主な用途具体的には、join calculus)、それは同時実行構築物であることを考えると驚くべきことではない。それよりも、私は知らないと怖い。
和音を並行処理するために使用されている。定義がhere可能です。
探しているビット:C位を含むほとんどの言語で
は、クラスのシグネチャのメソッドは、その実装のコードと全単射対応している - 宣言されたメソッドごとに、ありますそのメソッドが呼び出されたときに何が起こるかについての単一で明確な定義。しかし、Cωでは、ボディは、(同期および/または非同期の)メソッドのセットに関連付けることができます。このような定義をコードと呼び、特定の方法が複数のコードのヘッダーに表示されることがあります。コードの本体は、ヘッダ内のすべてのメソッドが呼び出された後にのみ実行できます。したがって、メソッドが呼び出されると、0、1、またはそれ以上のコードが有効になります。
コードが有効になっていない場合、メソッド の呼び出しがキューに入れられます。メソッド が非同期の場合、この単純に には、引数(メッセージの内容 )をキューに追加する必要があります。 メソッドが同期の場合は、 呼び出しスレッドがブロックされます。 が単一の有効化されたコードの場合、 の一致に含まれる呼び出しの 引数は待ち行列から取り除かれ、ブロックされた スレッドは起動され、 が呼び出され、本体が実行されます。非同期の メソッドだけを含む コードが実行されると、新しい スレッドでコードが実行されます。複数のコード が有効になっている場合、不特定の が選択されて実行されます。 同様に、特定のメソッドに対して複数のコール がキューに登録されている場合、 は、一致するものがある場合に がコールされないように指定しません。
てみNemerle計算式:
https://code.google.com/p/nemerle/source/browse/nemerle/trunk/snippets/ComputationExpressions/
いくつかの例:
def upTo (n : int)
{
comp enumerable
{
mutable i = 0;
while (i < n)
{
i ++;
yield i
}
}
}
def manyTimes : IEnumerable [int] =
comp enumerable
{
yieldcomp upTo(2); // 1 2
yield 100; // 100
yieldcomp upTo(3); // 1 2 3
yield 100; // 100
yieldcomp upTo(10); // 1 2 3 .. 10
}
def fn(n)
{
comp async
{
if (n < 20)
returncomp fn(n + 1);
else
return n;
}
}
def f(n1, n2)
{
comp async
{
defcomp n1 = fn(n1);
defcomp n2 = fn(n2);
return $"$n1 $n2";
}
}
private HttpGet(url : string) : Async[string]
{
comp async
{
def req = WebRequest.Create(url);
using (defcomp resp = req.AsyncGetResponse())
using (stream = resp.GetResponseStream())
using (reader = StreamReader(stream))
return reader.ReadToEnd();
}
}
ここにいくつかの例があります。(ロシア語の記事ですが、英語のコードもありますが)http://habrahabr.ru/blogs/programming/108184/
- 1. npm国コードの使い方
- 2. C++でのCコードの使い方
- 3. Googleのコードの使い方jquery $ .jsonp
- 4. コードの法則の使い方
- 5. Simple injector、Repository and Contextコードの使い方
- 6. UnReachableコード - プリプロセッサ設定の使い方
- 7. このコードの最後のコンマの使い方は?
- 8. Nhibernateのコードによるマッピング、ストアドプロシージャの使い方は?
- 9. 複数のTFRコードがある場合、slim.dataset_data_providerの使い方は?
- 10. このC++コードでcatchの使い方はあります
- 11. 都市コード配備:$ {p:stepName/propName}の使い方は?
- 12. Qt内のQWS_MOUSE_PROTOコードの使用方法
- 13. このjavascriptコードの使用方法
- 14. intellijの.propertiesリソース(i18n)キーのコードの使い方を調べるには
- 15. pythonコードの不具合setメソッドの使い方
- 16. Coffee-Bytesコードの折り畳みの使い方
- 17. datagridtemplatecolumnの背後にあるコードとその使い方は何ですか?
- 18. @Componentクラスのフィールドを同時に使う方法は?このコードに続いて
- 19. 私は.aspxファイルと.csファイルのC#コードの両方でJavaScriptコードを使用していますか?
- 20. カミソリのjqueryコードの中でビューバッグの値を使う方法は?
- 21. バーコードデコード回転コード - Android用zxingの使い方
- 22. javaコード接続の使い方remote hadoop hdfs?
- 23. matlabから生成されたコードの使い方
- 24. コードのないASP.NETページで 'Using'キーワードを使用する方法
- 25. DHTMLXビジュアルエディタ。生成されたコードの使い方
- 26. QtScriptコードのプロファイル方法は?
- 27. このコードを使用する正しい方法は何ですか?
- 28. QRコードのURLを使ってウェブページにリダイレクトする方法は?
- 29. コードを使用してボタンのクリックをシミュレートする方法は?
- 30. コードを使ってナビゲーションバーのタイトルカラーを設定する方法は?
この質問をする理由はわかります。 "c#"、 "chord"などのグーグルリングは本当に役に立ちません! – Noldorin
よくC#はコードをサポートしていません、ポリフォニックバージョンでしたが、言語はもう存在しないと思いますよね? –