• [^] # Re: Beurk

    Posté par (site web personnel) . En réponse à la dépêche Scala as a first programming language avec Bruce Eckel. Évalué à 2.

    La page que tu listes n'a que deux syntaxes différentes :
    fac = (\(n) -> ...)
    et
    fac 0 = 1
    fac n = n * fac (n-1)

    qui sont dues au fait que le langage a des fonctions d'ordre supérieur.

    La syntaxe fac (n+1) = (n+1) * fac n a été retirée il y a longtemps car elle est ambiguë en cas de surcharge de "+".

    Tout le reste n'est qu'une réécriture de l'algorithme et se fait aussi bien dans n'importe quel autre langage.

    Je trouve par exemple ignoble qu'en scala, on puisse écrire "objet.method(args)" or "objet method args".
    Il est pas du tout évident que le sens est le même, et c'est même contre-intuitif je trouve !