Replacing Mathematica with Python
johndcook.com
johndcook.com
Summary of article: "You might be able to replace Mathematica with Python, at least for certain applications! But I don't know, I haven't tried it, I just had a quick look at some websites."
In fact, I would argue that the only drawback with Mathematica is the fact that you become locked in. (whether or not you care about that is your prerogative.)
Not quite as swish as mathematica but definitely better than 1/10.
I think it's clear enough where the [[...]] came from: Wolfram wanted "a b" to mean "a times b", which means "a (b + c)" has to mean "a times (b plus c)", which means you need a different notation for function application; they chose square brackets, which means they aren't available for subscripting (because everything, functions included, is an expression, and expressions are subscriptable); so they needed something else. And {...} was already taken for list construction.
When what you're doing in Mathematica looks more like mathematics than programming, you don't need a lot of subscripts. Presumably that's why subscripting is the thing that got the ugly notation with extra characters.
(The thing I find most unpleasant about programming in Mathematica is the way it tries to use pattern-matching as the single fundamental tool. This gives Mathematica programming, for me, something of the same feel as getting a macro-expansion based system like bash or TeX to do tricky things. But I'm not all that expert with Mathematica, and it's possible that more experienced users happily internalize the details and don't get confused as I do.)
* Manipulate is the coolest thing in the world.
If you mean having function application mean dereferencing when applied to arrays, so that you'd write myArray[1][2]: they couldn't do that because you can apply the subscripting operations to any expression, so that e.g. F[x,y][[1]] evaluates to x just like {x,y}[[1]] does. (Because {x,y} is shorthand for List[x,y], which has just the same structure as F[x,y] in Mathematica.)