Dynamic Language Buzz

Interesting discussions and/or observations have taken place/have been made in the Dynamic Language world in the past few weeks (even days).

“Bruce Eckel”:http://onthethought.blogspot.com/2005/01/thinking-in-ruby-not.html:

I’m very happily ensconced in the Python community, and every encounter I have had with Ruby — so far — has not made me see the power in it.

I find that it has a less-than-elegant syntax because of its Perl influence (but if you like Perl, perhaps Ruby is the right fit for you). Again, to a Perl programmer this might be a great improvement. Look at one of the first examples from “Why’s Poigniant Guide,” where he’s asserting that Ruby is “the language of our thoughts”:

5.times { print “Odelay!” }

Or this:

exit unless “restaurant”.include? “aura”

This makes sense if you used to be a Smalltalk (or perhaps Forth) programmer, and I know one who started with Python and has moved to Ruby. It also makes sense if you grew up Pennsylvania Dutch, where they say things like “Throw Papa down the stairs his hat,” and “Throw the horse over the fence some hay.”

“Sam Gentile”:http://samgentile.com/blog/archive/2005/01/09/12443.aspx:

By his [Mark Pilgrim’s] definition VBScript and Python are dynamically typed languages but Python is both dynamically typed (because it doesn’t use explicit data-type declarations) and strongly typed (because once it has a data-type it actually matters). VBScript, on the other hand, is a weakly typed language because you can concatenate the string ‘12’ and the integer 3 to get the string ‘123’, and then treat that as the integer 123, all without any explicit conversion. Also, unlike VBScript, Python will not allow you to reference a variable that has never been assigned a value. Then it hit me. I have been (naively) biased against late/dynamically bound languages because of the crap that is VBScript and assuming that it was a real dynamic dynamic language. When you couple what I found and Python’s Everything Is An Object, this is the kind of type system that has flexibility but certain safety at the same time and I can deal with that. It may not mean much to others but it unlocks a huge door for me.

“Guido van Rossum”:http://www.artima.com/weblogs/viewpost.jsp?thread=85551:

Optional static typing has long been requested as a Python feature. It’s been studied in depth before (e.g. on the type-sig) but has proven too hard for even a PEP to appear. In this post I’m putting together my latest thoughts on some issues, without necessarily hoping to solve all problems.

“Part I”:http://www.artima.com/weblogs/viewpost.jsp?thread=85551
“Part II”:http://www.artima.com/weblogs/viewpost.jsp?thread=86641
“Part III”:http://www.artima.com/weblogs/viewpost.jsp?thread=87182 (a.k.a. “Stop the flames!”)