Live data from Hacker News

Mathematica 14

writings.stephenwolfram.com

61–70 of 154 posts

Re: Mathematica 14

#61

Ask HN: I've never met someone who uses Mathematica, I imagine its users are even rarer outside the academic circles. I've met many who use Matlab, R, Python, Excel, etc. If you're using it, what are you using it for exactly? In what way is it irreplaceable by other tools out there, if at all?

Symbolic computation. Yeah, I guess you can do it in SymPy, but it's more painful. It's a really pleasant environment for certain type of work. The only thing missing is better type systems.

I’m big on types and am sympathetic to your last point, but wouldn’t introducing types in any nontrivial way break compatibility on a catastrophic scale?

Re: Mathematica 14

#62
post #44

Earlier quoted context omitted.

It's noteworthy that Mathematica invented the notebook UI that Jupyter ended up popularizing. It has some strengths, but since its syntax highlighting is coupled to the kernel state it didn't have an undo function for the longest time. Also as big vim fan it's disappointing to not being able to use your favorite editor.

No. Incorrect. There was a precursor that had the idea Of notebook but didn’t call it that. By your logic Wolfram invented symbolic computation, Computational complexity and many other things. Let’s Not go down that route please.

I may have been incorrect because it's hard to know about everything and I have no issue to stand corrected, but please do not attack my logic by building strawmen. You could have simply stated the name of that predecessor, ideally with a link.

The basis my comment for this was this thread: https://news.ycombinator.com/item?id=22278637

Unfortunately the Atlantic article is now paywalled.

Re: Mathematica 14

#63
post #53
post #32

Earlier quoted context omitted.

Wolfram should get a dedicated title tag (Wolfram) and hn rules should be amended with ‘this dude is a bit full of himself, everybody knows that, no need to bring it up’ Saying that as someone who’s consistently surprised by just how big his ego seems to be, getting bigger each year, didn’t think it’s possible.

The admin has already decreed exactly that. People just love to whine.

Or, for that matter, just come together in community and crack jokes we can all agree on, at the expense of someone we all know. Call it A New Kind of Socializing.

Re: Mathematica 14

#64
post #120

[stub for offtopicness]

Why are people getting hung up on his hubris? If his megalomania gives us Mathematica who cares. It's a phenomenal accomplishment. It can, out of the box, do hundreds of things that'd take you weeks in python/julia/etc or would be entirely impossible for most in other systems.

> Why are people getting hung up on his hubris? If his megalomania gives us Mathematica who cares.

We've had some bad results taking that approach recently - which we really should have anticipated, with millenia-old stories warning us about it. For one thing, megalomaniacs tend to be frauds (perhaps because, to be a megalomaniac, it's necessary to lie to yourself); maybe Mathematica will turn out to be the FTX, or Tesla auto-pilot, or ..., of mathematical software/languages.

No way - how could that happen? All those people at Mathematica would just go along with it, right? There's no evidence! It would be too brazen!

Re: Mathematica 14

#65
post #46

Earlier quoted context omitted.

It sounds like once you get the zen of Mathematica, it’s a truly exceptional tool to work with. It’s a shame that the only person it seems has get the zen of Mathematica is Stephen Wolfram himself.

I mean, it really is good software. It's by far the best CAS around and the "standard library" is extremely impressive. But like all software it involves tradeoffs. Fanatics of any technology or idea are never the easiest people to reason with.

Agreed, but what are the tradeoffs for Mathematica?

Re: Mathematica 14

#66
post #39

Earlier quoted context omitted.

Wolfram would like to say that he invented Mathematica all by himself, but in its core, it is basically a lisp: everything is an expression, and mathematics are just transformations of the expressions. Afaik this makes it the best tool (conceptually and practically) for generic symbolic manipulations. For example, `1 + 1` in Mathematica is just syntactic sugar for `Plus[1, 1]`, and `a = 1` is `Set[a, 1]`. I am a PhD…

Re "it is a lisp" and "everything is an expression", I would like to add a bit of clarification.Or, given that you use Mathematica regularly while I was just reading surface docs (for purposes of doing some stuff with Wolfram Alpha), rather a question if my perspective is well-founded. Based on my understanding of how expression evaluation works, the slightly more revealing statements would be "it is a lot of lisp ma…

These are all valid criticisms. There is no type system, although some safeguards can be implemented through pattern matching and conditions (see the answer by @derf_ above). For quick and dirty transforms on symbolic math expressions, these are often good enough, but it is indeed a mess to use as a full fledge programming language.

I do like that the lispy language itself closely mirrors math expressions, and it is consistently accessible throughout the user interface. For example, the mathematica notebook frontend (IDE) is simply some `MakeBoxes[]` of the expressions, which are all valid mathematica code themselves. I tried sympy a while ago, which I believe took an object-oriented approach, and it was very clumsy when compared to mathematica.

Still, I would not recommend using mathematica for general programming, precisely because of the mentioned shortcomings. By default, it is also impure and not lazy (eager eval, although it can be forced to be lazy on a case by case basis using `Hold` or `Unevaluated`).

Re: Mathematica 14

#67
post #16

Ask HN: I've never met someone who uses Mathematica, I imagine its users are even rarer outside the academic circles. I've met many who use Matlab, R, Python, Excel, etc. If you're using it, what are you using it for exactly? In what way is it irreplaceable by other tools out there, if at all?

I do. I started using Mathematica in middle school and continued from there. My initial use case was simply double-checking I did my math homework correctly. A lot of Solve, DSolve, FindInstance, Reduce, FullSimplify, etc. I did a lot of plotting to visualize things: not just plotting functions of one variable, but parametric curves, inequalities, functions of multiple variables. When I studied linear algebra, I impl…

[flagged]

Re: Mathematica 14

#68
post #39

Earlier quoted context omitted.

Wolfram would like to say that he invented Mathematica all by himself, but in its core, it is basically a lisp: everything is an expression, and mathematics are just transformations of the expressions. Afaik this makes it the best tool (conceptually and practically) for generic symbolic manipulations. For example, `1 + 1` in Mathematica is just syntactic sugar for `Plus[1, 1]`, and `a = 1` is `Set[a, 1]`. I am a PhD…

Re "it is a lisp" and "everything is an expression", I would like to add a bit of clarification.Or, given that you use Mathematica regularly while I was just reading surface docs (for purposes of doing some stuff with Wolfram Alpha), rather a question if my perspective is well-founded. Based on my understanding of how expression evaluation works, the slightly more revealing statements would be "it is a lot of lisp ma…

It is possible to put filters on function arguments, e.g., the definition

    f[x_Integer] := ...
will define a rule for f[] that only matches expressions where the argument to f[] has the head "Integer". It is even possible to use arbitrary predicates:

    vec3Q[v_] := VectorQ[v, NumberQ]&&Length[v]==3
    f[v_?vec3Q] := ...
This lets you sort-of have type-checking. This is entirely opt-in, so you have to be somewhat rigorous about its use or it does not do any good. Also, in practice if any invocation of f[] does not have arguments which match the types for which you have defined it, the expression just remains unevaluated, which can create a mess (but maybe less of a mess than evaluating the function on input of the wrong form). The performance impact (particularly of the predicate version) is also non-zero, but my experience is that the biggest performance limitations come from trying to keep your machine from grinding to a halt when a runaway expression applied to the wrong thing explodes in complexity and eats all of your RAM... and this helps avoid that.

While I have found this to be very helpful for writing and debugging hairy expressions, I used Mathematica for years before I even knew this was a thing. In reality almost no one does this, certainly not with any consistency, and the situation is as bad as you fear it would be.

Re: Mathematica 14

#69

Earlier quoted context omitted.

Why are people getting hung up on his hubris? If his megalomania gives us Mathematica who cares. It's a phenomenal accomplishment. It can, out of the box, do hundreds of things that'd take you weeks in python/julia/etc or would be entirely impossible for most in other systems.

> Why are people getting hung up on his hubris? If his megalomania gives us Mathematica who cares. We've had some bad results taking that approach recently - which we really should have anticipated, with millenia-old stories warning us about it. For one thing, megalomaniacs tend to be frauds (perhaps because, to be a megalomaniac, it's necessary to lie to yourself); maybe Mathematica will turn out to be the FTX, or T…

> We've had some bad results taking that approach recently

I'm struggling to believe that Wolfram's hubris is anything like that of Trump or Musk or SBF etc. Wolfram seems like a genuinely smart person who knows he's smart, but is probably too aware of it. But he's not done anything majorly bad - and arguably has done good in creating tools for scientists and engineers. I think we need to give him a break. I certainly think that the perennial discussion of his ego is tiresome and distracting.

Re: Mathematica 14

#70
post #32

Earlier quoted context omitted.

> It’s only recently that I’ve begun to properly internalize just how broad the implications of having a computational language really are—even though, ironically, I’ve spent much of my life engaged precisely in the consuming task of building the world’s only large-scale computational language. Exemplar of humility.

Wolfram should get a dedicated title tag (Wolfram) and hn rules should be amended with ‘this dude is a bit full of himself, everybody knows that, no need to bring it up’ Saying that as someone who’s consistently surprised by just how big his ego seems to be, getting bigger each year, didn’t think it’s possible.

This could be covered if there was a principle to respect the man in the arena. That should also discourage you-reinvented-the-wheel pile-ons.

The Ratatouille critic put this well - "We risk very little, yet enjoy a position over those who offer up their work and their selves to our judgement. We thrive on negative criticism, which is fun to write and to read."

Post reply on HN