バージョン1から存在する物とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > バージョン1から存在する物の意味・解説 

バージョン1から存在する物

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/05/13 14:19 UTC 版)

Unlambda」の記事における「バージョン1から存在する物」の解説

.H」や「.e」などの、「.A」で表されるものは恒等関数 (引数として与えられた値を全く変更せずそのまま返す関数) で、副作用として「A」を表示するのである「i」副作用伴わない恒等関数である。上述Hello world プログラムではダミー引数として使われている。「`.di」というプログラムは、文字「d」を表示する関数(「.d」)に引数iを適用して呼び出すもので、戻り値(評価結果)として関数「i」返し副作用として文字「d」を表示する同様に、「``.l.di」というプログラムでは、まず、関数「 .l」に引数として「.d」が適用され文字「l」が表示されて、戻り値として関数「.d」を返す。そして次に、この戻り値「.d」に対して引数として関数「i」適用され前述通り動作が続く。関数「r」改行文字表示する関数糖衣構文である。 Unlambda言語その他の重要な特徴として、「kA演算子」と「s演算子」がある。kA演算子は、引数の値に関係なく戻り値として A を返す演算子である。つまり、「``kAB」の戻り値は、 B の値に関係なく、いつも A である。 「s」は汎用の評価演算子である。「```sABC」というプログラムは、A、B、Cの値に関係なく、「``AC`BC」と評価される。この「s」と「k」だけでいかなる計算行えという事実は、注目すべき点である。例えば、恒等関数「i」は「``skk」によって実現することができる。なぜなら、「```skkA」は、いかなる A に対しても A を返すからである。 Unlambda言語唯一のフロー制御機構「c」演算子によって提供される現在の継続を伴う呼び出し」(call with current continuation) である。「`cA」というコード評価されると、その瞬間処理系の状態を表す「継続」と呼ばれる特殊なオブジェクト生成される続いて「A」の部分評価されその評価結果に対して先の継続オブジェクト引数として渡される。もしも、その継続引数として渡されることがなければコード「`cA」の評価値は「A」の評価値同じになる。しかし、その継続オブジェクトが「B」に渡されたなら、「A」の実行はすぐに中断されコード「`cA」の全体として評価は「y」になる。 Unlambda言語既定評価戦略先行評価であるが、d演算子つかえば遅延評価をさせることもできる原則としては「`AB」というコードは、まず A そして B を評価し、それから、A に対して B を適用するしかしながら、もし A が特殊な値「d」を評価するなら、B が評価される代わりに、「`dB」が「遅延演算」という特殊なオブジェクトになる。その遅延演算オブジェクト引数 C が適用され時に初めて B が評価される。それ自身副作用がないという点で、`d演算子と`i演算子等価であるといえる。ただし、「`dB」では後に何かの引数適用され場合に B の副作用発生するが、「`iB」では B を評価する時点副作用発生するという点で異なる。 Unlambda言語には「v」という組込演算子もある。これは引数無視してvを返すのである厳密にいうと、この演算子必要不可欠というわけではない。というのは、v演算子は「```s``s`kskk``s``s`kskk」として実現することができるからである。つまり、この演算子利便性のために用意されているものである。(このコードは、不動点演算子 Yを使って、さらに簡単に「`Yk」と表現するともできる。)

※この「バージョン1から存在する物」の解説は、「Unlambda」の解説の一部です。
「バージョン1から存在する物」を含む「Unlambda」の記事については、「Unlambda」の概要を参照ください。

ウィキペディア小見出し辞書の「バージョン1から存在する物」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「バージョン1から存在する物」の関連用語

1
8% |||||

バージョン1から存在する物のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



バージョン1から存在する物のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのUnlambda (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS