Older blog entries for welisc (starting at number 41)

21 Oct 2005 (updated 5 Apr 2008 at 09:11 UTC) »
29 Aug 2005 (updated 29 Aug 2005 at 21:04 UTC) »
The horror, the horror.

Tim Bray on Ruby (via Lambda The Ultimate) contains a reference to

... COBOL's ALTER, deprecated 40 years ago and now often cited as the worst feature ever to appear in a major programming language.

How bad could this ALTER statement be?

Very bad indeed.

Style is Substance.

Ken Arnold's Style is Substance argues that programming languages should enforce programming style.

11 Apr 2003 (updated 7 May 2003 at 12:11 UTC) »
SuMO is a new server for finding ligand-binding sites in proteins. It's the first example I've seen of a bioinformatics application written in OCaml.

Been trying out Jeff Schrager's tutorial Intelligent Computational Biology in BioLisp.

Avoiding thesis work by writing an Eiffel version of Goldberg's Simple Genetic Algorithm. Appears to work but performance is disappointing: about half the speed of the C version. Turning off GC makes little difference.

6 Feb 2002 (updated 22 Jan 2003 at 12:44 UTC) »
OCaml and scsh

chalst suggests scsh as an alternative to OCaml. My main interest in OCaml is as a language that I can write can code in as quickly as in a scripting language and compile to get high performance if necessary. (My real interest is in modelling protein structures which needs every drop of performance I can get). That said, I like the design philosophy behind scsh and the idea of embedding domain-specific little languages.

The only real reasons I prefer OCaml over Scheme is that it's statically typed and it has a reputation for being very fast. I'm not sure these are good reasons. Scheme programmers seem to manage just fine without static typing and Brad Lucier showed that, using Gambit-C, you could get performance equivalent to C from Scheme code for number-crunching PDEs.

I think I'm a Scheme programmer at heart but for mercenary reasons I've learning to live with C++ and trying to ignore my suspicion that using Scheme would help me to "beat the averages".

Invested in a copy of The C++ Programming Language last weekend.

My other language is OCaml.

Tinkering with OCaml. An example in Chapitre 12 of the O'Reilly OCaml book shows how blocks allocated in external C code using malloc() can be reclaimed automatically by the OCaml GC using a finalisation function that calls free(). This would be very convenient for writing an OCaml interface to GSL.

Working on extending the loop modelling program. Had a brief flirtation with doing it in Eiffel but decided to switch to C++ for mercenary reasons. Suspect that if I'd done it in Eiffel, I'd have a working program by now instead of being bogged down in the myriad details of C++.

13 Dec 2001 (updated 9 Jan 2002 at 20:09 UTC) »
pphaneuf reports that the physicists he works with don't seem to understand how to use MPI efficiently or why passing around gigabyte-sized structures instead of pointers is a bad idea. They might be confused by the difference between Fortran's call-by-reference convention and C's call-by-value convention. In any case, this is the kind of really basic stuff that scientists who program should know.

Made my first foray into the world of GUIs with a Tcl script to build an interface to MolScript that partially automates the tedious cycle of writing a script, feeding it to MolScript and then reloading the image file. It's really nothing more than a glorified text editor but it does the job.

Installed Mozilla 0.9.6. It seems that they fixed the problem that resulted in a crash when using the Back button to move backwards within www.oreillynet.com. It still doesn't display the bookmarklet link on the Blogger Settings page.

32 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!