Google Groups

Re: [SIP 18] New SIP: Modularizing language features


Stuart Roebuck Mar 18, 2012 4:14 PM
Posted in group: scala-sips
In my experience you have two issues that occur regularly:

a) Team members try to understand someone else's code (from the team) and don't know how to find an explanation of those square brackets.  If they could rely on looking for imported language features in the code they were looking at (and not hidden in some compiler option) then they could investigate the feature and figure it out.

b) Team members copy and paste a bit of code that seems like the code they need or is included in some tutorial.  They don't understand the finer features and it works or it doesn't.  If it doesn't then they don't know where to look for explanations of the features they don't know they are using.

Stuart.

Sciss wrote:
exactly. but do you expect someone to start writing MyClass[T] just to try out what happens if you type square brackets, accidentally getting them in the right place (after a class name), and accidentally filling them correctly (placing a type name inside), only to wait for the compiler to say "hey, you are using a new language feature -- it's called higher-kinded-types. you need to import language.higherKinded"? don't you think it's more likely you come across them while reading for example http://www.artima.com/pins1ed/type-parameterization.html and then you try out to write a higher kinded class.

so tell me what the gain of the switch is?

if you want code assistance while learning the language -- that's the job of the IDE presentation compiler.

best, .h.h.


On 18 Mar 2012, at 22:52, Stuart Roebuck wrote:

So the question for us all, is surely the bigger question of whether this feature helps use, management, growth and adoption of the language in the large?