Live data from Hacker News

An opinionated history of programming languages

artagnon.com

111–120 of 135 posts

Re: An opinionated history of programming languages

#111
post #7

Earlier quoted context omitted.

For that matter, PHP is conspicuously absent, for all I'm no fan.

If PHP is included, it should be colored red ("Unlikely to influence anything in the future, due to remarkably poor design") as well... If the author already classifies Go, JavaScript, or even time-tested FORTRAN and Java into this category, it's all but fair to include PHP. On the other hand, unlike the popular beliefs, the author doesn't consider Perl to be the case here? Anyway, interesting opinion.

Whilst I've worked with older PHP which was indeed awful. The modern stuff is quite OK. PHP has drifted into a decent design recently. I hope that any future language designer will take PHP as a case study of incremental improvement.

Re: An opinionated history of programming languages

#112

"FORTRAN: Unlikely to influence anything in the future due to remarkably poor design". Stops reading there

That made me chuckle, I still work on Fortran applications. Some were written in the 70s/80s, but maybe that just means the industries I've worked in are a bit _inflexible_?

Re: An opinionated history of programming languages

#113

Earlier quoted context omitted.

I want this to be true, by the way. As I mention in some other comment, I think Python is rather mediocre as an actual language for building software. Its appeal cannot be denied, but a majority of my peers would really like to use a language that has its tooling shit together. Python is the only language I've had to deploy that makes me understand why anybody would want to use containers.

Maybe we should separate the evolution of languages from the evolution of package/versioning systems. They do tend to go hand in hand, but that has more to do with logistics and organizational issues than any technical necessity.

But like R has a great packaing system, and it copied Perl, which is much older than Python. Meanwhile Python has a bunch of incompatible packaging systems which cause so much pain to so many programmers.

Did you know that pip won't even resolve dependencies, and will break your programs silently? I certainly didn't, because Python wasn't my first language and therefore I assumed that the package manager will handle dependencies.

Like seriously, when a language designed by statisticians for statisticians (R) has a better packaging story than everyone's second favourite language, something has gone horribly wrong.

Re: An opinionated history of programming languages

#114

Earlier quoted context omitted.

Maybe we should separate the evolution of languages from the evolution of package/versioning systems. They do tend to go hand in hand, but that has more to do with logistics and organizational issues than any technical necessity.

But like R has a great packaing system, and it copied Perl, which is much older than Python. Meanwhile Python has a bunch of incompatible packaging systems which cause so much pain to so many programmers. Did you know that pip won't even resolve dependencies, and will break your programs silently? I certainly didn't, because Python wasn't my first language and therefore I assumed that the package manager will handle…

> R has a great packaing system, and it copied Perl

I almost used Perl as an example of Python's inverse - a crappy language wrapped in a good packaging system. For its time CPAN was pretty great. All of the things today that people are likely to hold up as being better drew inspiration from it.

> which is much older than Python

Perl 1987, Python 1989. So yes it's older, but much older?

Re: An opinionated history of programming languages

#115
post #68

Earlier quoted context omitted.

The author seems to have restricted the entries to languages still taught and used, but missed COBOL and maybe C#. I can't really blame him, in either case.

He also missed PHP...

Visual Basic, Swift, and even Scratch also rank higher on usage lists than some of those that are on the chart. Chapel is likely to be more influential. The "limited to languages being taught or used" excuse is super thin.

Re: An opinionated history of programming languages

#116
post #63

Earlier quoted context omitted.

> Those features are still finding their way into C++. Not the only area in which C++ is 30 years (and counting) behind state of the art. > When was the last time The OP is supposedly about history, thus current usage is irrelevant. There's no longer a Mongol Empire either, but its existence is still historically important and only the worst kind of dilettante would try to write a history of the world without mention…

Yet, other languages are, also, only just getting similar features. The author seems to prefer to mention languages that are still taught and used, and to neglect those that are not. It being an "opinionated" history, I can only find fault where he breaks his own rules. Maybe he should mention Korn shell, for example, which became Posix shell and bash. But only Bourne shell features affected modern languages.

