boxer-project / boxer-sunrise

Sunrise on the Boxer Reconstruction Project
BSD 3-Clause "New" or "Revised" License
39 stars 2 forks source link

Implementation specific Common Lisp fixups #20

Open sgithens opened 3 years ago

sgithens commented 3 years ago

Work involving fixups of warnings and other routines to minimize dependencies on proprietary lispworks libraries, and in general just conform more to ANSI Common Lisp, which involves fixing numerous error/warnings caught by SBCL

cben commented 2 years ago

Hi, are there any bite-sized portions you can direct new contributors to?

I've only read about Boxer and would love to finally play with it / help porting to fully open-source lisps, but I can't commit to much spare time. A few hours here and there...
I mainly run linux (but can get windows VM). It's been some years since I played with scheme and CL. And I'm not yet familiar with any boxer internals.

So far I tried the instructions on Linux with Lispworks Personal Edition, and run out of heap :shrug:

sgithens commented 2 years ago

Hi @cben ! It's a good idea to have some introductory tickets, I'll try and put a few together, and tag them appropriately. Yeah, I'm familiar with the heap issue on the Lispworks Personal edition, haven't taken any time to look at it, or even decide if it's possible. (I'm not sure what the size limitation actually is). Thanks for checking in, I'd like to make things more palatable to newcomers.

ralphw commented 1 year ago

Greetings! I just learned about the Boxer-sunrise project.

I'm in a similar position to @cben, I've forgotten far more about Boxer than I remember from my days in the Hal & Andi group in 1982. I took a freshman seminar course that used "Turtle Geometry" as the textbook.

Since the 80's, I've spent time developing stuff on Linux (70%), MacOS (10%), and Windows (20%)

Some of my interests are:

  1. Porting Boxer to run on Linux (which I realize might not be possible just yet)
  2. Running on ARM platforms like Raspberry Pi (which is 64-bit, but the Lisp environment is a 32-bit app)
  3. Exploring Vulkan bindings and modern/ portable "media layers" - a environment for exploring music and sound would be neat
  4. Building authoring environments (I did professional stack development on HyperCard for a while).

BUT, I need to start with something achievable, and relearn a modern Boxer

sgithens commented 1 year ago

Hi @ralphw !

That's great to hear about your Turtle Geometry days, it really is a great book.

So, a few things. I did have a trial license of lispworks for linux for a bit, and I did make the changes so that it would run on Linux. CAPI still uses GTK+ 2.x, so it's pretty old school looking, but it did work. As you mention I've also noticed that it runs out of heap space on the free version.

I have been working on getting more and more of the source to run on straight ECL or SBCL. What lisp distributions do you sort of actively use? There could be some overlap there. I saw a demo of an ECL repl running in wasm last month, and I'm quite excited about potentially running the core evaluator in a browser with WASM, and a webGL frontend, perhaps using pixi.js or something... just because it's so much manual effort to support native OpenGL usage across linux/macOS/windows. But I'm just brainstorming at the moment.

Just as a start have you been able to run any of the release binaries on macOS? (based on your post, I'm assuming you probably own at least one machine that runs macOS for the 10% of your dev time).

Cheers and welcome!

ralphw commented 1 year ago

I'm kind of adopting SBCL for the time being. TBH, It's been about 12 years since I've touched any Lisp code, I was using scala on my last contract project.

I do IT security full-time now, so there's less software work involved in that, but more python, and Ruby.

I'll give the binaries a try, I'm looking at getting a M1 Mac this winter, my Mac Pro is a bit too old to run current MacOS releases. Linux is my daily driver for most things.