Comment Re:My friend had that game. (Score 2) 146
No, it was Howard Scott Warshaw. The same guy who made Raiders of the Lost Ark and Yar's Revenge. Spielberg specifically requested Warshaw for the project after the success of Raiders.
No, it was Howard Scott Warshaw. The same guy who made Raiders of the Lost Ark and Yar's Revenge. Spielberg specifically requested Warshaw for the project after the success of Raiders.
My understanding of the benefit of closures - which could be wrong - is that you capture the state of the program at a given point for use later.
That's where they seem to appear most often lately as more people are discovering (read: forced to deal with) asynchronous programming. Unfortunately, modern languages haven't caught up to the antique ones yet, so we're waiting for old solutions to be reinvented and implemented!
I don't know that capturing state is a safe way to think about it. (Maybe even a little dangerous, depending on the language you're using) You're right in that closures are often used to get data to a function that's to be called later -- arguably a legitimate use if the language doesn't offer a reasonable alternative. If you think in terms of capturing state, however, you're just asking for trouble. Take this famous example in JavaScript:
for(var i=0; i<5; i++)
{
setTimeout( function() { console.log( i ); }, 1000);
}
If you think that you're capturing (I'm reading that as "preserving") state, you'll expect the output to be 0 1 2 3 4. In reality, the output will be 5 5 5 5 5 as all of your anonymous functions close over i. Your loop will long be over by the time your functions are called, at which point i will be 5. To make this really clear, you can add i++; to the end of the anonymous function to get the output 5 6 7 8 9.
Granted, in some languages this isn't the case. In others, like c#, it's actually changed. (Really, in c#, the output of a similar example is different from what is used to be.)
Anyhow, I don't want to say that closures are inherently bad (they're necessary or otherwise useful in some languages) it's just that they're best avoided in many modern languages for the reasons I gave and many others.
My grouching is all about what is practical, after all, which seems to be in the spirit of the question at the top of the page.
the Object Oriented Programming Language craze was in full swing
Yeah, we really took a step backward there. I blame marketing. Had we trusted the research over the brochures, OOP would have died in the 80's. Fortunately, people are starting to see that its not the panacea they were promised, which may explain the trend toward "multi-paradigm" languages and the recent interest in functional languages.
I'm a fan of simplicity. Bolting on extra features (like c# has been doing) just increases complexity; the promised benefits, naturally, are dubious. Some of the things you mention in your earlier post, like referential transparency, give you simplicity for free -- no extras needed. That's always a good thing.
It's even better than what you asked for -- It's factory sealed!
2600's are really inexpensive as they're ridiculously common. You can snag one with a bunch of games in good condition for $50 easily. A quick check on eBay shows a heavy sixer in beautiful shape, with pristine looking box and 20 games (also in near-perfect boxes) going for just over $100 bucks
A Nelsonic Pac-Man watch (LCD game) in okay shape will easily set you back more than that!
Even my Odyssey only cost me $200 bucks, and it included the original shipping box, chips still wrapped in plastic, etc. Even they're not rare enough to fetch a good price. (To be fair, I would have paid more had I found it on eBay and not at a flea market.)
The Apple I is a special case due to its extreme rarity, history, and Apple's current popularity. Even Apple II's have shot up in price recently, though you can still put together a complete system for $400-$500.
Contrast the Apple I with the Kenback-1 (which is much older and similarly rare). On the rare occasion they appear, they'll only set you back 10-15k -- Apparently they won't go up to $30k, even with all the interesting extras in Robert Nielson's rather compelling auction.
The point? "Old" and "interesting" alone aren't enough to get collectors to shell out big bucks.
I should probably point out that my intent wasn't to attack functional languages. Also, I feel the need to mention that points 1, 2, and 3 aren't in any way restricted to functional languages.
Anyhow, my point wasn't that functional programming is bad, just that it's currently a fad. (Not a new one, of course, we've been down this road before.) In general, functional languages are really neat, but terribly impractical. Closures are all the rage right now (a result of the current functional hype) even though they're poorly understood, difficult to read / identify (in many modern languages, that is) and have extremely limited utility. To call them essential, particularly in this case, is more than a little silly!
Just for fun: If you want to see a really neat functional language, check out Joy. It's a purely functional language, but it's not based on lambda calculus. It's very cool.
GoF is, well, worse that nonsense. (Ask Dijkstra) I have no idea why people treat that waste of time like the damn bible. (This is to say nothing of the many, many, problems that terrible tome as caused!) Closures? No one cared about them for years, despite how long the concept as been around. Their use in mainstream languages is extremely limited (in terms of utility). They're best avoided -- even in languages like Javascript. Take a look around. You'll find most people don't understand them, often confusing them with anonymous functions! Functional programming is a bit of a fad right now, which has spawned this recent ridiculous interest in closures. It'll pass, just like the last time, and for the same reasons.
On topic, the parent is studying computer science, where math is essential. CS is math, after all. Quoting Fellows & Parberry:
Computer science is no more about computers than astronomy is about telescopes, biology about microscopes, or chemistry about beakers and test tubes.
See, the parent (for reasons beyond my comprehension) wants to write software for a living. He clearly has no interest in CS. This confusion isn't necessarily his fault as CS programs have been turning in to trade schools at an alarming rate.
People who think that ANYTHING they get on a COMEDY channel from two Democrat SATIRISTS (Stewart and Colbert) is actual NEWS are fools.
Probably. I should point out, however, that those fools are still far better informed that Fox News viewers. Sad, isn't it?
Will this one do instead?
Fox News Faults Obama For Not Saying What They Edited Out
I have some vague recollection of the one the parent mentioned, but not enough to find it quickly. There's a good chance I ran across it here:
Fox News Bias Playlist
I had a project featured in PCWorld and NetworkWorld last month. While I'm not the parent, I think I understand his point and can speak from a better position.
Why all the hate? It looks like a brag on the part of the developer, intended only to impress people who don't know anything about development.
Considering the long list of bugs, missing features, and (lofty) promised utility, it's pretty obvious that this guy is a long way off from completing the project. He didn't write an office suite in 30 days, he started writing an office suite 30 days ago!
It doesn't look like Network World put the spin on the project. The arbitrary 30-day time frame was clearly a goal of the project -- not for extra challenge, but to make it appear more impressive. It's deceptive and dishonest.
As many Slashdot users know, it's not difficult to tell when a personal project is going to get some press. This looks like it was tailored specifically to get that kind of attention. That really bothers people.
So, we've got a not-that-impressive project from a less-than-respectable arrogant press-monger.
A lot of people here also think that they could do a *better* job given the same constraints. A cool project should make you go "how'd they manage that?" not "I could easily do better."
I don't know that "envy" is the right word for that so much as "injustice". After all, we've seen tons of cool personal projects on Slashdot that get little other than praise. If envy were driving the hate in this case, wouldn't we expect to see a similar reaction to other personal projects?
Probably not much, if anything at all. It lacks both significance and scarcity -- and doesn't have the interesting back story that comes with the Apple I.
Oooh, calling out an anonymous coward who didn't even postulate anything... Edgy
Not sure what Mother Theresa would print.
Maybe chains to help keep her strange little cult of suffering well-populated.
So, every one of those 650,000 people aren't drinking enough orange juice?
Sure, why not? Pretending that drinking enough OJ will cure or prevent TB for the moment, it's possible that there would have been many more people with multidrug-resistant TB, but a glass of tasty juice stopped those other cases cold.
I get the incredulity, but 650,000 doesn't seem so big when you consider the population of the entire world.
I wouldn't say that. Neither would Linus Torvalds, as it turns out.
Not that it didn't have it's share of problems. (Of course, I would say the same for any language.) It certainly wasn't broken in some fundamental way. It's apparently fun to bash, but you'll find that most criticisms are either empty or pitifully shallow.
The REAL problem people have with VB is that it was absurdly easy to learn and use. This caused two problems:
1) A Lot of crummy amateur code was produced that needed to be maintained by more experienced staff. That's not the fault of the language. Being easy to use is a good thing, after all! Of course, dealing with all that crummy code didn't exactly inspire a lot of good will from those who had to clean up the mess.
2) As it was so simple that an absolute beginner could learn the basics of computer programming near instantly (and produce real, working, programs) it became a real threat to a large and vocal group of insecure developers. Believe it or not, some people actually believe that the ability to write computer programs requires a "special mind"! Having that skill makes them feel special, smart, and important. Having no other skills, they rightly felt threatened by VB. Never mind that half of Slashdot taught themselves to program between the ages of 8-12. (Hell, back in the 80's, computer programming as a hobby among pre-teens was so popular that there were tons of children's books that included type-in programs. Some, like the Magic Micro series, were targeted at early readers. Other books had type-ins that the reader had to modify or debug to solve the protagonist's problem and progress the story. There were many others aimed at teaching computer programming directly to the 8-12 set.) They've got a lot of their ego wrapped up in a skill that the average child can learn on their own VB, aimed at professionals, threatened more than their jobs; it threatened their ego. Can you really blame them for spreading FUD?
The remaining hate seems to come from the same kind of people who believe GOTO to be inherently evil. They don't really know why VB was horrible, only that "everyone" says that it is. It's an easy meme to put out there as they're likely to get a good bit of praise for their comments and unlikely to get much (if any) criticism for restating their borrowed opinion. It makes them feel like part of the community. It also makes them feel smart for holding the majority opinion, even though they didn't form it on their own.
All seems condemned in the long run to approximate a state akin to Gaussian noise. -- James Martin