I just wanted to clue people in to a talk I listened to yesterday. It's a different take on the library problem. Fed up with not having access to the libraries he needs, Antonio Menezes Leitao decided to use a translation tool called Jnil to automatically translate Java libraries into Common Lisp.
So I guess I don't really know how I feel about this talk. It's a great idea---Java has lots of libraries (10,000 by his count) and Lisp doesn't. It's brave to face the translation task. It can't be easy to not only cross language boundaries, but to cross paradigm boundaries, too. And it's more than a direct translation. The translator can understand some forms of programmer "intention" to create lispier code.
But I'd like to see it in action. I had some concerns about the effort of having to write your own constructors since apparently Java constructors can't be translated. And then there's all the refactoring you do only to have to redo it when the library is upgraded.
Someone at the end of the talk asked a good question: "what about the philosophical differences between Java and Common Lisp?" Antonio explained that he would rather deal with the cultural differences than deal with the lack of libraries.
So, I guess I think it's great! It's just the sort of thing that we need---someone eschewing principles for practicality. Strong principles only divide and create tension. Practical, self-interested thinking at least lets you negotiate. I'm looking forward to using the libraries he'll generate.
Comments
This really needs visuals. I
This really needs visuals. I can't follow a dang thing just listening to the audio. Additionally, it's really poor quality audio too, barely audible, and with a lot of reverb (it was recorded open-air in a large, vacuous room).
f2j
f2j started out to provide the already implemented and characterized linear algebra routines in LAPACK and similar libraries in java. There is definitely an argument for pulling in good libraries where you can find them. But there is no cultural conversion in that method and the naming is awful.
But java seems like an odd target. Getting more libraries wrapping with SWIG seems like it would have a better cost/benefit ratio.
Post new comment