Wednesday, January 05, 2005
Re: Advice for Computer Science College Students
Sriram Krishnan posted a reply to the "Advice for Computer Science College Students"
Definitely read the reply when I get connected to the net!!
I'll just comment on one thing. He's mentioned Python and given it a glowing reference
Python is a dynamic language. It is strongly typed, but all the checking is done at
runtime. Nothing is done at compile time. When declaring variables you don't give them a type. A type is automatically inferred when it is assigned something. So if you've made a mistake, like use a variable is a way it wasn't supposed to be used, you will only become aware of it at runtime, if at all. I say if at all because only if your execution path leads to that piece of code will it throw an exception.
What Python has going for it is rapid development. Since there is no compile step, development is faster. But is this a valid tradeoff?
Very recently I used another scripting language Tcl. Actually used it as
part of a larger project to study a tool - Network Simulator (NS2).
Basically I am no authority on scripting languages either. I'll probably
post on that some time later. Lots of blogs queued up in my head!!
What is the size of a python project after which it becomes unfeasable?
And will co's adopt it? The advantage of faster development will sort of
be reduced by a need for better testing.
Tcl can be accompanied by other tools - OTcl and Tclcl. OTcl provides
Object-Oriented functionality to Tcl. Tclcl helps in linkage between OTcl
code and C++ code. Does Python support OOPs, and/or C++ linkage?
NS2 is a Network Simulator (I know its obvious!!). The project is used to
create virtual Networks on which tests can be run. C++ is used to create
compiled entities used within simulations, like Nodes, Links, etc. Users
generally use OTcl to create the simulations for which rapid development
Another possibility is that co's develop in Python but convert the code to
compiled before being deployed. (I have made dumber suggetions before!!)
In the end maybe its just a question of mindset. Probably I too will "see
the light" someday.