Hacker News new | ask | show | jobs
by flakes 22 days ago
How is a package level interface check a “language hack”? They are straight forward and provide a user the same compile time guarantees as the Java implements keyword.
1 comments

Because they are a workaround for what should be a language feature in first place, just like on ML languages to type check structural types.
What exactly isn’t a language feature? Or do you have issues with semantics?

    var _ Foo = (*Bar)(nil)
The statement asserts that Bar struct pointers are assignable to a Foo interface.

I do agree it’s not as clean looking as the Java implements keyword, but it’s already a fairly terse pattern and IMO the inconvenience does not justify introducing new language syntax.