Pre-SIP: A Syntax for Collection Literals Scala is lacking so far a concise way to specify collection literals. This makes it an outlier compared to many other popular languages. We propose to change this by introducing a special syntax for such literals. The syntax is quite conventional: A sequence is written as a comma-separated list of elements enclosed in square brackets. For instance, here is a diagonal matrix of rank 3: [[1, 0, 0], [0, 1, 0], [0, 0, 1]] This pre-sip is a follow-...
@smoredahl Not to mention that the people who want to add things don’t even want to deal with the fallout, for instance figuring out what gets cut from presentations, workshops, tutorials.
It’s just sad that nobody cares about learners/beginners when adding yet-another-thing.
I understand your perspective, but I argue that there is a difference between adding a new feature that is unique to your language (I think we would both agree that Scala does not need any more of these), and adding a feature that makes the language more consistent with the syntax that most people coming from other languages expect to be there.
I teach Scala at a university level, so I very much do care about learners and beginners. In my opinion, having a syntax for collection literals would make the language a little more approachable, as my students are coming from languages that do provide this syntax (e.g., Python).
@smoredahl That’s an absolute dog shit reason to be completely honest.
No matter how familiar it makes the language, it increases the inconsistency within the language itself, not to mention the complexity that comes with it.
I have a whole presentation about how stupid increasing familiarity at the expense of simplicity and consistency is.
One of the core reason why we can’t have nice things in computing.
I see what you’re saying, but isn’t familiarity worth something? After all, Brainfuck is incredibly simple and consistent :)
@smoredahl Familiarity is designing for existing users, simplicity is designing for everyone; see https://soc.me/languages/familiarity.
(I have had this discussion many times. I have heard every single argument on why *this* time repeating a past mistake for familiarity is good. It never works out.)
> After all, Brainfuck is incredibly simple and consistent :)
By that measure C++ should be very familiar, because it contains every feature ever imagined by someone. We know how that one worked out.
deleted by creator