freenode/lisp - IRC Chatlog
Search
11:24:21
p_l
pjb: there's a story (legend or truth, who knows) that some intern at Google melted a rack while fuzzing libpng...
11:26:15
p_l
sounds like common problem whenever someone touches x509 (and that includes big commercial players)
11:27:37
p_l
I do as well, but ASN.1 shows in so many places that having a single, good implementation that is portable it would be great
11:28:18
p_l
shrdlu68: I often find myself thinking that OSI protocol stack etc. was probably better for *today* even if it was too heavy in the past
11:28:48
shrdlu68
p_l: I'll put cl-tls on github i the next hour or so. The ASN.1 code so far is mostly a prototype, but I'd like your opinion on it.
11:29:38
shrdlu68
It's not as comprehensive as I'd like at this point, but that's something I'll work on.
11:31:21
shrdlu68
I noticed the work I was doing was something that could be automatable. Mostly iterating over an octet vector while ensuring types match, lengths are okay, etc.
11:31:26
p_l
shrdlu68: there's a lot of that done already in cl-snmp, but ideally it would be a separate library/toolkit
12:29:50
acow
can i ask what the values of (subtypep 'integer 'signed-byte) and (subtypep 'signed-byte 'integer should be?)
12:34:46
acow
Yep, saw the hyperspec, but I'm just concerned that I'm either going crazy or its too late at night...
12:35:53
beach
I mean, that behavior on the part of SBCL is correct according to the Common Lisp HyperSpec.
12:36:52
beach
"The atomic type specifier signed-byte denotes the same type as is denoted by the type specifier integer"
12:53:49
shka_
secondly, i think that your code is more or less correct, but now i have to check what sbcl does here
14:39:13
drmeister
beach: In your approach to fast GF dispatch - what needs to be considered in a multithreaded environment? (1) Generic function call-history needs to be updated atomically. (2) The funcallable-instance function needs to be updated so that it reflects the most recent generic-function call history?
14:40:16
drmeister
This was my big motivator for incorporating multi-threading into Clasp now - the fast GF dispatch issues.
14:59:02
drmeister
froggey: Hello - and you were able to run the DOOM C source code through it and the product runs?
15:09:00
froggey
I wrote a new SDL backend, which doom links against. the SDL backend bolts on to some graphics syscalls provided by the runtime
15:09:46
froggey
and the runtime implements graphics using either mezzano's native gui or lispbuilder-sdl on other implementations
15:10:29
froggey
libsdl - https://www.libsdl.org/ a C library that provides a basic platform independent graphics api
15:12:16
froggey
the translator (the program that converts LLVM bitcode files to CL source) is written in C++ because I wanted to use LLVM's C++ API. I found the C API is missing bits and pieces
15:13:10
drmeister
So you read bitcode and then iterate through the functions/basic-blocks/instructions and write out CL?
15:16:18
drmeister
In terms of the level of difficulty of supporting it vs generating CL for the rest of llvm-IR?
15:17:09
froggey
I'm not sure it's possible to implement DWARF-style unwinding directly, but there's an LLVM pass for converting invoke instructions to calls to setjmp/longjmp
15:18:30
froggey
to get exceptions working I think I'd have to make it run that pass, implement whatever runtime requirements that pass has, and get libc++abi running
15:19:29
froggey
those would be the major tasks, I probably missed something & haven't looked into the details
15:22:45
pjb
There's a difference between signed-byte and integer however; signed-byte is a type, while integer is a system-class.
15:23:58
drmeister
https://docs.google.com/document/d/1Bub1bV_IIDZDhdld-zTULE2Sv0KNbOXk33KOW8o0aR4/edit#heading=h.whtnf7s9ugr9
15:24:26
froggey
drmeister: whoops, it was written by the PNaCl people, not emscripten. afaik it's part of their llvm fork and not in the main llvm repo
15:24:52
froggey
https://chromium.googlesource.com/native_client/pnacl-llvm/+/master/lib/Transforms/NaCl/PNaClSjLjEH.cpp
15:41:34
froggey
it's a bit complicated. were you thinking of using it for something? I can't think of any use for a transform like that aside from weird llvm backends
15:49:36
drmeister
No - I'm interested in learning more about how people deal with C++ exception handling in different contexts. It's a less central feature of C++ and it's complicated and so it doesn't get much support.
15:56:24
fsmunoz
Is anyone using gmane for mailing lists hosted by common-lisp.net? I received a 550 Reverse DNS verification failed and I'm trying to see if it's something on my end.
17:22:56
gigamonkey
nyef: Yeah, they were DEFPARSER and DEFTERM. I eventually found my way to the font-lock-add-keywords gorp and added a custom rule. Maybe I can figure out something more clever than that later.
18:21:39
phoe
cheryllium: "Of course, Common Lisp is not designed to accommodate multiprocessing, and it would take more than uniting of the function and value namespaces to allow Common Lisp to seriously support multiprocessing."
18:30:16
Bike
it, of course, did take more work than namespaces or whatever, you need locks and shit
18:34:17
shrdlu68_
I've finally gotten cl-tls to a semblance of a working ssl implementation. Still a lot of work to do: https://github.com/shrdlu68/cl-tls
18:36:11
shrdlu68_
Since it's still in early dev, there's bound to be bugs and quirky behavior. Let me know.
18:45:39
trocado
I'm running some time-intensive functions and I notice that sbcl only takes up 25% cpu... Any ideias on how to make it use more?
18:48:43
phoe
Bike: https://www.howtogeek.com/wp-content/uploads/2013/08/cpu-and-memory-usage-in-task-manager.png
18:51:40
jurov
if you can split the problem into 4 or more datasets that can be ran concurrently, do that
18:54:27
Bike
you think about what parts of your program are actually required to be sequential, and set it up so that the expensive stuff that isn't can run nonsequentially.
18:57:10
trocado
at first glance the time-consuming parts must be sequential, it seems... it's analysis on a large data-set
19:29:38
cheryllium
I'm stumped. ASDF cannot find a .asd file in the current working directory, can anyone suggest what to try to debug this?
19:31:36
cheryllium
I guess I shouldn't have assumed it would fall back to cwd if it wasn't found in the paths
19:36:57
cheryllium
I did actually... but was intimidated by it (this is entirely my problem, of course)
19:37:29
cheryllium
this is the page I ended up on, I wasn't sure which part was relevant to me: https://common-lisp.net/project/asdf/asdf.html#Controlling-where-ASDF-searches-for-systems
19:42:01
Grue`
read this instead https://common-lisp.net/project/asdf/asdf.html#Configuring-ASDF-to-find-your-systems
19:42:27
Grue`
just make it search under :tree and never worry about it not finding your systems again
19:45:09
cheryllium
Grue`: It says "In earlier versions of ASDF, the system source registry was configured using a global variable, asdf:*central-registry*"
19:58:23
jcarr
I'm having trouble getting asdf working. My current directory (as #P"./") is in the *central-registry*
19:58:50
jcarr
I have the .asd file, and two lisp files, they're all in the same directory (my current one)
20:01:55
jcarr
There's some extras in here but my *central-registry* is (#P"./" "./" "." #P"/home/xxx/quicklisp/quicklisp/")
20:06:35
jcarr
;;;; scss.asd (asdf:defsystem #:scss :description "Scss compiler in common lisp" :author "... <...@gmail.com>" :license "MIT" :depends-on (#:smug) :serial t :components ((:file "package") (:file "scss")))
20:06:52
PuercoPop
jcarr: I don't think it is a good idea to put #P"./" into the ASDF central-registry.
20:08:13
shrdlu68
jcarr: Create a soft link to your project directory within a direcotyr that is in *central-registry*
20:09:29
PuercoPop
they linked you the ADSF manual. Basically (:tree "/path/to/theparent/dir/of/all/the/other/folders") or (:directory "/home/puercopop/.emacs.d/site-lisp/sly/slynk/")
20:12:01
PuercoPop
or if you prefer to use the deprecated central-register write the absolute path instead instead of a relative one.
20:25:58
Grue`
jcarr: https://common-lisp.net/project/asdf/asdf.html#Configuring-ASDF-to-find-your-systems
20:37:35
cheryllium
what would you say is the easiest way to remove a list of keys from an alist? (as in, given a list of keys and an alist, return that alist with all entries matching those keys removed)
20:38:00
cheryllium
I found the remove functions for lists, was wondering if there is something specialized for alists however since they are so common?
20:38:59
cheryllium
To "show my effort" i suppose, I found this answer: http://stackoverflow.com/questions/8703479/common-lisp-remove-a-pair-in-an-alist-via-setq-and-assoc
20:39:23
cheryllium
The only difference here is I have a list of keys I want to filter out, so to speak
20:40:09
cheryllium
(er - just the remove part of that answer i mean, I know not to use setf and I don't wish to destroy/overwrite the original list)
20:42:39
mazoe
what’s the format magic to print a readable keyword? (e.g. (format t “~A” :bla) prints “BLA” and I want “:bla”)
20:42:51
Bike
for multiple i'd do (loop for pair in alist unless (find (car pair) keys-to-remove) collect pair)
20:52:13
cheryllium
not to prematurely optimize but does that match up performance-wise as well, do you know?
20:52:48
Grue`
if you want to optimize, make bad-keys a hash-table or something (if you have a lot of bad keys)
20:53:12
cheryllium
also, I'm now getting an error "The function STREAM is undefined" but I thought this was a built-in function?
20:55:32
cheryllium
ah.. I assumed it was to create a stream for i/o, for instance when calling with-open-file
20:57:02
cheryllium
I guess my question is, how to take a filename and create a stream object from it?
21:11:59
phoe
everyone - mazoe is the amazing guy today, for he created a mapping between symbols in the CL package and their respective CLHS and *CLUS* pages
21:54:19
phoe
pjb: there was this article of yours methinks where you showed how to run a LISP 1.5 theorem prover on modern Common Lisp
22:10:22
phoe
minion: memo for mazoe: https://www.informatimago.com/develop/lisp/com/informatimago/small-cl-pgms/wang.html