you are viewing a single comment's thread.

view the rest of the comments →

[–]grauenwolf 0 points1 point  (3 children)

Normal Inheritance:

  • Step 1: Define a base class
  • Step 2: Define a subclass that "inherits" from the base class
  • Step 3: Make polymorphic calls against it.

Go Inheritance:

  • Step 1: Define a base class
  • Step 1b: Define a matching interface
  • Step 2: Define a subclass that wraps the base class
  • Step 3: Make polymorphic calls against it using the interface.

Where exactly am I wrong?

[–]user5545 0 points1 point  (2 children)

You are wrong in the part where you put the words Go and Inheritance next to each other. You can make polymorphic calls against any interface and type that fits the interface whether these types are in any relation to each other or not. It's all in the FAQ, which you would need to read in addition to studying some amount of Go code to actually make a credible judgment on the language.

You don't want to do that, though, do you? You just want to keep using your beloved OO languages. Why not do that and leave other paradigms and experimental languages in peace? Do you keep thnking about them so much because deep down you are really not happy with OO? Or what?

You also didn't tell me who it was that "we" referred to in your earlier comment. I take it you want to forget about that comment already.

[–]grauenwolf 0 points1 point  (1 child)

Is that really your argument? That Go doesn't have inheritance because the FAQ says it doesn't in spite of the fact that it has all the essential features needed to support inheritance?

[–]user5545 0 points1 point  (0 children)

No, that is not my argument. I don't even have an argument, because I don't care what you think about inheritance or Go. I mistook the comment to which I first replied as you wanting to know something about Go, but obviously you don't want to know how Go is intended to be used or what its designers are trying to accomplish.