Diğer 'xyz dilinde golf için ipuçları' ürün yelpazesinden esinlenmiştir. Her zamanki gibi, lütfen genel olarak programlama için değil, yalnızca OCaml'e özgü ipuçları önerin. Cevap başına bir ipucu lütfen.
Diğer 'xyz dilinde golf için ipuçları' ürün yelpazesinden esinlenmiştir. Her zamanki gibi, lütfen genel olarak programlama için değil, yalnızca OCaml'e özgü ipuçları önerin. Cevap başına bir ipucu lütfen.
Yanıtlar:
Tuples sayesinde, aynı anda birkaç değişken tanımlayabilirsiniz. Ve fonksiyonlar birinci sınıf vatandaşlar olduğu için…:
let f,g=(fun x->x+1),fun x->2*x
Ancak şunları yazamazsınız:
let f,g=(fun x->x+1),fun x->2*f x
Hata: Bağlı olmayan f değeri
Ne yazık ki, sorunu kullanarak sorunu önleyemezsiniz rec
:
let rec f,g=(fun x->x+1),fun x->2*f x
Hata: Yalnızca değişkenlerin sol tarafı olarak izin verilir
let rec
OCaml'deki işlevler köri yapılır. Bazen bu gerçeği kullanmak faydalı olabilir.
let n y=f x y
yazılabilir
let n=f x
Aritmetik işlemlere ihtiyacınız varsa, bunları standart önek işlevleri gibi davranmaları için parantez içine alabilirsiniz. (+)
, (-)
, ...
let n=(+)1;;
n 3;;
- : int = 4