Earlier quoted context omitted.
> what seems to be the most natural way to do something is how it is actually done I love Python too, but it's not without its quirks. Eg: ','.join(mylist) Which nearly everyone I know at first assumed would be: list.join(',') Nobody thinks of what's being done here 'take a dot, and use it to join this list'. They think of 'take this list, and join it into a string using dot'.
I was about to write about how horrible that is when I realized that I do that all the time in jQuery: $(" Foo ").appendTo(bar)
Programming languages, operating systems, despair and anger
31–40 of 59 posts
Re: Programming languages, operating systems, despair and anger
#32Earlier quoted context omitted.
I absolutely love Python, can't stand Ruby. The reason I love Python is that in general when I want to write something a certain way, or what seems to be the most natural way to do something is how it is actually done. As a programmer it gets out of my way and lets me do what I need to get done. The author to a certain degree is calling for exactly that, a language that makes tasks that every programmer does over and…
> what seems to be the most natural way to do something is how it is actually done I love Python too, but it's not without its quirks. Eg: ','.join(mylist) Which nearly everyone I know at first assumed would be: list.join(',') Nobody thinks of what's being done here 'take a dot, and use it to join this list'. They think of 'take this list, and join it into a string using dot'.
Re: Programming languages, operating systems, despair and anger
#33Also, language designers have to maintain a balance between improving the language and maintaining stability so that programmers can actually get work done. I think Guido is doing a good job of this (even though I might disagree with some of his design decisions).
Re: Programming languages, operating systems, despair and anger
#34I think he started with a point but devolved into a lot of wishful thinking. Why not focus on the solution rather than hoping someone is going to listen to you complain and make it all better? I'm sure they could use the help.
Wishful thinking? A lot of what he suggests have straightforward implementations as "built-in" features. (Something that looks "built-in" anyhow.) Perl tried to be pretty much the language he suggests, but it was put together with a poor sense of language design. Ruby tried to correct Perl's mistakes, but also succumbed to the "kitchen sink" mentality. Python tried to correct many earlier mistakes, but while it was m…
The premise as I understand it is that modern languages are broken and have failed to evolve. An interesting point. A good start for an argument.
However, his rant devolves into:
"REAL WORLD, modern datatypes, built-in, literal, batteries-included PLEASE!!! If the following aren't first-class types with first-class literal constructors / representations supported at the language level then your new programming language ISN'T EVEN ON THE PLAYING FIELD"
No evidence. Not even a mention as to how he's reasoned that these statements are true. Nothing.
Why does my compiler/interpreter need to have an "email" data-type? Why is my language not even "on the playing field" without it? Why are there so many successful programming languages then that survive without it?
I can empathise with his frustrations. There are plenty of times on the job when I feel more like a glorified digital plumber. Deserializing/reserializing data and pushing it through various pipes isn't glorious work. But lets take the argument from there rather than flapping our arms and making frantic claims that everything the way it is is inherently broken because it's not the way we'd like it to be.
(And maybe he does just need a good dose of Lisp ;)
Re: Programming languages, operating systems, despair and anger
#35Create football stadium and football players. Start the game when user presses spacebar. Make players have red shirts and white socks.
http://thedailywtf.com/Comments/Could-You-Explain-Programmin...
Re: Programming languages, operating systems, despair and anger
#36Earlier quoted context omitted.
I absolutely love Python, can't stand Ruby. The reason I love Python is that in general when I want to write something a certain way, or what seems to be the most natural way to do something is how it is actually done. As a programmer it gets out of my way and lets me do what I need to get done. The author to a certain degree is calling for exactly that, a language that makes tasks that every programmer does over and…
> what seems to be the most natural way to do something is how it is actually done I love Python too, but it's not without its quirks. Eg: ','.join(mylist) Which nearly everyone I know at first assumed would be: list.join(',') Nobody thinks of what's being done here 'take a dot, and use it to join this list'. They think of 'take this list, and join it into a string using dot'.
Re: Programming languages, operating systems, despair and anger
#37Earlier quoted context omitted.
I was about to write about how horrible that is when I realized that I do that all the time in jQuery: $(" Foo ").appendTo(bar)
That's not the same, $(...) is a method which creates a list. ',' is a string. So actually you're doing exactly the opposite of the python idiom.
Re: Programming languages, operating systems, despair and anger
#38Earlier quoted context omitted.
> what seems to be the most natural way to do something is how it is actually done I love Python too, but it's not without its quirks. Eg: ','.join(mylist) Which nearly everyone I know at first assumed would be: list.join(',') Nobody thinks of what's being done here 'take a dot, and use it to join this list'. They think of 'take this list, and join it into a string using dot'.
It's a convenience so that every iterable object in the world doesn't need to implement a join() method. I pass generator expressions to join as often as lists, so it works out well that the method is on the string rather than the list.
The way to do this would be to have an IterableMixin that implements join() (and a load of other stuff) so long as the subclass implements a small number of basic methods.
Re: Programming languages, operating systems, despair and anger
#39Go is just a C 2.0 developed by its fathers and it's based on early works on Plan 9 project (if I understands correctly).
So, it is language for OS-level programming and, perhaps, google's own native client, and community will code and release lots of high-level libraries, as it happened for C or, say, perl.
Re: Programming languages, operating systems, despair and anger
#40It seems to me as if he is mostly complaining about the lack of libraries to handle basic operations, rather than programming language syntax or design.