プログラマーになりたい。

プログラミングや写真や本や読書会のことや、日常のこと。

ひさしぶりに翻訳

ひさしぶり、半月ぶりくらいにJCUG Wikiチュートリアルをいじった。

また、同じ関数で、真偽値を、(初期的には不明な)引数と比較できます。:
However, we can do more and use the same functions to compute Boolean values for some (initially unknown) arguments:

Prelude> x && (y || (not x)) where x,y free 
Free variables in goal: x, y 
Result: True 
Bindings:
x=True 
y=True ? 


はじめの式には自由変数xとyが含まれています。これらは、ただの打ち間違いと区別するために、「where...free」節で宣言する必要がありますが、この要件は「:set +free」コマンドであらかじめ自由変数モードにしておくことで回避することもできます。自由変数モードではすべての未定義変数が自由変数としてあつかわれます。
Note that the initial expression contains the free variables x and y as arguments. To support the detection of typos, free variables in initial expressions must be explicitly declared by a “where...free” clause at the end of the expression. This requirement can be relaxed by turning the free variable mode on by the command “:set +free”. In this mode, all identifiers in the initial expression that are not defined in the currently loaded program are considered as free variables:

Prelude> :set +free 
Prelude> x && (y || (not x)) 
Free variables in goal: x, y 
Result: True 
Bindings: 
x=True 
y=True ? 


ところで、4/29に最後に訳した部分がわれながらあまりにもひどくて目眩がした。現在は

これらを使用して論理式の値を評価できます:

となってるけど、これ「真偽表現」とか書いてあるし。その前なんか「ですます調」がくずれてるし。

Curryが関数型言語と大きく異なる点のとして、検索可能性の解決策があります。つまり関数の引数をどう計算するか。具体的には、下記のような真偽値をあつかう関数がPreludeに含まれていたとすると(ちなみに、Curryでは関数を2項演算子としても定義できます。たとえば「x && y」は関数&&の引数x、yへの適用です):
One of the distinguishing features of Curry in comparison to functional languages is its ability to search for solutions, i.e., to compute values for the arguments of functions so that the functions can be evaluated. For instance, consider the following definitions of some functions on Boolean values contained in the prelude (note that Curry also allows functions defined as infix operators, i.e., “x && y” denotes the application of function && to the arguments x and y):

これらの定義は真偽表現の値を評価するために使用できます:
We can use these definitions to compute the value of a Boolean expression:

そういえば、隙間が空いたのは、じぶんで「(疲れちゃってクオリティーが上がらないので)しばらく休もう」と決めたからだった!すっかり忘れてたよ!

Creative Commons License ©2007-2021 IIDA Munenori.