<manumanumanu>Hi there! How is the licensing situation when using guile libraries? Say, ice-9 match? <manumanumanu>I'm releasing it as GPL anyway, but for future projects... All the libraries seem to be (l)gplv3 <wingo>manumanumanu: guile itself is lgplv3+ <wingo>so a work that is based on guile can only be redistributed in ways provided for by that license. <manumanumanu>so I don't have to comply with the gpl of ice-9 match, but only with the lgplv3? <wingo>either you distribute combined work as source, so that the combined work can be rebuilt with a modified guile, or you dynamically link to Guile somehow, so that the user can use an updated guile with your combined work <wingo>though, any lgplv3+ may be (at the user's choice) redistributed under the gplv3+ <wingo>and even if you have been working in this area for years sometimes we forget what the licenses actually say :) <manumanumanu>Anyway, what is the best way to get guile-2.2 without having to wait for my distro to package it? <wingo>for me i think the easiest way as just a one-off thing is to use the guix pack <wingo>it's a simple binary install <wingo>finally you can just build it yourself from a tarball <wingo>this is the build dir on a server where i installed it: <wingo>gc-7.6.0.tar.gz gmp-6.1.2.tar.lz guile-2.1.6 libatomic_ops-7.4.4 libffi-3.2.1 libtool-2.4.6 libunistring-0.9.7 readline-7.0 <wingo>gc-7.6.0 gmp-6.1.2 guile guile-2.1.6.tar.xz libatomic_ops-7.4.4.tar.gz libffi-3.2.1.tar.gz libtool-2.4.6.tar.xz libunistring-0.9.7.tar.xz readline-7.0.tar.gz <wingo>well, that was with a prerelease, you get the idea anyway <manumanumanu>wingo: I'll go with guix whenever I reinstall my already very botched up debian installation. I have had it running for over 6 years and doing just about anything will break the system in weird places. <mrnugget>Is there some documentation that describes how to compile Guile locally? I cloned the repository and want to build the master branch, but `./configure` doesn't exist. <ArneBab>manumanumanu: To test something, I simply install a release tarball and then use ./configure --prefix ~/.local <ArneBab>(get the tarball, configure, make install) <wingo>mrnugget: tarballs build faster than the git checkout fwiw <mrnugget>lloda: thanks! Huh, don't know how I missed that. <wingo>np :) tarballs also already have ./configure <mrnugget>Yep, that's what I noticed and then I was wondering why ./configure doesn't exist in the repo. But I guess the tarballs are real "releases" and not just packaged "git tags" <manumanumanu>Got it up and running. There has been magic optimization dust sprinkled over this release. My lazy prime generator runs 2x faster. <ArneBab>they build *much, much, much* faster ← thanks to pre-generation tricks from wingo <wingo>manumanumanu: good to hear :) <manumanumanu>And that is using full call/cc. Might dive in to the delimited continuations tonight <manumanumanu>using chez's call/1cc (one-off continuations) made it about 15% faster. Ah! A night of continuation fun! What more can one ask? <nalaginrut>wingo: is there any way to get the current linux version in Guile? Or I have to parse the result from uname from pipe? <wingo>manumanumanu: if those are escape continuations then consider let/ec from (ice-9 control) <wingo>nalaginrut: uname and pipe i think <nalaginrut>oh, there's uname in Guile, but I still have to parse <wingo>interesting, didn't know about that <nalaginrut>I have to make sure the epoll features in Artanis is supported for users ***Guest45045 is now known as nikita3
<nikita3>nalaginrut: how to make Artanis serve multiple requests in parallel (having pool of db connections)? <wingo>civodul: i fixed the constant literals thing! <civodul>wingo: the readonly-ness of literal pairs & co.? <wingo>civodul: yeah and vectors bitvectors bytevectors and arrays <wingo>regardless of whether they contain relocatable data or not <lloda>wingo: is there a way to know if a value is mutable? <wingo>lloda: no. why would you want that? <wingo>i just think it's a responsibility of the programmer who makes literal arrays to not mutate them <wingo>i would like to eventually provide a facility to mark an existing value as immutable <wingo>so that we could apply the same provisions about mutability to the evaluator, for example, or otherwise when you want to "freeze" data before passing it to an untrusted party <wingo>it would be possible to do this for every value type except pairs :P <wingo>being able to have a cons vs mcons would be nice. <lloda>I have to fix my C++ wrappers. In some places I want to check if SCM can-be-converted, so T const vs T didn't matter before. <lloda>doesn't mean I need mutable?, hopefully I don't <wingo>2.2 breakage? some other kind? <lloda>it was a necessary change of course, no question <wingo>or breakage related to this specific thing <wingo>before it would segfault tho, right? <lloda>sure, I'm 100% behind this fix <wingo>ok, just wondering if it broke something else :) <lloda>it's just that my wrappers don't handle const vs non-const so now everytime I pass a literal array to a C++ function it breaks <lloda>it's kind of messy b/c array<T const> vs array<T> const etc... <wingo>one way to know if something is mutable is if the array handle's writable_elements equals its elements <wingo>if they don't, it's immutable (and the writable_elements is null) <wingo>dunno how that fits in with types tho :) <lloda>ah yes I saw you do that in the patch <wingo>the bsd bdw-gc pkgconfig name change thing is bonkers <wingo>yes there is bdw-gc and bdw-gc-threaded <wingo>civodul: thoughts re: 2.2.1? <wingo>i think we could release directly ***nikita2_ is now known as nikita2
<wingo>ACTION has a happy distcheck <wingo>well let's go ahead and do it, we can brown-paper-bag later if we need to, and i need to get this off my plate <janneke>ACTION is anticipating self-hosting mes release for weeks...rsn <civodul>wingo: woohoo, thank you for the release! <paroneayea>wingo: are you planning on doing a push to the website re: 2.2.1? <civodul>bah, racket-lang.org is behind CloudFare :-/ <civodul>i really like what Turnstile is doing <civodul>we're gonna have to steal it one of these days ;-) ***ertesx is now known as ertes
<spk121>Hooray! I've always been a Fedora guy. <amz3`>ACTION the champion of toy projects <amz3`>I made a 300 lines text editor using termbox bindings <amz3`>needless to say it's not optimized for long lines ^_^ <amz3`>saving the file after edit is left as an exercise <amz3`>tomorrow i will try to add code highlighting <amz3`>and *some* days after that... <amz3`>but right now, I need to go to sleep!