Quando ho il seguente codice:C'è qualcosa nella clausola 'where' in Haskell calcolato solo una volta?
func n = m ++ [1] ++ m ++ [0] ++ m
where m = func2 n
Quante volte è la funzione func2 chiamato? Solo una volta, nella clausola where? O è solo calcolato di nuovo ogni volta che uso m?
grazie - molto buon punto - In effetti non ci avevo pensato affatto. È davvero difficile dare risposte corrette su Haskell quando si tratta di dettagli come questo - di solito c'è un'estensione che rende inutilizzabile l'intuizione: * ( – Carsten