Retourner au contenu associé (journal : Chantonnons en récursion)
Posté par Zylabon le 22 novembre 2012 à 22:35. En réponse au journal Chantonnons en récursion. Évalué à 2.
En Haskell c'est rigolo aussi :
-- love.hs love = blood blood = head head = love main = love
> ghc -XNoImplicitPrelude love.hs > ./love love: <<loop>>
Par contre la version suivante boucle :
import Prelude ((>>), return) love = blood blood = head head = return () >> love main = love
C'est plus « naturel » comme comportement, main étant de type IO (), l'inférence de types remonte jusqu’à head et le trouve de type IO () aussi, et donc l’évaluation de return () est stricte (love en a besoin).
Please do not feed the trolls
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
[^] # Re: "Tail call optimization"
Posté par Zylabon . En réponse au journal Chantonnons en récursion. Évalué à 2.
En Haskell c'est rigolo aussi :
Par contre la version suivante boucle :
C'est plus « naturel » comme comportement, main étant de type IO (), l'inférence de types remonte jusqu’à head et le trouve de type IO () aussi, et donc l’évaluation de return () est stricte (love en a besoin).
Please do not feed the trolls