Did you notice that the author added Algol and Simula since we had this exchange? Kinda blows apart your theory of what the criteria were.

Re: An opinionated history of programming languages

#117

Earlier quoted context omitted.

But like R has a great packaing system, and it copied Perl, which is much older than Python. Meanwhile Python has a bunch of incompatible packaging systems which cause so much pain to so many programmers. Did you know that pip won't even resolve dependencies, and will break your programs silently? I certainly didn't, because Python wasn't my first language and therefore I assumed that the package manager will handle…

> R has a great packaing system, and it copied Perl I almost used Perl as an example of Python's inverse - a crappy language wrapped in a good packaging system. For its time CPAN was pretty great. All of the things today that people are likely to hold up as being better drew inspiration from it. > which is much older than Python Perl 1987, Python 1989. So yes it's older, but much older?

Fair, I realised that the difference wasn't that large after I posted.

I'm just so annoyed by Python's (lack of a) packaging system that it makes me prone to hyperbole. It's been frustrating me at work all week, and I suspect that it will be a low-grade annoyance for me in my career for the next few years, as I'm a Data Scientist and hence need to deal with Python a lot.

Re: An opinionated history of programming languages

#118
post #78

Earlier quoted context omitted.

I want a modern C. I love/hate C. I mostly love Go. It has warts, but the philosophy works _for my brain_. Python will gain usecases as a meta-language as the ability to automatically wrap lower abstraction libaries improves. I see Julia eating much of Python's lunch, then python abstracting its way over julia, just because it can.

> Python will gain usecases as a meta-language as the ability to automatically wrap lower abstraction libaries improves. I see Julia eating much of Python's lunch, then python abstracting its way over julia, just because it can. A big problem for Python as a glue language is interproceedural optimizations. In many important high performance applications, you really need the compiler to be able to make optimizations t…

I totally get your point, but that's still below the level of abstraction I'm talking about. Basically it boils down to, python's main trick is metaprogramming. If your interprocess optimization is a bottleneck, then write a framework which lets you put those pieces together under the hood.

> Furthermore, Julia has much power powerful metaprogramming facilities than Python does.

Until someone writes a way to import julia code directly into python/autogenerate it from python. Anyone who says "well then you're not really writing python" is missing the whole point: writing python is all about exactly this sort of tip-of-the-abstraction-iceberg trickery.

Sure, you can call python from Julia as well. So it boils down to "which is the better glue language?" This isn't a competitive thing, it's just literally what Python is meant to do.

https://pyjulia.readthedocs.io/en/latest/usage.html

Re: An opinionated history of programming languages

#119
post #86

Earlier quoted context omitted.

> Python will gain usecases as a meta-language as the ability to automatically wrap lower abstraction libaries improves. I see Julia eating much of Python's lunch, then python abstracting its way over julia, just because it can. A big problem for Python as a glue language is interproceedural optimizations. In many important high performance applications, you really need the compiler to be able to make optimizations t…

I can second this. I once implemented my own sparse matrix multiplication because I needed it in numba. Further, the type of automatic differentiation that is possible now is game changing. On the other hand Julia is a terribly designed language in some respects. Compare python error messages to Julias. It has all the problems of c++ templates baked in from the start. And latency is a real issue for now. I am always…

There's actually a lot of work going into making better error messages right now. In 1.6 we're getting better highlighting of them in the REPL to emphasize the parts of the stacktrace that we think are actually relevant to the problem, and there's some discussion about mechanisms to mark functions as 'internal' so that they don't appear in stacktraces unless toggled to do so.

Re: An opinionated history of programming languages

#120
post #63

Earlier quoted context omitted.

Yet, other languages are, also, only just getting similar features. The author seems to prefer to mention languages that are still taught and used, and to neglect those that are not. It being an "opinionated" history, I can only find fault where he breaks his own rules. Maybe he should mention Korn shell, for example, which became Posix shell and bash. But only Bourne shell features affected modern languages.

Did you notice that the author added Algol and Simula since we had this exchange? Kinda blows apart your theory of what the criteria were.

Or they changed.
Post reply on HN