Why Smalltalk?

As you will have seen by now, we chose from the outset to use the Smalltalk programming language for the creation of all of the ALCHEMeTRICS.org trading software. If you are acquainted with programming languages and software development tools you may be interested in the reasons behind this decision. This section of the website discusses the benefits that we believe have accrued from the use of Smalltalk for our trading tools:

1. Reliability

Trading is hard enough at the best of times so it is vitally important that any trading systems, especially those involving automated trading, are both correct and reliable. Smalltalk has a number of features that have allowed us to build such software. The fact that the language fits easily into the Test Driven Development methodology means that, at every release of the live system, we are able to verify that the system still works as expected. In addition to this, we chose to make use of Smalltalk's Sea of Live Objects by deploying the TWB application within a full development environment. This means that we have the added security that should a problem arise during market open hours we have the ability to use the debuggers and code browsers within the live system while it continues to operate (i.e. without having to bring down the application and restart).

2. Speed of Development

Smalltalk has always been fast to code. It is dynamically typed, which simply means that each object is responsible for checking the types of the parameters passed to it rather than relying on each caller doing so. Hence, method (function) parameters are implicitly checked in one place rather than explicitly in the many places from which the method is called. This has a minor saving in coding required by the programmer but, more importantly, it means that the compilation of any change is lightning fast and that changes (even major ones) can be made in-situ on code that is actively being debugged. This is one of the enabling features in the Sea of Live Objects that allows us to program within the debugger during Test Driven Development.

3. Knowledge

Since we are associated with Object Arts, we naturally have an above average knowledge of the Smalltalk language and the development tools. We already appreciated the power available; it was just necessary to focus it and make great things happen!

On to Sea of Live Objects