jackdaniel changed the topic of #lisp to: Common Lisp, the #1=(programmable . #1#) programming language | <https://irclog.tymoon.eu/freenode/%23lisp> <https://irclog.whitequark.org/lisp> <http://ccl.clozure.com/irc-logs/lisp/> | offtopic --> #lispcafe
random-nick has quit [Ping timeout: 256 seconds]
aaaaaa has joined #lisp
kaftejiman has quit [Remote host closed the connection]
kaftejiman has joined #lisp
IAmRasputin has joined #lisp
<aaaaaa> Hi all. Can this book be downloaded freely or not? I can't google for PDF. http://vseloved.github.io/progalgs.html
kaftejiman_ has joined #lisp
wsinatra has joined #lisp
patrixl has joined #lisp
kaftejiman has quit [Ping timeout: 256 seconds]
IAmRasputin has quit [Ping timeout: 260 seconds]
wglb` has quit [Remote host closed the connection]
contrapunctus has left #lisp ["Disconnected: closed"]
rig0rmortis has joined #lisp
contrapunctus has joined #lisp
wsinatra has quit [Quit: WeeChat 2.9]
wsinatra has joined #lisp
Fare has quit [Ping timeout: 240 seconds]
bilegeek has joined #lisp
wsinatra has quit [Quit: WeeChat 2.9]
kaftejiman_ has quit [Remote host closed the connection]
Necktwi has quit [Ping timeout: 256 seconds]
<mseddon> aaaaaa: sounds a little bit like entrapment, so good luck finding suckers here.
<mseddon> the answer is no, there is no free distribution.
<mseddon> sorry. you will have to pay for it.
<mseddon> apress would not be handing out freebies.
<mseddon> you may be able to find pre-release material in the public domain, but there are no guarantees that they relate to the published artefact, which I assume you are wanting to read.
<mseddon> sorry. them's the breaks.
<mseddon> if you contact the author, perhaps they will release a pre-release manuscript?
EvW has quit [Ping timeout: 244 seconds]
<mseddon> it's really between you and them, and their publisher.
<mseddon> nobody else can help in that kind of situation.
rig0rmortis has quit [Quit: beep boop]
<aaaaaa> what do you mean by 'entrapment'?
<aaaaaa> I didn't ask for pirated version, just wondered...
IAmRasputin has joined #lisp
Jeanne-Kamikaze has joined #lisp
IAmRasputin has quit [Ping timeout: 256 seconds]
Fare has joined #lisp
Fare has quit [Ping timeout: 240 seconds]
Fare has joined #lisp
_jrjsmrtn has joined #lisp
cosimone has quit [Quit: Quit.]
__jrjsmrtn__ has quit [Ping timeout: 264 seconds]
<mseddon> that was me being a bit rude, sorry.
<mseddon> unwarrented. I have had a long week, I didn't mean to offend.
<mseddon> but sadly since it appears to be a forthcoming publication, I'd suggest you contact the author directly, since they are the final arbiter of the work.
<mseddon> nobody else owns that, so nobody else has power to help you.
ex_nihilo has joined #lisp
<mseddon> it is ultimately, however, up to them what they do with their copyright.
Fare has quit [Ping timeout: 240 seconds]
<mseddon> people are sometimes amenable though, and will give you access to pre-release material.
<mseddon> just. be nice. respect boundaries.
<mseddon> don't be a dick, and the rest of the ten commandments. or whatnot.
<mseddon> anyway. generally I don't see why one would not cough up the modest sum to acknowledge the time they spent working on it, rather than haggling out of the blue. Don't you?
corpix has joined #lisp
wsinatra has joined #lisp
Stanley00 has joined #lisp
Fare has joined #lisp
Bourne has joined #lisp
karlosz has joined #lisp
Fare has quit [Ping timeout: 240 seconds]
orivej has quit [Ping timeout: 240 seconds]
TwoNotes has quit [Quit: Leaving]
Stanley|00 has joined #lisp
Stanley00 has quit [Ping timeout: 240 seconds]
Necktwi has joined #lisp
wsinatra has quit [Quit: WeeChat 2.9]
Fare has joined #lisp
hendursaga has quit [Remote host closed the connection]
hendursaga has joined #lisp
IAmRasputin has joined #lisp
edgar-rft has joined #lisp
bilegeek has quit [Quit: Leaving]
IAmRasputin has quit [Ping timeout: 240 seconds]
Alfr_ has joined #lisp
Alfr has quit [Ping timeout: 240 seconds]
Lord_of_Life_ has joined #lisp
Lord_of_Life has quit [Ping timeout: 256 seconds]
Lord_of_Life_ is now known as Lord_of_Life
Oladon has joined #lisp
jonatack has quit [Ping timeout: 260 seconds]
sts-q has joined #lisp
notzmv has joined #lisp
sts-q has left #lisp [#lisp]
bpanthi977 has joined #lisp
sts-q has joined #lisp
bpanthi978 has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
bpanthi978 is now known as bpanthi977
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
sts-q has left #lisp [#lisp]
<beach> Good morning everyone!
sts-q has joined #lisp
sts-q has left #lisp [#lisp]
<moon-child> evening, beach
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
epony has quit [Quit: reconfigure]
sts-q has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
karayan has quit [Remote host closed the connection]
jesse1010 has quit [Ping timeout: 246 seconds]
karayan has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
sts-q has quit [Ping timeout: 240 seconds]
bpanthi977 has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
Fare has quit [Ping timeout: 240 seconds]
aaaaaa has quit [Quit: leaving]
patrixl has quit [Quit: Leaving.]
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
skapata has quit [Remote host closed the connection]
dmc00 has quit [Remote host closed the connection]
shka_ has joined #lisp
gravicappa has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
sts-q has joined #lisp
Oladon has quit [Quit: Leaving.]
Bourne has quit [Ping timeout: 240 seconds]
sts-q has quit []
sts-q has joined #lisp
narimiran has joined #lisp
IAmRasputin has joined #lisp
sts-q has quit [Client Quit]
sts-q has joined #lisp
epony has joined #lisp
IAmRasputin has quit [Ping timeout: 260 seconds]
bpanthi977 has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
Nilby has joined #lisp
Jeanne-Kamikaze has quit [Quit: Leaving]
ym555 has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
contrapunctus has left #lisp ["Disconnected: closed"]
contrapunctus has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
mmohammadi98126 has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
mindCrime_ has quit [Ping timeout: 240 seconds]
mindCrime_ has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
mindCrime_ is now known as mindCrime
bpanthi977 has quit [Remote host closed the connection]
bpanthi977 has joined #lisp
bocaneri has joined #lisp
bpanthi978 has joined #lisp
bpanthi977 has quit [Remote host closed the connection]
bpanthi978 is now known as bpanthi977
bocaneri has quit [Max SendQ exceeded]
bocaneri has joined #lisp
bpanthi978 has joined #lisp
shka_ has quit [Quit: Konversation terminated!]
bpanthi977 has quit [Ping timeout: 272 seconds]
bpanthi977 has joined #lisp
bpanthi978 has quit [Ping timeout: 272 seconds]
jmarcian` has quit [Ping timeout: 260 seconds]
mmohammadi98126 has quit [Quit: I quit (╯°□°)╯︵ ┻━┻]
bpanthi977 has quit [Quit: bpanthi977]
bpanthi977 has joined #lisp
bpanthi977 has quit [Read error: Connection reset by peer]
IAmRasputin has joined #lisp
krid has quit [Ping timeout: 260 seconds]
IAmRasputin has quit [Ping timeout: 240 seconds]
Stanley|00 has quit []
zaquest has quit [Quit: Leaving]
zaquest has joined #lisp
karlosz has quit [Quit: karlosz]
jerme_ has quit [Ping timeout: 240 seconds]
jerme_ has joined #lisp
Necktwi has quit [Ping timeout: 240 seconds]
quazimodo has quit [Ping timeout: 240 seconds]
Necktwi has joined #lisp
bitmapper has quit [Quit: Connection closed for inactivity]
quazimodo has joined #lisp
orivej has joined #lisp
quazimodo has quit [Ping timeout: 260 seconds]
quazimodo has joined #lisp
Alfr_ has quit [Read error: Connection reset by peer]
enrio has joined #lisp
Alfr_ has joined #lisp
wxie has joined #lisp
tfb has quit [Ping timeout: 244 seconds]
tfb has joined #lisp
sm2n has quit [Quit: Leaving]
bocaneri has quit [Quit: Leaving]
banjiewen has quit [Ping timeout: 244 seconds]
IAmRasputin has joined #lisp
banjiewen has joined #lisp
bocaneri has joined #lisp
yonkunas has quit [Quit: Connection closed for inactivity]
gaqwas has joined #lisp
gaqwas has quit [Changing host]
gaqwas has joined #lisp
IAmRasputin has quit [Ping timeout: 240 seconds]
sgithens has quit [Ping timeout: 244 seconds]
ted_wroclaw has joined #lisp
sgithens has joined #lisp
d4ryus has quit [Quit: WeeChat 2.9]
bocaneri has quit [Max SendQ exceeded]
d4ryus has joined #lisp
gaqwas[m] has quit [Ping timeout: 244 seconds]
tekipeps[m] has quit [Ping timeout: 244 seconds]
gaqwas[m] has joined #lisp
tekipeps[m] has joined #lisp
boeg has quit [Ping timeout: 240 seconds]
quazimodo has quit [Quit: leaving]
iissaacc has joined #lisp
boeg has joined #lisp
galex-713 has quit [Ping timeout: 240 seconds]
tiwEllien has joined #lisp
bocaneri has joined #lisp
treflip has joined #lisp
galex-713 has joined #lisp
galex-713 has quit [Quit: No Ping reply in 180 seconds.]
galex-713 has joined #lisp
orivej has quit [Ping timeout: 258 seconds]
pve has joined #lisp
hendursa1 has joined #lisp
hendursaga has quit [Ping timeout: 240 seconds]
IAmRasputin has joined #lisp
IAmRasputin has quit [Ping timeout: 240 seconds]
jonatack has joined #lisp
sm2n has joined #lisp
selwyn has quit [Ping timeout: 272 seconds]
selwyn has joined #lisp
jsatk has quit [Ping timeout: 272 seconds]
jerme_ has quit [Ping timeout: 272 seconds]
conjunctive has quit [Ping timeout: 272 seconds]
jsatk has joined #lisp
alanz has quit [Ping timeout: 272 seconds]
jerme_ has joined #lisp
conjunctive has joined #lisp
alanz has joined #lisp
jlpeters has quit [Ping timeout: 272 seconds]
vutral has quit [Ping timeout: 272 seconds]
jlpeters has joined #lisp
vutral has joined #lisp
Necktwi has quit [Ping timeout: 240 seconds]
sm2n has quit [Quit: Leaving]
treflip has quit [Quit: WeeChat 2.6]
<phoe> aaaaaa: it has been taken down ever since the author has signed a contract with apress
<beach> Interesting.
sm2n has joined #lisp
gaqwas has quit [Remote host closed the connection]
<beach> phoe: What did Apress have to say about your making the text of your book publicly available for proofreading?
enrio has quit [Ping timeout: 260 seconds]
<phoe> beach: actually, I did the proofreading in private
<beach> Oh! I see.
<phoe> as in, made a public call for proofreading, but invited everyone to work on a *private* Git repository
<beach> I see, I see. Clever!
IAmRasputin has joined #lisp
<phoe> I specifically asked them about this, and they did not mind doing it that way as long as I did not make the text freely and publicly accessible on the 'net
<beach> Good to know.
<beach> I am asking because I am seriously considering changing my book "Concrete and Abstract Data Types" use Common Lisp directly, rather than translating it into a specific algorithmic language. I would then also invite some people to help me with the proofreading.
IAmRasputin has quit [Ping timeout: 240 seconds]
sm2n has quit [Remote host closed the connection]
motersen has joined #lisp
sm2n has joined #lisp
<beach> Lately, I have changed my opinion about the possibility of mentioning Lisp in public, without everyone automatically stop listening immediately. Functional programming seems to be on the rise as a mainstream paradigm, Clojure is fairly popular, and "Uncle Bob" is pushing Clojure as "The Last Programming Language".
<beach> With Apress having published several books using Common Lisp, it seems the they also don't mind mentioning Common Lisp. I assume they know something about potential clients.
sm2n has quit [Remote host closed the connection]
sm2n has joined #lisp
gaqwas has joined #lisp
gaqwas has quit [Changing host]
gaqwas has joined #lisp
wxie has quit [Ping timeout: 240 seconds]
ane has joined #lisp
enrio has joined #lisp
orivej has joined #lisp
frgo_ has joined #lisp
frgo has quit [Ping timeout: 240 seconds]
Necktwi has joined #lisp
<phoe> yep, I can understand that
he-man has joined #lisp
he-man has left #lisp [#lisp]
he-man has joined #lisp
<he-man> hello everyone. Looking for some help on Common Lisp. Is this the right place? Thank you very much.
<beach> Sure.
<beach> ... and welcome to #lisp.
<he-man> Hello @beach. Couple of questions actually. I am developing a small program, for the sake of practicing
<he-man> I am totally unfamiliar with the idiomatic way to load packages in general
<beach> Go ahead! By the way, this is IRC and the `@' convention is not used.
<he-man> In my file I define a package with defpackage
<he-man> and I (:use :common-lisp :str)
<beach> OK.
<he-man> but the package is not found unless I load quicklisp and I download it
<he-man> seems weird to me, because what I though is package download should be a one-time operation (not something I should add in my .lisp file)
<beach> Well, to start with, you are probably confusing packages (a Common Lisp term for namespaces) and systems (what other languages call "packages").
<he-man> what am I doing wrong?
<beach> With Quicklisp, you download systems, not packages.
<he-man> so. for a workflow where I envision as 1. add my functions
<beach> The :USE clause of a DEFPACKAGE just says that your code can use the symbols in the STR package without a package prefix. It has nothing to do with systems.
<he-man> 2. export them
<aeth> in CL, "packages" are just namespaces for symbols
<he-man> yes, I know that. So I need to quickload str each time?
<aeth> or write a .asd file in a location that Quicklisp can find
<he-man> actually my problem is more of recognizing a structure that makes sense.
<beach> he-man: Normally, you would create yourself an ASDF system definition file.
<he-man> so the recommendation (as in best practice)
<he-man> is to add a .asd file
<he-man> which is kind of a Makefile, right?
<beach> That file would contain a :depends-on with the names of the systems it depends on.
<beach> Sort of, yes.
<he-man> ok. I see
<beach> Then, if you do (asdf:load-system <your-system-name>) then the dependencies will be automatically loaded first.
<he-man> ok. Thank you very much, gonna give it a try.
<beach> Good luck.
<pve> beach: Perhaps the CL code could be added as some kind of supplementary material.
<beach> pve: I don't understand what you are saying.
random-nick has joined #lisp
<beach> pve: Oh, for the book?
<pve> beach: yes, sorry
<beach> pve: No, the problem is that my favorite coauthor was supposed to make sure the code works by creating automatic tests, but she has no time to be my favorite coauthor anymore, and I don't have time to create such a thing. That's why I am considering simplifying the entire thing by just using normal Common Lisp code that can be tested as usual.
<beach> Adding Common Lisp code would double the amount of work for the code.
<pve> Ok, I see, not practical then.
<MichaelRaskin> And I guess you do not want to trust a previously unfamiliar project providing executable pseudocode (with Common Lisp translation and TeX rendering)
<beach> What "previously unfamiliar project" are you referring to?
<beach> I have Common Lisp code, but it is a bit doctored to simplify translation to TeX.
he-man has quit [Remote host closed the connection]
<beach> And I have the TeX translation.
<beach> But the organization of the Common Lisp code does not lend itself to automatic testing the way it is currently structured.
motersen has quit [Ping timeout: 244 seconds]
motersen has joined #lisp
<beach> I didn't mind, because it was something that my favorite coauthor would excel in doing, and she is highly organized. But I can't face doing that myself.
<MichaelRaskin> Hm, maybe Breanndán Ó Nualláin never published Pseudograph…
<MichaelRaskin> (ELS2015, Executable Pseudocode for Graph Algorithms)
<beach> I would not be able to use an existing algorithmic language if that is what you mean.
<beach> I need generic functions, methods, packages, etc. (with different terminology of course).
<phoe> beach: do you need help structuring your code in a way that makes it testable?
he-man has joined #lisp
corpix has quit [Remote host closed the connection]
corpix has joined #lisp
<beach> phoe: That is precisely the problem, yes.
<he-man> something I do not quite understand yet is that, when I open a session in Emacs (I already created an asd file).
<phoe> beach: I could take a look at that someday
<he-man> I would expect my file program.lisp to be compiled because :components ((:file "myfile.lisp"))
<beach> he-man: You start Emacs when you boot your computer.
<he-man> is there
<phoe> beach: come on, not always
<beach> phoe: Oh, that would be great!
<phoe> he-man: (asdf:load-system :my-system) should compile-and-load this tile then
<phoe> what happens instead?
<he-man> mmh... I was missing that... That goes in myfile.lisp?
narimiran has quit [Ping timeout: 240 seconds]
<phoe> no, that goes in the REPL
<beach> he-man: Oh, good, others to the rescue. Then I can take my lunch break.
<phoe> when you start a Lisp image, it is completely clean and does not have any software loaded
<phoe> you need to explicitly load it, and ASDF is the tool for that
<he-man> @beach there is no a need to help if you are not willing to, no problem. I came here because I was told it is the place to do it. But skip at your will.
<phoe> Quicklisp is a wrapper over ASDF that handles automatically downloading systems from the Internet
<phoe> and ASDF is the thing that does the loading itselfg
<phoe> s/itselfg/itself/
<phoe> so you can write your code in myfile.lisp and create my-system.asd that contains (defsystem #:my-system ... :components ((:file "myfile"))) and then (asdf:load-system :my-system)
<phoe> oh! I see the issue now
<phoe> in ASDF, you need "myfile" instead of "myfile.lisp"
<phoe> ASDF adds the extension automatically for Lisp files
<he-man> yes, I think I am almost done, let me give it a try. The problem is that I did not know where to put what and how to do it
<he-man> I think I understand already: so you fire up emacs
<he-man> and a REPL
<he-man> your asd file contains your files to compile + depends on, etc.
<he-man> you load the system
<he-man> and that way you are already where you left off.
<he-man> Correct?
<phoe> "where you left off" is kinda imprecise
<he-man> well. Imagine I turn off the computer
<phoe> I'd say, that way you have the system loaded, which usually means that all of its files are compiled and loaded into the image
<he-man> so I open emacs
<he-man> my REPL is local
<phoe> oh, yes, I understand now
<he-man> so I fire a new one
<he-man> and do the system load starting from the asd file and it will take care of the rest
<phoe> yes
<he-man> the last question I would have is, having this
<he-man> (defpackage #:directory-indexer
<he-man> (in-package :directory-indexer)
<he-man> :name "directory-indexer"
<he-man> (defsystem directory-indexer
<he-man> (:use :common-lisp :asdf))
<he-man> :version "0.0.0"
<he-man> :maintainer "German Diago"
<he-man> :author "German Diago"
<he-man> :components ((:file "program"))
<he-man> :licence "MIT license"
<he-man> :description "Index your text files in directories and find contents"
<he-man> :long-description ""
<he-man> :depends-on ("str"))
<phoe> please use a pastebin service
<he-man> oh, sorry for that
<phoe> that's the one I use
<phoe> hmm, is that some sort of public system? creating packages in ASDF files isn't something commonplace
<phoe> usually the only thing in .asd files is a DEFSYSTEM form; packages go into the files listed in :COMPONENTS
<he-man> ok, that was exactly the question
<he-man> you answered
<he-man> https://plaster.tymoon.eu/view/2068#2068 -- that is the code above
<phoe> package.lisp contains the package definition, phoe-toolbox.lisp contains the implementation
<he-man> I need to remove the package stuff
<he-man> yes, I can make sense of the structure already, thanks.
<phoe> some systems written by some people, usually very simple ones, fold even those two into one file - see phoe-toolbox/bag below
<he-man> I am trying common lisp and probably pharo later as "the most interactive programming languages ever".
<he-man> I am interested in seeing how it works in a server
<phoe> they are! (given that you use the right tooling for the job)
<he-man> without restarting
<phoe> it usually works exactly the same way on a server - you have a swank server running on the Lisp image, and you connect to it through the 'net
<he-man> and see how it affects deployment. I understand that in many cases you redefine things and keep going without a redeployement, which is fantastic!
<phoe> usually with either emacs's tramp or an sshfs mount for accessing remote files
supercoven has joined #lisp
<he-man> yes, that is the reason why I am trying this in the first place, to see this kind of interactivity
<phoe> and the interaction works exactly the same way as it would locally
<phoe> since you use exactly the same protocols as you use for local development
<beach> he-man: No, I am usually eager to help, but I have been up working for 7 hours straight and I need a break.
<he-man> I have been mostly working in C#/C++/Python. Python is nice, but I want to go fully dynamic (in the sense of image, objects, etc.)
<phoe> I see; objects, in what way do you mean?
<he-man> @beach thanks for your help! It was really appreciated. I just mentioned so that you do not feel in the obligation of doing it :)
Inline has joined #lisp
<he-man> well, in the case of Lisp, objects (clos) and functions
<he-man> the nice thing as far as my understanding goes
<he-man> is that the environment is fully dynamic
<he-man> to the point that is alive
<he-man> so in many cases, such as trivial bug fixes, it is viable to just connect and fix
<he-man> without redeploying. Of course this is not a replacement for testing, etc.
<he-man> but you get my point I guess :)
<phoe> well, yes, developing Lisp application can turn into vivisection sometimes, in the positive meaning of the word
<phoe> since you can end up poking and tugging on things in an alive application
Nilby has quit [Ping timeout: 240 seconds]
<he-man> I had to look for that word in spanish, and after doing it in spanish, had to go to the dictionary, hahaha!
<phoe> but this also means that you can end up harming or killing it if you tug on the wrong thing; with great power comes great responsibility, yadda yadda
<he-man> yes, something like that
orivej has quit [Ping timeout: 265 seconds]
<he-man> yes, I guess so as well
he-man has quit [Remote host closed the connection]
<phoe> and Lisp, being the language that empowers the programmer, also gives you all the kinds of footguns to choose from; so be careful when doing this sort of stuff
<phoe> and, other than that, hack away~
he-man has joined #lisp
toorevitimirp has joined #lisp
cosimone has joined #lisp
IAmRasputin has joined #lisp
saganman has quit [Read error: Connection reset by peer]
he-man has quit [Remote host closed the connection]
IAmRasputin has quit [Ping timeout: 264 seconds]
Lycurgus has joined #lisp
he-man has joined #lisp
jmarciano has joined #lisp
he-man has quit [Remote host closed the connection]
he-man has joined #lisp
<he-man> is it a bad practice to add directories to asdf:*central-registry*?
<phoe> not really
<phoe> many people do that in their RC files
<phoe> for instance so they can store their Lisp stuff e.g. in ~/Projects/Lisp/ and have ASDF handle that
<he-man> I usually have my projects in ~/git/project-name
<he-man> so I would add the dir directly, right?
<phoe> usually one would add ~/git/
<phoe> and then ~/git/project-name/project-name.asd would be found
<he-man> then I am not sure how to load, I see a :symbol in asdf:load-system calls I found around
<he-man> so I do:
<he-man> (asdf:load-system :my-project) and provided that I have
<he-man> ~/git in the registry
<he-man> it will find my-project/my-project.asd
<phoe> yes
<phoe> :my-project gets coerced into "my-project" which is used to load the system from the file my-project.asd
he-man has quit [Remote host closed the connection]
enrio has quit [Ping timeout: 240 seconds]
iissaacc has quit [Ping timeout: 272 seconds]
he-man has joined #lisp
<he-man> I suspect I am doing something wrong. I put this in my .sbclrc file. Maybe at that time asdf is not loaded?
<he-man> this:
<phoe> ;; remember about the pastebin!
<he-man> just one line is ok here? not pasting a ton of code.
<phoe> oh, sure
<he-man> (setf asdf:*central-registry* (cons "/home/he-man/git" asdf:*central-registry*))
<he-man> something like that
<he-man> but sbcl connection does not start anymore and Emacs hangs. I guess because of an init error
<phoe> you'll likely want #P"/home/he-man/git" to have a pathname object instead of a string
<phoe> check what the *inferior-lisp* buffer in emacs says
<he-man> oh, yes, it is that in fact
<he-man> It showed the #P
<he-man> it is a path literal
<phoe> good
<phoe> then check the contents of *inferior-lisp* buffer in emacs
<phoe> that'll tell you why slime REPL has failed to boot
rogersm has joined #lisp
akoana has joined #lisp
Fare has joined #lisp
dyelar has quit [Quit: Leaving.]
mindCrime has quit [Ping timeout: 244 seconds]
saganman has joined #lisp
abbe has quit [Quit: “Everytime that we are together, it's always estatically palpitating!”]
<he-man> thx. Need to have a break now but continue later. Thanks for all your support @phoe
enrio has joined #lisp
<jackdaniel> mseddon: yes, it is located here: https://github.com/TurtleWarePL/eu.turtleware.charming-clim ; everything is in a quite wip state though
<jackdaniel> you may also find some early rationale on my blog behind some decisions
galex-713_ has joined #lisp
galex-713 has quit [Ping timeout: 240 seconds]
treflip has joined #lisp
TwoNotes has joined #lisp
<Lycurgus> actually it's renunciation of citizenship by higher net worth individuals that's up. So much so that they're now charging a stiff fee for it.
<beach> ?
<Lycurgus> sorry wrong channel
<beach> Ah!
sonologico has joined #lisp
achilles has joined #lisp
orivej has joined #lisp
bmansurov has quit [Ping timeout: 246 seconds]
jmarciano has quit [Ping timeout: 272 seconds]
bmansurov has joined #lisp
bmansurov is now known as Guest4846
jonatack has quit [Quit: jonatack]
achilles has quit [Ping timeout: 240 seconds]
achilles has joined #lisp
galex-713_ has quit [Ping timeout: 240 seconds]
IAmRasputin has joined #lisp
galex-713 has joined #lisp
mint has joined #lisp
skapata has joined #lisp
IAmRasputin has quit [Ping timeout: 240 seconds]
jonatack has joined #lisp
jw4 has quit [Read error: Connection reset by peer]
jw4 has joined #lisp
enrio has quit [Read error: Connection reset by peer]
mint has quit [Quit: Leaving]
jesse1010 has joined #lisp
Lycurgus has quit [Quit: Exeunt]
<he-man> exit
he-man has left #lisp ["Killed buffer"]
he-man has joined #lisp
enrio has joined #lisp
krid has joined #lisp
_whitelogger has joined #lisp
<he-man> with the setup like this:
<he-man> could anyone give a quick hand? thanks!
<phoe> he-man: what is the error message that you get?
<phoe> also, you do not need to :use :asdf in DEFPACKAGE
<he-man> [Condition of type ASDF/FIND-COMPONENT:MISSING-COMPONENT]
<he-man> true, that was from before, removed
rig0rmortis has joined #lisp
<he-man> it seems it is the str dependency what breaks
<he-man> : [RETRY] Retry loading str.
<he-man> I have to do (ql:quickload "str") anywhere or it should be handled by asdf?
drl has joined #lisp
ted_wroclaw has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<he-man> I do not get autocompletion on ql, maybe I am missing quicklisp? @phoe
drl has quit [Quit: Ex-Chat]
jasom has quit [Ping timeout: 260 seconds]
<phoe> oooh
<phoe> do you have ~/quicklisp/?
<phoe> if not, install it
<phoe> the instructions are on its web page
jasom has joined #lisp
<phoe> then (ql:quickload :my-project) will also download all dependencies from quicklisp
IAmRasputin has joined #lisp
toorevitimirp has quit [Ping timeout: 240 seconds]
toorevitimirp has joined #lisp
<he-man> I do have the directory ~/quicklisp
<he-man> I downloaded by hand and used the dependency before
<he-man> *BUT* when restarting emacs
IAmRasputin has quit [Ping timeout: 256 seconds]
<he-man> It is like it vanishes. It is not on the module load path or something. (in the python sense)
<he-man> my question is more: where should I put (ql:quickload)
<he-man> in the REPL?
rig0rmortis has quit [Quit: beep boop]
<he-man> I want a reproducible environment. Just enter, run something (probably that is asdf:load-system)
<he-man> and that everything just works. But I am not sure where quickload should gol
<he-man> go
ex_nihilo has quit [Quit: Leaving]
he-man has quit [Remote host closed the connection]
<phoe> oh, one second
<phoe> (load #p"~/quicklisp/setup.lisp) (ql:add-to-init-file)
he-man has joined #lisp
igemnace has quit [Quit: WeeChat 2.9]
he-man has quit [Remote host closed the connection]
contrapunctus has left #lisp ["Disconnected: closed"]
contrapunctus has joined #lisp
ted_wroclaw has joined #lisp
rusua_ has joined #lisp
Inline has quit [Ping timeout: 272 seconds]
sm2n has quit [Remote host closed the connection]
sm2n has joined #lisp
enrio has quit [Ping timeout: 256 seconds]
shaman_king has joined #lisp
<shaman_king> lisp utter shite
<beach> I am sure you have better things to do than that.
<contrapunctus> shaman_king: do you feel frustrated because you need help?
diamondbond has joined #lisp
* beach makes use of /ignore.
<saganman> I think they are just a troll
<beach> Of course.
<shaman_king> i think its more to do with the terrible syntax
<beach> From a real person one could have expected a grammatically correct sentence.
<shaman_king> its terrible
Oladon has joined #lisp
<saganman> shaman_king: Terrible or not, no one is forcing you to use lisp. If you don't like it, don't use it. Don't force your opinions on others.
<shaman_king> but i want to
<shaman_king> fix the syntax
v28flflfl has joined #lisp
<MichaelRaskin> You are not the first and there are multiple projects providing different syntax
<MichaelRaskin> Somehow they all get abandoned.
<shaman_king> well
<shaman_king> let me takeover the project, i will make changes
achilles has quit [Remote host closed the connection]
enrio has joined #lisp
<v28flflfl> i made a function that loads functions from a file and evals them at runtime, and it works? how the hell doe sthat work? doesn't sbcl have to compile them, or is the sbcl runtime so to speak always there?
<sm2n> you can access the compiler at runtime
<shaman_king> go away, this channel is moving to quakenet
<v28flflfl> fuck me
v28flflfl has left #lisp [#lisp]
<sm2n> in fact, it goes even further than that
<shaman_king> another happy lisp customer
<sm2n> sbcl exposes an api you can use at runtime, being written in cl itself
<shaman_king> stfu
<beach> sm2n: I think the person left.
<sm2n> oh
<shaman_king> good on him
<shaman_king> this channel is ABANDONWARE now
<sm2n> beach, I think you are the right person to ask. I want to learn more about the MOP, what is a good way of doing so?
<shaman_king> nope
<beach> The book is a good start.
<shaman_king> no
<shaman_king> its not
<beach> Actually, maybe not so good.
<shaman_king> yea
<shaman_king> its not
<beach> But I don't think there is anything better.
<shaman_king> use googal
<sm2n> I see
<shaman_king> no you dont
<sm2n> I guess I just have to play with the code after all
<shaman_king> play with your willie
shaman_king was banned on #lisp by phoe [*!*b94186a2@185.65.134.*]
shaman_king was kicked from #lisp by phoe [shaman_king]
<beach> sm2n: You just want to learn it as a user, yes?
<sm2n> not necessarily, but that is a good start
<sm2n> I am interested in implementation as well however
<beach> sm2n: I guess you can look at the specification on the metamodular website.
<beach> Then the book is good.
<sm2n> isn't that just the last 2 chapters from the book?
<beach> Chapters 5 and 6 as I recall.
<sm2n> alright, thanks
<beach> But the site is actually better organized than that those chapters.
<beach> And there are cross references in the form of links.
<sm2n> I see
<sm2n> if I were to provide you with a stylesheet, would you consider applying it?
<beach> To make it look different?
<sm2n> to be quite frank I don't find it very readable currently
<sm2n> yes
<beach> What is wrong with it?
<sm2n> the main issue is the line length
<sm2n> rule of thumb in typography is you want about ~60 chars a line or so
<sm2n> for optimal reading
<beach> I don't set the line length. It adapts to the width of the browser window.
<sm2n> that is the issue
Fare has quit [Ping timeout: 244 seconds]
<beach> Hmm.
<MichaelRaskin> Actually, for many readers it is better this way
<beach> sm2n: That's a nice offer, but I don't think I am willing to mess with web stuff like that.
<MichaelRaskin> Because if width is not specified, you can resize the window to desired width, but if it is hardcoded…
<sm2n> alright then
Fare has joined #lisp
Lord_of_Life_ has joined #lisp
toorevitimirp has quit [Remote host closed the connection]
Lord_of_Life has quit [Ping timeout: 240 seconds]
Lord_of_Life_ is now known as Lord_of_Life
EvW has joined #lisp
bitmapper has joined #lisp
Fare has quit [Ping timeout: 240 seconds]
hendursa1 has quit [Quit: hendursa1]
hendursaga has joined #lisp
aartaka has joined #lisp
hiroaki has joined #lisp
<sm2n> well, I ended up writing a userstyle (basically a stylesheet loaded client-side) for myself anyway
<sm2n> 8 lines of css, and it looks decent imo
<sm2n> works on clhs as well funnily enough
IAmRasputin has joined #lisp
<beach> Great!
<beach> That's a much better solution I think.
<sm2n> I'll upload it somewhere later if anyone else wants it
narimiran has joined #lisp
<contrapunctus> beach, sm2n: I nick CSS for my personal Org/Markdown HTML exports from here, it works well most of the time. http://bettermotherfuckingwebsite.com/
<sm2n> yeah that was the inspiration
<contrapunctus> No need for reader mode on mobile that way.
IAmRasputin has quit [Ping timeout: 264 seconds]
<beach> I just can't deal with web stuff. Someone (I forget who it was) already made what he claims to be a much better version of my MOP site, and told me that I should encourage everyone to use his version instead. But I told him that it is fine if he convinces everyone. I consider my work done.
<beach> The someone is known in various forums, and not necessarily for his politeness. I just can't remember his name now.
saganman has quit [Ping timeout: 240 seconds]
<beach> Ah, Jean-Philippe Paradis!
<beach> He also sent a link to his version to stassats so that minion would use his instead, but that must not have happened.
<beach> In case anyone likes it better.
<sm2n> I see
<sm2n> unfortunately, that has the same issue
<sm2n> here is the style if anyone wants it
TwoNotes has quit [Remote host closed the connection]
<sm2n> you can use it with the "stylus" browser extension
<Kabriel> I must have a backwards browser, because that site is difficult to read.
<Kabriel> ^ for me to read
<sm2n> replace the link to clhs with a http://metamodular.com/CLOS-MOP/ for mop
TwoNotes has joined #lisp
RagnarDanneskjol has quit [Ping timeout: 260 seconds]
RagnarDanneskjol has joined #lisp
rvirding has quit [Ping timeout: 272 seconds]
ffwacom has quit [Ping timeout: 272 seconds]
mgsk has quit [Ping timeout: 272 seconds]
CEnnis91 has quit [Ping timeout: 272 seconds]
ffwacom has joined #lisp
mgsk has joined #lisp
rvirding has joined #lisp
CEnnis91 has joined #lisp
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #lisp
isBEKaml has joined #lisp
isBEKaml has quit [Disconnected by services]
isBEKaml has joined #lisp
saganman has joined #lisp
<saganman> how do you peeps exit slime? do you all say ,sayoonara?
<isBEKaml> C-d didn't work?
<beach> I exit when my computer crashes.
<isBEKaml> or C-c C-d
<saganman> isBEKaml: I don't know that
<beach> Why would you want to exit?
<saganman> lol beach
<isBEKaml> beach: lol -- why do you want to exit? Ain't life good enough for you?
rusua_ has quit [Quit: Connection closed for inactivity]
<saganman> all set to go to code lisp now!
Fare has joined #lisp
isBEKaml has quit [Ping timeout: 272 seconds]
_whitelogger has joined #lisp
arbv has quit [Quit: ZNC - https://znc.in]
galex-713 has quit [Ping timeout: 258 seconds]
jesse1010 has quit [Read error: Connection reset by peer]
jesse1010 has joined #lisp
arbv has joined #lisp
galex-713 has joined #lisp
mfiano- has quit [Remote host closed the connection]
mathrick has quit [Ping timeout: 258 seconds]
mfiano- has joined #lisp
edgar-rft has quit [Quit: Leaving]
rogersm has quit [Quit: Leaving...]
Lycurgus has joined #lisp
ted_wroclaw has quit [Read error: Connection reset by peer]
blackadder has joined #lisp
blackadder has quit [Changing host]
blackadder has joined #lisp
saganman has quit [Ping timeout: 272 seconds]
blackadder has left #lisp [#lisp]
IAmRasputin has joined #lisp
IAmRasputin has quit [Ping timeout: 246 seconds]
Inline has joined #lisp
oleo__ has joined #lisp
oleo__ has quit [Client Quit]
Inline has quit [Ping timeout: 240 seconds]
Inline has joined #lisp
Inline has quit [Ping timeout: 240 seconds]
mindCrime has joined #lisp
Inline has joined #lisp
gareppa has joined #lisp
ex_nihilo has joined #lisp
Lycurgus has quit [Quit: Exeunt]
Zetagon has joined #lisp
IAmRasputin has joined #lisp
pankajgodbole has joined #lisp
mindCrime has quit [Ping timeout: 260 seconds]
IAmRasputin has quit [Ping timeout: 246 seconds]
gareppa has quit [Quit: Leaving]
EvW has quit [Ping timeout: 240 seconds]
pankajgodbole has quit [Ping timeout: 260 seconds]
Alfr_ has quit [Quit: Leaving]
pankajgodbole has joined #lisp
treflip has quit [Quit: WeeChat 2.6]
corpix has quit [Remote host closed the connection]
corpix has joined #lisp
Fare has quit [Ping timeout: 240 seconds]
aartaka has quit [Ping timeout: 260 seconds]
EvW has joined #lisp
aartaka has joined #lisp
Alfr has joined #lisp
pankajgodbole has quit [Ping timeout: 240 seconds]
Jeanne-Kamikaze has joined #lisp
gravicappa has quit [Ping timeout: 272 seconds]
gravicappa has joined #lisp
kaftejiman has joined #lisp
madage has quit [Remote host closed the connection]
madage has joined #lisp
IAmRasputin has joined #lisp
<sm2n> what's the best way to case on a string, they aren't eq, so case doesn't work
<sm2n> oh, trivia's match works
IAmRasputin has quit [Ping timeout: 256 seconds]
<mfiano-> CASE uses EQL not EQ, but that still won't help you. Use cond or alexandria has a switch that may be useful
<sm2n> mfiano-, thanks
ex_nihilo has quit [Ping timeout: 240 seconds]
aartaka has quit [Ping timeout: 264 seconds]
<MichaelRaskin> There is also string-case
enrio has quit [Quit: Leaving]
<MichaelRaskin> Which seems to optimise the comparison by looking at the common substrings
renzhi has joined #lisp
<sm2n> where is that?
supercoven has quit [Ping timeout: 240 seconds]
<phoe> (ql:quickload :string-case)
enrio has joined #lisp
enrio has left #lisp [#lisp]
enrio has joined #lisp
enrio has left #lisp [#lisp]
galex-713 has quit [Ping timeout: 260 seconds]
galex-713 has joined #lisp
IAmRasputin has joined #lisp
IAmRasputin has quit [Ping timeout: 256 seconds]
madage has quit [Ping timeout: 240 seconds]
madage has joined #lisp
karayan has quit [Remote host closed the connection]
renzhi has quit [Ping timeout: 272 seconds]
bars0 has joined #lisp
karayan has joined #lisp
mindCrime has joined #lisp
ex_nihilo has joined #lisp
gravicappa has quit [Ping timeout: 272 seconds]
achilles has joined #lisp
<sm2n> oh
narimiran has quit [Quit: leaving]
motersen has quit [Ping timeout: 244 seconds]
Alfr has quit [Quit: Leaving]
pve has quit [Quit: leaving]
lavaflow has quit [Quit: WeeChat 2.9]
ggole has quit [Quit: Leaving]
Alfr has joined #lisp
Zetagon has quit [Remote host closed the connection]
hiroaki has quit [Remote host closed the connection]
hiroaki has joined #lisp
vaporatorius has joined #lisp
vaporatorius has quit [Changing host]
vaporatorius has joined #lisp
lavaflow has joined #lisp
ym555 has quit [Ping timeout: 246 seconds]
vaporatorius__ has quit [Ping timeout: 258 seconds]
ym555 has joined #lisp
bilegeek has joined #lisp
logo4poop has quit [Quit: ZNC 1.7.5 - https://znc.in]
aaaaaa has joined #lisp
daphnis has joined #lisp
enzuru has joined #lisp
rgherdt has joined #lisp
logo4poop has joined #lisp
ym555 has quit [Ping timeout: 240 seconds]
bars0 has quit [Quit: leaving]
ym555 has joined #lisp
daphnis has quit [Ping timeout: 240 seconds]
achilles has quit [Remote host closed the connection]
random-nick has quit [Ping timeout: 272 seconds]
IAmRasputin has joined #lisp
Inline has quit [Ping timeout: 272 seconds]
akoana has left #lisp ["Leaving"]
IAmRasputin has quit [Ping timeout: 272 seconds]
random-nick has joined #lisp
daphnis has joined #lisp
Hafnium01 has joined #lisp
Hafnium01 has quit [Max SendQ exceeded]
rgherdt has quit [Ping timeout: 272 seconds]
<sm2n> I'm reading the uiop:launch-program documentation, it has a function wait-process, which blocks on the async spawned process, and it seems to be indicating that it is necessary to run
<sm2n> "Any asynchronously spawned process requires this function to be run before it is garbage-collected in order to free up resources that might otherwise be irrevocably lost."
<sm2n> what's actually getting collected here?
<sm2n> I can't block my event loop here, so do I have to move into another thread?
<moon-child> sm2n: there is also uiop:process-alive-p you can use to check if the process is still running
<sm2n> so the idiom would be (if (not (process-alive-p ...)) (wait-process ..)) ?
IAmRasputin has joined #lisp
IAmRasputin has quit [Ping timeout: 256 seconds]
daphnis has quit [Ping timeout: 265 seconds]
phantomics has quit [Ping timeout: 240 seconds]
<aeth> sm2n: the opposite
<sm2n> what do you mean?
<aeth> sm2n: (when (process-alive-p process) #| do other stuff here, like send a quit command |# (wait-process process) #| read all of the leftover output here |#)
<aeth> you do it when the process is alive at the end of your program.
<aeth> the code I sent might hang if the process hangs, though.
<aeth> Maybe there's a way to force close after x seconds
<aeth> By send a quit command I mean, e.g. if the process is "dc" then you'd send "q"
vaporatorius__ has joined #lisp
vaporatorius has quit [Ping timeout: 260 seconds]
karayan has quit [Ping timeout: 240 seconds]
<sm2n> oh
<sm2n> well, the point here is that I know the program in question will terminate
<sm2n> and when it does I want to spawn another
<sm2n> but I don't want any stuff hanging around, obviously
<sm2n> this is all in an event loop, so I don't want to block on it
<sm2n> I'm questioning whether I have to call uiop:wait-process at all, the documentation seems to point to yes, but I can't see why
v3ga has quit [Ping timeout: 256 seconds]
<sm2n> also, it sucks that the process-info interface isn't monadic
<sm2n> (process-alive-p nil) is an error, not nil
<sm2n> so I have to special case initialization
v3ga has joined #lisp
<aeth> sm2n: that one's easy... (defun process-alive-p* (maybe-process) (and maybe-process (uiop:process-alive-p maybe-process)))
<sm2n> aeth, true
contrapunctus has left #lisp ["Disconnected: Replaced by new connection"]
contrapunctus has joined #lisp
tiwEllien has quit [Ping timeout: 240 seconds]
random-nick has quit [Ping timeout: 240 seconds]
<sm2n> oh I see
<sm2n> it makes sense actually
<sm2n> you wouldn't want to lose the return code of a process that exited
<sm2n> but I don't see why the gc wouldn't pick it up if you ignored it
dmc00 has joined #lisp
IAmRasputin has joined #lisp
IAmRasputin has quit [Ping timeout: 240 seconds]
<aeth> sm2n: it might create a resource that can't be garbage collected, though. At least, not without a finalizer, which you can't really rely on
ft has quit [Ping timeout: 260 seconds]
contrapunctus has left #lisp ["Disconnected: closed"]
contrapunctus has joined #lisp
<sm2n> aeth, I see
idxu has quit [Quit: ZNC - https://znc.in]
<aeth> sm2n: since it's just a portability library, it's probably the case in some but not all implementations
idxu has joined #lisp
<aeth> sm2n: If you don't want to block the main thread you could always just put the process into a "cleanup" queue in another thread that calls WAIT-PROCESS and then moves onto the next one.
beluga0 has joined #lisp
<mfiano-> Friends don't let friends finalize
<sm2n> aeth, I ended up going with what I originally posted, with calling wait-process only after the process exits
<sm2n> seems to work for my purposes