They don't have to read his email, just analyze it algorithmicly. They already generate some kind of index of how many times each interesting word is used, otherwise they couldn't provide ads or fast searching. They only have to view that index as a histogram to reveal all kinds of interesting stuff about Fred's business -- information that he gets an advantage from keeping private.
"How do you explain C, C++, Python, Ruby, Perl, Javascript, and PHP? None had very extensive marketing budgets."
I think a lot of these have larger marketing budgets than you imagine. I can't fathom the amount of money Microsoft spends promoting its C++ language tools, for example.
Regardless of whether languages other than Java become popular or not because of marketing, I still maintain that popularity and worthiness are not correlated. The majority of people may not eat cow dung, but they certainly don't eat really great pudding. They eat the same so-so pudding everyone else does, and most of them don't realize or don't care that it could be better. You will have nothing to "show" for coming up with a better pudding recipe unless you spend money on advertising, manufacturing, distribution, etc..
As for an example of worthiness, Lisp's advantages have been detailed one metric kerjillion times elsewhere. Macros, conditions, and the MOP are the usual suspects in the case of Common Lisp.
"I'll be the first to admit that it comes off as trollish. It's just I
see these pronouncements about a language that make claims, which
frankly I don't think can be backed up. I like Lisp as a language. I
really do. But to me that's not sufficient to annoint it a super
language."
The post we are commenting on was by a person who was not making a
claim, but relaying an experience. I will paraphrase three arguments:
the parent post blog link was saying "look, I'm not an amazing
programmer, but in my experience, armed with Common Lisp, I can
approximate what I see ur-programmers do with other languages at
Google." He in turn was replying to a person saying "I don't think
Lisp makes you more productive." The "Lisp is not really a super
language, it has nothing to show for itself, and I could make similar
claims about logo." thing got interjected by you, I think.
"Moreover, in no field of creative human endeavor have popularity and
worthiness been correlated. You think all those billboard top 10 acts
came from Juliard?"
"Are you arguing that for music that college serves little purpose?
That we're entering some type of music education bubble. :-)"
No, I think that's what you're arguing. I'm saying Lisp is worthy,
and should not be judged by its popularity, because the worthiness is
what reallly matters. You're arguing it has "nothing to show for
itself". I'm sure with a Sun Java marketing budget and the right
people we could make Lisp as popular as we wanted. We could have
whitepapers and case studies to "show" as much as you like. I'm only
concerned with popularity when people dismiss my arguments about
worthiness the minute they assess the popularity. I have the same
problem when I try to tell them about Sun Ra or the Residents.
So all that being said, to address your actual point (however
disjoint from the OP it might be), nobody's claiming it's a "super
language", just often better for the people who commit to using it
despite it's unpopularity. I can back up my claims of betterness with
arguments about worthiness, but not about popularity, but then I don't
think the later kind of argument matters in the first place.
> yet under its own weight it has nothing to show for it.
That's factually incorrect. There's plenty to show for it, you just have to scale to the size of humanity's computing concerns from four or five decades ago.
Moreover, in no field of creative human endeavor have popularity and worthiness been correlated. You think all those billboard top 10 acts came from Juliard?
This is factually wrong in a number of ways. Modern linguists don't throw out "every aspect of language but syntax" (as you yourself indicate later in your own post). There are falsifiability problems ("all books are the same universal book too, so long as each character is a parameter") with some theories, but you have to start with a theory at some point.
I can relate to your sentiment that he's favored because he's such a lefty, but it's not really an argument.
He revamps his "program" every few years because he recognizes it as wrong. I'm not sure why you cite that as a bad thing?
"This is the nub of what I want to say. A language design can no longer be a thing. It must be a pattern -- a pattern for growth -- a pattern for growing the pattern for defining
the patterns that programmers can use for their real work and their main goal."
One of the most incredible CS things I've ever taken in.
I get it. `my_if` doesn't require separate recompilation of the functions that use it. Well played.
I still see a subset of the functionality of a language with macros over sexprs as the syntax. It will take me some time, however, to come up with a good terse reply to that issue that fits in these tiny text boxes. The gist would probably be; if one is going to really change the syntax of a language, the programs that use the changed bits have to be re-parsed at some point. That's somehow tautological.
"Reason 1: Haskell shines at domain specific languages.
"[...] if you can embed a domain specific language into
the programming language you’re using, things that looked
very difficult can start to appear doable. Haskell, of
course, excels at this. [...]"
Says who? Just because I can write `f(x)` as `f x` with full featured operator precedence and associativity tables doesn't mean I can introduce new syntax into the language. I can't even find a moral equivalent of ELisp's rx package for Haskell.
"[...] Lisp is defined by this idea, and it dominates the
language design, but sometimes at the cost of having a
clean combinatorial approach to putting different
notation together."
This is either weird nonsense or the old variable capture argument. You can write crappy functions in any language too, that doesn't mean we should take away the programmer's ability to write new ones.
"Reason 2: Haskell shines at naming ideas.
If you watch people tackle difficult tasks in many other
areas of life, you’ll notice this common thread. You
can’t talk about something until you have a name for it."
I applaud the willingness to appeal to natural language, but this isn't even close to true.
This blog post seems like an argument for Haskell's value based on specific times the author has enjoyed programming in Haskell. I call post hoc ergo propter hoc shenanigans.
You're not really addressing the arguments presented in the linked post, you're just being snarky. I can appreciate that, but the linked post makes some really good points.
Also, the converse of the point you seem to be trying to make with your litany above is also true: new things are not always necessarily better than old ones.
Amen. Whenever I read a joel-on-software or FogCreek blog post, I feel like I'm being exposed to a clever advertisement, where the clever factor decreases linearly over time. This isn't the first time I've seen appeal-to-authority arguments, bad statistics, or other dubious rhetoric there.
http://hackerne.ws/item?id=2247654