• Imports e variáveis não usadas causam erro de compilação • Sem method overloading ou parâmetros opcionais • Visibilidade é definida pela primeira letra • Interfaces sem declaração (duck typing)
de Duck Typing. "if it looks like a duck and quacks like a duck, it’s a duck." class Duck: def quack(self): print("quack") class Cow: def quack(self): print("muu") def say_quack(quacker) quacker.quack() say_quack(Duck()) say_quack(Cow())
trocar mensagens entre goroutines • Unbuffered e síncrono por padrão • O sender fica bloqueado até o receiver receber o valor • Buffered channels bloqueiam apenas se o buffer ficar cheio