Older blog entries for welisc (starting at number 20)

23 Aug 2001 (updated 31 Aug 2001 at 19:57 UTC) »
New Scientist has an interview with Stephen Wolfram about his new book. He may or may not be "the Isaac Newton of the 21st century" but the book sounds interesting. This kind of simulation is going to be hugely important in bioinformatics.

I'm not well prepared for this kind of stuff; looking at Mark De Pristo's notes on bioinformatics programming in Scheme reminds me just how little I know.

Paul Graham's article Beating the Averages is interesting. Lisp programmers (and functional programming advocates in general) have been saying this kind of thing for years. I suspect they're right but at this stage in my career, my job prospects depend on knowing the usual suspects (C/C++/Java/Perl). It's a pity because the idea of trying something different, especially something that would give me an advantage over the competition, appeals to me.

13 Aug 2001 (updated 14 Aug 2001 at 13:52 UTC) »

Working through the exercises in Accelerated C++. Eiffel may not be as concise as C++ but at least you can't make stupid mistakes like:

line = string('*',cols);

instead of

line = string(cols,'*');

Took me a while to spot that one.

I've come to the conclusion that I like languages to be concise; that's why I haven't given up Perl for Python or Ruby. Lately my Perl scripts have become exercises in using the least possible number of variables. I never loop over a list where map will do the job. If this continues, I'll end up coding in Haskell.

One thing I've thought would be useful is a way to interface Eiffel objects with a scripting language. Victor Putz has done it with epolyglot, a library that supports mixed-language programming in Eiffel, Python and Haskell.

Hodges Figgis are having a sale at the moment; Core C++: A Software Engineering Approach looked like a bargain at £10.99 but having read the ACCU review, I'm glad I didn't buy it: "Not Recommended" is pretty damning.

Installed GCC 3.0 to try out gcj. It looks like native code runs 2-3 x faster than byte codes on the JVM 1.3. If this is really the case then the performance gap between C and Java is small enough to make Java a feasible alternative.

Now if it only had generics and operator overloading...

13 May 2001 (updated 12 Jun 2001 at 19:39 UTC) »

Not sure I'm clever enough to be a Scheme programmer. Doing quite well with Teach Yourself Scheme in Fixnum Days but the implementation of the amb operator is baffling.

11 May 2001 (updated 11 May 2001 at 16:44 UTC) »
Scheme is fascinating in a mindbending sort of way. Even more fascinating when used to teach bio-programming.

Python is my secret weapon to free propensity tables from the clutches of the abomination that is Fortran 77.

20 Mar 2001 (updated 13 Jun 2001 at 10:55 UTC) »

Timings for finding atom contacts in the 1FLT ligand-receptor interface:

    C: 0.77 s
    Eiffel:0.96 s
    Java: 1.72 s
    Perl: 13.16 s

Contacts between V or W chains and X or Y chains:

    C: 0.43 s
    Eiffel: 0.47 s
    Eiffel->Java 1.28 s
    Java 1.17 s
Java timings corrected for JVM startup time

Finished Accelerated C++. Now I understand why people prefer Eiffel or Java.

6 Mar 2001 (updated 24 Mar 2001 at 17:51 UTC) »

Two thirds of the way through Accelerated C++. Excellent book but I have reservations about C++: too much low-level detail that I'd rather not have to worry about.

31 Jan 2001 (updated 31 Jan 2001 at 22:44 UTC) »

Spent the day thinking about coding representations in GenLoop. Thinking of using GAlib; no point re-inventing the wheel. Read the chapter in Thinking in C++ on the uses of const. Eiffel suddenly looking attractive again. Use of Cecil looks straightforward.

Can't remember who said that all software evolves to the point where it can send email but one of my Perl scripts has done just that in the space of an afternoon. Began as a wrapper so Dave could use Lynx in a Unix terminal to download PDFs from the Journal of Neurophysiology without having to click through several levels of the site. The trouble was that he was having to telnet and ftp via my INCBI account. I figured out how to use Mail::Sendmail to mail the PDFs to him as attachments. All he has to do is type:

reprint 83 1 1

and J. Neurophysiol. 83(1):1 is emailed straight to his Windows desktop.
A fairly trivial bit of hacking but satisfying nonetheless.

11 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!