http://www.wolfram.com/language/fast-introduction-for-progra...
Sage is a free open-source mathematics software system licensed under the GPL. It builds on top of many existing open-source packages: NumPy, SciPy, matplotlib, Sympy, Maxima, GAP, FLINT, R and many more.
Access their combined power through a common, Python-based language or directly via interfaces or wrappers.
Mission: Creating a viable free open source alternative to Magma, Maple, Mathematica and Matlab.
There are bits of that concept that come from elsewhere, so it's not 100% novel coming from nowhere. E.g. older computer-algebra systems, Matlab, etc., all have bits of the ideas that this particular class of mathematics+data systems is converging on. But prior to the current wave of open-source stuff, I think Mathematica had the best example of integrating it all into a usable system. It might still be the most polished and integrated one out there; parts of Sage still very much feel like libraries with different conceptual/interaction models, glued together with a thin layer of Python glue. Though Sage does have the advantage of being able to add functionality at a more rapid pace, and I assume the integration will get more seamless in the future.
Last time I saw The Wolfram Language, for example, on HN it was full of statements like how there finally was a language that made functional programming possible, etc., and when you look at the feature set there's absolutely nothing new that makes any kind of difference.
While this platform certainly seems interesting and it actually does seem to do something new, listening to Stephen Wolfram talk about how great his stuff is has gotten tiresome in general.
I wonder if folks would be less cynical about this if they gave it a name other than 'the Wolfram Language' (how about 'Sym'?)
That's a non-starter. Have you ever seen a copy of A New Kind of Science? Stephen figured out how to get his full name printed on every single page. That was no accident.
Not that I'm against spending money for something that's useful, nor am I against Stephen Wolfram trying to make a buck. It just seems a little misleading to bid this product as a "language" when really it seems like it's just a giant library/extended runtime for Mathematica.
And although I'm biased, I don't think it is unfair for our language to meter access to an expensive resource in the form of real world data. There are complex translation layers that mediate access to a diversity of different databases, real time and static, and merge them to present a nice, clean logical view.
On top of that, cleaning and curating the data is expensive, and it has to be done in perpetuity -- think how often PersonData (http://reference.wolfram.com/language/ref/PersonData.html) needs to be updated, for example. Some data we also have to buy outright.
Should this prevent us building such real-world data into the language? I suspect in 20 years this idea will be common in new languages, and probably free.
For now, it needs to be subsidized, and the basis is fair: we charge Cloud Credits on the basis of the amount of time our servers are kept busy: 0.3 cents per second of computation time on our API servers. As we make our APIs faster, that effective cost will only go down.
Presenting Mathematica (or, rather, FrontEnd?) as IDE is harmful for its reputation among hackers:
1) Workflow differs from one in traditional IDEs, and lots of build tools are simply not there
2) It has different goals, being a bottom-up environment: users start with tiny one-cell programs; IDEs like Eclipse suggest to “create a new project” by default
It's a tool for discovery and improvisation, not for building large programs, with multi-modular source code provided by different independent authors, that is sometimes (often?) written in different languages.
“Improvisations and Experiment Environment” or something like that would be a more adequate description.
It's not that FrontEnd can't be an IDE too. I believe it can be a better IDE than anything else out there but experienced programmers disagree unanimously. Part of it is personal tastes, part is mind being closed by means of classical IDE heritage, part is not-so-rational disgust towards proprietary software, paid software, S.W., etc.
FrontEnd and the language itself encourage users to add features themselves. Those who persist probably end up with the highly personalised product the majority of them could never buy. (+) Still, some features would be universally needed, so one might want to install a package from a public hub, but FrontEnd lacks this feature. (–)
I think hackers would appreciate it more if Mathematica (FrontEnd?) were marketed as emacs-like tool. Still, without a proper package manager (and an open package server, or at least an open standard for package server) it would be a hopeless take. — Though I heard something like package manager is coming. :-)
You didn't build it in to the language, you connected the language to a standard database via the hosted, proprietary runtime.
I'm not against this in principle - it's clearly a useful thing - but it's hardly revolutionary.
I already pay a company for essentially the same thing (where I use a DSL embedded in a programming language to interact with their database of social media).
Again, I'm not against the idea as I understand it, but the misuse of terminology and generally the way that various people associated with the project talk about it is a huge turn off.
With 100 or 1000 API calls, how can you make a "dynamic" application? This would only be useful for static / stale content.
What good is purchasing more credits, if I only have a very low number of API calls?
However I want to make clear that those API calls are to Wolfram's servers for things like natural language parsing and data. You can write an APIFunction that does not use API calls, but just uses cloud credits to do computation.
I understand it can be confusing, but there is a difference between API calls to your CloudObjects and API calls from your CloudObjects.
Cloud credits come with each plan, as well, so you have some leeway for development and testing before you have to buy additional cloud credits at a base price 0.03 cents per credit.
http://www.wolfram.com/cloud-credits/ has more info.
> Otherwise please use the original title, unless it is misleading or linkbait.
It also sheds a lot of the historical computer algebra baggage of Mathematica -- palettes for entering equations and so on are gone.
And although it doesn't support this yet, Wolfram Desktop will soon let you connect straight to a cloud kernel. It'll be really cool: you'll write ParallelMap, and (say) 32 kernels in the cloud will be summoned for you.
And what about the Discovery Platform and Data Science platform? How will these differ from Mathematica?
It might be best to compare the Wolfram Language to natural languages like English instead of programming language. The English language is not just a set of grammar, but also a rich collection of vocabularies that need to be compiled and maintained, and perhaps a rich collection of literature that need to be maintained and expanded to help learners understand the language.
Wolfram spent quite some time and resources to collect data for his Wolfram Alpha, and his new "language". It makes sense to charge money for such efforts.
Based on an accounting of the work involved, it's reasonable to charge, but based on the options available (and the relative unprovenness of the Wolfram Language), it's also perfectly reasonable for people like the parent to insist on free languages only. It's what Wolfram's competing with, at least in the view of the world where it's not singlehandedly "redefin[ing] the process of programming"...
Of course not, its a New Kind of Programming Language.
I just don't think the language will thrive as well as it could if the number of users is limited by a financial barrier. Sure, it will have users, and sure, they will find it useful, but a lot of its potential will go unrealized.
You could make the same argument with tools, so why are languages different? I think because they are more foundational.. other tools are built IN them not just using them. They become a substrate. Or not, if they're not widely used.
Though, arguably, the type of stuff Mathematica is used for is already sufficiently niche that this is less of a concern.
But no, the language is not open source, and that is unlikely to change in the future.
IE You can use it for free forever, but just not too much each month. Pay for more CPU time after you hit your limit or wait until next month to get more free time.