I was looking for something similar to lazy lists or iterators in CL and asked a friend who told me about the following paper (abstract see below): http://www.doc.gold.ac.uk/~mas01cr/papers/ilc2007/sequences-20070301.pdf
Is this something worthy of inclusion into ABCL?
On Wed, Jan 6, 2010 at 3:42 PM, Axel Rauschmayer axel@rauschma.de wrote:
I was looking for something similar to lazy lists or iterators in CL and asked a friend who told me about the following paper (abstract see below): http://www.doc.gold.ac.uk/~mas01cr/papers/ilc2007/sequences-20070301.pdf
Is this something worthy of inclusion into ABCL?
I would love to have that in ABCL! Besides your use case, I'd like to use such a feature to make Java collections be first-class citizen in Lisp. That would mean easier integration with Java, and the possibility to use the Clojure collections "for free", since I read that they implement the standard Java collection interfaces.
I believe ABCL's sequences implementation is derived from CMUCL's, and since SBCL is a fork of CMUCL, porting them from it could possibly be not very hard.
It's definitely something I'd like to work on, and I've been thinking about that on and off for some time. I can put some time into it in the near future; if you'd like to join efforts, you're welcome!
Bye, Alessio
Unfortunately, I'm currently busy finishing my Ph.D. thesis.
Afterwards (early March), I plan to do the following things:
- Write a manual that gets Java programmers started with ABCL as quickly as possible. I'm currently learning CL and there is a lot of potential for speeding up the learning process. Even though I know a bit of Scheme, I'm a complete CL newbie, so my perspective should help here.
- Evangelize ABCL. ABCL could become a lot more popular than it is, especially considering the growing popularity of Clojure. I prefer ABCL to Clojure, because I don't like some of the decisions that Clojure has taken. I am one of InfoQ's "Most Valued Bloggers" and think that their audience would be interested in small blog posts pointing out cool things you can do with CL that Java cannot do.
- Write a framework for Ajax programming that is based on ABCL, Parenscript and the RDF database Sesame. It is supposed to become a mix of Ruby on Rails and GWT, with an RDF database backend. The next version of Hyena [1] will be based on this framework (and/or actually be that framework).
In general, I'm amazed how well ABCL works and how quickly it progresses.
The two greatest current weaknesses that I can see (mind you, on the road to true perfection) are:
- Java integration. In both directions. The ABCL killer feature is that it runs on the JVM. If façades to Java libraries were easier to write, one could be even more productive with it. - Concurrency. I don't like Clojure-style concurrency. I would expect fork-join and actors to be relatively simple to add to ABCL, given the direction in which Java 7 is going.
Let me know if I should elaborate on any of these points. All other things that I can think of seem to be already worked on: Slime, ASDF-install-like package installer (ASDF-install itself? Lispy?), and (now) better collections.
[1] http://hypergraphs.de/hyena/
On Jan 6, 2010, at 20:59 , Alessio Stalla wrote:
On Wed, Jan 6, 2010 at 3:42 PM, Axel Rauschmayer axel@rauschma.de wrote:
I was looking for something similar to lazy lists or iterators in CL and asked a friend who told me about the following paper (abstract see below): http://www.doc.gold.ac.uk/~mas01cr/papers/ilc2007/sequences-20070301.pdf
Is this something worthy of inclusion into ABCL?
I would love to have that in ABCL! Besides your use case, I'd like to use such a feature to make Java collections be first-class citizen in Lisp. That would mean easier integration with Java, and the possibility to use the Clojure collections "for free", since I read that they implement the standard Java collection interfaces.
I believe ABCL's sequences implementation is derived from CMUCL's, and since SBCL is a fork of CMUCL, porting them from it could possibly be not very hard.
It's definitely something I'd like to work on, and I've been thinking about that on and off for some time. I can put some time into it in the near future; if you'd like to join efforts, you're welcome!
Bye, Alessio
armedbear-devel@common-lisp.net