I remember, two years ago, making a digression from one very important
conversation into another. The second conversation pertained to a
trend toward technology products which were hard to understand or
modify, and a culture which had begun to stigmatize understanding
and improving technology (instead of praising it as creative or
innovative). I'm working on a concept now which I think summarizes
this trend and others, and I'm thinking about the idea of "guild
freedoms". More on this later, I think.
I went to a CalLUG meeting where there was a presentation by
these people (Springbox)
which was actually among the best presentations I've ever seen
at a CalLUG meeting. (I hadn't heard of Springbox before, and
I thought it might be "yet another product pitch" -- but it was
actually extremely technical.) Maybe I was just biased because
there was actual Python code in the presentation.
My impression is that the people behind Springbox are brilliant
people with an excellent technology, very much work experimenting
with and holding great promise. On the other hand, they seem
to think like 1964-era MIT AI enthusiasts: they have the sense
that if only we can collect and formalize enough facts
about language in a gigantic database, we will produce software
which actually has common sense and understands the real world.
They do have a very powerful infrastructure for collecting many
people's insights about many languages used in many different
domains, within a single distributed database which collects
syntax, semantics, and empirical facts under one roof. This
doesn't mean that it can solve the problems of AI and understand
the world!
The technology behind this project has been updated a bit
from 1964, so there's Python, regular expressions, recursive
descent parsing, object orientation, inheritance, polymorphism,
modern computational linguistics techniques, symbol versioning,
cryptographic signing, and even a peer-to-peer file sharing
network. No kidding. And they've found legitimate uses for
all these things, so they aren't just buzzwords. That might
be the most impressive part of all.
I do want to take a look at this and maybe try writing some
functions, er, symbols within their scheme, to see if I can
attack some real problem. The syntactic stuff also reminds
me a little bit of the declarative logic programming
languages from SICP; I remember using pattern
matching in Scheme to do a little phrase structure grammar
thing back when I took CS61A (this is why everyone at Berkeley
ought to take Ling 5 and CS61A at the same time -- two great
tastes that go great together), but regular expressions from
PCRE are SO MUCH MORE EFFICIENT than the pattern
language in the toy database system they create in Scheme as
an example in SICP.
I then pestered the speaker with lots of questions about how
you would teach the Springbox system to understand Latin (word
inflections, flexible word order, irregular verb conjugations
and noun declensions), and he answered those very capably,
showing that he'd really thought extensively about how to parse
natural languages through formal methods. Then I spent a long
time trying to Wake (him) Up From The Boolean Dream.
After that lecture, I went to Blake's with some people to see
Sumana perform stand-up comedy (along with a few professionals
who opened for her). She's really very funny, and I had a nice
time, even waiting through the professionals' acts (many more
jokes about drugs and sex, but wow, that bagel joke
made my week).
French and Indian War, groan, snicker, these young upstarts who
actually know something about history and politics... there
need to be fewer drunk people in the audience.