myelin: The X of Y - Software Analogies

This is an archive of a long-dead site; it was something I made as part of a prolific blogging and hacking spree from 2002-2003 or so. It's unlikely that any of it still works! I can't bear to delete it all though; this was an important time in my life. So... enjoy!

[ home | systems | concepts | examples ]

Most of the work in learning a new programming language or system is in figuring out how the concepts you are accustomed to map into the new space.

This is an attempt to archive some examples of concepts for different systems.

A concept is an idea or a class of things - e.g. 'data pretty-printer' (something which dumps out a structure in readable form).

An example is a concrete instance of a concept. For example, Perl's Data::Dumper module is an example of a data pretty-printer.

A system is something which uses a whole heap of examples. Perl is a system, as are Linux, Zope and Windows.

With this database, we can answer questions like:

What is the Data::Dumper of Python?

To do this:

  1. Find Data::Dumper in the list of examples. (here).
  2. Look at the list of mappings to find out that Data::Dumper is a data pretty-printer.
  3. Click on data pretty-printer to get a list of other data pretty-printers.
  4. Look down - aha! pprint is a Data pretty-printer for Python

Why is this here?

Because of a Jon Udell article: 'Thinking by Analogy'.

Similar work

Syntax Across Languages (by Pixel at Mandrake) presents examples of syntax in various different programming languages

Programming Language Examples Alike Cookbook (by Guillaume Cottenceau) is an attempt to make a generic 'cookbook' for several scripting languages

[   by phil at myelin electronics   -   does this validate?   ]