Argumentum ad Ignorantiam
matthew
::16 nov 2006 :: 11:43pm
I'm wondering if I should make another post. I.E.:
The Tripp sent me a set of, what appeared to me for sure, challenges to my posts since I've been back and, since he is the post-master-general I decided that I would simply refrain from posting and even offered to simply stop. Period; Full Stop; Whatever, depending upon where you're from. BUT, I decided that since he hadn't disabled my account in the interim few days, and since he insists that I can post whatever I want, which, of course, begs the question for the emails in the first place. Yeah, I'm confused and not trying to anger anyone, least of all he who is my, sincerely, very dear friend Tripp, but I decided to take him at his word and push on. So, to whit,
Petunia: The Richmond Symphony is doing a run-out concert this Sunday night in Staunton, I believe at a high school at 7:30. I do not, unfortunately, have the exact address here as it is in my calendar in the car, but I'll add it to a comment tomorrow. Come if you can. Shostakovich 5th Symphony is the biggie. Do some Googling on it, it is probably one of the most important works of art from the "Eastern Bloc", read Stalin Years, to ever be created. Anyway, since you teach, I encourage your students and parents to attend as well. Seriously, this is a great piece of art and we're, not being biased in _any_ way, playing it well.
Alles: So, I'm still struggling with why Corporate America and even programmers in general have not adopted the power of the language that is LISP. And, in the same logic, PROLOG. I'm blaming marketing. I think everyone thinks of these languages as "Academic" since they are most often taught in university settings, but I cannot imagine that we've not pushed these things into our Java-C# dominated world. A brief example, in python - you'll need pylog, but this could work in any general PROLOG system as it is a simple example:
#!/usr/bin/env python
from pylog import *
exec(compile(r"""
knows('mike',Foo) :-
language(Foo),
easy(Foo).
knows('mike',Foo) :-
medium(Foo).
knows('mike',Foo) :-
hard(Foo).
knows('mike','XML').
language('JScript').
language('C#').
language('VBScript').
language('Python').
easy('C#').
easy('VBScript').
easy('Python').
medium('Prolog').
medium('LISP').
medium('Java').
hard('ADA').
hard('FORTH').
"""))
WHO, WHAT = Var('WHO'), Var('WHAT')
queries = [
knows('mike','C#'),
knows('mike','LISP'),
knows('mike','ADA'),
knows('mike','XML'),
knows('mike','JScript'),
knows(WHO,WHAT),
]
for query in queries:
print "?", query
n=0
for _ in query():
print "\tyes:", query
n += 1
if n==0:
This is simple PROLOG (again, wrapped, in this example in PyLog) that code will tell you via simple queries who knows an "medium" or "hard" language. Sure this can be done in Java or C#, but I can guarantee you that readable code would require more lines than this and it wouldn't be nearly as reader-friendly. The power here for true, easy to maintain, expert systems is extremely expansive. So, I press on, corporate clients be damned, with my learnin' o' the non-billable languages. Let's hope that LISP.net and PROLOG.net will yield fruit.
Let's also hope that this doesn't get me into trouble with Tripp. :)
