11 ms·
Wolfram Language
- dserban 13y agoIntroductory video by Stephen Wolfram himself: http://www.youtube.com/watch?v=_P9HqHVPeik http://www.youtube.com/watch?v=_P9HqHVPeik
- yiedyie 13y agoWould be interesting a real introductory video this is much like an infomercial, though a good infomercial.
- yiedyie 13y agoThe fact that is so adapted to all those current needs is also its weakest point.
- praseodym 13y agoPrevious HN thread: https://news.ycombinator.com/item?id=7293741 https://news.ycombinator.com/item?id=7293741
- publicfig 13y agoThat was for the Demo video, not for the page to the language documentation itself.
- muyuu 13y agoWhere's the source code? Is this something like CDF that can be only used from Wolfram's binary blob plugin/exes? If they don't release the sources for the compiler/interpreter it will be as popular as their Computable Document Format.
- deletes 13y agoGood question. If they don't release the source, then this, as awesome as it is, is just a product and not a language.
- colanderman 13y agoLanguages don't have source code, they have documentation. I haven't looked through it all, but this appears to be documentation specifying (to some degree) the Wolfram Language. Therefore the language exists, regardless of whether any implementations of interpreters or compilers thereof exist and are open-source.
- muyuu 13y agoA formal spec would be good enough too. But since he's specifying concrete output and graphics as part of the language, it's rather hard to specify binary-compatibility without a reference implementation. This is why there are no interpreted languages without a reference implementation that haven't failed miserably.
- colanderman 13y agoSQL, Prolog, Scheme, and VHDL seem to be doing just fine. And if you leave off the "interpreted" qualifier, which is (a) a property of an implementation, not a language, and (b) is rather meaningless anyway (can you actually define "interpreted"?), well, then C ought to count too.
- muyuu 13y agoNone of these are established as a single compatible language but rather as a family of languages. Wolfram obviously isn't aiming for that. Go to Wolfram's page. That is no spec, it's a rough description of a particular implementation of a (closed source) system.
- abjorn 13y agoIt's not as if they started as a "family" of languages, each one of those was just one discrete language at one point.
- 13y ago
- archagon 13y agoAccording to Wikipedia: "It also has a large amount of documentation, but it is not standardized. A partial standardization is planned, and an incomplete pre-release already exists."
- astrodust 13y agoSomeone just pulled that out of thin air. Wikipedia is as good as guessing at this point.
- taylorlapeyre 13y agoThis looks almost identical to Mathematica. What's the difference?
- lambda 13y agoIt is. This is just a description of the language used in Mathematica. Since they are also releasing other products that use the same core language, it looks like they are presenting it in a product-neutral form, but it is just the language of Mathematica.
- plg 13y agoWho is this product aimed at? If it's academics, students, etc, then it's doomed, the wave today is free open source software.
- ap22213 13y agoWolfram has gobs of money, at this point. He probably just works on whatever he thinks is cool.
- sixbrx 13y agoHas the language grown much faster in recent years? I coded some microarray data analysis in Mathematica at one point a few years ago, and was very disappointed in the slow execution, it made it unusable. It may have been a "naive" implementation that could be much improved, but a similarly naive Java implementation was much faster and not significantly more difficult to write.
- rhodin 13y agoDepends on what you mean by recent. In the last 10 years: yes, much faster for number crunching (like SVD, Cholesky, determinant computations, etc).
- sixbrx 13y agoThanks, good to know. I'm most interested though in the parts between the canned procedures (which I assume are written in C or similar), for custom algorithms. For example loops which manipulate arrays and pattern matching (probably not the right term, maybe "rule selection")? I seem to remember the pattern matching was especially slow, though very powerful. Had the latter been fast enough to use, it would have been a big advantage over Java. I'd be happy with single pass linear matching like ML/Haskell if it were just much faster than what I experienced with Mathematica's, I wonder if there's a way of doing that? Or type hinting, which most dynamic languages seem to eventually need to eek out more performance? Hard to imagine that Mathematica wouldn't need something like that for good performance when you stray from the canned routines, but I'd like to be wrong!
- sampo 13y agoDid you use Compile[] in your functions?
- sixbrx 13y agoI was able to compile some small expressions, but I couldn't compile some larger functions which had parts that were not compilable (I don't remember why). However, looking at the compile support now, it looks like it's more fully featured. For example, I see type hinting is supported now (maybe it was before and I didn't know it). It looks like it's worth trying again.
- Smaug123 13y agoI'd be interested to know quite how they're solving the "canonical names for everything" problem [0]. They're presumably making their own ontology, rather than using someone else's. Also, best attribute name ever [1]: "BoundStateWaveFunctionMomentumRepresentationAbsoluteValueSquared" [0]: http://reference.wolfram.com/language/ref/CanonicalName.html http://reference.wolfram.com/language/ref/CanonicalName.html [1]: http://reference.wolfram.com/language/ref/PhysicalSystemData.html http://reference.wolfram.com/language/ref/PhysicalSystemData...
- oleganza 13y agoWhen I was a student at university in 2003-2008, I loved, loved, loved Mathematica language, Mathematica uncluttered cell-based editor and rich interactive documentation. You could execute and edit examples right in the doc! I did so many things: nicely formatted pages (much easier to type in complex formulas than in LaTeX), computing simulations, crazy charts etc. I never could understand how people can use Matlab or Maple when there is Mathematica.
- tluyben2 13y agoYeah I liked it as well; the notebook execution especially. Makes me sad to see how primitive iPython/iHaskell now are compared to the Mathematica editor almost 20 years ago. I hoped it would be the about same experience or better, but it's far from. Especially the web version for iHaskell (I assume the iPython web version is the same?) is horrible, absolutely horrible. But the idea is great and it is possible to make it work well as Wolfram has shown.
- gaius 13y agoWell this is how it is now I'm afraid. There are "data scientists" using IPython convinced that they themselves and the tools they use are on the cutting edge. Like there are database people who think MongoDB is advanced. Or web guys using their favourite "framework" kidding themselves they're doing anything more complicated than Perl CGIs did in 1994. It's like an Amiga owner being shown a "multimedia" PC in 1995 and thinking, I was doing all this 10 years ago.
- tluyben2 13y agoAmiga example works; took me definitely over 10 years to stop saying that after I was forced to move to PCs. And then I had it with Unix (SparcStation 5s which never crashed and never had to be rebooted against our uni's 100s of PCs which were mandatory rebooted during the night otherwise they were unusable during the day, and still were actually), luckily everyone listened and we're all using that now. Well no, but at least you CAN now without being hopelessly crippled. Thing is ; these notebook interfaces COULD be really brilliant, but they suck and I don't know why. Maybe just not enough people working on them?
- ww2 13y agoFrom the demo video, it seems a query language to query a database of knowledge. how's this knowledge database maintained and self updated are more interesting than the query language itself.
- freefrancisco 13y agoAny open source version? Also, to people who have implemented their own language interpreters before, is the description enough to attempt an open source version of it? Might be a fun exercise to try to implement it in jison.
- nswanberg 13y agoThere's a start of an open source implementation of Mathematica called Mathics, which is written in Python. Javascript would be an interesting choice for a toy implementation, especially because there are orders of magnitude more javascript installations than python, and much more effort put towards making javascript fast. And who knows, maybe the toy would turn into something more serious.
- jimmcslim 13y agoBrian Beckman presented a session at YOW!2012 where he briefly discussed the possibility of implementing the Mathematica language in Javascript. http://yow.eventer.com/yow-2012-1012/term-rewriting-in-javascript-for-fun-and-world-domination-by-brian-beckman-1276 http://yow.eventer.com/yow-2012-1012/term-rewriting-in-javas...
- drivingmenuts 13y agoHe has no beard. The language won't last.
- carlob 13y agohttp://www.stephenwolfram.com/scrapbook/page5/1989_bearded/1989_bearded.jpg http://www.stephenwolfram.com/scrapbook/page5/1989_bearded/1...
- btown 13y agoSerious question: How will memory management work for this? Not-so-serious corollary: How much RAM would a Wolfram wolf if a Wolfram would wolf RAM?
- MaysonL 13y agoAll of it.
- georgemcbay 13y agoSo... pretty much just like Java then?
- primitivesuave 13y ago> How will memory management work for this? There's a garbage collector, and the symbolic structure of the language makes it quite effective. You can also manually control the memory manager, one nice feature of Mathematica is how exposed it is. http://reference.wolfram.com/mathematica/tutorial/MemoryManagement.html http://reference.wolfram.com/mathematica/tutorial/MemoryMana... > How much RAM would a Wolfram wolf if a Wolfram would wolf RAM? Easily the funniest thing I've read on HN. You're my hero.
- intull 13y agoHands down... Best comment ever!
- coreymgilmore 13y agoIt will be interesting to see if this language takes off. I see its use limited to academics mostly. Long-term, I don't expect too much growth since most non-academics would rather use more general-purpose langs.
- deleted 13y ago[deleted]
- rbanffy 13y ago> I see its use limited to academics mostly I hope not. If results depends on a specific implementation of a proprietary tool, there is no way to precisely replicate the results from scratch.
- snorkel 13y agoThis is not intended as a stand-alone language like Python but rather it's DSL dialect for integrating with Wolfram Alpha. You're basically using this dialect to get very specific results from the Wolfram Alpha service.
- carlob 13y agoNot quite. That's only one facet of it, you can still do whatever you were doing with Mathematica without alpha.
- sbrother 13y agoNot really. Wolfram Alpha is a pretty recent addition to the Wolfram product lineup, and Mathematica/"Wolfram Language" was very popular in academia before that. There wasn't even a direct way to access Alpha from Mathematica until Mathematica 9 (or maybe 8, I forget) and even now it's not a very commonly used feature. The Alpha API call limits (1000 per day for a professional license) pretty much prevent you from doing any serious work with Alpha.
- rhodin 13y ago"Commonly used" depends on who you ask. I use it all the time to help me look up units. It may not be 1000 calls/day, but it's still useful. Also the #/calls can be expanded with enterprise Mathematica. It was added in Mathematica 8 (see bottom of http://reference.wolfram.com/mathematica/ref/WolframAlpha.html http://reference.wolfram.com/mathematica/ref/WolframAlpha.ht..., "New in 8"). Disclaimer: I work for Wolfram Research
- sbrother 13y agoIt's an amazing language - basically lisp with the biggest standard library you've ever imagined, and nice (but slow) pattern matching. I used to use it all the time when I was doing one-off projects at school and for clients. But I don't see it taking off unless it goes FOSS - while I have a license and I'd love to keep using it I can't justify it to employers or clients who want to actually be able to run my code after I leave. The alternatives (Python, R, maybe Julia) are good enough now to do most things you'd want to use Mathematica for, and they don't come with per core usage restrictions. To me Mathematica is well worth its price tag, but I only came to that conclusion because I was able to experiment with it for free during college.
- oskarth 13y agoI found that it mostly works great, but sometimes it gives really wrong results - without any warnings. My professor complained about various errors too (mostly in dynamical systems, some control theory, but the problems seemed to be of a general sort), so it wasn't just a 40 cm error. To me this suggest that the language has plenty of leaky abstractions. My feeling is that in languages like python or julia, if you do something wrong you are more likely to hear about - and understand - it.
- asdkl234890 13y agobasically lisp with the biggest standard library you've ever imagined, That's what I was thinking too. And I also think it could mostly be re-implement as open source, with say Python.
- rlx0x 13y agohttp://www.youtube.com/watch?v=_P9HqHVPeik http://www.youtube.com/watch?v=_P9HqHVPeik "Stephen™ Wolfram™'s Introduction to the Wolfram™ Language" That Wolfram™ Language and the Wolfram™ Cloud is going to change the world forever, the language is so great because its Wolfram™ Symbolic and since it all just runs in the Wolfram™ Cloud its really fast. You can put all your financial data in the Wolfram™ and do things. You know they worked 30 years on this, and it must be good because it runs in the Wolfram™ Cloud. Cloud Cloud Cloud Bla Bla Bla Bla Buy Buy Buy Wolfram™ Wolfram™ Wolfram™.
- programnature 13y agoIf all you know is buzzwords, buzzwords are all you hear. Personally I found the idea and explanation of knowledge-based computing where my attention went. Does your favorite language have knowledge about the world built into it?
- pseut 13y agoAlmost any language can throw a query to google, so yes.
- primitivesuave 13y agoI think he trademarked the word "Symbolic" as well.
- gituliar 13y agoHow I love irony...
- brudgers 13y agoThat this is a top rated comment is fucking pathetic. His name is on the door. Unlike the late beloved Steve Jobs, he does not afford himself the opportunity to blame others for product problems. It's a higher standard - one without "Hold it another way" copouts and buy our products to show your good taste values. He built his startip into a company that makes amazing products that can be used to really change the world because they help solve really hard problems in ways that scale. He's putting knowledge into the world not peddling caveat emptor planned obsolescence and digital whoopie cushions. Now he's taken his life's work and is shipping it on the Raspberry Pi instead of taken a 30% cut of the creative output of developer and musicians. That's the difference between what is rightfully called "great" and what is called so only insanely.
- danielweber 13y agoI have had the hardest time looking up economic data on Wolfram Alpha. I hope this reference will let me figure out the proper syntax.
- pseut 13y agoFRED doesn't have the data you need?
- danielweber 13y agoI was looking up things like historical US spending and revenue levels. And not for work, just on my own.
- parasight 13y agoIn which version of Mathematica will the complete language be available. I can't seem to use the Classify function in my Mathematica 9.0.1 Student Edition.
- cschmidt 13y agoClassify will be released with Mathematica 10, which is officially coming soon... http://www.wolfram.com/mathematica-10-coming-soon.html http://www.wolfram.com/mathematica-10-coming-soon.html You can tell from looking at the bottom of the documentation page: http://reference.wolfram.com/language/ref/Classify.html?q=Classify http://reference.wolfram.com/language/ref/Classify.html?q=Cl... It has links to Summary of New Features in Mathematica 10 New in 10.0: Data Manipulation
- georgewfraser 13y agoPeople who were at Caltech at the time have gone on record that Wolfram knew very little about compilers when he wrote Mathematica: http://groups.google.com/group/comp.lang.lisp/msg/f3b93140c2f2e922 http://groups.google.com/group/comp.lang.lisp/msg/f3b93140c2... which explains why the Mathematica language contains so many amateurish mistakes, like its bizarre implementation of scope and its wacky pseudo-macro system. Don't get me wrong, Mathematica is a great product, in particular the standard library is fantastic, but the language itself is a mess.
- programnature 13y agoSmug lisp weenie complains commercially successful system not implemented in lisp, news at 11. The story isn't about Mathematica, its about SMP, which predated Mathematica by about 8 years. Wolfram was 20 at the time. Back at Caltech, Rob Pike convinced Wolfram that C was the future and that was a good thing.
- GregBuchholz 13y agoCan anyone recommend a good dead-tree book on Mathematica?
- rhodin 13y ago"Power Programming with Mathematica". It's out of print, but can be found free of charge on the Mathematica StackExchange: http://mathematica.stackexchange.com/questions/16485/are-you-interested-in-purchasing-david-wagners-power-programming-with-mathemat?rq=1 http://mathematica.stackexchange.com/questions/16485/are-you... This is a great collection of resources: http://mathematica.stackexchange.com/a/606/241 http://mathematica.stackexchange.com/a/606/241 (The most edited post on all of StackExchange)
- GregBuchholz 13y agoExcellent. Thank you.
- nswanberg 13y agoWolfram's The Mathematica Book is a great reference and has some good examples for learning Mathematica (plus, used editions are really cheap: http://www.amazon.com/s/?field-keywords=mathematica+book http://www.amazon.com/s/?field-keywords=mathematica+book) You can look at the contents online to see if it clicks with you: http://reference.wolfram.com/legacy/v5/ http://reference.wolfram.com/legacy/v5/ Mathematica Cookbook is also a nice reference. The book is much less systematic, but provides code that solves more realistic problems than the Mathematica documentation.
- GregBuchholz 13y agoThanks. Is the language pretty stable, but the libraries are what mostly changes between Mathematica releases? Or is there much obsolete stuff in version 5 that's not present in version 9 or 10?
- nswanberg 13y ago
- verteu 13y agoI'm glad to see this language has first-class hashtables (Association). Does it have any other data structures that Mathematica was lacking (e.g. trees)?
- archagon 13y agoTo C&P myself from the previous thread, this looks awesome but I have a few questions: 1. Does the language work without an internet connection? 2. Is it free to use? 3. What happens if/when Wolfram the company goes out of business, or Wolfram himself retires? 4. Are all the disparate APIs and sources that the language uses determined by fiat, or can they be customized? What happens if/when the APIs/sources stop working? 5. Given that the language can do things like query your Facebook graph, it seems like there's a lot of API upkeep that the language requires. Is this done by Wolfram? How does this work when I'm running locally (if this is even possible)?
- brudgers 13y agoI had similar thoughts about humanity losing access to Wolfram's Mathematica after reading of his trip to the Leibniz archive last April. After all corporate officers have fiduciary duty to maximize shareholder value and computing is littered with inaccessible code due to foundering companies. I have become less worried. Wolfram invites comparisons to people like Leibniz for his own ends. I think it is less to stoke his vanity than to set high standards for himself. Choosing Newton as a role model may be vain but it also places massive responsibility upon him. Newton sought to solve important problems not disrupt pet grooming social networks. He has extended Mathematica and added a search engine and is shipping it with the most affordable computer hardware he can find. Wolfram Language is an attempt to make maximum human knowledge available and Wolfram has chosen to distribute it inside a project to provide universal access to computing hardware. Will it all work out? There are no guarantees. Millenia are long and media fragile. But I don't think there are many people more committed to the challenge than Wolfram. http://blog.stephenwolfram.com/2013/05/dropping-in-on-gottfried-leibniz/ http://blog.stephenwolfram.com/2013/05/dropping-in-on-gottfr...
- desijays 13y agoHow difficult is it to create an open source version, which is much better than wolfram alpha. Because, this kind of software is too powerful a system to allow one person or one organization to have full control over it ...
- janee 13y agoThe demo gives me the impression to be more a tool for solving something once, producing a result and discarding it than a tool for creating something maintainable that runs repeatedly. Would love to get my hands on it though to just play around with.