Je suis en train d'écrire une spécification de langage, et j'ai besoin de résoudre la question rudimentaire suivante. Supposons que je le (certes artificiel) syntaxe abstraite: <A> ::= <B> | <C>
<B>
Je comprends (I think) que seq Haskell, sera (en général) reduce son premier argument à WHNF, et voir ce comportement comme prévu dans GHCi: λ> let x = (trace "foo" Foo (trace "bar" Bar 100)) in seq x