ebrasca has quit [Remote host closed the connection]
_dcb_ is now known as dcb
d4ryus has quit [Ping timeout: 264 seconds]
d4ryus has joined #commonlisp
akoana has quit [Ping timeout: 240 seconds]
tasty has quit [Remote host closed the connection]
keinbock has quit [Ping timeout: 255 seconds]
tasty has joined #commonlisp
tasty has quit [Changing host]
tasty has joined #commonlisp
keinbock has joined #commonlisp
scymtym has quit [Ping timeout: 256 seconds]
scymtym has joined #commonlisp
triffid has quit [Ping timeout: 255 seconds]
triffid has joined #commonlisp
dasyatidprime has quit [Quit: leaving]
dcb has quit [Quit: MSN Messenger v2.16.1]
msavoritias has quit [K-Lined]
eddof13 has quit [Quit: My MacBook Air has gone to sleep. ZZZzzz…]
dasyatidprime has joined #commonlisp
Everything has joined #commonlisp
rgherdt has joined #commonlisp
shka has joined #commonlisp
kenran has joined #commonlisp
_cymew_ has joined #commonlisp
_cymew_ has quit [Ping timeout: 246 seconds]
_cymew_ has joined #commonlisp
NicknameJohn has joined #commonlisp
jonatack1 has joined #commonlisp
jon_atack has quit [Ping timeout: 240 seconds]
NicknameJohn has quit [Ping timeout: 240 seconds]
scymtym has quit [Ping timeout: 255 seconds]
Brucio-61 has quit [Ping timeout: 260 seconds]
jonatack2 has joined #commonlisp
jonatack1 has quit [Read error: Connection reset by peer]
jonatack3 has joined #commonlisp
jonatack2 has quit [Ping timeout: 255 seconds]
pve has joined #commonlisp
czy has quit [Remote host closed the connection]
czy has joined #commonlisp
occ has quit [Ping timeout: 240 seconds]
occ has joined #commonlisp
jonatack has joined #commonlisp
jonatack3 has quit [Ping timeout: 252 seconds]
jathd has joined #commonlisp
igemnace has joined #commonlisp
euandreh has quit [Ping timeout: 276 seconds]
jon_atack has joined #commonlisp
jonatack has quit [Ping timeout: 265 seconds]
Brucio-61 has joined #commonlisp
Cymew has joined #commonlisp
chrcav has quit [Ping timeout: 248 seconds]
<jackdaniel>
it seems that the weather in the amsterdam will be so-so during ELS
chrcav has joined #commonlisp
Devon has quit [Ping timeout: 264 seconds]
<Equill>
Yeah, but then you get King's Day, if you stick around. If you're OK with crowds, that should brighten your mood.
<Equill>
Also, that's just Amsterdam weather - it's one of the reasons I moved three countries south :)
Devon has joined #commonlisp
NicknameJohn has joined #commonlisp
mgl has joined #commonlisp
makomo has quit [Quit: WeeChat 3.6]
makomo has joined #commonlisp
lucasta has quit [Remote host closed the connection]
attila_lendvai has joined #commonlisp
morganw has joined #commonlisp
akoana has joined #commonlisp
akoana has quit [Quit: leaving]
occ has quit [Ping timeout: 248 seconds]
msavoritias has joined #commonlisp
euandreh has joined #commonlisp
occ has joined #commonlisp
skin has quit [Ping timeout: 250 seconds]
karlosz has quit [Ping timeout: 248 seconds]
karlosz has joined #commonlisp
dasyatidprime has quit [Quit: leaving]
occ has quit [Ping timeout: 240 seconds]
bjorkint0sh has joined #commonlisp
bjorkintosh has quit [Ping timeout: 260 seconds]
Devon has quit [Ping timeout: 240 seconds]
Gleefre has quit [Remote host closed the connection]
random-nick has joined #commonlisp
Brucio-61 has quit [Ping timeout: 260 seconds]
karlosz has quit [Quit: karlosz]
Brucio-61 has joined #commonlisp
scymtym has joined #commonlisp
Brucio-61 has quit [Ping timeout: 260 seconds]
Brucio-61 has joined #commonlisp
random-nick has quit [Ping timeout: 240 seconds]
jonatack1 has joined #commonlisp
jon_atack has quit [Ping timeout: 246 seconds]
<splittist>
Not looking too bad today (approaching from Rotterdam).
<Equill>
Excellent! Then again, that city always looks beautiful regardless of the weather.
mooseball has joined #commonlisp
aadcg has joined #commonlisp
<aadcg>
how do I programatically define variables (via defvar) given a list of strings/symbols?
mariari has quit [Remote host closed the connection]
mariari has joined #commonlisp
<Equill>
aadcg: depends on what form the list takes. If it's an alist, it's pretty easy; something more like a plist probably wants something recursive. But why defvar in particular, and not let?
<lieven>
either with a macro or with progv but it's a weird use case
<Equill>
Yeah, I was thinking a macro to generate the `let` form.
<gilberth>
PROGV doesn't define variables, it merely binds the symbols given.
<Equill>
So it does. I forgot it was even there.
<gilberth>
PROGV is quite handy when you need something thread local. You could back a slot by a gensym that you then can bind dynamically using PROGV. Unless you use SBCL which doesn't reclaim that kind of TLS.
jonatack2 has joined #commonlisp
<aadcg>
Thanks for the answers, you've helped already.
jonatack1 has quit [Ping timeout: 240 seconds]
<beach>
aadcg: Are you sure you want to do that at all, rather than using some kind of container for your data?
Everything has quit [Quit: leaving]
Gleefre has joined #commonlisp
jonatack3 has joined #commonlisp
jonatack2 has quit [Ping timeout: 264 seconds]
random-jellyfish has joined #commonlisp
random-jellyfish has quit [Client Quit]
Gleefre has quit [Remote host closed the connection]
attila_lendvai has quit [Ping timeout: 256 seconds]
Gleefre has joined #commonlisp
mariari has quit [Ping timeout: 250 seconds]
kenran has quit [Remote host closed the connection]
glaucon has joined #commonlisp
mariari has joined #commonlisp
NotThatRPG has joined #commonlisp
Cymew has quit [Ping timeout: 260 seconds]
easye has quit [Ping timeout: 248 seconds]
Devon has joined #commonlisp
kevingal has joined #commonlisp
easye has joined #commonlisp
NotThatRPG has quit [Ping timeout: 260 seconds]
tyson2 has joined #commonlisp
mariari has quit [Ping timeout: 260 seconds]
mariari has joined #commonlisp
glaucon has quit [Quit: Leaving.]
mgl has quit [Quit: Client closed]
glaucon has joined #commonlisp
Equill has quit [Ping timeout: 255 seconds]
cage has joined #commonlisp
mariari has quit [Ping timeout: 240 seconds]
Equill has joined #commonlisp
glaucon has quit [Quit: Leaving.]
skin has joined #commonlisp
mariari has joined #commonlisp
johnjaye has quit [Quit: WeeChat 4.0.0-dev]
johnjaye has joined #commonlisp
random-nick has joined #commonlisp
Gleefre has quit [Remote host closed the connection]
uddipiggu has quit [Quit: Leaving]
aadcg has quit [Ping timeout: 276 seconds]
soundmodel has joined #commonlisp
<soundmodel>
why isn't common lisp as fast as C/C++ or faster
<soundmodel>
I thought a list processing language should be much easier to compile than imperative or OO
<beach>
soundmodel: First of all, speed is a characteristic of an implementation and not of a language.
hrberg has joined #commonlisp
<phoe>
(and contemporary C++ compilers have had some orders of magnitude more time poured into them than Lisp ones)
<phoe>
(when counting man-hours and all that)
<beach>
soundmodel: But, Common Lisp is a dynamically typed language which makes it much harder to write a compiler that generates fast code than it is for a statically typed language.
<msavoritias>
yep. i mean js is somehow fast
<beach>
soundmodel: Now, having said that, I must point out that it is impossible to write a C++ program that is both modular and fast. And that is because of the lack of automatic memory management.
<beach>
soundmodel: C++ may be faster for small benchmarks, but that's pointless. What counts is the performance of real applications.
<random-nick>
c++11 does have reference counter pointers iirc
<beach>
And those are way slower than a tracing garbage collector.
mooseball has quit [Quit: Leaving]
<beach>
Using reference counters is one of the tricks to obtain modularity, but then you lose your performance.
<beach>
Systematically copying objects is another, with the same result.
<johnjaye>
i mean the java runtime has had countless man hours pumped into it
<johnjaye>
that by itself makes it faster than it was
<johnjaye>
so many have been sacrificed... our fallen brothers on the fields of java
<beach>
Java is also statically typed, which makes it easier to write a compiler that generates fast code.
<beach>
soundmodel: Does that answer your question?
NicknameJohn has quit [Ping timeout: 276 seconds]
Gleefre has joined #commonlisp
mgl has joined #commonlisp
lucasta has joined #commonlisp
skin has quit [Ping timeout: 240 seconds]
<soundmodel>
no, because I think a LISP should be <= in speed compared to an OO or an imperative state machine
<soundmodel>
because it should essentially go through the same transitions, but should have better information available about the lifetimes of things
<soundmodel>
so I believed that a Lisp should be able to do a "best possible manual memory management" even if it was automatic
<soundmodel>
because dueto f1(f2(f3(...))) it must have perfect information about scope
<soundmodel>
while the GC is just a necessity in order to enforce those states as pure
mariari has quit [Ping timeout: 265 seconds]
<phoe>
what is the scope of the value produced by (list 1 2 3)?
<soundmodel>
depending on particular optimizations
<soundmodel>
in particular it's not 2x slower like it's usually written to the web
dcb has joined #commonlisp
azimut has quit [Ping timeout: 255 seconds]
<johnjaye>
"bypass all safety checks in order to get optimum performance"
monoidog has joined #commonlisp
<soundmodel>
my question is more about that on a syntactical level it should be far easier to parse Lisp than C
<soundmodel>
because with Lisp one is guaranteed the order of things
<soundmodel>
no dangling pointers etc.
<soundmodel>
or variables that are not used or that are visible to scopes where they're redundant
<pkal>
soundmodel: Until you introduce reader macros.
<soundmodel>
isn't that like preprocessor?
<soundmodel>
sorry I haven't written any CL yet
<johnjaye>
fortunately we have the common lisp cookbook. you can get into the metaphorical kitchen and whip up some tasty lisp stew right away
<pkal>
soundmodel: not quite, because in C the preprocessor is a seperate and restricted language while reader macros allow extending the Lisp parser using Lisp.
<soundmodel>
I still mean that on the very basic leverl f1(f2(f3(...))) should be the fastest way to transform a program to a program counter architecture
<gilberth>
As mentioned earlier, due to the lack of GC a C++ program will resort to either copying or reference counting. And it certainly also cannot compact memory. I would expect that this makes a difference for larger programs that do more than merely crunching numbers. I would very much expect that a Lisp program fares better when it comes to consing and pointer chasing.
<soundmodel>
and that it should be possible to write the same in C, but the C compiler does not force the program to be structured that way
terrorjack has joined #commonlisp
<soundmodel>
rather one can e.g. declare all variables before they're used
jeosol has quit [Quit: Client closed]
<phoe>
it doesn't matter
<soundmodel>
gilberth You mean a Lisp cannot know exactly when a thing isn't used anymore?
<soundmodel>
even if it's supposed to be precisely scoped?
<phoe>
soundmodel: how is (list 1 2 3) scoped? (as I asked above)
<gilberth>
soundmodel: For that you would need to solve the halting problem. Good luck!
<phoe>
CL can and does know when a certain class of things is not used, see
<cpli>
say i have some '(FUN *WITH-FORMS*) but FUN and *WITH-FORMS* are in some package :USE-ME
<cpli>
how could i (EVAL '(FUN *WITH-FORMS*)) ?
<cpli>
if possible, how would i make those symbols available only for EVAL?
<cpli>
i.e. for that one form
<Alfr>
You can't.
pieguy128 has joined #commonlisp
<cpli>
i mean, i could (USE-PACKAGE :USE-ME) and then (UNUSE-PACKAGE :USE-ME) before and after
<Alfr>
Once you have '(fun *w/forms*) and when those symbols are in the wrong package, then it's already too late.
<cpli>
true.
<cpli>
oh, i'm writing a reader tho, which is why i'm dealing with this at all
<cpli>
and it interns for the right package..
<Alfr>
If you're writing a reader anyway, nothing prevents you reading whatever you desire and then call (intern name the-package-you-really-like).
<Alfr>
cpli, and use-package likely won't do what you intend, especially if it's nested in some other forms, the reading part is long over before un-/use-package are run.
Gleefre has quit [Remote host closed the connection]