Opinion: Dynamic languages and virtual machines


News: Opinion: Dynamic languages and virtual machines

  1. Opinion: Dynamic languages and virtual machines (5 messages)

    There has been a lot of talk about how scripting languages + Java can be a great combination. People have been doing this for a long time (Jython, BSF, and even XML), but now a lot of people are talking. Jon Udell puts his thoughts in the ring, and chats about his thoughts on the current state, and the future.

    Read Dynamic languages and virtual machines

    Threaded Messages (5)

  2. Really needs IDE support![ Go to top ]

    I'm not sure that without support in a modern IDE Jython can be as productive as Java. When writing code features like auto complete, inline viewing of documentation, auto generation of overides or implements methods etc. really speeds things up. When maintaining code the differences are even larger. The intelligent navigation offered by something like IDEA makes it easier to understand existing code while the refactoring support makes changing it easier. Sure, if you can remember all of the Java and Python APIs you may be able to write the code faster, but these days is that really possible? I used to use emacs for all of my editing of java code, after using a decent IDE I wouldn't want to go back, and I'm dubious of the chances of a language that isn't "ide friendly" these days.
  3. Really needs IDE support![ Go to top ]

    For a Jython console with command completion see http://don.freeshell.org/jython
  4. Really needs IDE support![ Go to top ]

    The IDE's are gaining critical mass. Eclipse can be configured for Jython and I understand that this has also been done for NetBeans.

    All it takes to cement the IDE's into position is for enough people to start using them. I suspect that this is more of a cultural hurdle than anything technical - it takes a switch in mindset to use anything other than a text editor for scripting languages.
  5. I've often wondered, with dynamically typed languages how do you offer code completion? I mean, if I have some variable a and I type a.<ctrl-space> how can the IDE offer possible operations or fields on a when it doesn't know what sort of thing a may contain? These days I think this is becoming a problem for languages like lisp/scheme/perl as it must be very hard to offer the sort of features for those languages that IDEA offers for java.
  6. It is possible to do this for dynamically typed languages but it requires a different approach. Smalltalk and VB environments maintain a parse tree that keeps track of what the user has typed. Basically this is compiling on the fly (but without necessarily going to bytecode). I understand that emacs also works along these lines for syntax checking.