According to the Jargon File, jwz coined it "to express his belief that all truly useful programs experience pressure to evolve into toolkits and application platforms." From the little I know about Wolfram, it has been such a toolkit and platform for quite some time already. http://www.catb.org/jargon/html/Z/Zawinskis-Law.html
Ah the mythical wolfram language. I'm always interested in reading about it (and other languages that differ from my day to day), but apart from the wolfram search engine I rarely see it used for anything. Why is this? How does the language compare to C# or Lisp etc?
Really the Wolfram language itself isn't anything spectacular. It makes more sense to mathematicians than most programmers.
What really sets the Wolfram language apart is its gigantic library of functions. Want to look up stock quotes? easy. Weather? easy. Plus tons of other built in functions that would make a machine learning prediction of Coppertone suncreen's stock price based on weather forecast a couple of lines. In another language you'd have to set up the API queries yourself with a library, parse the returns with another library, and do the machine learning with another library. Then you'd have to cross your fingers and hope that an API or library update doesn't break your code. Wolfram promises easy access to clean data and much less heartache maintaining it.
Basically it is how all modern languages would be if Lisp Machines haven't died.
Seeing anyone using Mathematica looks quite similar back in the day to the way Lisp Machines, Interlisp-D and also Smalltalk were being used, by those lucky enough to have access to such systems.
So in experience, it is quite close to Lisp, even if it uses another syntax.
Reading email sent by a human requires NLP features that I don't see in this example. Sure, headers have clear meanings and delimiters, but bodies are pure speech. Don't be fooled by the fact that they arrive as strings:
"Hey I saw you had a table for sale, I need one. I can give you like $30 for it and a puppy." <= in which the sender has sent mail to a list instead of a person and does not have a table for sale, even though it matches the regexp and provides a parseable price.
"The table is A QueeN Anne style repro abouT $0 years old, I think five hundred is a fair price but we can haggle." <= in which the seller holds down a shift key a little too early and the program will register a price of free rather than $500.
You've heard that it isn't a good idea to parse HTML with regexps? Natural human languages are worse.
18 comments
[ 814 ms ] story [ 305 ms ] threadI'm surprised that Wolfram took this long.
Wolfram just renamed it, because Mathematica is only his famous and well-selling product, while Wolfram is himself. :-)
What really sets the Wolfram language apart is its gigantic library of functions. Want to look up stock quotes? easy. Weather? easy. Plus tons of other built in functions that would make a machine learning prediction of Coppertone suncreen's stock price based on weather forecast a couple of lines. In another language you'd have to set up the API queries yourself with a library, parse the returns with another library, and do the machine learning with another library. Then you'd have to cross your fingers and hope that an API or library update doesn't break your code. Wolfram promises easy access to clean data and much less heartache maintaining it.
Wolfram takes all the building blocks then adds an enormous amount of extra junk that's much less frequently tapped.
Seeing anyone using Mathematica looks quite similar back in the day to the way Lisp Machines, Interlisp-D and also Smalltalk were being used, by those lucky enough to have access to such systems.
So in experience, it is quite close to Lisp, even if it uses another syntax.
"Hey I saw you had a table for sale, I need one. I can give you like $30 for it and a puppy." <= in which the sender has sent mail to a list instead of a person and does not have a table for sale, even though it matches the regexp and provides a parseable price.
"The table is A QueeN Anne style repro abouT $0 years old, I think five hundred is a fair price but we can haggle." <= in which the seller holds down a shift key a little too early and the program will register a price of free rather than $500.
You've heard that it isn't a good idea to parse HTML with regexps? Natural human languages are worse.
That does sound familiar...
http://stackoverflow.com/questions/1732348/regex-match-open-...