Hacker News new | ask | show | jobs
by jwr 2608 days ago
I find Stephen Wolfram to be a an interesting person. On one hand, he is undeniably exceptional and created an impressive computational system. On the other hand, the "Wolfram language" is really a pretty poor design as far as programming languages go, and would not even be noticed if it wasn't for the giant standard library that gets shipped with it, called Mathematica. I use the "Wolfram language" because I have to, not because I want to.

In other words, if I could easily use the Mathematica library from Clojure, I wouldn't give the Wolfram Language a second glance. I can't think of even a single language aspect that would tempt me to use the Wolfram Language [context: I've been a Mathematica user since 1993] over Clojure. I have (much) better data structures, a consistent library for dealing with them, transducers, core.async, good support for parallel computation, pattern matching through core.match, and finally a decent programming interface with a REPL, which I can use from an editor that does paren-matching for me (ever tried to debug a complex Mathematica expression with mismatched parens/brackets/braces?).

This is why the man is a contradiction: his thoughts are undeniably interesting, but his focus and anchoring in the "Wolfram Language" is jarring.

6 comments

It's quite clear what he is saying. Programming languages are what programmers use. And how programmers think is dominated by how a computer works, which is usually a gigantic distraction to actually solving real world problems.

Newton, Maxwell and Einstein didn't need to waste any of their time thinking about how to use a computer to solve the problems they worked on.

If I ask Google for the 2018 Wimbledon Champ it tells me it has found 47,00,000 results in (0.90 seconds). Take a step back and think about this.

They have their own knowledge graph. They have Wikipedia access. They have the ATP site cached. They have the Wimbledon site cached. But they aren't able to tell the problem being solved doesn't need 4.7 Million results.

This is the kind of mindlessness that happens when the focus is not on the actual problem, but what the computer can do.

"Newton, Maxwell and Einstein didn't need to waste any of their time thinking about how to use a computer to solve the problems they worked on."

Actually a lost bit of maths history is that computation ability was really important, it was just really manual. Think about Gauss doing least squares to find the orbital parameters of Ceres by hand! Then the stories about him being able to multiply large numbers in his head start to make a bit more sense, not just as a parlor trick.

I think you make a great point, but that’s a bad example. Google shows the champions in response to that query, separate from the results. They show the results as well because of some combination of inertia and users wanting more info.
>Newton, Maxwell and Einstein didn't need to waste any of their time thinking about how to use a computer to solve the problems they worked on.

The cursor for the slide rule was invented by Newton.

"25. 20 points for naming something after yourself. (E.g., talking about the "The Evans Field Equation" when your name happens to be Evans.)"

http://math.ucr.edu/home/baez/crackpot.html

His company is named after his last name (as many companies are) and the product names start with the company name.

This has nothing to do with "The Evans Field Equation"

> On the other hand, the "Wolfram language" is really a pretty poor design as far as programming languages go, and would not even be noticed if it wasn't for the giant standard library that gets shipped with it, called Mathematica.

In the official documentation (as well as his blog posts), the term “Wolfram Language” is used to refer to the combination of the two: both the syntax and the huge standard library, because you almost always encounter one using the other. This seems pretty common to me — I’ve said things like “I used the Ruby language” when I’m also using its built-in modules.

I agree with you in saying that the language part of the Language is nothing particularly special, though.

I have interacted much with both Mathematica and Clojure, and the only thing I wish Mathematica had is a coder-oriented editor, like, for example, Cursive in Clojure world. It would become a truly powerful thing. On the quirks of Wolfram language - I personally can live with them, it is good enough considering the requirement to keep Mathematica's historical and huge lib compatibility. However current Mathematica's approach to notebook editing is just a horrible PowerPoint-like mutation.. at least for a coder like myself. I'd even love to help making it better if I had a chance to.
Funny, because I think the Wolfram language (also as a long-time user) is actually really well-designed and consistent, and has stood the test of time. Even ignoring the standard library, it has a really expressive syntax for pattern matching and functional programming, and I find that you can often do very complex things with very little code. For doing any kind of symbolic manipulation or lazy evaluation, it's pretty hard to beat.

On the other hand, I feel that his theory of cellular automata as some fundamental underpinning to mathematics is misguided.

Really? I found that it's fine when all your data is lists or matrices, but it becomes increasingly terrible if you want to process structured data. Maps (associative) have been added late and in a half-baked way, using them is a pain. The way macros are written is pretty bad syntax-wise. There seems to be little consistency in terms of which arguments come first, so composing functions into pipelines can be awkward. Variables in "With" and "Module" cannot refer to earlier bindings, so I end up with multiple nested With/Module statements. Also, "Module" for lexical scoping, really?

Also, I never managed to achieve any reasonable degree of code reuse in Mathematica. Most of my notebooks are single-purpose.

> I find Stephen Wolfram to be a an interesting person. On one hand, he is undeniably exceptional and created an impressive computational system. On the other hand, the "Wolfram language" is really a pretty poor design as far as programming languages go, and would not even be noticed if it wasn't for the giant standard library that gets shipped with it, called Mathematica. I use the "Wolfram language" because I have to, not because I want to.

He is a bona fide genius. But it's difficult to tell if his jarring references to the the 'Wolfram Language' and 'Wolfram Alpha' are simple, cynical selling, or if his vanity has blinded him into thinking the 'Wolfram Language' is a notable accomplishment on par with the other useful work he's done with physics, cellular automata and Mathematica.

In general, I am a conflicted fan. By many accounts he's an unpleasant person, and having read _A New Kind of Science_ his Principle of Computational Equivalance is real hand-wavy and not terribly rigorous.

And yet whenever he's mentioned in an HN story I always need to read it.

I have worked with a small number of exceptionally talented individuals (I don't know where to draw the "genius" line, but they were up there), and I see negative aspects of their personalities echoed in Stephen Wolfram. It looks like ego to me. People lose their humility after being told that their better than everyone else for their whole lives.

Being an expert at one thing doesn't make you an expert at everything. But it's hard to realize that when you're king of your world.

A different perspective. Highly creative (smart) people are those who make mental connections that others do not see but which exist. Crazy people are those who make mental connections that others do not see and which don't exist. Perhaps he sees the Wolfram language is superior in some way that doesn't actually exist, or perhaps we're not seeing something that does.

That last perspective is the most important one. I've known a few genius-ish people, and I recently had a jarring experience where one of them who's a bit older and retired, but definitely not mentally ill or demented, had gone off the cliff of believing in all kinds of crazy alien/government conspiracy theories and started working on some free-energy device, etc.

At first I found it shocking that he was being so completely irrational about these things and had become a "true believer" in so much crazy so quickly. But eventually I made the connection. All the innovative stuff he did earlier in life was no different. Every great idea he came up with and pursued with dogged passion was something that everyone else around him thought was stupid and crazy at the time.

Basically he's always been "crazy" in this sense, it's just that sometimes that ability to suspend disbelief and rationality works out well and you invent something useful that nobody else would've tried, and sometimes (probably many times!) it doesn't. His brain hasn't changed how it works, it just happened to latch onto the wrong thing this time.

Linus Pauling was a bona fide genius; he won a Nobel for his pioneering research in to chemical bonds, made important contributions to our understanding of crystalline structures and various proteins, helped explain the the molecular genetic cause of sickle cell anemia, etc, etc. He was a giant of science and will always be remembered as such.

But he also spent the last thirty years of his career refining and attempting to popularize a model for the structure of the nucleus (the "close-packed spheron model") that never seems to have gained much acceptance. He spent even longer advocating for megavitamin therapy, which is now generally regarded as quackery, and went to his grave pushing the idea that large doses of vitamin C can help cure cancer, despite numerous studies failing to support this.

I'm not saying that Wolfram is exactly like Pauling (although his fascination with his own work on cellular automata certainly seems to share some similarities to Pauling's fascination with the spheron cluster model). But I can't help but wonder if Pauling's reputation would be different if he had had a blog.

He also put the equivalent of a scientific hit out on Shechtman for quasicrystals
Classic: "A Rare Blend of Monster Raving Egomania and Utter Batshit Insanity" - http://bactra.org/reviews/wolfram/
This is arguably the best distinction I've heard described between "mad" and "genius".
I think your last paragraph might be spot-on.
He's that way because he's a narcissist, not because he's a genius. Those kinds of people have difficulty stepping outside themselves and lack the ability to situate themselves in a world of different opinions. I imagine he's perpetually confused why anyone would use a different language.