Pankaj Sejwal
Pankaj Sejwal

Reputation: 1595

Structure of lisp projects

When I use Eclipse or Visual Studio or Xcode, structure of the project gets created automatically and one can get started immediately.

Now I am trying to create a project on Allegro CL express edition and if I collect all lisp files and run it, it shows package errors which I believe is because of files not getting executed in a specific order as packages must be created in some file that must be executed first.

I am not able to understand how to approach this problem. There is no or little information on creating large projects in lisp and how to incrementally deal with its size and complexity.

I want to port Maxima onto Allegro CL. Can I get some help here and also if one can explain this break up of code in multiple files and packages and basically how to load the whole system.

I know basics of lisp but I don't understand lisp project's structure.

Upvotes: 0

Views: 711

Answers (2)

Robert Dodier
Robert Dodier

Reputation: 17576

Well, Maxima can be compiled via defsystem or asdf by several Lisps, including Allegro. See INSTALL.lisp for details.

The only limitation that I know of is that the Allegro Express version cannot compile the SLATEC-derived code (the functions translated from Fortran are too big or something like that). So you will have to comment out the SLATEC stuff in maxima.system or maxima.asd.

Upvotes: 6

Rupert Swarbrick
Rupert Swarbrick

Reputation: 2803

Good news: Maxima already has an Allegro port. You should be able to build it using ./configure --with-acl then type make. I haven't used this recently, but I would expect this to work.

If you want to know more about how stuff is loaded, look at src/maxima.system. It's a bit archaic because it is written for defsystem, which has now been replaced pretty much everywhere else by asdf.

Upvotes: 6

Related Questions