Hamburg and Lisp
May. 2nd, 2006 03:17 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
The Lisp conference was pretty good. Very intensive and exhausting to me. Despite meeting lots of interesting people, the introvert in me eventually started complaining loudly, so much so that on Monday I took the day for myself.
Here's some of the people I met:
* Jans Aasman from Franz Lisp, who used to be a cognitive modeler / human factors professor and is now into semantic web stuff. Much of it was called "70s AI". There are some interesting SQL Prolog hybrids, in which one can make very expressive queries that SQL simply cannot do, because they involve deduction (SQL would need to create a separate table for every possible deduction).
* James Anderson, who works for a strange company in Marbella, Spain (a beach resort full of British tourists). They try to predict the stock market by using time series information ("technical analysis") as well newspaper headlines (i.e. "market-external", "fundamental analysis"). From my perspective, this is very cool epistemological work: how do we combine this information of different kinds? Again, they probably benefit from semantic web stuff (when I asked, he said "I am not allowed to answer your question").
* Andreas Franke, who works in Mathematical Knowledge Management with the Saarbrücken people.
* Christophe Rhodes, who demo'd some some CLIM graphics software, in particular a terminal shell that mixes text with graphics, and where everything is clickable. This is a really obvious idea, which makes me wonder why I never thought of it (or don't remember having had this thought specifically).
Unfortunately, I missed the last talk on numerical simulation / signal processing, which was considered the best talk by many people. Afterwards, I had dinner standing up, and talked to more people.
After 16 hours indoors, I finally went home at around 1am. I really wasn't clicking with people very much. While I can be arguably said to be a language geek, I am mostly a user: I mainly use Lisp for assisting me with my theoretical endeavours. I am *not* a compiler geek or an implementation geek, or a graphics library geek, etc... so most of the conversations going on at the conference were over my head, and not that interesting to me (unlike most of the talks).
Anyway, Hamburg reminded me of Amsterdam, only dirtier.
---
On the train back from Hamburg, I found out I had power, so I decided to write some generic machine learning code... I decided on the goal of doing some pattern discovery. So I started by writing a linear regression algorithm.
Lisp is great here because you can pass functions. This way, you can pre-process the dataset and/or create extra tables over which to do the regression. The data set is basically a bunch of parametrized lists. With SELECT, you can filter your dataset before sending it to the regression (i.e. "only consider males").
As a tangent, I came up with this very short implementation of "transpose" (yes, matrix transpose), of which I am proud:
Here is the spoiler for those who want to try it out for yourselves first
Oops...
I have the habit of writing unnecessary lambdas. It gets shorter:
Needless to say, the 6 hours passed really quickly.
Here's some of the people I met:
* Jans Aasman from Franz Lisp, who used to be a cognitive modeler / human factors professor and is now into semantic web stuff. Much of it was called "70s AI". There are some interesting SQL Prolog hybrids, in which one can make very expressive queries that SQL simply cannot do, because they involve deduction (SQL would need to create a separate table for every possible deduction).
* James Anderson, who works for a strange company in Marbella, Spain (a beach resort full of British tourists). They try to predict the stock market by using time series information ("technical analysis") as well newspaper headlines (i.e. "market-external", "fundamental analysis"). From my perspective, this is very cool epistemological work: how do we combine this information of different kinds? Again, they probably benefit from semantic web stuff (when I asked, he said "I am not allowed to answer your question").
* Andreas Franke, who works in Mathematical Knowledge Management with the Saarbrücken people.
* Christophe Rhodes, who demo'd some some CLIM graphics software, in particular a terminal shell that mixes text with graphics, and where everything is clickable. This is a really obvious idea, which makes me wonder why I never thought of it (or don't remember having had this thought specifically).
Unfortunately, I missed the last talk on numerical simulation / signal processing, which was considered the best talk by many people. Afterwards, I had dinner standing up, and talked to more people.
After 16 hours indoors, I finally went home at around 1am. I really wasn't clicking with people very much. While I can be arguably said to be a language geek, I am mostly a user: I mainly use Lisp for assisting me with my theoretical endeavours. I am *not* a compiler geek or an implementation geek, or a graphics library geek, etc... so most of the conversations going on at the conference were over my head, and not that interesting to me (unlike most of the talks).
Anyway, Hamburg reminded me of Amsterdam, only dirtier.
---
On the train back from Hamburg, I found out I had power, so I decided to write some generic machine learning code... I decided on the goal of doing some pattern discovery. So I started by writing a linear regression algorithm.
Lisp is great here because you can pass functions. This way, you can pre-process the dataset and/or create extra tables over which to do the regression. The data set is basically a bunch of parametrized lists. With SELECT, you can filter your dataset before sending it to the regression (i.e. "only consider males").
As a tangent, I came up with this very short implementation of "transpose" (yes, matrix transpose), of which I am proud:
Here is the spoiler for those who want to try it out for yourselves first
(defun transpose (mat) (apply #'(lambda (&rest ls) (apply #'mapcar ls)) (cons #'list mat)))
Oops...
I have the habit of writing unnecessary lambdas. It gets shorter:
(defun transpose (x) (apply #'mapcar (cons #'list x)))
Needless to say, the 6 hours passed really quickly.
(no subject)
Date: 2006-05-02 12:22 pm (UTC)Yes, except for the lack of good cafes, pubs, clubs or parks, it is quite similar. Heh ;-)