Tuesday, December 21, 2004
Thursday, December 16, 2004
From an article on Slashdot. The book is available for download here.
For someone who has never done XP (like me), it makes a good reading. The code examples are in Java but can be easily adapted to related languages like Object Pascal (which is what I use at work) and Objective-C .
As for C++, not too sure whether anyone can do XP in C++. Yet to see a free/open source refactoring browser for C++.
Posted by Krishna at 1:13 PM
Wednesday, December 15, 2004
After a break of 41 days, I'm finally back to work. Nice to be back among friends and colleagues. Hope to write some *good* code in the coming months.
Posted by Krishna at 10:25 AM
Sunday, December 12, 2004
From Slava Pestov's blog.
The Win32 port will be bundled with the next release it seems. He is also working on a new compiler that does optimizations from an intermediate representation. It would be interesting to run some micro benchmarks and compare with other scripting languages.
On an unrelated note, I tend to agree with his take on design patterns. For most dynamic languages, these design patterns simply boils down to using features like closures, multiple dispatch (if available), continuations etc.
Posted by Krishna at 10:36 AM
Friday, December 10, 2004
Plenty of improvements in this release. Improvements in the compiler, lots of improvements in the library including a set of classes for networking.
On a related note, EWG is a SWIG like wrapper generator for eiffel. Currently it provides complete bindings for GTK2, OpenGL and a few other libraries.
Posted by Krishna at 8:18 PM
Monday, December 06, 2004
Checkout this for a very nice and refreshing tutorial on lisp programming. The diagrams are super cool !
Posted by Krishna at 7:02 PM
Sunday, December 05, 2004
Saturday, December 04, 2004
Factor is a programming language designed and implemented by Slava Pestov (of jEdit fame). Some key features include:
- Postfix syntax
- Dynamic typing and scoping
- Syntactic support for lists, arrays and dictionaries (key<->value pairs)
- Full support for continuations (as in Scheme)
- Large math library
- Integrated web server that uses continuations to handle requests.
- and host of other features ...
The language resembles Forth a lot but also has features from Lisp. The latest version (0.69) also sports an optional JIT compiler for x86.
It sure looks interesting.
Posted by Krishna at 2:37 PM
Monday, November 22, 2004
Posted by Krishna at 1:01 PM
Looks like Solaris 10 is available for download. I want to checkout dtrace in particular. Am sure Jagan will be jumping around in joy...
Posted by Krishna at 11:46 AM
Friday, November 19, 2004
BGa (my boss) and Saroo (my teammate) got engaged recently. Congratulations and best wishes to them. A few words about them is in order:
BGa is a one man army in my book. He single handedly designed/built ETV's systems and networking department. More about his technical achievements in a later post. He is a great source of inspiration for me. I've been working with him for the last 18 months and its been a great experience. Learnt a lot from him simply by sitting next to him and watch him work. Besides being a terrific programmer, he is also a great manager. Took the bullet(s) and shielded our team on many occasions. It is a previlage, working with him.
Saroo is quite a chirpy person (she is nicknamed squirrel for a reason). Works very hard and for long hours (her uptime records are probably bettered only by Jagan I think). Has good sense of humour and a very good team person. She started her career in ETV as a copy editor then switched to system administration before settling(?) in the graphics department. Nice person to have on the team.
Hope their marriage date does'nt clash with the upcoming stupid elections in Bihar.
Posted by Krishna at 10:35 PM
From what I've read in local magazines and seen on TV, looks like the Sankaracharya of Kanchi Mutt is in big trouble.
I still remember the good old days when I used to stand in the queue at 5:00am to catch a glimpse of the Paramacharya. After he passed away, we stopped going to the Mutt. Too bad the mutt is in news for all the wrong reasons. The image sure has taken a severe beating.
Posted by Krishna at 10:25 PM
Major changes include ConTeXt backend and plenty of bug fixes.
Posted by Krishna at 8:02 PM
Sunday, November 14, 2004
memcached - A distributed in-memory caching system.
From the website:
memcached is a high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load.
Danga Interactive developed memcached to enhance the speed of LiveJournal.com, a site which was already doing 20 million+ dynamic page views per day for 1 million users with a bunch of webservers and a bunch of database servers. memcached dropped the database load to almost nothing, yielding faster page load times for users, better resource utilization, and faster access to the databases on a memcache miss.
Posted by Krishna at 11:50 PM
Skribe is a library of procedures in the Scheme language for marking up text from which outputs in various formats like HTML, PS and PDF can be generated.
Currently I'm using it to generate my website. Skribe can also be used to produce manuals and has good support for formatting source code. Examples of projects using Skribe for documentation:
- Bigloo scheme compiler.
- STKlos scheme interpreter.
- And ofcourse, skribe itself.
Also checkout the STKlos site for an example of a website generated using Skribe.
So why Skribe instead of XHTML or some XML markup to seperate content from presentation ?
- Beneath skribe is a full blown programming language (Scheme)
- No need to get tangled in stylesheet programming
The only gripe (for non-lispers) is Lots of irritating silly parenthesis :) .
Posted by Krishna at 9:56 PM
Friday, November 12, 2004
Posted by Krishna at 8:09 PM
Wednesday, November 10, 2004
As I write this, g++ is grinding my hard disk trying to compile a simple application using the FOX toolkit. I'm a big fan of fast compilers (who is'nt ?). At work I use Delphi/Kylix which are very fast. When I write gtk+ apps I prefer the Tiny C Compiler to
compile and run the code during development (the final binary ofcourse will be produced by gcc). This compiler is arguably the fastest I've tried. Recently version 0.9.22 has been released.
From the website:
(Nov 8, 2004) TCC version 0.9.22 is out (Changelog). Linux kernel compilation is 30% faster (10 seconds on a 2.4 GHz Pentium 4).
Your own customised linux kernel in just 10 seconds !!! . Fantastic.
Another brutally fast compiler is the SmartEiffel Eiffel compiler. For a compiler that has to compile a fairly large language, do whole program optimizations and where the library is maintained only in source form, the compile times are excellent. Combined with tcc, SmartEiffel reduces build times considerably.
Other fast compilers that I occasionally dabble with:
Posted by Krishna at 3:42 PM
Tuesday, November 09, 2004
Posted by Krishna at 12:17 PM
Its been almost a year since I last updated this blog. Hope to "up" the posting rate in the coming month(s).
Right now, I'm on medical leave and dabbling in GNUstep and FOX GUI Toolkit .
Interesting that FOX is modelled after AppKit and supports the Target:Action paradigm. But has some warts mainly due to the use of C++ as the implementation language. Datatargets are a nice addition.
Posted by Krishna at 7:06 AM