The prize for Google’s AI challenge – creating a bot to play the game Planet Wars as intelligently as possible – has been taken by a developer from semantic web vendor Franz Inc. Gábor Melis, who works on the company’s Lisp-based AI database, claimed the win for his Lisp-built Bocsimacko bot that rocked in completing each of 200 turns in one second in a single thread of code.
That’s cool, but even cooler is that what Melis did in taking his observations of how humans solve the challenges of the Planet Wars game – defending their turf, allocating surplus resources for colonization and attacking opponents – and making a prototype of those heuristics in LISP may foreshadow how that programming language can have greater resonance in a Semantic Web world.
As Melis describes programming in the language, “it’s almost a continuous feedback loop between coding and thinking, and this is where Lisp is great as a tool for prototyping,” he says. The analogy given by Franz is that the language makes it very easy to test out your ideas, almost as if you are writing in English. As companies begin to explore developing complex and perhaps not well-specified semantic and Linked Data applications, that kind of streamlined programming and flexibility can become very important.
“If you know exactly what you want to do, you can find a programmer that knows Java or C++ , and they are cheaper and can build those systems,” explains Jans Aasman, CEO of Franz. “But if you have to build something new and complex, then it’s so much easier to use a language that helps your thinking. No other language helps like Lisp, and once you’re done your work can be transferred to another language.”
Aasman points out that Lisp departs in an important way from most other programming languages whose heritages solely are in number-crunching. As companies aim to create applications to provide real-time insight into what’s going on in their business, they’ll be looking for patterns among combined structured and unstructured data sources that aren’t just about numbers but about symbols, too he says – people’s names, the things they sell and so on.
“Lisp is a language to deal with symbols, so this ties in with the Semantic Web, which is one big system to deal with symbols,” he says. “The area where the Semantic Web will have the biggest impact and Lisp new opportunities is that with it we can explore new concepts quicker than anyone else.”
Melis also predicts a second life for Lisp as shifts in enterprise IT development models, like the one the Semantic Web heralds, gain traction. “Other languages just go obsolete after awhile, but the flexibility of Lisp is such that it can absorb a lot of change and bring in another language without changing in its core,” he says, something you can’t find in Java. “Lisp has the lightest tools to incorporate new kinds of languages within it to help you think in terms of the domain instead of in terms of the programming language.”
One thing to keep in mind, though, is that programmers attaining Lisp mastery isn't an overnight event, so there might not be as much ready expertise at hand. Lisp "looks simple but to write complex programs that are very efficient takes years of mastery," he says, compared to Java and C++, where it's easier to get up and running. "But once it is mastered, you can write far more compelx programs." So, companies may want to carefully plan out how they'll leverage the Lisp experts they do have on hand.