4 ms·
"following the latest trends" basically works as a definition for the word "modern" in the context of programming languages. "involving recent techniques" etc.
by gfody 6y ago
"following the latest trends" basically works as a definition for the word "modern" in the context of programming languages. "involving recent techniques" etc. why modern? is a fair question I guess but why not? are there any good arguments against things like type inference, generics and lambdas?
- fiddlerwoaroof 6y agoAre any of those recent techniques?
- gfody 6y agoas far as programming language evolution goes I have to assume "recent" refers to a span of 20 years or so - otherwise I don't think we have any recent techniques
- fiddlerwoaroof 6y agoI’m fairly certain we’ve had lambdas (lisp) for something like 40 years. Type inference (ML/lisp compilers) for 30-40 years. And generics, at least in the sense of parametric polymorphism, (Ada/C++/Java/ML) for about the same amount of time. As far as I can tell, the borrow checker and some features around dependent types are newish, but actually modern features are few and far between.
- aflag 6y agoLisp had lambdas for 60 years, I think ML has had type inference for about 50 (maybe there are earlier languages that had it?), ML also had generics for that long. So, none of your examples were recent developments by your standards. Even in C-like languages, generics were part of C++ (or rather templates, in that case) since the beginning, I think (that's 35 years ago). I think you can make a case for type inference reaching the C language family recently, though.
- gfody 6y agoI mean sure "recent" could refer to a span of even 50 years why not. I wouldn't trade my Roslyn compiler for AGOL68.
- fiddlerwoaroof 6y agoComparing a compiler to a language is comparing apples and oranges.
- gfody 6y agoI disagree I think it's more like comparing an apple to an apple tree
- fiddlerwoaroof 6y agoEither way, it’s hard to compare a 30 year old language to a modern compiler because the modern compiler has benefited from 30 years of optimizations: you can’t tell how the old language would perform with a similar investment.
- aflag 6y agoI see the first paragraph of a language's website as sort of the "elevator pitch" for that language. You probably want to cut down any vague and uneeded words in that context and focus in the defining aspects of your language. Following the latest trends is also vague and, the more precisely you define it, the more you will need a timestamp next to the term. I think it's better to jsut spell out what are the actual features you really care about.