Re:Ultralisp: A fast-moving Common Lisp software distribution
by dreamcompiler on Sunday June 16, 2019 @01:09PM
(#20196570)
I don't understand what problem this solves.
[ Parent
| on HN ]
Re:Ultralisp: A fast-moving Common Lisp software distribution
by phoe-krk on Sunday June 16, 2019 @01:15PM
(#20196611)
In the contemporary Common Lisp ecosystem, software is distributed via Quicklisp[1], which is a centralized software repository, where, once a month, a new software distribution is created, encompassing the most recent releases of all software included in the dist. This means that changes in software can take up to a month to be reflected in Quicklisp.
Ultralisp is a Quicklisp-compatible distribution, except it's a bleeding-edge one. Each time a piece of software included in it releases a new version/release/commit, a new dist is created, and the modified software is available in Ultralisp within minutes.
Re:Ultralisp: A fast-moving Common Lisp software distribution
by dreamcompiler on Sunday June 16, 2019 @02:01PM
(#20196897)
Ah. Understood. I solve this problem by forking every Quicklisp repo I use, and telling ASDF to look in my local clones first. This also solves the problem of making it easy to submit a pull request when I fix a bug in a Quicklisp library.
Also -- and this is very important to me -- it means I'm in control of which version of every library I use. I've been burned too many times by Quicklisp "updating" a library that was previously working which doesn't any more. Now I have direct git control over my version coherency and I'm a happy camper.
Re:Ultralisp: A fast-moving Common Lisp software distribution
by svetlyak40wt on Monday June 17, 2019 @04:38AM
(#20201011)
Have you looked at Qlot (https://github.com/fukamachi/qlot)? It solves the problem of reproducible builds.
Re:Ultralisp: A fast-moving Common Lisp software distribution
by mark_l_watson on Sunday June 16, 2019 @07:00PM
(#20198502)
Thank you,that is a really good idea.
Re:Ultralisp: A fast-moving Common Lisp software distribution
by taeric on Sunday June 16, 2019 @06:59PM
(#20198497)
Is this as easy to do as it sounds? Any chance you have documented any curves along the way?
Re:Ultralisp: A fast-moving Common Lisp software distribution
by dwringer on Sunday June 16, 2019 @10:01PM
(#20199223)
I have been doing this for a while by following a pattern found here[0]. I typically follow this and copy every asdf package dependency into the working directory of whatever project I'm working on [setting the subdir-search-registry to (list (truename "./asdf-systems/")) and placing the files into a subdirectory of that name] .This way I have the option to make changes in them without affecting anything else on the system depending on the same package. In general this means I use Quicklisp as a (huge) convenience in finding packages when programming interactively in the REPL, but not in deployment. I think this setup is also nice because it is dead simple to drop in copies of asdf packages from the web that aren't found in the Quicklisp library.
[0] https://en.wikibooks.org/wiki/Common_Lisp/External_libraries...
Re:Ultralisp: A fast-moving Common Lisp software distribution
by dreamcompiler on Sunday June 16, 2019 @11:39PM
(#20199694)
I do it like this because the asdf central-registry variable (which I can't write here because of asterisk problems) is supposedly deprecated:
(asdf:initialize-source-registry
(:SOURCE-REGISTRY
(:EXCLUDE "exclusion-string1" "exclusion-string2")
(:TREE #P"/Users/me/Lisp/my-repos/")
(:TREE #P"/Users/me/Lisp/quicklisp-repos/")
(:TREE #P"/Users/me/main-project/src/")
:IGNORE-INHERITED-CONFIGURATION))
Re:Ultralisp: A fast-moving Common Lisp software distribution
by dreamcompiler on Sunday June 16, 2019 @08:50PM
(#20198922)
It's all manual now but not that hard. Buried in Quicklisp are the locations of all its repos. The reason I haven't automated it is I don't know if there's a Github API for "Please fork this URI into my account if that's not already done." (Plus not every repo is on Github, and not every QL repo is a proper repo.) I haven't bothered to look into automating it because I don't use that many QL libraries, so manual operation is fine for me. Happy to work with you if you want to try to automate the process.
Re:Ultralisp: A fast-moving Common Lisp software distribution
by svetlyak40wt on Monday June 17, 2019 @04:48AM
(#20201057)
About 90% libraries from Quicklisp are hosted on the GitHub.
Re:Ultralisp: A fast-moving Common Lisp software distribution
by PopeDotNinja on Sunday June 16, 2019 @04:18PM
(#20197659)
Not everything needs to solve a problem. Sometimes it's just fun to work on stuff.