jackdaniel changed the topic of #lisp to: Common Lisp, the #1=(programmable . #1#) programming language | <http://cliki.net/> <https://irclog.tymoon.eu/freenode/%23lisp> <https://irclog.whitequark.org/lisp> <http://ccl.clozure.com/irc-logs/lisp/> | SBCL 1.5.4, CMUCL 21b, ECL 16.1.3, CCL 1.11.5, ABCL 1.5.0
orivej has joined #lisp
kajo has quit [Quit: From my rotting body, flowers shall grow and I am in them and that is eternity. -- E. M.]
Lycurgus has joined #lisp
shka__ has quit [Ping timeout: 268 seconds]
shka__ has joined #lisp
FennecCode has joined #lisp
libertyprime has quit [Quit: leaving]
akoana has left #lisp ["Leaving"]
Ricchi has quit [Read error: Connection reset by peer]
alexanderbarbosa has left #lisp ["ERC (IRC client for Emacs 27.0.50)"]
alexanderbarbosa has joined #lisp
EvW has joined #lisp
Sweedish has joined #lisp
Ricchi has joined #lisp
t58 has quit [Quit: Night]
nullman has joined #lisp
Lycurgus has quit [Quit: Exeunt]
dave9 has quit [Read error: Connection reset by peer]
dave69 has joined #lisp
dave0 has quit [Disconnected by services]
dave69 is now known as dave0
dave9 has joined #lisp
milanj has quit [Quit: This computer has gone to sleep]
Sweedish has quit [Quit: Leaving]
ebrasca has joined #lisp
xkapastel has quit [Quit: Connection closed for inactivity]
notzmv has joined #lisp
_whitelogger has joined #lisp
akoana has joined #lisp
akoana has quit [Client Quit]
EvW has quit [Ping timeout: 250 seconds]
CloseToZero has joined #lisp
<beach> Good morning everyone!
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
Arcaelyx has quit [Ping timeout: 268 seconds]
Arcaelyx has joined #lisp
dave0 has quit [Quit: dave's not here]
<ebrasca> hi beach!
red-dot has joined #lisp
gravicappa has joined #lisp
Arcaelyx has quit [Ping timeout: 245 seconds]
Asc has joined #lisp
Asc has quit [Client Quit]
Asc has joined #lisp
manualcrank has quit [Quit: WeeChat 1.9.1]
dddddd has quit [Remote host closed the connection]
karayan has joined #lisp
FennecCode has quit [Quit: ERC (IRC client for Emacs 26.2)]
shka_ has joined #lisp
EvW1 has joined #lisp
MCP_ has quit [Ping timeout: 245 seconds]
milanj has joined #lisp
Sweedish has joined #lisp
Guest5703 has joined #lisp
vlatkoB has joined #lisp
EvW1 has quit [Ping timeout: 250 seconds]
sauvin has joined #lisp
quazimodo has joined #lisp
steiner has joined #lisp
MCP_ has joined #lisp
shka_ has quit [Ping timeout: 258 seconds]
dale has quit [Quit: My computer has gone to sleep]
Inline has quit [Quit: Leaving]
oni-on-ion has quit [Remote host closed the connection]
milanj has quit [Quit: This computer has gone to sleep]
oni-on-ion has joined #lisp
sellout- has joined #lisp
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
JohnMS_WORK has joined #lisp
red-dot has joined #lisp
Lycurgus has joined #lisp
hiroaki has quit [Ping timeout: 245 seconds]
Lycurgus has quit [Quit: Exeunt]
Asc has quit [Ping timeout: 245 seconds]
aindilis has quit [Ping timeout: 245 seconds]
wusticality has quit [Ping timeout: 268 seconds]
wusticality has joined #lisp
aindilis has joined #lisp
wusticality has quit [Ping timeout: 248 seconds]
cosimone has joined #lisp
schweers has joined #lisp
liberiga has joined #lisp
vap1 has joined #lisp
alca has quit [Ping timeout: 248 seconds]
vaporatorius has quit [Ping timeout: 272 seconds]
alca has joined #lisp
nowhereman has quit [Ping timeout: 248 seconds]
<schweers> Can somebody explain to me why this function works as intended in SBCL, but not in CCL? https://pastebin.com/nkQfGV9Y
<schweers> CCL claims this: File #P"/proc/7377/fd/0" does not exist. [Condition of type CCL::SIMPLE-FILE-ERROR]
<schweers> This is the first time I’m using wildcards and the function DIRECTORY, so I might be missing something really obvious.
ggole has joined #lisp
flazh has joined #lisp
keep_learning_M has quit [Quit: This computer has gone to sleep]
heisig has joined #lisp
Lord_of_Life has quit [Ping timeout: 248 seconds]
frgo has joined #lisp
Lord_of_Life has joined #lisp
<afidegnum> i remember there have been a kind live workshop to discuss about lisp study
hhdave has joined #lisp
<afidegnum> i think we should do something similar to those styding lisp
<afidegnum> take some chapters and discuss about it,
<afidegnum> via live conference,
<moldybits> or via irc?
<afidegnum> yes, but via live conference will give an ample room to follow the coding process, and ask questions,
<afidegnum> i mean video conference
orivej has quit [Ping timeout: 268 seconds]
<moldybits> this is just a thought but ... it could be interesting to pick a topic to be discussed, with perhaps some texts are suggested reading. preferably something where it's not necessary to read them to be able to participate meaningfully in the discussion ...
<afidegnum> good,
stux|RC-only has quit [Quit: Aloha!]
dgfhdfg has joined #lisp
<beach> afidegnum: You are asking people to invest a lot of work in order to help others learn Common Lisp. Most people here have full-time work or other occupations. And the people here are here for various reasons, but not mainly to help others learn Common Lisp. For that, there i #clschool.
<afidegnum> ok, thanks,
Ricchi has quit [Remote host closed the connection]
stux|RC-only has joined #lisp
<beach> I am just explaining why you will likely find only very limited enthusiasm for your suggestion. But I hope you will succeed. I will personally not participate.
flamebeard has joined #lisp
orivej has joined #lisp
vap1 has quit [Read error: Connection reset by peer]
<moldybits> lol
vap1 has joined #lisp
<moldybits> i don't think he asked anything of anyone
<beach> Indeed. But it looked like it might happen. :)
<moldybits> and it's not obvious to me that enthusiasm couldn't happen, but it'd require more than an impulsive idea
<moldybits> a month ago i'd been all over this :p
amerlyq has joined #lisp
stux|RC-only has quit [Quit: Aloha!]
lowryder has quit [Quit: WeeChat 2.1-dev]
rippa has joined #lisp
quazimodo has quit [Ping timeout: 268 seconds]
nsrahmad has joined #lisp
stux|RC-only has joined #lisp
datajerk has quit [Ping timeout: 245 seconds]
MCP_ has quit [Ping timeout: 245 seconds]
datajerk has joined #lisp
keep_learning_M has joined #lisp
DGASAU has quit [Ping timeout: 245 seconds]
DGASAU has joined #lisp
frgo has quit [Remote host closed the connection]
frgo has joined #lisp
zotan has quit [Ping timeout: 264 seconds]
zotan has joined #lisp
frgo has quit [Ping timeout: 248 seconds]
keep_learning_M has quit [Quit: This computer has gone to sleep]
frgo has joined #lisp
milanj has joined #lisp
ptiyoyip has joined #lisp
dgfhdfg has quit [Ping timeout: 246 seconds]
frgo_ has joined #lisp
frgo_ has quit [Read error: Connection reset by peer]
frgo__ has joined #lisp
frgo has quit [Ping timeout: 246 seconds]
lnostdal has quit [Quit: "Fascism, Nazism, Communism and Socialism are only superficial variations of the same monstrous theme—collectivism." -- Ayn Rand]
_whitelogger has joined #lisp
milanj has quit [Quit: This computer has gone to sleep]
amerlyq has quit [Ping timeout: 272 seconds]
gravicappa has quit [Ping timeout: 245 seconds]
nsrahmad has quit [Remote host closed the connection]
cosimone has quit [Quit: WeeChat 2.4]
orivej has quit [Ping timeout: 245 seconds]
myrkraverk has joined #lisp
amerlyq has joined #lisp
milanj has joined #lisp
oni-on-ion has quit [Remote host closed the connection]
oni-on-ion has joined #lisp
keep_learning_M has joined #lisp
oni-on-ion has quit [Ping timeout: 250 seconds]
myrkraverk has quit [Ping timeout: 272 seconds]
myrkraverk_ has joined #lisp
dave0 has joined #lisp
fivo has joined #lisp
Bike has quit [Quit: Lost terminal]
milanj has quit [Quit: This computer has gone to sleep]
__jrjsmrtn__ has quit [Ping timeout: 276 seconds]
__jrjsmr- has joined #lisp
liberiga has quit [Ping timeout: 260 seconds]
server001 has joined #lisp
ryufghj has joined #lisp
ptiyoyip has quit [Read error: Connection reset by peer]
Arcaelyx has joined #lisp
jason_m has joined #lisp
keep_learning_M has quit [Quit: Leaving]
scymtym has quit [Read error: Connection reset by peer]
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
ryufghj has quit [Ping timeout: 268 seconds]
sellout- has quit [Ping timeout: 245 seconds]
dddddd has joined #lisp
scymtym has joined #lisp
red-dot has joined #lisp
Bike has joined #lisp
wigust- has joined #lisp
wigust has quit [Ping timeout: 245 seconds]
jason_m has quit [Ping timeout: 258 seconds]
pfdietz has joined #lisp
EvW has joined #lisp
lnostdal has joined #lisp
Lycurgus has joined #lisp
cosimone has joined #lisp
warweasle has joined #lisp
cosimone has quit [Remote host closed the connection]
cosimone has joined #lisp
lucasb has joined #lisp
frgo__ has quit [Remote host closed the connection]
Arcaelyx has quit [Quit: Arcaelyx]
trzcdev has joined #lisp
frgo has joined #lisp
trzcdev has left #lisp [#lisp]
frgo has quit [Remote host closed the connection]
frgo has joined #lisp
techquila has quit [Remote host closed the connection]
techquila has joined #lisp
Arcaelyx has joined #lisp
Guest5703 has quit [Remote host closed the connection]
vaporatorius__ has joined #lisp
vap1 has quit [Ping timeout: 268 seconds]
steiner has quit [Remote host closed the connection]
milanj has joined #lisp
JohnMS_WORK has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/]
flamebeard has quit []
MCP_ has joined #lisp
techquila has quit [Remote host closed the connection]
heisig has quit [Quit: Leaving]
techquila has joined #lisp
techquila has quit [Remote host closed the connection]
orivej has joined #lisp
techquila has joined #lisp
fivo has quit [Ping timeout: 276 seconds]
saravia has joined #lisp
varjag has joined #lisp
fivo has joined #lisp
Adamclisi has quit [Ping timeout: 246 seconds]
sjl has joined #lisp
mindCrime has joined #lisp
techquila has quit [Remote host closed the connection]
dale_ has joined #lisp
dale_ is now known as dale
Adamclisi has joined #lisp
techquila has joined #lisp
myrkraverk_ has quit [Quit: ChatZilla 0.9.93 [SeaMonkey 2.49.2/20180205033720]]
myrkraverk has joined #lisp
gravicappa has joined #lisp
Lycurgus has quit [Quit: Exeunt]
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
FreeBirdLjj has joined #lisp
techquila has quit [Remote host closed the connection]
server001 has quit [Ping timeout: 272 seconds]
techquila has joined #lisp
shka_ has joined #lisp
EvW has quit [Ping timeout: 264 seconds]
nsrahmad has joined #lisp
techquila has quit [Remote host closed the connection]
thijso has quit [Ping timeout: 245 seconds]
techquila has joined #lisp
GoldRin has joined #lisp
GoldRin has quit [Remote host closed the connection]
GoldRin has joined #lisp
techquila has quit [Remote host closed the connection]
fivo has quit [Quit: WeeChat 1.9.1]
fivo has joined #lisp
techquila has joined #lisp
schweers has quit [Ping timeout: 250 seconds]
nsrahmad has quit [Ping timeout: 276 seconds]
voidlily has quit [Ping timeout: 264 seconds]
FreeBirdLjj has quit [Remote host closed the connection]
techquila has quit [Ping timeout: 258 seconds]
techquila has joined #lisp
karlosz has quit [Quit: karlosz]
karlosz has joined #lisp
mindthelion has joined #lisp
voidlily has joined #lisp
techquila has quit [Ping timeout: 245 seconds]
karlosz has quit [Client Quit]
karlosz has joined #lisp
mindthelion has quit [Ping timeout: 258 seconds]
techquila has joined #lisp
CloseToZero has quit [Quit: WeeChat 2.5]
q9929t has joined #lisp
manualcrank has joined #lisp
t58 has joined #lisp
Asc has joined #lisp
trafaret1 has joined #lisp
<trafaret1> hi
<trafaret1> what does #. mean in lisp?
Asc has left #lisp [#lisp]
<Xach> trafaret1: the following form is evaluated at read time and the return value is used as the result from the reader.
<Xach> (read-from-string "(+ 8 1)") => (+ 8 1), but (read-from-string "#.(+ 8 1)") => 9
frgo_ has joined #lisp
<Xach> many read macros start with #, are optionally followed by a numeric argument, and concluded with a single character that is associated with the behavior. #+, #-, #=, #., #< are a few examples.
frgo has quit [Ping timeout: 272 seconds]
frgo_ has quit [Ping timeout: 248 seconds]
Oladon_work has joined #lisp
Sweedish has quit [Quit: Leaving]
<moldybits> trafaret1: (loop :repeat 5 :collect (random 10)) => (7 9 8 0 5) (loop :repeat 5 :collect #.(random 10)) => (6 6 6 6 6)
cosimone has quit [Quit: WeeChat 2.4]
<trafaret1> If I get your right it's just like evaluate the expression and that results send into another expression to evaluate
<trafaret1> or it's just simple unquote the expression and eval
hhdave has quit [Quit: hhdave]
saravia has quit [Ping timeout: 245 seconds]
saravia_ has joined #lisp
saravia_ has quit [Remote host closed the connection]
<trafaret1> (loop :repeat 5 :collect #.(random 10)) => (6 6 6 6 6) for me it's strange behaviour
<fivo> Hey, sorry not very on topic, but #slime seems quite dead.
<fivo> I am using slime with company. I installed the following plugin https://github.com/anwyn/slime-company
<fivo> The plugin gives me completions for the libaries.
<moldybits> trafaret1: (loop :repeat 5 :collect #.(random 10)) becomes (loop :repeat 5 :collect 6) after it's been read.
<fivo> Before I used the plugin company also completed local varaibles which it doesn't anymore.
<fivo> What is the current setup to sort of get the best of both worlds?
<trafaret1> moldybits: #.(random 10) - eval only once ?
<trafaret1> thanks for clarification it seems to me a almost get the idea
<moldybits> eval at read time
<moldybits> most things are evaluated only once, but this exampled used a loop so it is more pronounced
q9929t has quit [Quit: q9929t]
<_death> the first thing that happens when you load a file or enter text at the repl is that the reader gets called with the stream of characters.. the reader operates according to a readtable.. by default, this readtable contains an entry for the '#' character that dispatches further according to the following character(s).. if the character '.' is encountered, the reader gets called recursively to read the next object.. after the object is
<_death> read, the reader will evaluate it, and return with the value, and the next step will commence
<moldybits> (let ((x 42)) (+ 1 x)) => 43 (let ((x 42)) #.(+ 1 x)) => error: variable X unbound
<trafaret1> what abouty let*
sonologico has joined #lisp
FreeBirdLjj has joined #lisp
<_death> for example entering #.#.(list 'list ''list '''list) will have the reader call itself twice, the final result being (list 'list), which in turn will be passed to the evaluator, resulting in (list)
FreeBirdLjj has quit [Remote host closed the connection]
<moldybits> (lol ((x 42)) (+ 1 x)) => Compile-time error: illegal function call ((x 42)) (lol ((x 42)) #.(+ 1 x)) error: variable X unbound
<moldybits> might be confusing
<moldybits> the problem is not with the let, but that #.(+ 1 x) is evaluated before the let (or nonexistant lol) is evaluated
EvW1 has joined #lisp
<moldybits> oh, hm
<moldybits> (defparameter x 42) (let ((x 5)) (print #.x)) <- this prints 42 even when `sbcl --load file.lisp'. that surprises me.
<_death> why is that a surprise
<_death> the defparameter form gets read and evaluated, then the let form gets read and evaluated
<moldybits> yeah, i thought the whole file would be read first
<moldybits> (progn (defparameter x 42) (let ((x 5)) (print #.x))) works as intended
Arcaelyx has quit [Read error: Connection reset by peer]
dave0 has quit [Quit: dave's not here]
Arcaelyx has joined #lisp
Andc has joined #lisp
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
red-dot has joined #lisp
Harag has joined #lisp
<flip768> can I tell ESRAP:DEFRULE to ignore whitespace before and/or after?
<flip768> I know that I can have (AND whitespace ... whitespace) in the rule, but then I need to explicitly do something to not return them
<flip768> and whitespace inbetween the tokens has the same problem
frgo has joined #lisp
alexanderbarbosa has quit [Quit: ERC (IRC client for Emacs 27.0.50)]
eddof13 has joined #lisp
mindthelion has joined #lisp
techquila has quit [Ping timeout: 246 seconds]
j-r has quit [Quit: ZNC 1.7.3 - https://znc.in]
<pfdietz> The top level forms are processed before the following forms are read. Things like (in-package ...) would not work if that weren't the case.
EvW1 has quit [Ping timeout: 250 seconds]
<pfdietz> clhs 3.2.3.1
<specbot> Processing of Top Level Forms: http://www.lispworks.com/reference/HyperSpec/Body/03_bca.htm
<pfdietz> trafaret1: a common idiom for sharp-dot is putting constant variable values into CASE forms.
<pfdietz> (case x ((#.foo) #| the foo case here |# ...) ...)
<_death> pfdietz: that's not a good idea
<pfdietz> Oh?
quazimodo has joined #lisp
<_death> pfdietz: I wrote about it a long time ago.. "One minor thing" paragraph @ https://github.com/death/consix/wiki/Postmortem---a-bit-of-postmortem-never-hurt-anyone!
<Xach> I only realized today that declarations precede docstrings in defun's specification.
<Xach> I feel like I have not seen things written that way.
<_death> Xach: they can go in either order, but not intermixed
<Xach> I have seen them only written in one order
<pfdietz> I think that would be fine, as long as the defconstant appears in another file. That way, the form will have been evaluated by the time its value is needed.
<pfdietz> (defun foo (x) (declare (ignore x)) "Did you think this was a docstring?")
<_death> pfdietz: yes, if it appears in another file it's OK.. like macro definition and use
<Xach> pfdietz: not before today but now i'm not sure!
<Xach> sbcl thinks not - what should I think?
<_death> it's not
<pfdietz> Macro definition is fine. "If a defmacro form appears as a top level form, the compiler must store the macro definition at compile time, so that occurrences of the macro later on in the file can be expanded correctly. "
<_death> add another string and iti s
<pfdietz> Unless the macro body calls some auxiliary function that is also in that file.
<_death> pfdietz: yes, I meant the latter
afidegnum has quit [Ping timeout: 258 seconds]
kajo has joined #lisp
eddof13 has quit [Quit: eddof13]
sonologico has quit [Ping timeout: 268 seconds]
milanj has quit [Quit: This computer has gone to sleep]
sonologico has joined #lisp
eddof13 has joined #lisp
oni-on-ion has joined #lisp
j-r has joined #lisp
j-r has quit [Changing host]
j-r has joined #lisp
oni-on-ion has quit [Ping timeout: 264 seconds]
sauvin has quit [Ping timeout: 244 seconds]
oni-on-ion has joined #lisp
sellout- has joined #lisp
karayan has quit [Remote host closed the connection]
karayan has joined #lisp
milanj has joined #lisp
ryufghj has joined #lisp
EvW has joined #lisp
Harag has quit [Quit: Harag]
j-r has quit [Quit: ZNC 1.7.3 - https://znc.in]
<ark> fivo: I have slime-company working with completion in the repl lisp files. Here's my config: https://gitlab.com/_ark_/dotfiles/blob/5967f8c68ea7fbe4b5c852b134fb14404b4564ff/emacs.d/init.el#L997-1002
eddof13 has quit [Quit: eddof13]
akoana has joined #lisp
trafaret1 has quit [Ping timeout: 258 seconds]
techquila has joined #lisp
trafaret1 has joined #lisp
j-r has joined #lisp
j-r has quit [Changing host]
j-r has joined #lisp
mindthelion has quit [Ping timeout: 248 seconds]
ggole has quit [Quit: Leaving]
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
GoldRin has quit [Ping timeout: 258 seconds]
trafaret1 has quit [Read error: Connection reset by peer]
trafaret1 has joined #lisp
mindthelion has joined #lisp
<fiddlerwoaroof> fivo, ark: I use slime-company too, but in my experience, it can be a pain getting it to work
techquila has quit [Ping timeout: 245 seconds]
gravicappa has quit [Ping timeout: 246 seconds]
<flip768> scymtym: thanks, looking
<flip768> scymtym: 2nd line of that paragraph has a formatting bug ;)
<flip768> and the other lines below as well
<flip768> but that's not in esrap
<scymtym> flip768: that's because github can't handle all of org-mode's syntax
eddof13 has joined #lisp
<flip768> scymtym: did you export as gfm?
<flip768> via pandoc, for example?
<scymtym> flip768: no, i just push the org-mode file. what prompts the question?
techquila has joined #lisp
trafaret1 has left #lisp ["ERC (IRC client for Emacs 26.1)"]
mindthelion has quit [Ping timeout: 248 seconds]
Andc has quit [Quit: ERC (IRC client for Emacs 27.0.50)]
<flip768> the possibility of having readable documentation on github is the aim
amerlyq has quit [Quit: amerlyq]
<scymtym> i guess a feature request here https://github.com/wallyqs/org-ruby would be appropriate, but getting off topic
mindthelion has joined #lisp
techquila has quit [Ping timeout: 245 seconds]
vlatkoB has quit [Remote host closed the connection]
Lord_of_Life_ has joined #lisp
vaporatorius__ has quit [Read error: Connection reset by peer]
Lord_of_Life has quit [Ping timeout: 244 seconds]
vaporatorius has joined #lisp
vaporatorius has quit [Changing host]
vaporatorius has joined #lisp
Lord_of_Life_ is now known as Lord_of_Life
nanoz has joined #lisp
troydm has quit [Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset]
gareppa has joined #lisp
troydm has joined #lisp
red-dot has joined #lisp
gareppa has quit [Remote host closed the connection]
cosimone has joined #lisp
milanj has quit [Ping timeout: 244 seconds]
eddof13 has quit [Quit: eddof13]
warweasle has quit [Quit: rcirc on GNU Emacs 24.4.1]
eddof13 has joined #lisp
xkapastel has joined #lisp
ravndal has quit [Quit: WeeChat 2.5]
shka_ has quit [Ping timeout: 244 seconds]
ravndal has joined #lisp
Bike has quit [Remote host closed the connection]
Bike has joined #lisp
Lycurgus has joined #lisp
cyraxjoe has quit [Quit: No Ping reply in 180 seconds.]
pfdietz has quit [Remote host closed the connection]
phoe has quit [Ping timeout: 276 seconds]
mindCrime has quit [Ping timeout: 248 seconds]
eddof13 has quit [Quit: eddof13]
gareppa has joined #lisp
gareppa has quit [Client Quit]
EvW has quit [Ping timeout: 264 seconds]
phoe has joined #lisp
cosimone has quit [Quit: WeeChat 2.4]
liberiga has joined #lisp
sellout- has quit [Ping timeout: 245 seconds]
EvW1 has joined #lisp
mindCrime has joined #lisp
Jesin has quit [Quit: Leaving]
sjl has quit [Ping timeout: 245 seconds]
Oladon_work has quit [Remote host closed the connection]
nowhereman has joined #lisp
Bike has quit [Remote host closed the connection]
mindCrime has quit [Ping timeout: 245 seconds]
alexanderbarbosa has joined #lisp
nanoz has quit [Ping timeout: 248 seconds]
eddof13 has joined #lisp
troydm has quit [Ping timeout: 246 seconds]
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
troydm has joined #lisp
red-dot has joined #lisp
ltriant has joined #lisp
<alexanderbarbosa> what mainstream language is the most lispy? thinking of changing careers and taking programming seriously... :D
Jesin has joined #lisp
ptiyoyip has joined #lisp
<fivo> ark, fiddlerwoaroof: Had to group 2 backends together in company-backends.
fivo has quit [Quit: WeeChat 1.9.1]
oldtopman has joined #lisp
ryufghj has quit [Ping timeout: 268 seconds]
<no-defun-allowed> alexanderbarbosa: none, wouldn't be mainstream according to your dichotomy then
<no-defun-allowed> also the term "lispy" makes me cringe ngl
<alexanderbarbosa> no-defun-allowed: lol
<no-defun-allowed> not every day you hear someone call a language ALGOL-y or APL-y for example
<alexanderbarbosa> no-defun-allowed: some @ emacs said golang and javascript es6, whatever it is
<no-defun-allowed> tell them to learn Lisp before they use the term
<alexanderbarbosa> are the closest ones to cl
<no-defun-allowed> and if they don't, tell them to fuck off
<alexanderbarbosa> no-defun-allowed: I will be sure to say that :D
<no-defun-allowed> since neither is homoiconic, has macros, the scoping system of Lisp we all know and love, dynamic strong typing, CLOS, etc
<alexanderbarbosa> please, dont make my end of day bad... i want a light in end of the tunnel :D
<no-defun-allowed> why do you need a language that superficially is derived from lisp that isn't lisp?
Ricchi has joined #lisp
<p_l> alexanderbarbosa: Go is so far away from Lisp it's not funny :D
<p_l> as for JS, it has some passing relation to scheme, but that's it
<aeth> Go is basically a better-C, and is basically the opposite of Lisp. Like with C, you have a plain style without a lot of abstraction. micro-readability, basically. If you see a random 10 LoC, you should know what's going on. On the other hand, with Lisps you tend to aim for macro-readability, with a lot of abstractions.
<aeth> (* of course Go has GC, so it will fail to attract anyone who is still on C and didn't switch to Java in the 90s)
FennecCode has joined #lisp
<aeth> Also, notably, Go has no generics, whereas in Lisp, you have to try pretty hard to get specifics.
<alexanderbarbosa> p_l: because after some, lazy I might add, there no seems to have that much of Lisp jobs
<p_l> aeth: ehh, it seems to attract a lot of people due to not being associated with certain issues of early java
<alexanderbarbosa> *search
<p_l> alexanderbarbosa: there's a saying in Poland: "Let's eat shit, billions of flies can't be wrong"
<p_l> But for all practical purposes, I'd say it's easier than ever to end up using lisp in any random job
<p_l> for JVM environments, you have clojure and ABCL (and a bunch of Schemes, some with AOT compilation). We now have "age of containers" and people are less picky about deps. Microservices actually help too, because you can write your bit in CL
<alexanderbarbosa> p_l: haha
<p_l> but in reality, the number one case for using CL in a job? Have your own company and do projects for clients as a whole
<p_l> because believe me, a non-IT company probably won't care about what language the project is in
<alexanderbarbosa> clojure, Ive heard about it...
<alexanderbarbosa> p_l: fair...
<p_l> drew crampsie used to talk about doing lots of intranet sites for various companies, none of which cared they were in Common Lisp
<aeth> CL's #1 modern strength is probably in generation of other languages. e.g. https://edicl.github.io/cl-who/ for HTML
<no-defun-allowed> "clojure is the opiate of the Java users" ~ karl no-defun-allowed
<alexanderbarbosa> :D
<p_l> an idea I had just ... 15 minutes ago? was for CL code that generated QML for nice UI
<p_l> 30 minutes ago, it was for Ada2012 (with SPARK where possible) to generate code for hard realtime systems on ARINC 653 platforms
liberiga has quit [Ping timeout: 260 seconds]
<p_l> might want to build a library for source maps, but it's a bit more annoying when your language technically doesn't use text for source code
Bike has joined #lisp
<p_l> lots of options
<p_l> also, on clojure side, there's clojurescript
<p_l> some people here used to generate hardware from CL :)
GoldRin has joined #lisp
anewuser has joined #lisp
<alexanderbarbosa> p_l: clojurescript, noted!
<alexanderbarbosa> weird, why would someone use a language to translate to yet another one...
<alexanderbarbosa> JS must be some weird language...
EvW1 has quit [Ping timeout: 250 seconds]
lucasb has quit [Quit: Connection closed for inactivity]
<no-defun-allowed> JS is very weird
<no-defun-allowed> Clojure is also weird and exposes gory JVM semantics, so DON'T USE IT for the love of jmc.
milanj has joined #lisp
<alexanderbarbosa> no-defun-allowed: and there we go, at where we started the journey
<alexanderbarbosa> no-defun-allowed: so its either CL/Scheme or forget about Lisp... it seems
<no-defun-allowed> But basically if you want Lisp semantics, you want Lisp. I can't really advise you on any close-enough solutions.
Lycurgus has quit [Quit: Exeunt]
<alexanderbarbosa> I just hope I wont have to learn "everything", yet agin
liberiga has joined #lisp
<p_l> alexanderbarbosa: fwiw, clojure isn't so bad except when you get horrible backtraces
<p_l> as for compiling to another language... that's the effect of web browsers having only JS available
ryufghj has joined #lisp
<no-defun-allowed> p_l: fwiw, (cons 1 2)
<p_l> no-defun-allowed: and it's a bit less important than people think other than for purity
ptiyoyip has quit [Ping timeout: 246 seconds]
<no-defun-allowed> and also it abuses {}, [], #,, etc
<no-defun-allowed> i don't usually post r/lispmemes content here but this summarises all the other problems: https://www.reddit.com/r/LispMemes/comments/bp6pbm/psst_hey_clojure_fans/eunol2o/
<aeth> alexanderbarbosa: Even if all of the languages are well designed, what you don't get unless you use code generation is a uniform syntax, and your brain context switching between 5-10 different syntaxes in a few minutes is how you make simple typos.
<aeth> But once you put something in s-expression form, what you can start doing is using macros on top of the generated language as if you were writing macros for Lisp itself.
<aeth> (or functions)
<aeth> Just the web alone could give you 5 different syntaxes: JavaScript, HTML, CSS, SQL, and the backend language. And if your configuration language isn't JSON, make that 6 syntaxes.
quazimodo has quit [Ping timeout: 245 seconds]
<alexanderbarbosa> aeth: yep, so web is a no... definitively
quazimodo has joined #lisp
eddof13 has quit [Quit: eddof13]
<p_l> unfortunately it seems that web is easiest to get some work in :/
<p_l> though there's a ton of backend work available
<aeth> alexanderbarbosa: no, I mean exactly the opposite... CL's (or Lisp's in general) strongest case is in the web because there are a ridiculous number of syntaxes. In most languages, you'd use something like https://mustache.github.io/ to do {{ foo }} templates on top of the native syntax, e.g. in .html files.
<aeth> alexanderbarbosa: In CL, you will have a uniform syntax and a well-designed framework will make the web look like it's not a mix of 6+ syntaxes.
<p_l> alexanderbarbosa: to support aeth's point, that's kinda how a bunch of clojure webapps got made :)
<aeth> Oh, and with WebGL you probably have GLSL, so that adds another syntax...
<p_l> including one that, when it still was available, was all-lisp from web browser to backend
<alexanderbarbosa> aeth: oh, the nightmare
<p_l> ... taht said, what happened to TheDeadline? :<
<alexanderbarbosa> orange crab bad lol
<aeth> What's particularly fun is that if you write a trivial macro on top of a well-written function to e.g. generate GLSL, you can then generate GLSL strings at compile time.
<p_l> alexanderbarbosa: as for lisp jobs - some lesser known places do still CL, and some switched to Clojure
<aeth> Generating a compile time string of another language, once you've written the generation, is probably no harder than (defun foo (s-expression) (with-output-to-string (output) (generate-foo s-expression output))) (defmacro foobar (&body body) (foo body))
<aeth> Assuming you're doing stream-writing in your code generation
<aeth> You'd also be able to share that code for writing a file if you use a stream.
<p_l> alexanderbarbosa: btw, there's a library in CL that generates GLSL from lisp
<aeth> It's a harder if you want the macro to be able to change some output based on the input, like a webpage that says "Hello, ~A~%"
oni-on-ion has quit [Remote host closed the connection]
<aeth> You can generate JavaScript, HTML, XML, CSS, SQL, JSON, GLSL, etc. Varying quality, though. Mostly hobby, incomplete projects. It's so easy to do that there's a lot of one-off 90% implementations that people have written.
oni-on-ion has joined #lisp
<aeth> It's harder if you want to try to get the generated programming language (JS or GLSL) to match CL semantics, though.
<alexanderbarbosa> aeth: I dont think someone would hire me if I only generate code from CL :D
<aeth> The basic principle is incredibly simple. Parse a list based on the first element, then write to a character stream (many functions that do this), and recursively call if there's another list in there, e.g. (:+ 1 (:* 2 3)) could generate "1 + (" and then "2 * 3" and then go back to the original to add the ")"