p_l 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/> | ASDF 3.3.4
karlosz has joined #lisp
pfdietz has quit [Ping timeout: 260 seconds]
rumbler31 has joined #lisp
rumbler31 has quit [Ping timeout: 265 seconds]
random-nick has quit [Ping timeout: 255 seconds]
buffergn0me has joined #lisp
makomo_ has quit [Quit: WeeChat 2.4]
<scymtym> Odin-: thank you
karlosz has quit [Quit: karlosz]
epony has quit [Quit: sysupgrade]
epony has joined #lisp
prince1 has joined #lisp
prince1 has quit [Ping timeout: 258 seconds]
rumbler31 has joined #lisp
Frobozz has joined #lisp
rumbler31 has quit [Ping timeout: 240 seconds]
Frobozz has quit [Quit: quit]
vidak` has quit [Ping timeout: 248 seconds]
vidak` has joined #lisp
X-Scale` has joined #lisp
gravicappa has joined #lisp
X-Scale has quit [Ping timeout: 255 seconds]
X-Scale` is now known as X-Scale
gko_ has joined #lisp
KDr22 has joined #lisp
ebzzry has joined #lisp
bitmapper has quit [Ping timeout: 255 seconds]
patrixl has joined #lisp
rumbler31 has joined #lisp
rumbler31 has quit [Ping timeout: 258 seconds]
rwcom has joined #lisp
rwcom has quit [Ping timeout: 255 seconds]
rwcom has joined #lisp
akoana has joined #lisp
gravicappa has quit [Ping timeout: 255 seconds]
ebrasca has quit [Remote host closed the connection]
clothespin has joined #lisp
shifty has quit [Ping timeout: 260 seconds]
prince1 has joined #lisp
prince1 has quit [Ping timeout: 260 seconds]
rumbler31 has joined #lisp
rumbler31 has quit [Ping timeout: 240 seconds]
Kevslinger has quit [Quit: Connection closed for inactivity]
theruran has quit [Quit: Connection closed for inactivity]
<Oladon> Odin-: You on Win10?
shifty has joined #lisp
shifty has quit [Ping timeout: 258 seconds]
shifty has joined #lisp
subham_ has joined #lisp
<beach> Good morning everyone!
dddddd has quit [Ping timeout: 260 seconds]
rwcom5 has joined #lisp
rwcom has quit [Ping timeout: 258 seconds]
rwcom5 is now known as rwcom
hsaziz has joined #lisp
X-Scale` has joined #lisp
rumbler31 has joined #lisp
X-Scale has quit [Ping timeout: 240 seconds]
X-Scale` is now known as X-Scale
ebzzry has quit [Ping timeout: 240 seconds]
rumbler31 has quit [Remote host closed the connection]
rumbler31 has joined #lisp
subham_ has quit [Remote host closed the connection]
subham_ has joined #lisp
mister_m has quit [Remote host closed the connection]
slyrus has joined #lisp
buffergn0me has quit [Ping timeout: 240 seconds]
verisimilitude has left #lisp ["ERC (IRC client for Emacs 24.5.1)"]
subham_ has quit [Remote host closed the connection]
subham has joined #lisp
orivej has joined #lisp
oxum has quit [Ping timeout: 246 seconds]
oxum_ has joined #lisp
slyrus_ has joined #lisp
buffergn0me has joined #lisp
slyrus__ has quit [Ping timeout: 240 seconds]
prince1 has joined #lisp
slyrus has quit [Quit: Leaving]
prince1 has quit [Ping timeout: 260 seconds]
Bourne has joined #lisp
_whitelogger has joined #lisp
brutalist has joined #lisp
ebzzry has joined #lisp
brutalist has quit [Quit: Textual IRC Client: www.textualapp.com]
vlatkoB has joined #lisp
narimiran has joined #lisp
ebzzry has quit [Ping timeout: 260 seconds]
Inline has quit [Ping timeout: 252 seconds]
subham has quit [Read error: Connection reset by peer]
sauvin has joined #lisp
cyraxjoe has joined #lisp
Bike has quit [Quit: Lost terminal]
buffergn0me has quit [Ping timeout: 240 seconds]
ebzzry has joined #lisp
MightyJoe has quit [Ping timeout: 260 seconds]
asarch has joined #lisp
gigetoo has quit [Ping timeout: 258 seconds]
gigetoo has joined #lisp
karlosz has joined #lisp
_whitelogger has joined #lisp
madrik has quit [Ping timeout: 260 seconds]
v88m has quit [Remote host closed the connection]
* asarch whispers: "The Simpsons, season 4, chapter #21. Shhhhh..."
<asarch> D'oh! Wrong post. Sorry, sorry
<asarch> Is there any way to make an overflow in a REPL?
<asarch> I mean, to "eat" all the memory available?
prince1 has joined #lisp
<no-defun-allowed> (loop collect (list))
<beach> (loop collect 0) even simpler
<Shinmera> (make-array 1000000000000)
<asarch> Can you prevent to fall in that situation?
<beach> asarch: Not unless you know how to solve the halting problem.
<asarch> Oh :-(
<beach> asarch: In other words, it is an undecidable problem.
<Shinmera> Even if you could determine the loop, it's not clear you could determine how to mitigate the failure.
<beach> asarch: Do you know about Turing completeness?
rippa has joined #lisp
<asarch> No, I don't
<beach> That's fundamental knowledge when it comes to programming languages and their power.
<asarch> Is it related to the "Turing Test"?
<beach> No.
<beach> I suggest you read up on "language theory".
prince1 has quit [Ping timeout: 258 seconds]
<asarch> I México we usually know about it when we take classes about compilers (in some universities)
<asarch> Yacc and Bison as far I know
<asarch> I don't know exactly which one of them is inspired in Lisp
<asarch> ...as far I know
<no-defun-allowed> Those are unrelated to Turing completeness, and I don't think most Lisp users use either parser or lexer generators.
<beach> Language theory is a branch of theoretical computer science.
<asarch> Any good book for a dummy like me?
<asarch> In the "The Land of Lisp" book they say it is very "dangerous" to leave the REPL exposed to the real world because someone could type malicious code
<beach> Introduction to Automata Theory, Languages, and Computation. By Hopcroft, Motwani, and Ullman.
<beach> Apparently available as a PDF.
<asarch> That's great!
<beach> Definitely.
<asarch> I just was wondering about those malicious code. I guess someone could play with (with-open-file) and try to do some zero division operations, I guess
<beach> It discusses the three major language processors, namely finite automata, pushdown automata, and Turning machines. And it discusses the associated language categories for those processors.
<beach> asarch: Unless you want to spend your software career doing silly stuff like designing web pages, you need to know some theory.
<asarch> "Turing" or "Turning"?
<beach> Alan Turing.
<beach> Sorry.
<asarch> Thank you
<asarch> I'll get the book
<pjb> asarch: it's just like any shell.
<pjb> asarch: don't leave your terminal without locking it.
<asarch> I see
<pjb> and remember to (lock-repl) before going to fetch a coffee…
Lord_of_Life has quit [Ping timeout: 255 seconds]
<asarch> Nice!
Lord_of_Life has joined #lisp
* no-defun-allowed C-c C-cs pjb
<asarch> One stupid question: that book, is it related to the Prolog programming language?
<asarch> When I was learning PostgreSQL and the relationships, a fellow from #NetBSD told I should learn Prolog or Lisp in order to "get the most" of the SQL design
<beach> asarch: The book I showed you? Sure, it is related to every programming language (or nearly so).
notzmv has quit [Ping timeout: 240 seconds]
<no-defun-allowed> I don't know if NetBSD weenies are going to necessarily be good sources on what paradigms relate to what; but Prolog is probably closer to SQL.
patrixl has left #lisp [#lisp]
<no-defun-allowed> It may also be a stretch to say that SQL had a design; <http://www.pipeline.com/~hbaker1/letters/CACM-RelationalDatabases.html> claims that it was just a codification of what databases did then.
<asarch> Thank you!
<asarch> Thank you very much guys!
<asarch> Do you know Prolog?
<pjb> Any programmer should know some prolog…
Bourne has quit [Ping timeout: 240 seconds]
shangul has joined #lisp
<asarch> Oh, that's great
buffergn0me has joined #lisp
buffergn0me has quit [Remote host closed the connection]
<edgar-rft> Do you know Prolog? - No? - Then you might know my brother, he doesn't know Polog neither.
<asarch> Thank you guys. Have a nice day. See you later :-)
<asarch> (bed-time)
asarch has quit [Quit: Leaving]
v88m has joined #lisp
<pjb> only if (defun bed-time () (lock-repl) …) !
tessier has joined #lisp
tessier has quit [Changing host]
tessier has joined #lisp
v88m has quit [Ping timeout: 255 seconds]
gko_ has quit [Ping timeout: 258 seconds]
goFasterSteve has joined #lisp
goFasterSteve has quit [Client Quit]
narimiran has quit [Ping timeout: 260 seconds]
sz0 has quit [Quit: Connection closed for inactivity]
kerx has joined #lisp
shka_ has joined #lisp
shifty has quit [Ping timeout: 240 seconds]
FreeBirdLjj has joined #lisp
illili has joined #lisp
kerx has quit [Ping timeout: 260 seconds]
akoana has quit [Quit: leaving]
prince1 has joined #lisp
FreeBirdLjj has quit [Remote host closed the connection]
jonatack has quit [Quit: jonatack]
FreeBirdLjj has joined #lisp
prince1 has quit [Ping timeout: 260 seconds]
FreeBirdLjj has quit [Ping timeout: 240 seconds]
dreamcompiler_ has joined #lisp
dreamcompiler has quit [Read error: Connection reset by peer]
dreamcompiler_ is now known as dreamcompiler
shangul has quit [Ping timeout: 255 seconds]
dale has quit [Quit: My computer has gone to sleep]
ggole has joined #lisp
kerx has joined #lisp
kerx has quit [Client Quit]
_whitelogger has joined #lisp
frodef has quit [Ping timeout: 265 seconds]
FreeBirdLjj has joined #lisp
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #lisp
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #lisp
prince1 has joined #lisp
FreeBirdLjj has quit [Ping timeout: 265 seconds]
frodef has joined #lisp
ArthurStrong has joined #lisp
prince1 has quit [Ping timeout: 265 seconds]
prince1 has joined #lisp
karlosz has quit [Quit: karlosz]
random-nick has joined #lisp
prince1 has quit [Ping timeout: 260 seconds]
_whitelogger has joined #lisp
prince1 has joined #lisp
cosimone has joined #lisp
FreeBirdLjj has joined #lisp
cosimone has quit [Client Quit]
cosimone has joined #lisp
prince1 has quit [Ping timeout: 240 seconds]
lavaflow has quit [Ping timeout: 260 seconds]
FreeBirdLjj has quit [Ping timeout: 258 seconds]
cosimone has quit [Remote host closed the connection]
cosimone has joined #lisp
<Odin-> Oladon: I have Win10 on a VM.
Inline has joined #lisp
jonatack has joined #lisp
narimiran has joined #lisp
cosimone has quit [Remote host closed the connection]
cosimone has joined #lisp
vhost- has quit [Ping timeout: 258 seconds]
gko_ has joined #lisp
sz0 has joined #lisp
orivej has quit [Ping timeout: 260 seconds]
cosimone_ has joined #lisp
cosimone has quit [Ping timeout: 240 seconds]
cosimone_ has quit [Ping timeout: 240 seconds]
cosimone_ has joined #lisp
cosimone has joined #lisp
cosimone_ has quit [Ping timeout: 240 seconds]
dddddd has joined #lisp
oxum has joined #lisp
oxum_ has quit [Ping timeout: 265 seconds]
gravicappa has joined #lisp
shangul has joined #lisp
shangul has quit [Remote host closed the connection]
shangul has joined #lisp
cosimone_ has joined #lisp
cosimone has quit [Ping timeout: 255 seconds]
cosimone_ has quit [Client Quit]
<scymtym> Odin-: thanks again. here is where your effort helped: https://github.com/scymtym/utilities.print-tree/issues/1
<Odin-> Glad to be of help. :)
FreeBirdLjj has joined #lisp
prince1 has joined #lisp
FreeBirdLjj has quit [Ping timeout: 240 seconds]
prince1 has quit [Ping timeout: 240 seconds]
glv has joined #lisp
Bike has joined #lisp
glv has quit [Client Quit]
madrik has joined #lisp
Pyromancer2198 has joined #lisp
<Pyromancer2198> Hi
<Pyromancer2198> anyone here?
Pyromancer2198 has left #lisp [#lisp]
<Odin-> Patience at its finest.
<madrik> Odin-: Yes
FreeBirdLjj has joined #lisp
ArthurStrong has quit [Quit: leaving]
FreeBirdLjj has quit [Ping timeout: 255 seconds]
libertyprime has joined #lisp
_paul0 has joined #lisp
paul0 has quit [Ping timeout: 252 seconds]
FreeBirdLjj has joined #lisp
nicdev has quit [Ping timeout: 240 seconds]
FreeBirdLjj has quit [Remote host closed the connection]
FreeBirdLjj has joined #lisp
krid has joined #lisp
FreeBirdLjj has quit [Remote host closed the connection]
Bourne has joined #lisp
libertyprime has quit [Read error: Connection reset by peer]
FreeBirdLjj has joined #lisp
cods has quit [Ping timeout: 260 seconds]
cods has joined #lisp
libertyprime has joined #lisp
efm has quit [Remote host closed the connection]
efm has joined #lisp
lucasb has joined #lisp
shangul has quit [Ping timeout: 255 seconds]
cosimone has joined #lisp
efm has quit [Ping timeout: 255 seconds]
efm has joined #lisp
libertyprime has quit [Read error: Connection reset by peer]
efm has quit [Ping timeout: 260 seconds]
hsaziz has quit [Ping timeout: 255 seconds]
shangul has joined #lisp
libertyprime has joined #lisp
grewal has quit [Quit: leaving]
efm has joined #lisp
FreeBirdLjj has quit [Remote host closed the connection]
libertyprime has quit [Read error: No route to host]
rwcom3 has joined #lisp
cosimone has quit [Remote host closed the connection]
rwcom has quit [Ping timeout: 240 seconds]
rwcom3 is now known as rwcom
cosimone has joined #lisp
libertyprime has joined #lisp
guna_ has joined #lisp
guna has quit [Ping timeout: 260 seconds]
prince1 has joined #lisp
libertyprime has quit [Read error: No route to host]
Kevslinger has joined #lisp
prince1 has quit [Ping timeout: 258 seconds]
libertyprime has joined #lisp
Inline has quit [Ping timeout: 272 seconds]
libertyprime has quit [Read error: No route to host]
lavaflow has joined #lisp
libertyprime has joined #lisp
gareppa has joined #lisp
ebrasca has joined #lisp
<ebrasca> Hi
<beach> Hello ebrasca.
cosimone has quit [Quit: Terminated!]
<ebrasca> How do debug when someting don't like to load in asdf?
<ebrasca> Recently I get 'System "next/ring" not found' when loading :next .
<ebrasca> next/ring is defined in .asd file
<ebrasca> And it loaded fine before some update.
ebzzry has joined #lisp
<ebrasca> beach: How are you doing?
<beach> Working on SICL code generation. There are some IR instructions that are non-trivial to turn into final code, because they modify the dynamic environment and the stack. But once I am done with those, code generation should be complete. I then need to figure out how to include the garbage collector and stuff like that in the final executable.
<beach> ebrasca: Sorry you are having problems. Kind of hard to debug with the information you are able to provide.
z147 has joined #lisp
libertyprime has quit [Read error: No route to host]
libertyprime has joined #lisp
sammich has quit [Read error: Connection reset by peer]
pjb has quit [Remote host closed the connection]
pjb has joined #lisp
Jeanne-Kamikaze has joined #lisp
sammich has joined #lisp
varjag has joined #lisp
libertyprime has quit [Read error: No route to host]
sammich has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
asarch has joined #lisp
libertyprime has joined #lisp
sammich has joined #lisp
flip214 has quit [Read error: Connection reset by peer]
orivej has joined #lisp
flip214 has joined #lisp
ebzzry has quit [Read error: Connection reset by peer]
libertyprime has quit [Read error: No route to host]
hiroaki_ has joined #lisp
brutalist has joined #lisp
brutalist has quit [Client Quit]
libertyprime has joined #lisp
gko_ has quit [Ping timeout: 240 seconds]
brutalist has joined #lisp
brettgilio has quit [Ping timeout: 240 seconds]
brettgilio has joined #lisp
ebzzry has joined #lisp
narimiran has quit [Ping timeout: 265 seconds]
narimiran has joined #lisp
libertyprime has quit [Read error: Connection reset by peer]
shangul has quit [Ping timeout: 260 seconds]
prince1 has joined #lisp
libertyprime has joined #lisp
v88m has joined #lisp
slyrus has joined #lisp
prince1 has quit [Ping timeout: 260 seconds]
Bourne has quit [Ping timeout: 258 seconds]
<ebrasca> beach: I don't know how to seach more info and I like to start/hack next browser.
<beach> I understand, but I don't know how to help you.
krid has quit [Ping timeout: 260 seconds]
<pjb> ebrasca: you'd have to know asdf. You can learn asdf by exploring the debugging stack frames? (handler-bind ((error #'invoke-debugger)) (asdf:load-system :next))
<pjb> ebrasca: an alternative is to 1- read asdf documentation. 2- read asdf sources.
<pjb> so 2 alternatives for the price of 1.
z147 has quit [Remote host closed the connection]
<ebrasca> 3 wait untils it fixes itself
<pjb> that's a way too.
z147 has joined #lisp
libertyprime has quit [Ping timeout: 260 seconds]
libertyprime has joined #lisp
z147 has quit [Client Quit]
brutalist has quit [Quit: Textual IRC Client: www.textualapp.com]
gareppa has quit [Quit: Leaving]
caltelt has joined #lisp
libertyprime has quit [Read error: Connection reset by peer]
narimiran has quit [Quit: leaving]
libertyprime has joined #lisp
dddddd has quit [Ping timeout: 260 seconds]
nicdev has joined #lisp
frodef has quit [Ping timeout: 265 seconds]
lemoinem is now known as Guest25755
Guest25755 has quit [Killed (card.freenode.net (Nickname regained by services))]
lemoinem has joined #lisp
shangul has joined #lisp
<flip214> 4 pay someone to fix it
libertyprime has quit [Ping timeout: 256 seconds]
libertyprime has joined #lisp
ebrasca has quit [Remote host closed the connection]
oxum has quit [Quit: Leaving...]
asarch has quit [Quit: Leaving]
oxum has joined #lisp
frodef has joined #lisp
shka_ has quit [Ping timeout: 260 seconds]
shifty has joined #lisp
caltelt has quit [Ping timeout: 240 seconds]
<phoe> I have an ASDF system. Is there any sensible way of getting the commit ID of the Git repository the ASDF system is in?
<phoe> (Or any other value like NIL if the system is not in a repository.)
libertyprime has quit [Read error: Connection reset by peer]
<Shinmera> phoe: (legit:current-commit (legit:init (asdf:system-source-directory :legit)))
MichaelRaskin has joined #lisp
<Shinmera> or actually even just (legit:current-commit (asdf:system-source-directory :legit))
<phoe> Shinmera: woah
<phoe> do you really have a library for everything
<Shinmera> Unfortunately not
<eta> (ext:increase-popularity-of :cl)
libertyprime has joined #lisp
bitmapper has joined #lisp
zaquest has quit [Remote host closed the connection]
krid has joined #lisp
shangul has quit [Ping timeout: 240 seconds]
shka_ has joined #lisp
smokeink has joined #lisp
smokeink has quit [Client Quit]
Codaraxis_ has quit [Quit: Leaving]
libertyprime has quit [Read error: No route to host]
libertyprime has joined #lisp
Necktwi has quit [Remote host closed the connection]
prince1 has joined #lisp
libertyprime has quit [Read error: No route to host]
luni has joined #lisp
prince1 has quit [Ping timeout: 260 seconds]
libertyprime has joined #lisp
zaquest has joined #lisp
gravicappa has quit [Ping timeout: 258 seconds]
libertyprime has quit [Read error: Connection reset by peer]
interruptinuse has quit [Quit: ZNC - https://znc.in -- bye bye!]
Lord_of_Life_ has joined #lisp
interruptinuse has joined #lisp
ebzzry has quit [Ping timeout: 258 seconds]
Lord_of_Life has quit [Ping timeout: 258 seconds]
Lord_of_Life_ is now known as Lord_of_Life
libertyprime has joined #lisp
gigetoo has quit [Ping timeout: 258 seconds]
shka_ has quit [Ping timeout: 255 seconds]
nullniverse has joined #lisp
gigetoo has joined #lisp
libertyprime has quit [Read error: No route to host]
interruptinuse has quit [Remote host closed the connection]
interruptinuse has joined #lisp
libertyprime has joined #lisp
Inline has joined #lisp
libertyprime has quit [Read error: Connection reset by peer]
Involuntary has joined #lisp
libertyprime has joined #lisp
buffergn0me has joined #lisp
<phoe> Is there any trivial-* system for creating thread-safe hash tables?
luni has left #lisp [#lisp]
Jeanne-Kamikaze has quit [Ping timeout: 256 seconds]
shifty has quit [Ping timeout: 260 seconds]
<phoe> Or should I use bt:with-lock-held for cross-implementation support?
shifty has joined #lisp
cosimone has joined #lisp
<aeth> it would be nice to see more custom hash tables...
ggole has quit [Quit: Leaving]
libertyprime has quit [Read error: Connection reset by peer]
vhost- has joined #lisp
vhost- has quit [Changing host]
vhost- has joined #lisp
<White_Flame> do enough implementations have thread-safe hash tables to warrant a trivial-* lib?
<Bike> trivial-garbage has weak hash tables
<Bike> er
<Bike> that was a silly thing to say
<White_Flame> phoe: beyond a simple with-lock-held, ideally a threadsafe hashtable would allow simultaneous readers as long as there's no writer
fanta1 has joined #lisp
libertyprime has joined #lisp
<pjb> Honestly, I never needed thread safe hash-tables. I need thread safe *my-own-data-structure* or something. I need mailboxes, monitors, stuff like that…
<pjb> actors
<phoe> White_Flame: seems like SBCL, CCL, ECL, and LW have these
<phoe> don't know about others
<phoe> Bike: I need strong tables tho
shifty has quit [Ping timeout: 256 seconds]
shifty has joined #lisp
TheWild has joined #lisp
libertyprime has quit [Read error: No route to host]
libertyprime has joined #lisp
vlatkoB has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
dumbintel has joined #lisp
dale has joined #lisp
cods has quit [Ping timeout: 258 seconds]
cods has joined #lisp
prince1 has joined #lisp
jonatack has quit [Ping timeout: 240 seconds]
prince1 has quit [Ping timeout: 240 seconds]
libertyprime has quit [Read error: Connection reset by peer]
libertyprime has joined #lisp
akoana has joined #lisp
libertyprime has quit [Read error: No route to host]
fanta1 has quit [Quit: fanta1]
orivej has quit [Ping timeout: 258 seconds]
libertyprime has joined #lisp
dddddd has joined #lisp
rippa has quit [Quit: {#`%${%&`+'${`%&NO CARRIER]
kingcons has joined #lisp
mikecheck has joined #lisp
libertyprime has quit [Read error: No route to host]
libertyprime has joined #lisp
seok has quit [Remote host closed the connection]
GuerrillaMonkey has joined #lisp
Involuntary has quit [Ping timeout: 255 seconds]
libertyprime has quit [Read error: Connection reset by peer]
libertyprime has joined #lisp
shifty has quit [Ping timeout: 255 seconds]
shifty has joined #lisp
buffergn0me has quit [Ping timeout: 240 seconds]
libertyprime has quit [Read error: No route to host]
dumbintel has quit [Ping timeout: 256 seconds]
libertyprime has joined #lisp
shifty has quit [Ping timeout: 260 seconds]
Involuntary has joined #lisp
GuerrillaMonkey has quit [Ping timeout: 255 seconds]
libertyprime has quit [Read error: No route to host]
dumbintel has joined #lisp
libertyprime has joined #lisp
z147 has joined #lisp
prince1 has joined #lisp
nullniverse has quit [Quit: Leaving]
varjag has quit [Quit: ERC (IRC client for Emacs 26.1)]
ebrasca has joined #lisp
prince1 has quit [Ping timeout: 240 seconds]
z147 has quit [Ping timeout: 240 seconds]
<phoe> I have arbitrary u8 vectors that can be from 1 to 255 bytes in length. What would be the best way to use them as keys in a hash table? EQUALP?
<phoe> I could in theory convert them into integers, but I have no idea if that'll work well for 255-byte-long bignums.
karlosz has joined #lisp
<pjb> eql would work well…
<pjb> and be fast.
<phoe> eql? you mean for bignums?
red-dot has quit [Quit: Going offline, see ya! (www.adiirc.com)]
<pjb> (let ((k1 (make-array 3 :element-type '(unsigned-byte 8))) (k2 (make-array 3 :element-type '(unsigned-byte 8))) (h (make-hash-table :test 'eql))) (setf (gethash k1 h) 'hello (gethash k2 h) 'world) (gethash k1 h)) #| --> hello ; t |#
<pjb> works nicely.
<phoe> I want to compare by contents, not by identity.
<phoe> (eql (coerce '(1 2 3 4 5) '(vector (unsigned-byte 8))) (coerce '(1 2 3 4 5) '(vector (unsigned-byte 8)))) ;=> NIL
frgo has quit []
<pjb> Ok then equalp.
libertyprime has quit [Read error: Connection reset by peer]
<pjb> arrays are equal only if they are eq.
<pjb> (unless they're strings or bit-vectors in which case they're compared element-by-element with eql).
<phoe> I kind of wonder what would work better - bignums with eql or vectors with equalp.
<pjb> define better.
<phoe> that's the hard part
<pjb> depends on the hash function used by the implementation.
<phoe> right - let me benchmark that, then
z147 has joined #lisp
libertyprime has joined #lisp
chipolux has quit [Quit: chipolux]
GuerrillaMonkey has joined #lisp
Involuntary has quit [Ping timeout: 258 seconds]
|Pirx| has joined #lisp
Involuntary has joined #lisp
<no-defun-allowed> Is it standard to be able to write (declare ((complex-type-specifier ...) variables ...)), or do I have to write (declare (type (complex-type-specifier ...) variables ...))?
GuerrillaMonkey has quit [Ping timeout: 258 seconds]
<phoe> http://clhs.lisp.se/Body/d_type.htm, first thing in Notes
libertyprime has quit [Read error: Connection reset by peer]
<phoe> <insert obligatory comment about notes not being normative>
<no-defun-allowed> Last time I checked, ABCL did not accept the former, because the declaration was not a symbol.
<no-defun-allowed> Right, thanks phoe.
<phoe> but, yeah, the top of the page mentions the same thing.
<phoe> then that's an ABCL conformance bug
TheWild has quit [Quit: TheWild]
<no-defun-allowed> Right then.
<phoe> as an additional exercise in code that no sane person would write, you could check (defun foo (x) (declare (#.(find-class 'integer) x)) (+ x x))
<phoe> class objects are valid type specifiers after all!
* phoe mic drops, goes to sleep
<no-defun-allowed> Take care.
dumbintel has quit [Ping timeout: 255 seconds]