freenode/#lisp - IRC Chatlog
Search
15:38:30
mercourisj
I'm thinking about just adding some sort of abstraction layer to install using the user's package manager
15:38:37
phoe
some of those compile C code, some of those pull precompiled binaries from the network
15:40:06
mercourisj
it has been done before, it is not a fantastic solution, but it works *OK* without much work
15:40:32
Xach
There is a CL project that is an interface to package managers. I don't know how universal it is.
15:41:38
Xach
I don't like it a ton because it presumes a user is allowed to install stuff from the package manager, when that's not always the case.
15:42:06
Xach
I don't like things named "quick*" that are not part of the quicklisp project, but what can ya do.
15:43:23
phoe
mercourisj: we already have everything great that NPM contains, namely (ql:quickload :trivial-left-pad)
15:43:34
Xach
I can't remember the other candidate names. I did know I didn't want something that was hard to pronounce or disgusting.
15:45:57
phoe
next is obviously the new filesystem format based on ext, the acronym comes from Next EXT
15:46:06
Xach
mercourisj: there was a lisp project that predated quicklisp that fetched the entire universe of libraries from git to local directories. so you could have an entire hackable universe at your fingertips, and push and pull and such.
15:46:36
Xach
this was in an interesting time when core libraries would be hosted on peoples' personal git repo and that would be unavailable sometimes
15:47:07
Xach
phoe: sort of, and without the proxy step of hosting everything on a pretty reliable CDN/file store
15:48:03
Xach
quicklisp is a reaction to a world that is so distant now i can't remember the names of the pieces :~(
15:48:45
Xach
lukego: well, you would know, what was the lisp thing that had metadata for checking out everything from git?
15:59:28
Cymew
It was a short while when darcs was the big thing for lisp, and nothing much else. I remember that now. How nice that has passed.
16:11:00
dlowe
well, there was asdf-install, too, which went to a wiki and downloaded whatever it found there
18:52:17
galdor
Xach: while I appreciate the usefulness of the same thing for everyone, I find it a deal breaker for various use cases, such as the quite simple "I had to patch lib X, and now I want my colleagues to be able to use it automatically"
18:53:26
galdor
but not being able to make it just work for my colleagues without writing crazy scripts is a deal breaker
18:54:14
galdor
hell, just not having to clone some of my patched stuff and make sure to update it synchronously between laptop and desktop would be nice
18:54:58
galdor
is there some documentation of the subject ? last time I checked I seem to remember it was not possible, I may have missed something
18:56:22
Xach
I dislike the situation of "are you using clozure quicklisp or scieneer quicklisp?" and how it affects providing support
18:57:49
galdor
I'm playing with the idea of writing a rebar3-like tool, but it is really not that simple
18:58:12
Xach
i have not used it, but my understanding of qlot suggests that it aims to make it possible to draw exact versions of libraries from a variety of sources, including but not limited to quicklisp
18:58:20
galdor
especially since most systems do not care about proper versioning and dependency constraints
19:32:45
boeg
If I have a string string "Hello", and I want a list ("H" "ello"), what's the easiest way? I'm thinking something like (list (car string) (cdr string))
19:34:39
boeg
Not in my case, I'm just trying to see if I can find a less manual way to split strings composed of a letter followed by numbers for advent of code. I'm doing advent of code this year to learn common lisp
19:35:32
_death
boeg: you may notice that many functions, e.g. parse-integer, take :start/:end arguments
19:38:35
boeg
_death: what are you thinking? In this case, wouldn't `(list (subseq string 0 1) (parse-integer (subseq string 1)))` makes sense?
19:44:15
_death
characters also can be compared using EQL, which many operators use as default for comparison
19:49:42
jasom
_death: at least in most lisp implementations it's more obviously wrong to compare strings with EQL than the python equivalent (python interns strings that are valid identifiers under a certain length, so comparing with "is" sometimes works and sometimes doesn't)
19:58:28
_death
jasom: on the other hand the default python comparison operator would "work" with strings
21:09:52
Xach
copec: both - this isn't a good place to center a discussion about what is happening with racket
21:10:07
Xach
but i get the impression that few people here keep up with racket and could talk about it in a CL-centric way
21:10:52
copec
I'm not switching from my own CL use. I'm just interesting in thinking about and comparing what other languages do
21:14:44
aeth
##lisp is for the Lisp family of languages so you might get a better/fairer comparison than #lisp or #racket would give you.
21:30:09
jasom
copec: FWIW, something like #lang could be implemented on top of CL's reader macros, and it would be interesting to see.
21:49:25
phoe
postmodern is still alive and kicking, I remember contributing to it earlier this year
21:49:38
stylewarning
Shinmera: because postgres has been through 3 major version upgrades since 2012
21:51:10
stylewarning
Shinmera: I doubt it would, especially being a database, but the spookiest of things can happen in 8 years. (:
21:52:18
Shinmera
postmodern alone is why I would recommend CL people to use postgres over any other rdbms
21:52:52
pjb
stylewarning: I don't know about postmodern. I know that I need to patch pg to be able to run with postgresql 9.6, 10 or 11…
23:24:29
didi
I just noticed `defpackage' separates each option in lists, but `defsystem' doesn't. Coincidence?
23:28:33
pjb
(defmacro defsystem (name &key description author maintainer licence version proeprties depends-on …) …)
0:18:24
jasom
We were talking about qt5 bindings. The Go QT bindings has a tool that auto-generates extern "C" functions for everything in QT. They can't be used directly though because all callbacks are in autogenerated go files that export a C header through cgo. However, that could be used as a basis for a lisp qt5 generator certainly.
1:03:39
jasom
p_l: which Qt5 bindings use libclang to generate the interface? Most of the bindings seemed to be quick/QML only.