Lisp-Stat / data-frame

Data frames for Common Lisp
https://lisp-stat.github.io/data-frame
Microsoft Public License
27 stars 4 forks source link

defdf unlessf problem #15

Closed slyrus closed 1 year ago

slyrus commented 1 year ago

Apparently I'm in some sort of version hell with various latest repos from github HEADs for data-frame, plot, numerical-utilities, etc... But that's neither here nor there (sort of).

My problem is that defdf-env uses the unlessf macro which used to live in numerical-utilities. Only it's not there in the latest. Now it's in alexandria+ (good luck googling that).

There's no indication where this symbol comes from. Apparently one is supposed to know that this is in alexandria+ (occasionally called "alexandria-plus") which has its own repo. Can we at least document where random symbols like this are coming from? Maybe use alexandria+:unlessf at the code site instead of just importing it?

If I sound grumpy it's because trying to build plot is a nightmare for someone with decades of lisp experience. Not exactly fun for new users, I'd imagine...

snunez1 commented 1 year ago

Your timing is, in a sense, good. I've spent the last week refactoring Lisp-Stat, and this was fixed (but I added the package to the call anyway, and will do so going forward, to make it clear where the symbols in alexandria+ originate)

I think you'll have an easier time of this once I push out the latest refactoring changes. Long term, I'm convinced that what Common Lisp needs is an installer and IDE of sorts. There are many moving pieces to Lisp-Stat, and keeping them all in order can be a challenge. That said, plot is not being refactored, so if there's any problems there we'll fix them. I will push out the refactored code, which includes a new system statistics today.

slyrus commented 1 year ago

Hmm... I'm not a huge fan of the "installer" idea, but maybe something like ultralisp is needed to manage the multiple post-current-quicklisp repos. Or judicious use of git submodules, or some shell scripts that "suggest" which git repos need to be cloned in ~/quicklisp/local-projects. IMO, we've got an IDE - emacs/slime - but lack a decent GUI toolkig. I'd be quite satisfied with leveraging McCLIM's drawing capabilities and expanding the SVG and PDF backends such that one could make vega-style plots that export nicely to files. The actual "UI" part of that is an added bouns. I'm perfectly happy with something like R's use of a graphics window attached to a terminal process showing what I'm drawing, but, sure proper CLIM presentations would be amazing. Anyway, I'm rambling.

Symbolics commented 1 year ago

I'm going to close this now. Please reopen if you still encounter problems. It looks as if Quicklisp may be updated soon, which should simplify things.