Follow Slashdot stories on Twitter


Forgot your password?
DEAL: For $25 - Add A Second Phone Number To Your Smartphone for life! Use promo code SLASHDOT25. Also, Slashdot's Facebook page has a chat bot now. Message it for stories and more. Check out the new SourceForge HTML5 internet speed test! ×

Comment Re:Python as a shell language (Score 1) 242

Yeah, I agree, I've also reluctantly come to the conclusion that significant whitespace as the only option can suck a bit - places too many demands on the editing tools, clipboard etc. Definitely a double-edged sword.

For the use-case you're talking about, something like ruby or javascript (!) or a lisp would be better.

But python is nicer to read and has great libraries for a lot of things. Hey-ho. Can't have everything, eh?

Comment Re:functional programming (Score 1) 242

I agree with anonymous coward below - I don't see how list comprehensions and generators are clearer than 'map' and 'reduce' (or is there some other reason you think generators and list comprehensions are better? .. more flexible? more concise?)

I use list comprehensions and generators, and it's fine; but frankly they're not that self-explanatory or intuitive. For a language that aspires to be almost pseudo-code, python sure has its share of weirdness and magic.

Comment Do No Evil (Score 1) 148

Whoever makes the first AI capable of improving itself had damned well better stick to that principle. You know it really isn't funny. It's not the AI you should worry about so much as the people in possession of it. And Google (i.e. USA) are not the only outfit involved in this arms race. Bad, bad, bad. This one could make the Manhattan project look like the work of amateurs.

Comment Error is too vague (Score 2) 536

Surely there are different sorts of errors, which would suggest different approaches for dealing with them?

  1. Programmer error. Should be uncovered during testing; where information about the point of failure and the state of the program at that point is invaluable. However, any remaining code of this sort in a final product should not bother the user with the details, but rather log them for passing back to the developer.
  2. Installer error. Sort of a mix of 3. and 4. below.
  3. System error. A problem with the state of the system (perhaps a network connection is down, or the disk is full): as with a user error, the program should do what it can to continue, and tell the user exactly what is wrong so they can do something about it.
  4. User error. The program should endeavour to continue doing the most sensible thing possible and/or tell the user what they have done, and what they should have done. A user does not want to see Exception messages.

I guess it's pretty hard/futile to deal with most of these issues at a language level, because the appropriate course of action and channels of communication depend on the system. It strikes me that most of this stuff is something a domain-specific framework or API should be handling.

Comment Re:Gut reaction? (Score 1) 261

Somebody modded me down for that?

I like python, and use it a fair bit, but the news hardly comes across as an endorsement, does it? To be fair I'm not sure Python is a super-fantastic fit for Google - it may be easy to read, excellent for prototyping, glue, and access to useful (esp. scientific) libraries; but it's not the absolute best language for text processing, web stuff, GUIs or speed.

Comment World's Most Misunderstood Language (Score 1) 146

Before you blindly dis' javascript, listen to Crockford

"Lisp in C's clothing"

"Lousy Implementations" to blame

And the prototype model is more pragmatic and less crazy than the object-fetishists will ever admit. You can do functional-style programming in javascript pretty well too.

Could it be that javascript is a language whose time has come, and the Khan academy have made a smart choice? Let's face it - it wouldn't harm to have more well-trained javascript programmers.

Slashdot Top Deals

Anyone can do any amount of work provided it isn't the work he is supposed to be doing at the moment. -- Robert Benchley