Live data from Hacker News

I Wrote a Book to Teach the Wolfram Language

blog.stephenwolfram.com

21–30 of 66 posts

Re: I Wrote a Book to Teach the Wolfram Language

#21
post #5

...if only S. Wolfram would finally have the most obvious insight that he's totally missing: Open-source it! The only programming languages that will ever succeed from now on will be the open source ones . Yeah, he can keep special-purpose libraries closed-source. And the server-software behind Wolfram. Maybe even the Mathematica GUI if he also offers a free "community version" or something on the side. But otherwise…

Is the language itself that interesting anyway? I think 99% of the appeal is the algorithms and datasets they provide, which I seriously doubt they would ever open.

The language in itself is mildly interesting, since it's based on term rewriting.

The closest language implementation in open source is "Pure" (http://purelang.bitbucket.org/), which I personally find superior in many respects.

Term rewriting is an interesting topic, but it's not a deal-breaker as wolfram is trying to convey. We have many alternatives nowdays.

The perhaps non-obvious limit is that the ordering of the rules plays a central role in term rewriting (as it does in it's close cousin: pattern matching), which makes it "cumbersome" (or quirky) to extend in a truly modular way.

Re: I Wrote a Book to Teach the Wolfram Language

#22
post #5

...if only S. Wolfram would finally have the most obvious insight that he's totally missing: Open-source it! The only programming languages that will ever succeed from now on will be the open source ones . Yeah, he can keep special-purpose libraries closed-source. And the server-software behind Wolfram. Maybe even the Mathematica GUI if he also offers a free "community version" or something on the side. But otherwise…

Is the language itself that interesting anyway? I think 99% of the appeal is the algorithms and datasets they provide, which I seriously doubt they would ever open.

I'm wondering why they didn't opt for a purely functional language. That would make much more sense in a mathematical context, since the program text would then be much easier to reason about mathematically, and it would be much easier to treat programming constructs as first-class objects.

Re: I Wrote a Book to Teach the Wolfram Language

#23
post #5

...if only S. Wolfram would finally have the most obvious insight that he's totally missing: Open-source it! The only programming languages that will ever succeed from now on will be the open source ones . Yeah, he can keep special-purpose libraries closed-source. And the server-software behind Wolfram. Maybe even the Mathematica GUI if he also offers a free "community version" or something on the side. But otherwise…

It reminds me of "rebol". Although rebol never actually had a large market to begin with.

Mathematica might have a chance if open-sourced, but it's not the language which is interesting from a technical perspective, but the entire ecosystem of base libraries which is quite well done and which probably has much deeper copyright issues.

Re: I Wrote a Book to Teach the Wolfram Language

#24
post #5

...if only S. Wolfram would finally have the most obvious insight that he's totally missing: Open-source it! The only programming languages that will ever succeed from now on will be the open source ones . Yeah, he can keep special-purpose libraries closed-source. And the server-software behind Wolfram. Maybe even the Mathematica GUI if he also offers a free "community version" or something on the side. But otherwise…

> ... because they simply don't grok how "business growth" and "software ecosystems" work in the 21st century...

Well, to be fair, Wolfram is one of the few scientists actually making money from scientific software. I've seen software companies doing much worse, to the point that I actually doubt there is any serious money to be made from most scientific/engineering software.

Re: I Wrote a Book to Teach the Wolfram Language

#25
post #8

Just me or does that guy seem to lack humility, I don't know something about the way he wrote that.

I actually disagree. Having thought that about some stuff he's written in the past, I actually thought he came across as quite humble and just really excited about his book.

Re: I Wrote a Book to Teach the Wolfram Language

#26
Going to have to join the, I don't quite get what Wolfram thinks is the big deal crowd:

> The goal of the book is to take people from zero to the point where they know enough about the Wolfram Language that they can routinely use it to create programs for things they want to do. And when I say “zero”, I really mean “zero”. This is a book for everyone.

One of the examples he gives is how to: Make a word cloud from the first letters of all the words:

     WordCloud[StringTake[WordList[], 1]]
OK, leaving aside the debate of whether word clouds are the text-analysis equivalent of a 3D rainbow donut chart, this simple example quickly leads to questions about how to express natural variations, such as a word cloud that is more spaced out. Or not shaped like a ball. Or how to render into something I can connect to my Twitter account so I can tweet out a cool viz. The tutorial treats the novice with the promise of doing very visual things in a seemingly more direct way -- what other language could generate a word cloud in so few commands? -- but...so? The power of programming, to me, is the ability to get into the details, to create something that uniqueness expresses something in my mind...and the trade off is that we start by learning syntax and abstract concepts (e.g. Loops and functions). Going past the non-trivial examples gets us quickly into the butting heads against the magic involved, and from first glance, the Wolfram syntax does not look particularly elegant for software design.

Sure, "Times[2,3]" might seem more human friendly than 2 * 3...until I get tired of writing that phrase out and doing an explicit function call just to get 2 numbers. But of course, in most software development, when am I really ever multiplying 2 numbers? Infrequently enough that I imagine I'll have to frequently Google whether the function name is "Times" or "Multiply", proving the first example of the classic adage about the 3 hardest things about computer science.

So there's a lot of things about the language that seem like a disaster to me, but I'm not smart enough to design my own language. Sometimes I'll take the opinions of the masses into account...for example, Python's use of significant white space seemed profoundly annoying but plenty of smart people are able to build profound things elegantly with it, so I took the jump. If Wolfram language is such a step beyond competing languages, where are the examples of things elegantly built with it?

Edit: apparently David Auerbach has said the things I think I want to say, but more eloquently http://www.slate.com/articles/technology/bitwise/2014/03/ste...

Re: I Wrote a Book to Teach the Wolfram Language

#27
What I like about W. Language is that the full name is used for many commands. When you want to develop a big library you have to stay away of short cuts like using two or three letters for a name. Long name is a distintive of a language designed to be used in a wide ecosystem. Numpy names are longer than R names, for example for rnorm (random numbers from a normal distribution). One way to connect (pipe things) would be to use a full name version of a language using an option like: use fullnames.

Re: I Wrote a Book to Teach the Wolfram Language

#28
post #16

Earlier quoted context omitted.

"Does anyone want to bet as to which will gain self-awareness first: Wolfram Alpha or Wolfram, Stephen?" - Casey Muratori

The like-clockwork sniping at the man whenever he's brought up borders on being more irritating than his original "offence".

This is what 'dang famously described as a Pavlovian hashtable reflex[0].

[0] - https://news.ycombinator.com/item?id=9722096

Re: I Wrote a Book to Teach the Wolfram Language

#29
http://www.wolfram.com/language/elementary-introduction/06-m...

https://reference.wolfram.com/language/ref/Table.html

Strange that this function is called Table when what it clearly is is an iterator that outputs a list. Its output is no more tabular than Range; it outputs an ordered list as does Range. In fact Range[10] seems to be shorthand for Table[n,{n,10}] yet they have completely different names.

Post reply on HN