On Saturday, 3 August 2013 at 19:10:19 UTC, Andre Artus wrote:
On Saturday, 3 August 2013 at 18:56:47 UTC, JS wrote:
On Saturday, 3 August 2013 at 17:45:11 UTC, w0rp wrote:
I can see you saving a little bit of typing with this, but it's
not worth it.


Um, it can actually save a lot of type and errors.

having two places to change is very error prone.

if (cond) { }
switch(cond)

If the condition is complex and one forgets it is the same condition then only changing one block will cause bugs.

It is not a hard feature to have AND it is worth it because it is a near zero complex compiler implementation.

So, depending on how you define "not worth it", which I take "I'm too lazy to implement it", you could be correct.

If the implementation is so obviously trivial why don't you implement a proof of concept? The compiler is open source after all.

because I have better things to do and there is an extreme likelihood it won't be accepted.

People routinely underestimate the ripple effect that adding 'trivial' extensions to a language can have on a language.

Um, and people routinely don't think hard enough about the problem to realize the feature is an orthogonal semantic that has no bearing on anything but what it does.

Why do I know this?

Because the feature is short hand notation that can be directly implemented the long way. If the long way doesn't have problems, then the short way does not have any problems(except if your implementation is bad, but that's not the fault of the short way).

I can write a preprocessor to do the things I need to do. I have done it before. The problem is it is hard to make such features robust without some grammatical context such as an ast.

Reply via email to