• [^] # Re: Mais sinon, pourquoi je devrais m'intéresser à ce énième langage

    Posté par . En réponse à la dépêche Quelques nouvelles de Go, le langage de programmation. Évalué à 5.

    En Scala tu peux avoir des interfaces a la volée (comme sur la méthode inTheForest)

    class Duck {
    def quack = println("Quaaaaaack !")
    def feathers = println("The duck has white and gray feathers.")
    }

    class Person {
    def quack = println("The person imitates a duck.")
    def feathers = println("The person takes a feather from the ground and shows it.")
    }

    def inTheForest(duck: { def quack; def feathers }) = {
    duck.quack
    duck.feathers
    }

    Des interfaces implicites comme go :
    type Duck = { def quack; def feathers }

    def inTheForest(duck: Duck) = {
    duck.quack
    duck.feathers
    }

    Ou des traits explicites (equivalent du duo interface/classe abstraite de Java)