@_tulayang

> I had to say I didn't see any advantage of Go interface.

I'm not a Go programmer, but one obvious advantage I see from reading the docs 
is that, unlike in Java, one doesn't need to define the types (rect and circle 
in the gobyexample example) as implementing a geometry interface, as one would 
have to do in Java.

That advantage is not unique to Go. The object system of the OCaml language 
provides the same ability.

> Side effects exsits in Scheme. You can call set! to change any external 
> variable anytime.

That sounds like an anti-feature to me, kind of like the anti-feature of Python 
(discussed on another thread here) that allows one to add object attributes at 
any time. While I reject the dogma of pure functional programming, I think side 
effects should be localizable. Programming in a _mostly_ side-effect free style 
is a good thing.

That said, I'm happy that Nim has generics, and even if it had some 
interface-like feature, I'd still want generics, just like many Go programmers 
do.

Reply via email to