| Jaspers Personal webpage | |
| Home Blog Projects Various smaller projects About me | Libraries i useCommon Lisp has a fair amount of libraries, and websites to list them, but it mostly doesn't concern itself with giving opinions about which libraries are good to use. So i guess developers should indicate this a bit. Hence this page. (in no particular order.) None of these projects are mine.LibclNice package of various often-used libs made to work together. Has a little opaque installation script rather than just asd files, though, but that is the only bad thing i can say about. (there seems too be too much leeway in asdf files.) Used only some of them:AlexandriaVarious little useful macros and functions. From it, i use mostly with-gensyms, if-let(and kin), (r)curry, compose.cl-fadNice simple bunch of functions that are a bit missing in CL.LML2Fairly simply makes a convenient way to output and represent HTML in CL. Is the inverse of cl-html-parse, which is neat to have that way.Could use better documentation, i myself was a little frustrated using it. It is also a little scarce on doc-strings, looking at this autodoc. Is kind-of a competitor to 'my' GIL project, but since people likely are more familiar to LML2, and LML2 kindah makes sense, i might apply the ideas in a more LML2-compatible way. CLGSo far liked this one best as GTK bindings. Supposedly autogenerated, which seems like a good idea to me. Afaik doesn't have documentation, but everything works in analogy with the C documentation.When extending, i after deriving a class, initialize-instance can be redefined. There are a bunch of gtk bindings. I also used cl-gtk2, which is also pretty good, couldn't get the class-inspector to work though. Also prefer autogenerated bindings over manual ones(in theory), though. In order to use, first:
Update acting badly now. Refused to load once until i reset, and now won't work, disapointing. LispbuilderI use SDL from lispbuilder with cl-opengl. It works great. (but cl-opengl from elsewhere, found lispbuilder opengl lacking handy macros/functions.) Would be neater if it separated binding from utility packages to make it clearer what is what.It also seems a little macro-oriented, and sdl:with-events could probably use a better approach. I think it might be neater for instance, to allow the user to express his/her interest in events, and then have something aid in storing information on an event. (With much generality.) For instance one might want to store the mouse position on a keystroke. I also think the timing system could work better/more flexible. GSLI used this a little for spherical harmonics, seems like a good library. I just wanted to note that one should not expect to understand parts of this library before knowing the theory behind the part.PALSeems to be a bit inactive in development. I haven't checked other ones out.It seems rather effective in getting some annoying bits of figuring stuff out of the way. It does conflate different purposes a bit. Different things that aren't very connected should be different packages and .asd files.(but a package to put it together for user convenience doesn't hurt.) Note that it mostly conflates them because SDL does. One exception is vectors. Wrote a bit on what game libs (sh)could do.About vectors. In PAL V+ V- are addition/substraction much as i do it, only two dimensional vectors, which might give better performence, and might actually be good for 2d-games. Minorly annoying is that V+, V- etc don't do any-number of arguments. Also doesn't do inproducts, length(sqr), but those are easy to define yourself. All in all, not bad, but certainly worth looking around. |