2015-03-21T00:01:51Z dlyund quit (Quit: leaving) 2015-03-21T00:03:34Z Joreji joined #lisp 2015-03-21T00:04:01Z emaczen: ,(type-of (make-array '(2 2) :element-type 'integer)) 2015-03-21T00:04:05Z jlongster quit (Ping timeout: 244 seconds) 2015-03-21T00:04:17Z Joreji quit (Read error: No route to host) 2015-03-21T00:04:20Z Bicyclidine: afleck: i think #clfswm might exist. 2015-03-21T00:04:28Z Bicyclidine: nevermind. 2015-03-21T00:04:30Z emaczen: How do I evaluate that here? I'm wondering why I keep getting a simple-array of T rather than integer 2015-03-21T00:04:42Z Bicyclidine: we don't have an eval bot. 2015-03-21T00:05:03Z Bicyclidine: probably upgrading, though. 2015-03-21T00:05:23Z Bicyclidine: since you specified integer, that includes bignums, so there's little point in an implementation having arrays that can only hold integers. 2015-03-21T00:06:03Z Bicyclidine: if you do (upgraded-array-element-type 'integer) you'll probably get T. 2015-03-21T00:06:29Z przl joined #lisp 2015-03-21T00:06:59Z gklimowicz quit (Ping timeout: 250 seconds) 2015-03-21T00:08:14Z nyef: That sounds about right. INTEGER is not one of the mandated specialized array types. 2015-03-21T00:08:47Z Bicyclidine: *can hold any integers and no non-integers, to be a bit more precise 2015-03-21T00:09:10Z Khisanth joined #lisp 2015-03-21T00:09:36Z jleija joined #lisp 2015-03-21T00:10:41Z emaczen: thanks guys 2015-03-21T00:12:31Z eazar001 quit (Remote host closed the connection) 2015-03-21T00:13:54Z przl quit (Ping timeout: 252 seconds) 2015-03-21T00:13:56Z eazar001 joined #lisp 2015-03-21T00:14:17Z afleck quit (Remote host closed the connection) 2015-03-21T00:16:39Z attila_lendvai joined #lisp 2015-03-21T00:16:39Z attila_lendvai quit (Changing host) 2015-03-21T00:16:39Z attila_lendvai joined #lisp 2015-03-21T00:18:38Z tajjada quit (Ping timeout: 272 seconds) 2015-03-21T00:20:37Z attila_lendvai quit (Client Quit) 2015-03-21T00:22:36Z attila_lendvai joined #lisp 2015-03-21T00:23:48Z attila_lendvai quit (Client Quit) 2015-03-21T00:25:48Z attila_lendvai joined #lisp 2015-03-21T00:26:17Z emaczen: How can I tell SBCL to optimize everything that it compiles? 2015-03-21T00:26:39Z Bicyclidine: it does that anyway 2015-03-21T00:26:40Z Bicyclidine: clhs optimize 2015-03-21T00:26:40Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/d_optimi.htm 2015-03-21T00:26:44Z Bicyclidine: if you want to be specific 2015-03-21T00:27:48Z ndrei quit (Ping timeout: 256 seconds) 2015-03-21T00:29:45Z ndrei joined #lisp 2015-03-21T00:30:37Z emaczen: Byiclidine: Does this mean that SBCL is placing a (declare (optimize ... )) expression in every possible form that it is allowed? 2015-03-21T00:30:44Z jlongster joined #lisp 2015-03-21T00:32:03Z Bicyclidine: no, just that it has an optimizing compiler. 2015-03-21T00:32:27Z Bicyclidine: though i'm not entirely sure what a non optimizing compiler would be. just really stupid? 2015-03-21T00:33:06Z vr-rm quit (Quit: Ex-Chat) 2015-03-21T00:34:13Z emaczen: Bicyclidine: What are the implications of SBCL's optimizing compiler and common-lisp's declarations? 2015-03-21T00:34:32Z emaczen: Or what is the best practice for using declarations in common-lisp? 2015-03-21T00:35:15Z Bicyclidine: um, like if you want an area of code to go faster you could throw in (declare (optimize (speed 3) (safety 0))), and sbcl's compiler will do more complicated analyses and cut more corners to make it go faster. 2015-03-21T00:35:25Z Quadrescence joined #lisp 2015-03-21T00:35:35Z jlongster quit (Ping timeout: 265 seconds) 2015-03-21T00:36:24Z emaczen: If I do this to a generic function will all the methods be optimized as well? 2015-03-21T00:36:38Z nell quit (Quit: WeeChat 0.4.2) 2015-03-21T00:37:07Z Quadrescence quit (Client Quit) 2015-03-21T00:37:40Z Bicyclidine: Uh... I think declarations in the defgeneric only apply to the gf itself, so like dispatch and stuff. Don't quote me on that. 2015-03-21T00:38:42Z emaczen: Alright, I just pulled up the SBCL manual so I'll keep digging. 2015-03-21T00:39:32Z munksgaard joined #lisp 2015-03-21T00:40:50Z jlongster joined #lisp 2015-03-21T00:41:55Z quazimodo joined #lisp 2015-03-21T00:42:27Z gklimowicz joined #lisp 2015-03-21T00:42:46Z warweasle joined #lisp 2015-03-21T00:43:12Z warweasle: Quick cffi question. What is the "proper" way to handle ORing enums? 2015-03-21T00:43:25Z Bicyclidine: use a bitfield instead? 2015-03-21T00:44:51Z hiroaki joined #lisp 2015-03-21T00:44:56Z hiroakip joined #lisp 2015-03-21T00:45:12Z warweasle: Bicyclidine: Do you have an example? 2015-03-21T00:45:56Z guicho_ quit (Ping timeout: 244 seconds) 2015-03-21T00:46:33Z Bicyclidine: cffi manual has one with open https://common-lisp.net/project/cffi/manual/html_node/defbitfield.html 2015-03-21T00:46:38Z dfinninger joined #lisp 2015-03-21T00:49:20Z Khisanth quit (Ping timeout: 256 seconds) 2015-03-21T00:49:31Z emaczen: Where does signed-byte fall into the type hierarchy? 2015-03-21T00:49:33Z warweasle: Bicyclidine: Thanks. I completely missed that! 2015-03-21T00:50:04Z Khisanth joined #lisp 2015-03-21T00:50:13Z mishoo_ quit (Ping timeout: 264 seconds) 2015-03-21T00:50:27Z Bicyclidine: emaczen: without a number argument it's equivalent to integer, iirc. 2015-03-21T00:50:47Z dfinninger quit (Ping timeout: 252 seconds) 2015-03-21T00:50:56Z emaczen: Bicyclidine: I can only seem to get a (signed-byte 8) 2015-03-21T00:51:06Z sveta_ quit (Ping timeout: 244 seconds) 2015-03-21T00:51:11Z Bicyclidine: that means a signed byte that is eight bits in length, so that's more specific 2015-03-21T00:51:44Z Bicyclidine: (signed-byte 8) = (integer -128 127), i think. 2015-03-21T00:51:47Z emaczen: Yes, I forgot to specify that I only need 4 bytes 2015-03-21T00:52:46Z amaron quit (Ping timeout: 255 seconds) 2015-03-21T00:52:47Z mishoo_ joined #lisp 2015-03-21T00:53:42Z emaczen: I'm passing (signed-byte 4) to make-array and it still tells me that the type is (signed-byte 8) 2015-03-21T00:54:25Z Bicyclidine: upgrading again. 2015-03-21T00:54:46Z emaczen: Alright, I'm going to go read about upgrading then... 2015-03-21T00:54:51Z Bicyclidine: it's always a subtype - all (signed-byte 4)s are also (signed-byte 8)s. 2015-03-21T00:54:55Z nyef: You can get (unsigned-byte 1) arrays, at least. 2015-03-21T00:55:28Z emaczen: clhs upgrade 2015-03-21T00:55:29Z specbot: Couldn't find anything for upgrade. 2015-03-21T00:55:33Z emaczen: clhs upgrading 2015-03-21T00:55:34Z specbot: Couldn't find anything for upgrading. 2015-03-21T00:55:44Z Bicyclidine: clhs upgraded-array-element-type 2015-03-21T00:55:45Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_upgr_1.htm 2015-03-21T00:55:48Z Bicyclidine: checkit 2015-03-21T00:57:47Z edgar-rft quit (Quit: edgar-rft) 2015-03-21T00:59:58Z |3b|: if you want 4 (8-bit) bytes, you want (signed-byte 32) not (signed-byte 4) 2015-03-21T01:00:24Z mishoo_ quit (Ping timeout: 244 seconds) 2015-03-21T01:01:10Z nell joined #lisp 2015-03-21T01:01:29Z nyef: clhs upgraded-complex-part-type 2015-03-21T01:01:29Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_upgrad.htm 2015-03-21T01:01:57Z hiroaki quit (Ping timeout: 244 seconds) 2015-03-21T01:02:08Z hiroakip quit (Ping timeout: 264 seconds) 2015-03-21T01:02:53Z sdothum quit (Quit: ZNC - 1.6.0 - http://znc.in) 2015-03-21T01:03:46Z Bicyclidine quit (Ping timeout: 252 seconds) 2015-03-21T01:04:19Z Bicyclidine joined #lisp 2015-03-21T01:04:47Z warweasle quit (Remote host closed the connection) 2015-03-21T01:04:55Z emaczen: |3b| oops, I only need 4 bits... not bytes 2015-03-21T01:07:01Z xrash joined #lisp 2015-03-21T01:10:38Z przl joined #lisp 2015-03-21T01:10:44Z eschatologist joined #lisp 2015-03-21T01:12:20Z bandrami quit (Quit: leaving) 2015-03-21T01:16:32Z przl quit (Ping timeout: 256 seconds) 2015-03-21T01:17:18Z defaultxr joined #lisp 2015-03-21T01:20:16Z bb010g quit (Quit: Connection closed for inactivity) 2015-03-21T01:22:37Z munksgaard quit (Read error: Connection reset by peer) 2015-03-21T01:27:36Z xinau quit (Ping timeout: 252 seconds) 2015-03-21T01:29:07Z burtons: i think i might be missing something about macros 2015-03-21T01:29:21Z burtons: i've defined one that updates a hash table 2015-03-21T01:29:46Z burtons: when i recompile the file from slime, the calls that use the definition work fine and replace the values in a fresh hash table 2015-03-21T01:30:16Z burtons: but when i just eval the expressions that use the macro with C-c C-c in slime, they don't redefine the values in the hash table 2015-03-21T01:30:26Z Bicyclidine: paste the definition? 2015-03-21T01:30:54Z eazar001 quit (Quit: WeeChat 1.1.1) 2015-03-21T01:31:10Z burtons: http://paste.lisp.org/+34YT 2015-03-21T01:32:17Z Bicyclidine: okay, so what are the calls that work in a file but not at the repl? 2015-03-21T01:32:20Z eazar001 joined #lisp 2015-03-21T01:32:53Z burtons: http://paste.lisp.org/+34YT/1 2015-03-21T01:34:00Z scarygelatin joined #lisp 2015-03-21T01:36:13Z burtons: the macro only seems to work on a fresh hash table, which seems to be why it works during full file compilation. 2015-03-21T01:39:21Z theseb joined #lisp 2015-03-21T01:39:29Z _death: don't use nconc on an object you don't own 2015-03-21T01:40:02Z burtons: query-args? 2015-03-21T01:40:03Z Bicyclidine: that nconc seems ok to me 2015-03-21T01:40:13Z burtons: i thought it would be 2015-03-21T01:40:21Z burtons: i build args and kwargs 2015-03-21T01:40:34Z Bicyclidine: args is a fresh list, and kwargs's head is fresh 2015-03-21T01:40:55Z Bicyclidine: i mean, you could try using append instead just in case. 2015-03-21T01:40:57Z _death: yeah 2015-03-21T01:41:10Z fikusz quit (Ping timeout: 252 seconds) 2015-03-21T01:41:43Z burtons: not the issue 2015-03-21T01:41:57Z _death: missed that.. anyway I'd use append or (,@args ,@kwargs) 2015-03-21T01:42:49Z Bicyclidine: components is a list, right? don't you need the other hash table to be :test 'equal too? 2015-03-21T01:43:30Z larion quit (Ping timeout: 272 seconds) 2015-03-21T01:43:30Z burtons: *handers* is keyed on an number, which i guess could really be an array 2015-03-21T01:43:46Z burtons: the components table is keyed on a list 2015-03-21T01:43:55Z burtons: and the last table is keyed on a symbol 2015-03-21T01:44:27Z Bicyclidine: I mean, you do (gethash ',components handlers), so if components is a list handlers should really be a :test 'equal. 2015-03-21T01:44:46Z Bicyclidine: and handlers is the hashtables you make earlier. 2015-03-21T01:44:58Z burtons: ah there we go 2015-03-21T01:45:05Z burtons: had my table tests mixed up 2015-03-21T01:45:14Z burtons: thanks 2015-03-21T01:45:41Z burtons thanks another set of eyes 2015-03-21T01:45:52Z Bicyclidine: i don't think you need the table on lengths, also 2015-03-21T01:45:55Z CrazyEddy quit (Remote host closed the connection) 2015-03-21T01:46:02Z burtons: it's just an optmization 2015-03-21T01:46:19Z burtons: breaking the handler tables up on the number of components in the path 2015-03-21T01:46:36Z burtons: just a bit of premature optimization 2015-03-21T01:46:46Z theseb left #lisp 2015-03-21T01:46:52Z Bicyclidine: it seems pretty premature, yeah... i mean if nothing else surely you could use an array instead. 2015-03-21T01:46:56Z burtons: and like i said, now that i've thought about it, it should really be an array 2015-03-21T01:47:13Z CrazyEddy joined #lisp 2015-03-21T01:47:24Z Bicyclidine: oh, did you? i missed that, sorry. 2015-03-21T01:48:16Z attila_lendvai quit (Ping timeout: 256 seconds) 2015-03-21T01:48:33Z burtons: np 2015-03-21T01:49:20Z scottj left #lisp 2015-03-21T01:49:41Z burtons: there, it's now an array 2015-03-21T01:50:28Z burtons: and really the inner hash table should be an alist 2015-03-21T01:50:39Z Bicyclidine: it really doesn't seem like an actual optimization, though. you have one array access and one hash lookup, versus one hash lookup in a slightly more occupied table. 2015-03-21T01:50:48Z burtons: it's never going to have more than 10 elements in it 2015-03-21T01:50:51Z burtons: no 2015-03-21T01:51:03Z burtons: to match the handlers you have to scan the hash table 2015-03-21T01:51:14Z Bicyclidine: yes, that's the hash lookup. 2015-03-21T01:51:25Z ASau quit (Remote host closed the connection) 2015-03-21T01:51:28Z burtons: not quite, it's not a normal lookup 2015-03-21T01:52:00Z burtons: thinking about it more, even the second table doesn't need to be a hash table 2015-03-21T01:52:07Z burtons: it should also be an array 2015-03-21T01:52:34Z burtons: i think... 2015-03-21T01:54:52Z burtons: no, it should be a table, i don't want duplicate signatures 2015-03-21T01:55:09Z burtons: just easier bookkeeping 2015-03-21T01:55:59Z ASau joined #lisp 2015-03-21T01:57:18Z emaczen: I'm trying to get 'M-x slime-sprof-report' to work. Does anybody get a response from emacs that says "symbols function definition is void: slime-make-popup-buffer" 2015-03-21T01:57:32Z CrazyEddy quit (Remote host closed the connection) 2015-03-21T01:58:13Z emaczen: I'm loading the slime-sprof contrib 2015-03-21T01:59:47Z larion joined #lisp 2015-03-21T02:00:18Z emaczen: general profiling help would be useful as well 2015-03-21T02:00:35Z burtons: i just use the sb-sprof:with-profiling macro 2015-03-21T02:00:51Z burtons: it dumps a lot of output but it's useful 2015-03-21T02:01:17Z emaczen: I'll try that in a second 2015-03-21T02:01:35Z drmeister: I've cloned the slime repository to fix swank/clasp - how do I hook it into my emacs? I don't see any links to slime in the .emacs, or .local/emacs/init.el (my init file). 2015-03-21T02:02:13Z burtons: add the slime directory to your load path 2015-03-21T02:02:22Z burtons: and then (require 'slime-autoloads) 2015-03-21T02:02:30Z burtons: if that's what you mean 2015-03-21T02:02:39Z linux_dream quit (Quit: Leaving) 2015-03-21T02:03:21Z emaczen: burtons: So, I want to profile this function that isn't terminating, will that still work? 2015-03-21T02:03:53Z burtons: not sure what happens if you kill a with-profiling call 2015-03-21T02:04:02Z scymtym quit (Ping timeout: 265 seconds) 2015-03-21T02:04:08Z cyphase quit (Ping timeout: 256 seconds) 2015-03-21T02:05:50Z emaczen: burtons: Is there a way to get profiling results while the program is running 2015-03-21T02:06:02Z emaczen: I'm running sb-prof:with-profiling on my function right now 2015-03-21T02:06:19Z Bicyclidine: sb-prof has other methods of use that don't involve dynamic extent so much. 2015-03-21T02:06:25Z burtons: i don't know if you can get a report with partial results 2015-03-21T02:06:34Z burtons: maybe check the manual 2015-03-21T02:08:38Z xinau joined #lisp 2015-03-21T02:09:07Z emaczen: Yeah, for 'with-profiling' the manual says "at the end" 2015-03-21T02:09:49Z khisanth_ joined #lisp 2015-03-21T02:09:58Z Bicyclidine: wait, are you using sprof or profile 2015-03-21T02:10:13Z emaczen: sprof 2015-03-21T02:10:36Z Quadrescence joined #lisp 2015-03-21T02:10:47Z Bicyclidine: oh. well, you can use start-profiling, etc., and then report at the end 2015-03-21T02:11:30Z drmeister: burtons: Somehow slime is already configured in my emacs. M-x slime starts slime but there is no slime directory mentioned in any configuration file that I can see - I'm concerned about one slime configuration overriding the other. 2015-03-21T02:11:31Z Khisanth quit (Ping timeout: 255 seconds) 2015-03-21T02:11:54Z przl joined #lisp 2015-03-21T02:12:01Z burtons: drmeister: did you install it with apt-get? 2015-03-21T02:12:54Z drmeister: I'm pretty sure I did it with "Options -> Manage Emacs Packages" 2015-03-21T02:13:10Z burtons: oh, i'm not familiar with elpa and such 2015-03-21T02:13:13Z burtons: i just install by hand 2015-03-21T02:13:45Z burtons: just try adding (add-to-list 'load-path "/path/to/slime") to you init.el 2015-03-21T02:13:46Z drmeister: I know - it was so convenient, I couldn't help myself. Now I pay the price for taking the easy path. 2015-03-21T02:13:48Z sz0 quit (Quit: Bye.) 2015-03-21T02:13:57Z Bicyclidine: well it's gotta be initialized somewhere. 2015-03-21T02:13:58Z burtons: heh 2015-03-21T02:14:18Z ASau quit (Remote host closed the connection) 2015-03-21T02:14:54Z scarygelatin quit (Quit: leaving) 2015-03-21T02:15:10Z emaczen: Bicyclidine: What does 'Control stack guard page temporarily disabled: proceed with caution' 2015-03-21T02:15:37Z burtons: sounds like a stack overflow 2015-03-21T02:15:44Z Bicyclidine: infinite recursion, generally 2015-03-21T02:15:46Z emaczen: This is what I am getting after running the function that I selected for profiling with "(sb-profile:profile)" 2015-03-21T02:16:06Z Bicyclidine: that is interesting but i have no idea how it is happening, sorry. 2015-03-21T02:17:08Z ASau joined #lisp 2015-03-21T02:17:13Z cyphase joined #lisp 2015-03-21T02:18:50Z emaczen: It only happens when I used "trace" or profiling 2015-03-21T02:20:27Z nyef: emaczen: What functions are you trying to trace or profile? 2015-03-21T02:20:34Z nyef: emaczen: And what sort of system are you on? 2015-03-21T02:20:49Z Ethan- joined #lisp 2015-03-21T02:20:50Z nyef: IIRC, some systems are too slow to be able to run the statistical profiler. 2015-03-21T02:23:01Z emaczen: I'm trying to profile a function that I wrote 2015-03-21T02:23:14Z emaczen: I'm on a 2010 laptop 2015-03-21T02:23:25Z emaczen: x86-64 intel i7 2015-03-21T02:23:56Z nyef: Okay, so that's plausibly not it... Unless it's recursive? 2015-03-21T02:24:06Z emaczen: It's recursive 2015-03-21T02:24:14Z przl quit (Ping timeout: 246 seconds) 2015-03-21T02:24:19Z ASau quit (Remote host closed the connection) 2015-03-21T02:24:34Z nyef: Possibly tail-recursive, but in such a way that causes it to be notinline? 2015-03-21T02:25:35Z nyef: With enough frames, all stacks are shallow. 2015-03-21T02:25:39Z drmeister: Found it. ~/.emacs.d/elpa/slime-xxx 2015-03-21T02:26:15Z drmeister: I deleted that directory and now my cloned version is being used - yay. 2015-03-21T02:26:31Z emaczen: So all the recursive calls happen in the inner-cond form and nothing happens after the recursive call but I don't know if the outer-cond form would prevent that from being tail-call optimized 2015-03-21T02:27:09Z johnnuy joined #lisp 2015-03-21T02:27:50Z boogie joined #lisp 2015-03-21T02:28:06Z nyef: emaczen: If it's just nested CONDs, it probably wouldn't prevent tail-call optimization. 2015-03-21T02:28:37Z pillton: Is there a way to make SETF not introduce a lexical environment for constant forms? e.g. http://paste.lisp.org/display/146407 2015-03-21T02:29:10Z Bicyclidine: no, it's part of how setf works. why? 2015-03-21T02:29:14Z emaczen: It's just a pair of nested CONDs and the functions that are called are all defmethod's 2015-03-21T02:29:35Z pillton: It is annoying. I can't dispatch at compile time because of it. 2015-03-21T02:29:39Z nyef: But the profiler and tracer (not the statistical profiler) use an "encapsulate" mechanism which adds stack frames to each invocation via the FDEFN, which means that a recursion situation can now start chewing through stack where before it may not have been able to. 2015-03-21T02:29:44Z burtons: say i want to make a local variable have a dynamic binding, can i say (declare (special *var*)) after it's decleration to do that? 2015-03-21T02:30:41Z nyef: Ah, methods? Yeah, that'll break the self-call detection. 2015-03-21T02:30:45Z Bicyclidine: pillton: my-func could potentially have a setf expansion that doesn't use the values, or uses them in some non-evaluation way, or whatever 2015-03-21T02:31:41Z pillton: That is fine. But why does the introduction of the binding occur before the body of the setf expander has a chance to decide what to do? 2015-03-21T02:31:55Z emaczen: nyef: why do methods break the tail-call optimization? 2015-03-21T02:32:21Z Bicyclidine: pillton: it doesn't, the expander controls what's bound as temporaries etc 2015-03-21T02:32:37Z nyef: It doesn't break tail-call optimization, it breaks self-call recognition, which allows skipping the indirection through the fdefn, the arg-parsing code, and whatnot. 2015-03-21T02:33:14Z Bicyclidine: pillton: you could, i think, have a setf expansion that binds nothing if everything was constant, so you'd just have (let* () (multiple-value-bind () ...)). though i still don't see the point. 2015-03-21T02:33:34Z nyef: With a recognized self-call, the encapsulation wrapper won't trigger again. 2015-03-21T02:33:46Z linux_dream joined #lisp 2015-03-21T02:34:06Z Bicyclidine: no, wait, the setf expansion doesn't have the value form, so it does have to do something for the m-v-b 2015-03-21T02:34:23Z jlongster quit (Remote host closed the connection) 2015-03-21T02:34:37Z emaczen: nyef: what is the encapsulation wrapper? 2015-03-21T02:34:53Z jlongster joined #lisp 2015-03-21T02:36:03Z nyef: When you use TRACE or SB-PROFILE:PROFILE, SBCL swaps out the definition for the function being traced or profiled with another one which stores profiling data or writing trace output, calls the original, stores more profiling data or writes more trace output, and returns. 2015-03-21T02:36:20Z nyef: When you disable tracing or the profiler, it swaps them back for the original definition. 2015-03-21T02:36:35Z pillton: Bicyclidine: On SBCL and CCL it does. http://paste.lisp.org/display/146407#1 2015-03-21T02:37:15Z Bicyclidine: it does what? 2015-03-21T02:38:17Z Bicyclidine: also i was thinking of the setf expansions, i don't remember how defsetf works, really. 2015-03-21T02:38:33Z wheelsucker joined #lisp 2015-03-21T02:38:42Z pillton: Bicyclidine: The implementation introduces temporaries prior to calling the setf expander. 2015-03-21T02:39:25Z Bicyclidine: i didn't mean defsetf's macros, i meant actual setf expansions. with define-setf-expansion. those expanders return, as two of their values, lists of variables to bind, so you could return nothing. 2015-03-21T02:39:41Z CrazyEddy joined #lisp 2015-03-21T02:40:04Z emaczen: nyef: ahh so I need it to recognize recursive functions? 2015-03-21T02:40:19Z Bicyclidine: but i still don't see the point. relying on any particular expansion for a macro you didn't write isn't going to end well. 2015-03-21T02:40:34Z emaczen: Or in this case my recursive method 2015-03-21T02:40:35Z emaczen: ? 2015-03-21T02:40:45Z johnnuy quit (Quit: Bye) 2015-03-21T02:41:25Z burtons: is there an easy way to take a symbol and turn it into a keyword? 2015-03-21T02:41:50Z Beetny joined #lisp 2015-03-21T02:42:01Z Bicyclidine: (intern (symbol-name symbol) "KEYWORD") 2015-03-21T02:42:09Z burtons: thanks 2015-03-21T02:42:12Z Ethan- quit (Remote host closed the connection) 2015-03-21T02:42:24Z nyef: emaczen: What you have is a tail-recursive method, which is fine, that is suddenly alternating with an extra (non-tail-calling) function introduced by the TRACE or PROFILE facility. 2015-03-21T02:42:26Z Bicyclidine: actually, use find-symbol, not intern... i guess it doesn't matter though. 2015-03-21T02:42:53Z nyef: emaczen: Which kicks the overall behavior over from effectively no stack usage to a whole lot of stack usage. 2015-03-21T02:42:55Z Bicyclidine: actually it does. intern. bam 2015-03-21T02:43:03Z Bicyclidine: i guess sbcl already has :foo. should have expected that 2015-03-21T02:43:10Z emaczen: nyef: How do I stop it from using so much of the stack? 2015-03-21T02:43:13Z wheelsucker quit (Ping timeout: 244 seconds) 2015-03-21T02:43:47Z nyef: emaczen: I'd recommend either using test cases which are small enough to not blow the stack, or using the statistical profiler (which doesn't use the encapsulation mechanism, and thus shouldn't blow the stack). 2015-03-21T02:43:49Z Ethan- joined #lisp 2015-03-21T02:43:51Z boogie quit (Remote host closed the connection) 2015-03-21T02:44:43Z innertracks quit (Quit: innertracks) 2015-03-21T02:45:43Z pillton: Bicyclidine: Even if I use defsetf or define-setf-expander I can't stop this from happening. That is my point. The avenues for extension are useless. 2015-03-21T02:47:04Z nyef: pillton: What's the problem with the extra bindings? 2015-03-21T02:47:36Z Bicyclidine: with define setf expander you can reduce it to not actually binding anything, i meant 2015-03-21T02:48:37Z joneshf-laptop joined #lisp 2015-03-21T02:48:47Z pillton: define-setf-expander doesn't give you access to the value form. 2015-03-21T02:49:46Z emaczen: nyef: Thanks, I finally got some sort of table output that contains my functions and has some reasonable numbers 2015-03-21T02:50:01Z nyef: emaczen: Yay, progress! 2015-03-21T02:51:01Z eschatologist quit (Quit: Textual IRC Client: www.textualapp.com) 2015-03-21T02:54:21Z bgs100 joined #lisp 2015-03-21T02:59:18Z sz0 joined #lisp 2015-03-21T03:17:50Z phax joined #lisp 2015-03-21T03:20:21Z przl joined #lisp 2015-03-21T03:24:54Z pillton quit (Read error: Connection reset by peer) 2015-03-21T03:25:32Z przl quit (Ping timeout: 264 seconds) 2015-03-21T03:33:03Z pyon is now known as pyon-tractible 2015-03-21T03:34:25Z cyphase quit (Ping timeout: 265 seconds) 2015-03-21T03:37:27Z `eeks joined #lisp 2015-03-21T03:38:43Z `eeks: Hi there, I've been trying to call lambda stored in association lists all evening with SBCL, and I can't seem to find the right approach. Any one would have a good pointer on how to do that handy ? 2015-03-21T03:38:57Z dfinninger joined #lisp 2015-03-21T03:39:08Z Bicyclidine: (funcall (cdr (assoc ...)) ...)? 2015-03-21T03:39:11Z nyef: (funcall (cdr (assoc ...)) ...) 2015-03-21T03:39:20Z smokeink joined #lisp 2015-03-21T03:39:36Z nyef: Bicyclidine wins. 2015-03-21T03:39:38Z `eeks: Nope, that fails with : 2015-03-21T03:39:45Z kcj joined #lisp 2015-03-21T03:39:46Z `eeks: The value (LAMBDA (X) (+ X 1)) is not of type (OR FUNCTION SYMBOL) 2015-03-21T03:39:57Z dfinninger quit (Remote host closed the connection) 2015-03-21T03:40:03Z Bicyclidine: that's a list, not a function. 2015-03-21T03:40:04Z nyef: Ah, that's not a lambda, that's the source for a lambda... 2015-03-21T03:40:20Z nyef: So, (funcall (compile nil (cdr (assoc ...))) ...) ? 2015-03-21T03:40:23Z Bicyclidine: where'd you get it? are you doing '((1 . (lambda ...)) (2 . (lambda ...))) somewhere? cos that'll just get you a quoted tree. 2015-03-21T03:40:36Z `eeks: yes, that's what I am doing. 2015-03-21T03:40:41Z `eeks: Any way to do that better ? 2015-03-21T03:41:19Z Bicyclidine: (list (cons 1 (lambda ...)) (cons 2 (lambda ...))) so that it's actually evaluated. 2015-03-21T03:41:34Z Bicyclidine: or with backquote `((1 . ,(lambda ...)) (2 . ,(lambda ...))) 2015-03-21T03:41:57Z `eeks: I misread, I actually used a backquote. 2015-03-21T03:42:09Z Bicyclidine: did you actually use the commas? 2015-03-21T03:42:19Z `eeks: oh, no. let me try that. 2015-03-21T03:42:49Z cluck quit (Remote host closed the connection) 2015-03-21T03:42:50Z gklimowicz quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-03-21T03:42:56Z pjb: - 2015-03-21T03:43:45Z `eeks: Gosh, awesome. That works. What is the rationale of the comma in that context ? 2015-03-21T03:44:03Z Bicyclidine: it lets the form be evaluated instead of leaving it quoted. 2015-03-21T03:44:18Z Bicyclidine: it's like the same as '(lambda ...) versus (lambda ...). the former's a list 2015-03-21T03:44:43Z `eeks: Great. Thanks a lot for the tip. 2015-03-21T03:45:57Z Bicyclidine quit (Read error: No route to host) 2015-03-21T03:47:07Z cyphase joined #lisp 2015-03-21T03:48:20Z `eeks quit (Quit: Textual IRC Client: www.textualapp.com) 2015-03-21T03:49:44Z MrWoohoo quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2015-03-21T03:50:12Z Bicyclidine joined #lisp 2015-03-21T03:51:20Z xrash quit (Ping timeout: 252 seconds) 2015-03-21T03:51:33Z phax quit (Ping timeout: 252 seconds) 2015-03-21T03:53:44Z dagnachewa quit (Quit: WeeChat 1.1.1) 2015-03-21T03:55:06Z theseb joined #lisp 2015-03-21T03:56:10Z xrash joined #lisp 2015-03-21T04:03:53Z xrash quit (Remote host closed the connection) 2015-03-21T04:06:59Z svetlyak40wt joined #lisp 2015-03-21T04:10:51Z wheelsucker joined #lisp 2015-03-21T04:16:10Z emaczen quit (Ping timeout: 256 seconds) 2015-03-21T04:16:22Z ahungry quit (Remote host closed the connection) 2015-03-21T04:16:28Z quazimodo quit (Ping timeout: 265 seconds) 2015-03-21T04:17:18Z smokeink_ joined #lisp 2015-03-21T04:17:31Z beach joined #lisp 2015-03-21T04:17:38Z beach: Good morning everyone! 2015-03-21T04:17:49Z burtons: morning beach 2015-03-21T04:17:56Z ggole joined #lisp 2015-03-21T04:18:12Z ahungry joined #lisp 2015-03-21T04:19:38Z nyef: Hello beach. 2015-03-21T04:21:15Z przl joined #lisp 2015-03-21T04:21:24Z smokeink quit (Ping timeout: 252 seconds) 2015-03-21T04:23:32Z linux_dream quit (Quit: Leaving) 2015-03-21T04:25:02Z pillton joined #lisp 2015-03-21T04:25:51Z xiaoguo joined #lisp 2015-03-21T04:26:10Z pillton: Hi beach. 2015-03-21T04:27:04Z rszeno joined #lisp 2015-03-21T04:28:13Z drmeister: Hey 2015-03-21T04:31:17Z drmeister: Hey beach - I made some more progress and then got stuck. 2015-03-21T04:31:26Z drmeister: I sent you an email about it. 2015-03-21T04:31:41Z beach: I saw it. I'll deal with it when I wake up a bit more. 2015-03-21T04:31:53Z drmeister: No problem. I'm going to sleep soon. 2015-03-21T04:31:59Z drmeister: Take your time. 2015-03-21T04:34:01Z drmeister: I solved the (setf foo) problem by creating a setf-fdefinition-ast and setf-fdefinition-instruction nodes 2015-03-21T04:34:17Z beach: OK. 2015-03-21T04:34:21Z przl quit (Ping timeout: 265 seconds) 2015-03-21T04:36:20Z jlongster quit (Ping timeout: 264 seconds) 2015-03-21T04:38:30Z innertracks joined #lisp 2015-03-21T04:41:01Z theos: mornin 2015-03-21T04:42:05Z beach: Hello theos. 2015-03-21T04:42:24Z zacts joined #lisp 2015-03-21T04:49:42Z rszeno quit (Ping timeout: 272 seconds) 2015-03-21T04:51:36Z rszeno joined #lisp 2015-03-21T04:54:50Z gabriel_laddel joined #lisp 2015-03-21T04:59:49Z ssake joined #lisp 2015-03-21T05:00:16Z theos quit (Disconnected by services) 2015-03-21T05:00:49Z theos joined #lisp 2015-03-21T05:01:29Z beach: drmeister: Are you still around? 2015-03-21T05:01:37Z drmeister: Yes 2015-03-21T05:01:47Z beach: drmeister: In the code you sent me, there is #'SLOT-DEFINITION-NAME 2015-03-21T05:02:07Z beach: What is the definition of that thing? 2015-03-21T05:03:05Z psy_ quit (Remote host closed the connection) 2015-03-21T05:03:08Z drmeister: Yes, it is a little weird - it's an accessor. 2015-03-21T05:03:11Z drmeister: https://www.irccloud.com/pastebin/gxfDmwbI 2015-03-21T05:04:05Z svetlyak40wt quit (Remote host closed the connection) 2015-03-21T05:04:06Z beach: It appears that when Cleavir asks for the FUNCTION-INFO of it, Clasp returns a LOCAL-MACRO-INFO. 2015-03-21T05:04:20Z cyphase quit (Ping timeout: 256 seconds) 2015-03-21T05:04:21Z drmeister: What should it return? 2015-03-21T05:04:38Z svetlyak40wt joined #lisp 2015-03-21T05:04:47Z beach: If it's an accessor, it is a function, not a macro. 2015-03-21T05:05:04Z beach: I would think GLOBAL-FUNCTION-INFO. 2015-03-21T05:06:32Z psy_ joined #lisp 2015-03-21T05:06:52Z beach: I suppose I should signal a more specific error rather than just NO-APPLICABLE-METHOD. 2015-03-21T05:07:05Z psy_ quit (Max SendQ exceeded) 2015-03-21T05:07:06Z drmeister: Here is my FUNCTION-INFO - I don't return LOCAL-MACRO-INFO - maybe I'm returning NIL and Cleavir is assuming it's a LOCAL-MACRO-INFO? 2015-03-21T05:07:07Z drmeister: http://paste.lisp.org/display/146411 2015-03-21T05:07:53Z psy_ joined #lisp 2015-03-21T05:08:00Z beach: Well, if you look at the error message you sent me... 2015-03-21T05:09:07Z beach: ... it appears that it has a LOCAL-MACRO-INFO. Maybe I am misunderstanding. 2015-03-21T05:09:20Z svetlyak40wt quit (Ping timeout: 272 seconds) 2015-03-21T05:10:58Z beach: CONVERT-SPECIAL sees #'SLOT-DEFINITION-NAME. 2015-03-21T05:11:43Z beach: and it calls CONVERT-NAMED-FUNCTION. 2015-03-21T05:12:07Z beach: CONVERT-NAMED-FUNCTION asks for the FUNCTION-INFO and calls CONVERT-FUNCTION with the resulting info. 2015-03-21T05:12:52Z beach: CONVERT-FUNCTION signals an error because there is no applicable method when the first argument is a LOCAL-MACRO-INFO. 2015-03-21T05:13:10Z drmeister: I'm tracing FUNCTION-INFO 2015-03-21T05:14:44Z drmeister: https://www.irccloud.com/pastebin/8lIE4QTs 2015-03-21T05:16:14Z beach: Somehow, there must be a local macro with that name introduced. 2015-03-21T05:16:27Z drmeister: I don't understand where the LOCAL-MACRO-INFO is coming from - my cleavir-environment:function-info doesn't return LOCAL-MACRO-INFO for any inputs. Is it the Cleavir version of FUNCTION-INFO that is returning this? 2015-03-21T05:16:38Z beach: What does WITH-EARLY-ACCESSORS expand to? 2015-03-21T05:16:54Z cyphase joined #lisp 2015-03-21T05:17:18Z beach: Yes, it means that someone did a (MACROLET ((SLOT-DEFINITION-NAME (...)))) 2015-03-21T05:17:30Z drmeister: Oh - yes - that must be it. 2015-03-21T05:17:33Z drmeister: https://www.irccloud.com/pastebin/v6lb1Yep 2015-03-21T05:18:34Z beach: Unless I am not awake yet, or I have misread the Common Lisp HyperSpec, #' is not supposed to work when is a local macro, right? 2015-03-21T05:19:59Z innertracks quit (Quit: innertracks) 2015-03-21T05:20:00Z gklimowicz joined #lisp 2015-03-21T05:20:01Z drmeister: You mean here? (find slot-name (class-slots class) :key #'slot-definition-name) 2015-03-21T05:20:14Z beach: Yes. 2015-03-21T05:21:21Z drmeister: Yeah - if slot-definition-name is a macro - that can't work. What the heck? 2015-03-21T05:21:30Z pyon-tractible is now known as pyon-tractable 2015-03-21T05:21:37Z jleija quit (Quit: leaving) 2015-03-21T05:24:01Z drmeister: This is a tricky bootstrapping issue. 2015-03-21T05:24:42Z hrr4 joined #lisp 2015-03-21T05:25:17Z drmeister: So the with-accessors is setting SLOT-DEFINITION-NAME up as a macro and that's what Cleavir (apparently correctly) believes it is. But a macro can't work in #'SLOT-DEFINITION-NAME. 2015-03-21T05:25:49Z beach: That's my impression in this not-yet-awake state, yes. 2015-03-21T05:26:00Z drmeister: Maybe given the context it's supposed to treat it like a function and this code doesn't get activated until after CLOS has booted? 2015-03-21T05:26:11Z hvxgr quit (Ping timeout: 246 seconds) 2015-03-21T05:27:17Z beach: I am afraid I don't know. 2015-03-21T05:27:28Z drmeister: I remember wrestling with things like this (maybe even this function) the first time I tried to get this working. 2015-03-21T05:28:49Z hrr4: hi all, working on my own small Lisp as a personal project. Curious what (conceptually) environments are and how they're useful. Do they mainly just store variables at different contexts? 2015-03-21T05:29:33Z beach: hrr4: They map names to things, like names of classes to classes, names of functions to functions, names of variables to variables, etc. 2015-03-21T05:29:39Z Bicyclidine: they are contexts, really. 2015-03-21T05:29:41Z drmeister: hrr4: Yes, my understanding is that they store information about variables in different contexts. 2015-03-21T05:30:00Z przl joined #lisp 2015-03-21T05:30:06Z drmeister: Listen to those guys. 2015-03-21T05:30:14Z gabriel_laddel quit (Remote host closed the connection) 2015-03-21T05:30:19Z Bicyclidine: everybody loves me 2015-03-21T05:30:38Z hrr4: haha thank you 2015-03-21T05:30:40Z beach: hrr4: "Lisp in Small Pieces" is a good read for this stuff. 2015-03-21T05:30:51Z hrr4: beach: oh? I'll look that up 2015-03-21T05:31:25Z beach: hrr4: If you bring your copy to ELS, you can have it signed by both the author and the translator. 2015-03-21T05:31:40Z svetlyak40wt joined #lisp 2015-03-21T05:31:45Z hrr4: beach: ELS? 2015-03-21T05:32:07Z beach: European Lisp Symposium. 2015-03-21T05:32:16Z beach: London, april 20-21 (I think) 2015-03-21T05:33:17Z hrr4: beach: Oh that'd be awesome to go to. Unfortunately, that'd be a long flight (Seattle, WA). 2015-03-21T05:34:57Z psy_ quit (Quit: Leaving) 2015-03-21T05:35:18Z przl quit (Ping timeout: 272 seconds) 2015-03-21T05:35:20Z beach: Too bad. 2015-03-21T05:40:31Z gingerale joined #lisp 2015-03-21T05:40:41Z hrr4: beach: thank you for the book recommendation, this is just what i was looking for 2015-03-21T05:41:05Z heurist quit (Ping timeout: 250 seconds) 2015-03-21T05:41:06Z hrr4: beach: actually my end goal is to get a Lisp onto an FPGA board :) 2015-03-21T05:41:56Z Bicyclidine: i think the system in "Lambda: The Ultimate Opcode" would be reasonably easy to write in verilog or whatever 2015-03-21T05:42:52Z hrr4: Bicyclidine: That was the main source I used for my project proposal actually. Great resource. 2015-03-21T05:43:14Z heurist joined #lisp 2015-03-21T05:43:19Z bgs100 quit (Quit: bgs100) 2015-03-21T05:43:54Z hrr4: Bicyclidine: one thing eluded me though, which was how they stored the actual data outside of the cons cells. maybe I just missed it. 2015-03-21T05:46:26Z Bicyclidine: been a while since i read it. maybe they just had everything in conses, though. 2015-03-21T05:47:39Z hrr4: Bicyclidine: that's what I assumed.... but I know they used a 3 bit type field with a 13 bit address. which meant the cons cell resided in memory, as well as the actual data it referred to..... I think. 2015-03-21T05:49:41Z Bicyclidine: really, you'd probably be better off just designing a "general" architecture that works nicely for lisp similar to how usual machines usually work okay with C. 2015-03-21T05:49:47Z Bicyclidine: dunno what features that would be. fast tag checks. stuff. 2015-03-21T05:50:27Z Bicyclidine: either that or work out how to do the tree instruction thing with caching, since that's what matters 4 speed 2015-03-21T05:51:35Z hrr4: Bicyclidine: hmmmmmmm 2015-03-21T05:52:00Z drmeister: beach: I looked up what my compiler does in this context - it classifies the symbol argument of FUNCTION as either a lexical-function or a global-function. If it doesn't find it in the lexical-environment it assumed it was a global function. 2015-03-21T05:52:07Z Karl_Dscc joined #lisp 2015-03-21T05:52:30Z Bicyclidine: well that's wrong then. 2015-03-21T05:52:44Z drmeister: Wrong - but useful. 2015-03-21T05:53:08Z Bicyclidine: useful? it just gives you wrong answers occasionally. 2015-03-21T05:54:32Z drmeister: It's an error to have a (FUNCTION FOO) where FOO is a local macro - please correct me if I'm wrong. 2015-03-21T05:55:21Z Bicyclidine: yeah, an error, not a silent mistake that keeps "working" 2015-03-21T05:56:13Z drmeister: I don't know what ECL does in this context - what is the right way to deal with this? 2015-03-21T05:56:26Z Bicyclidine: signal an error? 2015-03-21T05:56:57Z hvxgr joined #lisp 2015-03-21T05:56:59Z Bicyclidine: you can even do it at compile time. 2015-03-21T05:57:42Z MrBoo joined #lisp 2015-03-21T05:58:22Z drmeister: I need to compile this somehow - this is ECL code for CLOS. 2015-03-21T05:59:22Z drmeister: Unless I'm misreading the code - they have non-conformant code during the bootstrapping period. 2015-03-21T06:00:00Z drmeister: I may be misreading this. 2015-03-21T06:01:18Z drmeister: It's got this macro that is used during bootstrapping: 2015-03-21T06:01:19Z drmeister: http://paste.lisp.org/display/146412 2015-03-21T06:02:11Z drmeister: And they compile this code that uses that macro. 2015-03-21T06:02:12Z drmeister: http://paste.lisp.org/display/146413 2015-03-21T06:02:35Z seg quit (Quit: !!) 2015-03-21T06:03:06Z drmeister: And +slot-definition-slots+ contains (name :initarg :name :initform nil :accessor slot-definition-name) 2015-03-21T06:03:33Z drmeister: So when compiling the SLOT-VALUE function SLOT-DEFINITION-NAME is a local macrolet macro. 2015-03-21T06:03:44Z vdamewood joined #lisp 2015-03-21T06:03:50Z drmeister: and #'SLOT-DEFINITION-NAME is an error. 2015-03-21T06:04:15Z Bicyclidine: seems like a small mistake on ecl's part, then. 2015-03-21T06:05:13Z Bicyclidine: i'm not sure i even see what macros it's using there, class-slots? class-location-table? 2015-03-21T06:05:22Z drmeister: That's my current thinking - that the rules are bent and #'SLOT-DEFINITION is compiled as if SLOT-DEFINITION is a global function name. 2015-03-21T06:05:45Z theseb quit (Quit: Leaving) 2015-03-21T06:05:58Z Bicyclidine: eh, screw that. i don't think you actually need +slot-definition-slots+ there. 2015-03-21T06:06:03Z Bicyclidine: just take it out and see if it works. 2015-03-21T06:07:02Z angavrilov joined #lisp 2015-03-21T06:07:46Z boogie joined #lisp 2015-03-21T06:08:16Z xiaoguo quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2015-03-21T06:08:19Z drmeister: How is SLOT-VALUE supposed to work? Does it iterate over the slot-names looking for a match to _slot-name_ of (slot-value obj _slot-name_) 2015-03-21T06:08:23Z harish_ joined #lisp 2015-03-21T06:08:58Z Bicyclidine: in general or in this implementation? 2015-03-21T06:09:10Z Bicyclidine: in this implementation it does a hash lookup on a table inside the class instance. 2015-03-21T06:09:53Z Bicyclidine: (let ((location (gethash slot-name (class-location-table (class-of instance)) nil))) ...) and then standard-instance-access, looks like. 2015-03-21T06:10:08Z seg joined #lisp 2015-03-21T06:10:08Z Karl_Dscc quit (Remote host closed the connection) 2015-03-21T06:10:08Z seg quit (Changing host) 2015-03-21T06:10:08Z seg joined #lisp 2015-03-21T06:10:51Z drmeister: General - I thought it was supposed to be resolved at compile-time but I guess it can't know _slot-name_ until runtime 2015-03-21T06:10:55Z beach: drmeister: I am back. But I have no solution to propose to you. 2015-03-21T06:11:16Z Bicyclidine: yeah, it's all runtime cos of how flexible clos is. 2015-03-21T06:11:57Z beach: drmeister: Though I suppose you can put a method on convert-function specialized to local macro and just treat it as a global function instead. 2015-03-21T06:11:58Z Bicyclidine: you can think of one implementation strategy as the class having an array of slot names, and the instance having an array of slot values. then slot-value consists of looking up the position of the slot name in the class's array, and using that position to access the instance's value array. 2015-03-21T06:12:00Z beach: dr 2015-03-21T06:12:03Z drmeister: But accessors are compile-time. 2015-03-21T06:12:08Z Bicyclidine: what? 2015-03-21T06:12:25Z beach: drmeister: Cleavir allows you to introduce incorrect semantics as well. :) 2015-03-21T06:12:27Z Bicyclidine: what does that mean? they're generic functions. 2015-03-21T06:13:03Z drmeister: Don't the accessors know the offset of the slot? 2015-03-21T06:13:15Z Bicyclidine: not at compile time. 2015-03-21T06:13:23Z Bicyclidine: you can redefine the class and stuff. 2015-03-21T06:13:26Z MrBoo quit (Ping timeout: 246 seconds) 2015-03-21T06:13:42Z zacts quit (Quit: leaving) 2015-03-21T06:13:44Z drmeister: So every slot access is a hash-table lookup for the index based on the name of the slot? I'm surprised. 2015-03-21T06:14:04Z beach: drmeister: It doesn't have to be done that way. 2015-03-21T06:14:17Z Bicyclidine: besides, with (defun foo ...uses some accessor...) has to work even if i define a new method on the accessor later, in some other file, or at the repl or whatever. 2015-03-21T06:14:43Z Bicyclidine: you can use standard-instance-access to use a fixed location instead. 2015-03-21T06:14:52Z beach: drmeister: The method can be generated with a fixed offset, but then it has to be recompiled when the class changes. 2015-03-21T06:14:54Z drmeister: Right - but I assumed the accessors would be recompiled if the class changed. 2015-03-21T06:15:08Z Bicyclidine: well, you could do it that way 2015-03-21T06:15:24Z drmeister: beach: Yeah that's what I assumed all Common Lisps did - for speed. 2015-03-21T06:15:27Z beach: SICL does it. I assume SBCL as well. 2015-03-21T06:15:28Z Bicyclidine: the thing i said with the arrays is just one way to do it, and a pretty simple one, i think it's what closette does 2015-03-21T06:15:38Z Bicyclidine: i do not think sbcl does, exactly 2015-03-21T06:15:42Z Bicyclidine: it has a lot of caching though 2015-03-21T06:15:48Z xinau quit (Ping timeout: 252 seconds) 2015-03-21T06:15:53Z Bicyclidine: pcl is a really scary part of sbcl, though. 2015-03-21T06:16:02Z beach: Indeed. 2015-03-21T06:16:14Z Bicyclidine: here, let me pull up the internals manual 2015-03-21T06:16:30Z drmeister: pcl? 2015-03-21T06:16:40Z drmeister: That sounds familiar - I forget what it means. 2015-03-21T06:16:42Z beach: Portable Common Loops. 2015-03-21T06:16:43Z Bicyclidine: Portable Common Loops, the CLOS subsystem of SBCL 2015-03-21T06:16:49Z Bicyclidine: (it's not portable any more) 2015-03-21T06:17:08Z beach: UCL. 2015-03-21T06:17:25Z Bicyclidine: http://www.sbcl.org/sbcl-internals/Basic-Implementation.html#Basic-Implementation it does check for a redo. 2015-03-21T06:17:27Z drmeister: beach: I'll probably do as you suggest. "put a method on convert-function specialized to local macro and just treat it as a global function instead." 2015-03-21T06:17:42Z Bicyclidine: despite the name of that file, "Basic Implementation" is really about slot value. 2015-03-21T06:18:01Z Bicyclidine: drmeister: have you tried just removing +slot-definition-slots+ from the macro invocation. 2015-03-21T06:19:16Z beach: Bicyclidine: That code is for SLOT-VALUE not for accessors. 2015-03-21T06:19:30Z beach: An accessor doesn't have to call SLOT-VALUE. 2015-03-21T06:20:02Z Bicyclidine: oh. i guess. it has to do the same things, though. 2015-03-21T06:20:04Z beach: SLOT-VALUE is harder in the general case because the name of the slot might not be a constant. And then the slot has to be looked up in the class. 2015-03-21T06:20:20Z beach: Accessors don't have that problem. 2015-03-21T06:21:08Z MrBoo joined #lisp 2015-03-21T06:21:21Z Bicyclidine: well, the next section is about what the ompiler can do when the slot name is constant. it's complex and full of notes like "hm, i think this is buggy" 2015-03-21T06:21:25Z drmeister: Bicyclidine: Trying that now 2015-03-21T06:22:42Z drmeister: it compiles though 2015-03-21T06:22:45Z beach: Bicyclidine: One strategy (I think I read this somewhere) would be to basically introduce an accessor when the slot name is a constant. 2015-03-21T06:23:00Z Bicyclidine: huh, do accessors have to go through slot-value-using-class 2015-03-21T06:23:16Z beach: No. 2015-03-21T06:23:29Z rszeno quit (Quit: Leaving.) 2015-03-21T06:23:32Z beach: They can go directly to the instance if it knows the offset. 2015-03-21T06:23:59Z Bicyclidine: internals notes say the fast path for accessors on sbcl are invalidated if there are nonstandard methods on s-v-u-c. so i guess sbcl could be missing that opportunity. 2015-03-21T06:24:48Z yakccd quit (Ping timeout: 256 seconds) 2015-03-21T06:25:25Z beach: Bicyclidine: Perhaps the offset cannot be known if there are nonstandard methods like that. 2015-03-21T06:25:32Z beach: I forget the details. 2015-03-21T06:25:54Z Bicyclidine: how would defining a method... frickin system. 2015-03-21T06:26:28Z beach: I do know that there is no way that it can be allowed for a simple accessor to call slot-value or slot-value-using-class. It would be way too slow. And I know for a fact that SBCL is not calling those functions in the most common case. 2015-03-21T06:27:05Z Bicyclidine: yeah it's under http://www.sbcl.org/sbcl-internals/Accessor-Discriminating-Functions.html#Accessor-Discriminating-Functions 2015-03-21T06:27:46Z Bicyclidine: it puts in a discriminating function for the accessor gf that closes over one or two class layouts and accesses them directly bla bla bla. 2015-03-21T06:28:16Z Bicyclidine: huh, there's a typo in clhs defclass's argument descriptions 2015-03-21T06:28:26Z keen________ joined #lisp 2015-03-21T06:28:29Z pjb quit (Ping timeout: 244 seconds) 2015-03-21T06:28:56Z Bicyclidine: i always thought read/write/accessors had to go through slot-value. hrm. 2015-03-21T06:29:24Z vdamewood quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2015-03-21T06:29:24Z keen_______ quit (Ping timeout: 245 seconds) 2015-03-21T06:29:29Z beach: What's the typo? 2015-03-21T06:29:48Z Bicyclidine: has "reader-function-name" twice 2015-03-21T06:30:03Z beach: What should the second be? writer? 2015-03-21T06:30:07Z Bicyclidine: accessor 2015-03-21T06:30:16Z Bicyclidine: someone already mentioned it on cliki http://cliki.net/Issue%20DEFCLASS-READER-FUNCTION-NAME 2015-03-21T06:30:43Z przl joined #lisp 2015-03-21T06:31:20Z munksgaard joined #lisp 2015-03-21T06:31:33Z beach: Note to self: fix typo in DEFCLASS argument descriptions in Common Lisp version 2. 2015-03-21T06:32:07Z Bicyclidine: oh, you know about the page, right? 2015-03-21T06:32:25Z beach: The Cliki page? No. 2015-03-21T06:32:33Z Bicyclidine: this one: http://cliki.net/Proposed%20ANSI%20Revisions%20and%20Clarifications 2015-03-21T06:33:14Z beach: I didn't know that. Thanks. 2015-03-21T06:33:16Z beach: Who wrote it? 2015-03-21T06:33:53Z Bicyclidine: uh, a lot of people, probably. wiki and all. 2015-03-21T06:34:08Z drmeister: I wonder what the point of all those with-early-accessors was in those functions. 2015-03-21T06:34:10Z beach: It's a great source of information for Common Lisp version 2. 2015-03-21T06:35:00Z Bicyclidine: you might look at the less conservative pages linked on top too. 2015-03-21T06:35:25Z MrBoo quit (Remote host closed the connection) 2015-03-21T06:35:28Z Bicyclidine: drmeister: so that they could write (class-location-table class) instead of (si::instance-ref class 'location-table) 2015-03-21T06:35:39Z beach: Bicyclidine: Yeah. Thanks. 2015-03-21T06:36:22Z MrBoo joined #lisp 2015-03-21T06:37:43Z Bicyclidine: beach: as long as you're on the subject, you should consider setting something up for your new version like that wiki page and the committee, but indefinite, just cos there are going to be bugs in it if no other reason. 2015-03-21T06:38:30Z beach: Hmm. 2015-03-21T06:39:03Z Bicyclidine: having these things sit around in an external wiki and prog2 being obviously wrong for probably decades now is silly. 2015-03-21T06:39:40Z Bicyclidine: i know there are considerations about versioning and "living standards" being silly and etc., but still. 2015-03-21T06:39:57Z beach: Bicyclidine: I am not sure what your exact suggestion is. 2015-03-21T06:40:01Z pjb joined #lisp 2015-03-21T06:40:16Z pjb is now known as Guest97832 2015-03-21T06:40:38Z Bicyclidine: neither am i, really. i just know silly when i see it 2015-03-21T06:40:53Z psy_ joined #lisp 2015-03-21T06:41:00Z beach: I was thinking something like the annotatable CLIM spec. 2015-03-21T06:41:06Z beach: Have you seen it? 2015-03-21T06:41:20Z Bicyclidine: only a bit. i've only recently even considered gui programming, heh. 2015-03-21T06:41:36Z Bicyclidine: i suppose i should try using clim for my oscilloscope gizmo, actually... 2015-03-21T06:41:42Z beach: That aspect is unimportant for the current discussion. 2015-03-21T06:41:44Z Bicyclidine: but yeah, even just public annotations might be enough. 2015-03-21T06:41:56Z beach: The annotation part is great! 2015-03-21T06:42:02Z Guest97832 left #lisp 2015-03-21T06:42:25Z przl quit (Ping timeout: 252 seconds) 2015-03-21T06:42:26Z tsuru quit (Ping timeout: 272 seconds) 2015-03-21T06:42:35Z beach: I can imagine the Common Lisp HyperSpec in the form of an annotatable spec similar to the CLIM spec. 2015-03-21T06:43:12Z Vutral quit (Ping timeout: 245 seconds) 2015-03-21T06:43:51Z hiyosi quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-03-21T06:44:25Z Bicyclidine: one thing is that i'm enough of a bibliophile that i like looking through the committee discussions; makes the spec almost its own context sometimes. useful. 2015-03-21T06:44:35Z pjb joined #lisp 2015-03-21T06:44:38Z cyphase quit (Ping timeout: 256 seconds) 2015-03-21T06:44:57Z xiaoguo joined #lisp 2015-03-21T06:45:47Z Bicyclidine: just think, years from now somebody could cite an irc argument between you and whoever about what progv does when it doesn't have enough values 2015-03-21T06:46:17Z beach: Sure. 2015-03-21T06:47:42Z MrWoohoo joined #lisp 2015-03-21T06:50:52Z Adlai quit (Ping timeout: 256 seconds) 2015-03-21T06:51:59Z defaultxr quit (Quit: gnight) 2015-03-21T06:53:40Z loz1 joined #lisp 2015-03-21T06:54:11Z pjb: Bicyclidine: the question is whether years from now, we can write an AI that would be able to extract any intelligent conclusion from irc logs. 2015-03-21T06:56:04Z MrBoo left #lisp 2015-03-21T06:57:09Z cyphase joined #lisp 2015-03-21T07:03:47Z Vutral joined #lisp 2015-03-21T07:09:08Z MrBoo joined #lisp 2015-03-21T07:09:16Z wz1000 joined #lisp 2015-03-21T07:11:25Z hitecnologys__ joined #lisp 2015-03-21T07:14:40Z cyphase quit (Ping timeout: 256 seconds) 2015-03-21T07:14:43Z pyon-tractable is now known as not-not-pyon 2015-03-21T07:14:49Z hitecnologys_ quit (Ping timeout: 265 seconds) 2015-03-21T07:17:45Z nalssee joined #lisp 2015-03-21T07:18:06Z Adlai joined #lisp 2015-03-21T07:19:26Z sunwukong joined #lisp 2015-03-21T07:19:37Z a2015_ quit (Quit: Page closed) 2015-03-21T07:20:11Z MrBoo quit (Remote host closed the connection) 2015-03-21T07:27:12Z cyphase joined #lisp 2015-03-21T07:29:39Z hiyosi joined #lisp 2015-03-21T07:30:32Z bb010g joined #lisp 2015-03-21T07:31:38Z jewel joined #lisp 2015-03-21T07:33:27Z beach: drmeister: I added methods on CONVERT-FUNCTION specialized to GLOBAL-MACRO-INFO and LOCAL-MACRO-INFO that signal appropriate conditions. I also added condition reporters for those conditions. 2015-03-21T07:36:19Z jewel quit (Ping timeout: 252 seconds) 2015-03-21T07:37:12Z ssake quit (Ping timeout: 244 seconds) 2015-03-21T07:38:20Z svetlyak40wt quit 2015-03-21T07:38:39Z przl joined #lisp 2015-03-21T07:42:32Z EvW joined #lisp 2015-03-21T07:43:14Z chu joined #lisp 2015-03-21T07:43:34Z przl quit (Ping timeout: 245 seconds) 2015-03-21T07:51:39Z kzy_a joined #lisp 2015-03-21T07:53:30Z Shinmera joined #lisp 2015-03-21T07:54:01Z kzy_a quit (Client Quit) 2015-03-21T07:55:30Z mishoo_ joined #lisp 2015-03-21T07:58:01Z Bicyclidine quit (Ping timeout: 264 seconds) 2015-03-21T08:00:46Z nell quit (Quit: WeeChat 0.4.2) 2015-03-21T08:04:36Z cyphase quit (Ping timeout: 265 seconds) 2015-03-21T08:07:00Z ssake joined #lisp 2015-03-21T08:14:10Z vrrm quit (Ping timeout: 256 seconds) 2015-03-21T08:14:16Z hrr4 quit (Ping timeout: 272 seconds) 2015-03-21T08:15:04Z nell joined #lisp 2015-03-21T08:15:57Z ehu joined #lisp 2015-03-21T08:17:13Z cyphase joined #lisp 2015-03-21T08:23:34Z jewel joined #lisp 2015-03-21T08:23:46Z Joreji joined #lisp 2015-03-21T08:24:20Z Bicyclidine joined #lisp 2015-03-21T08:28:10Z jewel quit (Ping timeout: 255 seconds) 2015-03-21T08:29:00Z vaporatorius joined #lisp 2015-03-21T08:29:06Z Shinmera: Xach: I'm unfortunately just as clueless about that Plump error as you are. I also can't reproduce it on my system, so it's hard to guess. 2015-03-21T08:35:01Z joneshf-laptop quit (Remote host closed the connection) 2015-03-21T08:35:06Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T08:35:49Z milosn quit (Ping timeout: 264 seconds) 2015-03-21T08:36:36Z alexherbo2 quit (Quit: WeeChat 1.1.1) 2015-03-21T08:37:19Z alexherbo2 joined #lisp 2015-03-21T08:37:39Z milosn joined #lisp 2015-03-21T08:39:27Z przl joined #lisp 2015-03-21T08:40:34Z Joreji joined #lisp 2015-03-21T08:41:35Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T08:42:42Z jewel joined #lisp 2015-03-21T08:43:22Z Harag joined #lisp 2015-03-21T08:46:59Z specbot quit (Remote host closed the connection) 2015-03-21T08:46:59Z minion quit (Remote host closed the connection) 2015-03-21T08:47:00Z easye quit (Read error: Connection reset by peer) 2015-03-21T08:47:09Z Joreji joined #lisp 2015-03-21T08:47:23Z kcj quit (Read error: Connection reset by peer) 2015-03-21T08:47:35Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T08:47:50Z specbot joined #lisp 2015-03-21T08:48:30Z minion joined #lisp 2015-03-21T08:51:07Z przl quit (Ping timeout: 255 seconds) 2015-03-21T08:52:09Z Joreji joined #lisp 2015-03-21T08:52:37Z beach: clhs with-slots 2015-03-21T08:52:37Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_w_slts.htm 2015-03-21T08:52:49Z beach: Can someone check the bottom of that page for me please? 2015-03-21T08:52:49Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T08:53:06Z beach: The examples of the "Qi"s have a parameter list in them. 2015-03-21T08:54:04Z beach: That seems to be incorrect syntax for SYMBOL-MACROLET. No? 2015-03-21T08:55:21Z jewel quit (Ping timeout: 265 seconds) 2015-03-21T08:55:33Z beach: ... as in "where Qi is (slot-entryi () (slot-value in 'slot-entryi))" 2015-03-21T08:55:33Z beach: 2015-03-21T08:55:51Z beach: What is the "()" doing there? 2015-03-21T08:57:49Z ASau joined #lisp 2015-03-21T08:58:47Z Joreji joined #lisp 2015-03-21T09:00:27Z Harag quit (Ping timeout: 246 seconds) 2015-03-21T09:00:27Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T09:00:29Z Shinmera: I'm guessing a mistake, since symbol-macrolet doesn't take a lambda-list. 2015-03-21T09:00:47Z Adlai quit (Ping timeout: 256 seconds) 2015-03-21T09:00:59Z zadock quit (Quit: Leaving) 2015-03-21T09:01:21Z Quadrescence: Shinmera, you seem like the kind of person to play league of legends, eh? 2015-03-21T09:01:33Z Shinmera: Quadrescence: What? 2015-03-21T09:01:38Z Quadrescence: err, nvm 2015-03-21T09:04:09Z beach: Note to self: Fix the description of the expansions of WITH-SLOTS in Common Lisp version 2. 2015-03-21T09:04:25Z Shinmera: Effectively the way they wrote it there is not conforming and won't even work at all 2015-03-21T09:05:06Z Shinmera: Since symbol-macrolet takes forms like (symbol expansion-form) 2015-03-21T09:06:20Z Shinmera: Though I might be missing something since I can't decipher what the meaning of the parts after the Qi 'definition' even try to say. 2015-03-21T09:06:23Z Joreji joined #lisp 2015-03-21T09:06:26Z Shinmera: *even is. 2015-03-21T09:06:30Z Shinmera: Ah, I'm not quite awake yet. 2015-03-21T09:08:06Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T09:08:23Z edgar-rft joined #lisp 2015-03-21T09:12:26Z beach: It would be better written like this: If slot-entryi is a symbol, then Qi is (slot-entryi (slot-value in 'slot-entryi)). If slot-entryi is of the form ... 2015-03-21T09:13:40Z Shinmera: Yeah. 2015-03-21T09:16:28Z ehu: hmm. I thought the git migration to gitlab was big. 2015-03-21T09:16:35Z ehu: I'm looking at the next step: Darcs. 2015-03-21T09:16:47Z ehu: 600+ repositories on c-l.net... 2015-03-21T09:16:51Z ehu: that's a lot bigger! 2015-03-21T09:18:33Z mishoo_ quit (Ping timeout: 265 seconds) 2015-03-21T09:23:29Z pt1 joined #lisp 2015-03-21T09:25:11Z justinmcp_ quit (Ping timeout: 244 seconds) 2015-03-21T09:25:17Z beach: ehu: Maybe you can encourage them to move to GIT first. 2015-03-21T09:26:02Z ehu: beach: that's an idea. I thought that if I did all the migrations at once, it costs me a lot of time, but probably less on the whole. 2015-03-21T09:26:09Z mishoo_ joined #lisp 2015-03-21T09:26:20Z ehu: but maybe I should start turning the tables indeed. 2015-03-21T09:28:06Z Adlai joined #lisp 2015-03-21T09:28:38Z robot-beethoven quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-03-21T09:30:26Z justinmcp joined #lisp 2015-03-21T09:34:30Z cyphase quit (Ping timeout: 265 seconds) 2015-03-21T09:39:10Z Vutral quit (Ping timeout: 256 seconds) 2015-03-21T09:39:33Z nell quit (Quit: WeeChat 0.4.2) 2015-03-21T09:41:13Z cadadar joined #lisp 2015-03-21T09:47:01Z cyphase joined #lisp 2015-03-21T09:47:27Z przl joined #lisp 2015-03-21T09:49:17Z Joreji joined #lisp 2015-03-21T09:49:36Z fikusz joined #lisp 2015-03-21T09:49:36Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T09:52:35Z przl quit (Ping timeout: 246 seconds) 2015-03-21T09:52:46Z joneshf-laptop joined #lisp 2015-03-21T09:53:13Z ndrei quit (Ping timeout: 255 seconds) 2015-03-21T09:53:38Z jewel joined #lisp 2015-03-21T09:54:43Z Joreji joined #lisp 2015-03-21T09:55:10Z xiaoguo quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2015-03-21T09:55:27Z ndrei joined #lisp 2015-03-21T09:56:15Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T09:57:44Z Karl_Dscc joined #lisp 2015-03-21T09:58:05Z oleo is now known as Guest48905 2015-03-21T09:58:52Z cadadar left #lisp 2015-03-21T09:59:14Z oleo_ joined #lisp 2015-03-21T09:59:34Z jewel quit (Ping timeout: 256 seconds) 2015-03-21T10:01:09Z Guest48905 quit (Ping timeout: 252 seconds) 2015-03-21T10:02:15Z gravicappa joined #lisp 2015-03-21T10:07:25Z cadadar joined #lisp 2015-03-21T10:09:24Z Joreji joined #lisp 2015-03-21T10:13:32Z devll joined #lisp 2015-03-21T10:13:47Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T10:14:37Z cyphase quit (Ping timeout: 265 seconds) 2015-03-21T10:15:31Z sz0 quit (Quit: My computer has gone to sleep. ZZZzzz…) 2015-03-21T10:17:41Z xiaoguo joined #lisp 2015-03-21T10:19:02Z Joreji joined #lisp 2015-03-21T10:19:37Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T10:20:50Z boogie quit (Remote host closed the connection) 2015-03-21T10:22:29Z sdothum joined #lisp 2015-03-21T10:23:03Z pt1 quit (Remote host closed the connection) 2015-03-21T10:24:02Z Joreji joined #lisp 2015-03-21T10:26:09Z schaueho joined #lisp 2015-03-21T10:26:10Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T10:27:07Z cyphase joined #lisp 2015-03-21T10:28:09Z Bicyclidine quit (Ping timeout: 265 seconds) 2015-03-21T10:28:54Z zunpre joined #lisp 2015-03-21T10:31:38Z Joreji joined #lisp 2015-03-21T10:33:42Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T10:33:58Z cadadar quit (Quit: Leaving.) 2015-03-21T10:39:02Z CrazyEddy quit (Remote host closed the connection) 2015-03-21T10:39:16Z Joreji joined #lisp 2015-03-21T10:39:31Z yCrazyEdd joined #lisp 2015-03-21T10:40:01Z yCrazyEdd is now known as CrazyEddy 2015-03-21T10:41:27Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T10:42:09Z hardenedapple joined #lisp 2015-03-21T10:44:17Z Vutral joined #lisp 2015-03-21T10:48:18Z Vutral quit (Excess Flood) 2015-03-21T10:48:28Z przl joined #lisp 2015-03-21T10:52:00Z Joreji joined #lisp 2015-03-21T10:53:31Z przl quit (Ping timeout: 255 seconds) 2015-03-21T10:55:08Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T10:56:06Z Vutral joined #lisp 2015-03-21T10:57:17Z pt1 joined #lisp 2015-03-21T10:58:33Z the_real_intinig joined #lisp 2015-03-21T10:59:26Z leo2007 joined #lisp 2015-03-21T11:00:39Z Joreji joined #lisp 2015-03-21T11:00:43Z faheem_ joined #lisp 2015-03-21T11:01:42Z Karl_Dscc quit (Remote host closed the connection) 2015-03-21T11:02:41Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T11:03:12Z ehu: I'll start with a smaller next step: eliminate CVS. 2015-03-21T11:03:22Z ehu: only 134 projects to migrate there. 2015-03-21T11:03:35Z pjb: It'd be time. 2015-03-21T11:03:53Z ehu: :-) 2015-03-21T11:03:53Z beach: Yeah, good plan. 2015-03-21T11:04:58Z ehu: I'm wondering how many of these 134 projects actuall still use CVS in the sense that maybe they have moved on to git, but on github. 2015-03-21T11:05:20Z the_real_intinig quit (Remote host closed the connection) 2015-03-21T11:05:57Z ehu: or maybe they have projects in gitlab now, but the old cvs repos was never cleared out... 2015-03-21T11:05:59Z ehu: hmm. 2015-03-21T11:06:20Z ehu: this requires a bit of figuring out. 2015-03-21T11:06:54Z pt1 quit (Remote host closed the connection) 2015-03-21T11:08:17Z Joreji joined #lisp 2015-03-21T11:10:05Z Ven joined #lisp 2015-03-21T11:11:17Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T11:11:29Z devll quit (Ping timeout: 245 seconds) 2015-03-21T11:12:20Z chu quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-03-21T11:13:55Z jewel joined #lisp 2015-03-21T11:15:03Z agumonkey joined #lisp 2015-03-21T11:15:16Z the_real_intinig joined #lisp 2015-03-21T11:16:56Z Joreji joined #lisp 2015-03-21T11:17:03Z ehu: figured it out: out of 134 projects, 14 already have a repository in GitLab. 2015-03-21T11:17:11Z ehu: I'll contact those. 2015-03-21T11:17:28Z ehu: the others need to choose between Subversion(+Trac) and Git(Lab) 2015-03-21T11:19:41Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T11:19:55Z xificurC joined #lisp 2015-03-21T11:20:11Z {-}grant joined #lisp 2015-03-21T11:21:14Z the_real_intinig quit (Remote host closed the connection) 2015-03-21T11:21:15Z jewel quit (Ping timeout: 250 seconds) 2015-03-21T11:24:24Z Bicyclidine joined #lisp 2015-03-21T11:27:16Z froggey quit (Ping timeout: 255 seconds) 2015-03-21T11:29:40Z {-}grant quit (Ping timeout: 256 seconds) 2015-03-21T11:31:37Z Shinmera: Xach: Do you have the commit ID handy from when the Plump build last succeeded? That would at least help me get a footing on when the failure might've been introduced. 2015-03-21T11:35:33Z smokeink_ quit (Quit: Angelic v4.4 - http://angelic.flexnet.org) 2015-03-21T11:35:39Z easye joined #lisp 2015-03-21T11:36:32Z schaueho quit (Ping timeout: 246 seconds) 2015-03-21T11:36:47Z mood: Shinmera: The error was introduced in commit e88178c... the second to last one. I get the error there, but not at the commit before that 2015-03-21T11:37:41Z Shinmera: Ok. Strange that I can't reproduce it on my end. 2015-03-21T11:37:54Z mood: Shinmera: SBCL 1.2.8? 2015-03-21T11:37:56Z Shinmera: I'm on 1.2.9 2015-03-21T11:38:56Z ehu: btw, I'm aware of the problems with cliki. I've contacted Vladimir about it. 2015-03-21T11:38:58Z mood: Hmm, perhaps it's caused by a bug in SBCL in 1.2.8? I don't know. I played around with the error a bit yesterday and couldn't really find any reason for it. 2015-03-21T11:40:37Z Shinmera: The only significant change in the UNREAD function that I assume is the failure point from the stack trace is that instead of just (speed 3) (safety 0) it now also has (space 0) (debug 0) and (compilation-speed 0). I guess I can remove those and see if that does anything. 2015-03-21T11:40:43Z k-stz joined #lisp 2015-03-21T11:41:17Z Shinmera: Though, well, I can't see if it does anything since I can't reproduce it, but that would be the first thing I'd try. 2015-03-21T11:41:41Z mood: Shinmera: Oh yes, UNREAD isn't the real source of the problem. I removed all DECLAIM's from lexer.lisp and the error persisted. 2015-03-21T11:41:52Z mood: The problem is in READ-TAG, somehow 2015-03-21T11:41:54Z Shinmera: Oh. hhhuh. 2015-03-21T11:42:14Z Shinmera: But read-tag didn't change in that commit 2015-03-21T11:42:42Z Vutral quit (Ping timeout: 256 seconds) 2015-03-21T11:43:38Z Shinmera: Well, I suppose it changed implicitly with the optimisations to the matchers. 2015-03-21T11:43:54Z mood: After removing the declaration from UNREAD the error started mentioning another function in lexer.lisp, then the next, etc. After all declarations were gone it mentioned the (FUNCALL (THE FUNCTION TEST)...) in READ-TAG 2015-03-21T11:44:23Z mood: Removing the THE FUNCTION part didn't get rid of the error either 2015-03-21T11:44:33Z Shinmera: Most mysterious. 2015-03-21T11:45:30Z Shinmera: Well, the optimisations didn't really do much for me, so I guess I can just revert to 58697fb for now. 2015-03-21T11:45:58Z the_real_intinig joined #lisp 2015-03-21T11:46:54Z agumonkey quit (Ping timeout: 245 seconds) 2015-03-21T11:47:06Z Quadrescence quit (Quit: This computer has gone to sleep) 2015-03-21T11:48:06Z thodg quit (Ping timeout: 246 seconds) 2015-03-21T11:48:42Z the_real_intinig quit (Remote host closed the connection) 2015-03-21T11:49:14Z przl joined #lisp 2015-03-21T11:53:14Z Mon_Ouie quit (Quit: WeeChat 1.1.1) 2015-03-21T11:53:22Z resttime quit (Quit: resttime) 2015-03-21T11:53:40Z Shinmera: mood: Would you be so kind to test it as it is now? I just reverted e88178c, but I can't tell if that fixes things. 2015-03-21T11:54:10Z mood: Shinmera: Yes, fixed 2015-03-21T11:54:21Z Shinmera: Ok, good. I'll leave it at that for now. 2015-03-21T11:54:43Z Shinmera: I still have to dive into the actual parser algorithm some day and optimise that. Adding declarations all over didn't save enough to be worth the trouble. 2015-03-21T11:55:30Z jtza8 joined #lisp 2015-03-21T11:56:42Z Vutral joined #lisp 2015-03-21T11:57:19Z Vutral quit (Excess Flood) 2015-03-21T11:58:09Z nalssee quit (Ping timeout: 245 seconds) 2015-03-21T12:02:56Z nalssee joined #lisp 2015-03-21T12:04:09Z mishoo_ quit (Ping timeout: 250 seconds) 2015-03-21T12:06:00Z remi`bd joined #lisp 2015-03-21T12:11:02Z przl quit (Ping timeout: 244 seconds) 2015-03-21T12:11:18Z hitecnologys__ is now known as hitecnologys 2015-03-21T12:11:51Z scymtym joined #lisp 2015-03-21T12:12:15Z tajjada joined #lisp 2015-03-21T12:12:56Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-03-21T12:14:39Z Beetny quit (Ping timeout: 244 seconds) 2015-03-21T12:16:17Z zadock joined #lisp 2015-03-21T12:17:10Z zadock quit (Remote host closed the connection) 2015-03-21T12:17:39Z the_real_intinig joined #lisp 2015-03-21T12:21:06Z the_real_intinig quit (Remote host closed the connection) 2015-03-21T12:26:28Z the_real_intinig joined #lisp 2015-03-21T12:27:32Z kobain quit (Ping timeout: 265 seconds) 2015-03-21T12:28:36Z przl joined #lisp 2015-03-21T12:35:24Z the_real_intinig quit (Remote host closed the connection) 2015-03-21T12:35:30Z DeadTrickster quit (Read error: No route to host) 2015-03-21T12:39:38Z em quit (Ping timeout: 272 seconds) 2015-03-21T12:43:42Z sword quit (Remote host closed the connection) 2015-03-21T12:44:28Z cyphase quit (Ping timeout: 256 seconds) 2015-03-21T12:44:40Z sword joined #lisp 2015-03-21T12:47:02Z smokeink joined #lisp 2015-03-21T12:47:09Z sword quit (Remote host closed the connection) 2015-03-21T12:49:06Z ghard joined #lisp 2015-03-21T12:52:35Z Ven joined #lisp 2015-03-21T12:53:18Z ziocroc joined #lisp 2015-03-21T12:55:23Z larion quit (Ping timeout: 256 seconds) 2015-03-21T12:55:59Z munksgaard quit (Ping timeout: 244 seconds) 2015-03-21T12:56:12Z larion joined #lisp 2015-03-21T12:57:25Z cyphase joined #lisp 2015-03-21T12:57:44Z Karl_Dscc joined #lisp 2015-03-21T12:57:53Z munksgaard joined #lisp 2015-03-21T12:58:38Z Bicyclidine quit (Ping timeout: 272 seconds) 2015-03-21T13:01:29Z yeticry quit (Ping timeout: 245 seconds) 2015-03-21T13:01:32Z jewel joined #lisp 2015-03-21T13:02:55Z yeticry joined #lisp 2015-03-21T13:08:07Z Joreji joined #lisp 2015-03-21T13:08:59Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T13:09:06Z danlentz quit (Ping timeout: 265 seconds) 2015-03-21T13:09:14Z danlentz_ joined #lisp 2015-03-21T13:10:07Z the_real_intinig joined #lisp 2015-03-21T13:10:53Z jewel quit (Ping timeout: 250 seconds) 2015-03-21T13:11:25Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-03-21T13:14:13Z larion quit (Ping timeout: 264 seconds) 2015-03-21T13:14:30Z the_real_intinig quit (Ping timeout: 256 seconds) 2015-03-21T13:15:08Z Joreji joined #lisp 2015-03-21T13:15:43Z larion joined #lisp 2015-03-21T13:15:49Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T13:15:50Z hitecnologys quit (Quit: hitecnologys) 2015-03-21T13:15:58Z pt1 joined #lisp 2015-03-21T13:16:33Z hitecnologys joined #lisp 2015-03-21T13:16:57Z przl quit (Ping timeout: 252 seconds) 2015-03-21T13:17:09Z jtza8 quit (Remote host closed the connection) 2015-03-21T13:17:55Z vaporatorius quit (Remote host closed the connection) 2015-03-21T13:17:56Z hitecnologys quit (Client Quit) 2015-03-21T13:19:42Z Joreji joined #lisp 2015-03-21T13:20:31Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T13:21:00Z hitecnologys joined #lisp 2015-03-21T13:22:01Z yeticry quit (Ping timeout: 264 seconds) 2015-03-21T13:23:43Z jewel joined #lisp 2015-03-21T13:23:56Z yeticry joined #lisp 2015-03-21T13:24:06Z cadadar joined #lisp 2015-03-21T13:24:34Z nalssee quit (Ping timeout: 265 seconds) 2015-03-21T13:25:01Z Bicyclidine joined #lisp 2015-03-21T13:25:54Z nalssee joined #lisp 2015-03-21T13:26:19Z Joreji joined #lisp 2015-03-21T13:27:41Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T13:30:14Z danlentz_ quit (Ping timeout: 246 seconds) 2015-03-21T13:31:10Z futpib joined #lisp 2015-03-21T13:31:19Z Joreji joined #lisp 2015-03-21T13:32:05Z SpikeMaster joined #lisp 2015-03-21T13:32:13Z danlentz joined #lisp 2015-03-21T13:33:00Z attila_lendvai joined #lisp 2015-03-21T13:34:16Z Ven joined #lisp 2015-03-21T13:34:33Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T13:35:23Z vaporatorius joined #lisp 2015-03-21T13:35:49Z remi`bd quit (Quit: leaving) 2015-03-21T13:36:14Z pt1 quit (Remote host closed the connection) 2015-03-21T13:38:12Z Vutral joined #lisp 2015-03-21T13:39:28Z pt1 joined #lisp 2015-03-21T13:39:58Z Joreji joined #lisp 2015-03-21T13:40:42Z Vutral quit (Excess Flood) 2015-03-21T13:42:36Z przl joined #lisp 2015-03-21T13:45:01Z selat joined #lisp 2015-03-21T13:45:12Z yrk joined #lisp 2015-03-21T13:45:46Z yrk quit (Changing host) 2015-03-21T13:45:46Z yrk joined #lisp 2015-03-21T13:46:08Z yasha9 quit (Ping timeout: 272 seconds) 2015-03-21T13:46:13Z danlentz_ joined #lisp 2015-03-21T13:46:25Z danlentz quit (Ping timeout: 250 seconds) 2015-03-21T13:46:25Z danlentz_ is now known as danlentz 2015-03-21T13:46:32Z attila_lendvai quit (Ping timeout: 264 seconds) 2015-03-21T13:46:33Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T13:46:39Z Joreji joined #lisp 2015-03-21T13:48:32Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T13:49:11Z przl quit (Ping timeout: 246 seconds) 2015-03-21T13:49:37Z pacon quit (Read error: Connection reset by peer) 2015-03-21T13:51:05Z wheelsucker quit (Quit: Client Quit) 2015-03-21T13:51:30Z pacon joined #lisp 2015-03-21T13:52:26Z SpikeMaster quit (Remote host closed the connection) 2015-03-21T13:54:17Z Joreji joined #lisp 2015-03-21T13:54:57Z Alfr joined #lisp 2015-03-21T13:57:08Z przl joined #lisp 2015-03-21T13:58:41Z Karl_Dscc quit (Remote host closed the connection) 2015-03-21T13:59:10Z hiroakip joined #lisp 2015-03-21T13:59:20Z hiroaki joined #lisp 2015-03-21T13:59:27Z oleo_ quit (Quit: Leaving) 2015-03-21T13:59:27Z yasha9 joined #lisp 2015-03-21T14:00:47Z pt1 quit (Remote host closed the connection) 2015-03-21T14:00:47Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T14:00:56Z Joreji joined #lisp 2015-03-21T14:04:00Z wws joined #lisp 2015-03-21T14:04:10Z billstclair quit (Disconnected by services) 2015-03-21T14:04:13Z wws is now known as billstclair 2015-03-21T14:04:17Z billstclair quit (Changing host) 2015-03-21T14:04:17Z billstclair joined #lisp 2015-03-21T14:04:44Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-03-21T14:06:47Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T14:06:56Z pacon2 joined #lisp 2015-03-21T14:07:21Z oleo joined #lisp 2015-03-21T14:08:05Z xiaoguo quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2015-03-21T14:09:15Z pacon quit (Read error: Connection reset by peer) 2015-03-21T14:10:31Z froggey joined #lisp 2015-03-21T14:11:09Z cadadar quit (Quit: Leaving.) 2015-03-21T14:11:53Z clop quit (Ping timeout: 246 seconds) 2015-03-21T14:12:07Z Patzy quit (Quit: leaving) 2015-03-21T14:12:38Z Joreji joined #lisp 2015-03-21T14:13:19Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T14:14:12Z mishoo_ joined #lisp 2015-03-21T14:14:42Z Ven joined #lisp 2015-03-21T14:16:56Z nalssee quit (Quit: Leaving) 2015-03-21T14:17:39Z cluck joined #lisp 2015-03-21T14:17:43Z pt1 joined #lisp 2015-03-21T14:19:16Z Joreji joined #lisp 2015-03-21T14:20:08Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T14:23:21Z Vutral joined #lisp 2015-03-21T14:23:34Z loz1 quit (Ping timeout: 245 seconds) 2015-03-21T14:24:10Z Vutral quit (Excess Flood) 2015-03-21T14:25:50Z Joreji joined #lisp 2015-03-21T14:28:31Z hitecnologys quit (Quit: ZNC - http://znc.in) 2015-03-21T14:29:13Z hitecnologys joined #lisp 2015-03-21T14:34:39Z cyphase quit (Ping timeout: 265 seconds) 2015-03-21T14:36:11Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T14:36:44Z hiroakip quit (Ping timeout: 244 seconds) 2015-03-21T14:36:46Z smokeink quit (Quit: Lost terminal) 2015-03-21T14:36:49Z hiroaki quit (Ping timeout: 256 seconds) 2015-03-21T14:36:53Z leo2007 left #lisp 2015-03-21T14:37:31Z loz1 joined #lisp 2015-03-21T14:38:20Z Vutral joined #lisp 2015-03-21T14:42:41Z larion quit (Ping timeout: 246 seconds) 2015-03-21T14:43:56Z pt1 quit (Remote host closed the connection) 2015-03-21T14:44:22Z pacon2 is now known as pacon 2015-03-21T14:44:50Z dagnachewa joined #lisp 2015-03-21T14:45:01Z pacon quit (Quit: Leaving) 2015-03-21T14:46:40Z Joreji joined #lisp 2015-03-21T14:47:13Z cyphase joined #lisp 2015-03-21T14:47:20Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T14:50:07Z larion joined #lisp 2015-03-21T14:51:56Z pt1 joined #lisp 2015-03-21T14:53:14Z Joreji joined #lisp 2015-03-21T14:54:45Z jcart joined #lisp 2015-03-21T14:54:51Z jcart quit (Max SendQ exceeded) 2015-03-21T14:55:32Z Bicyclid1ne joined #lisp 2015-03-21T14:55:44Z Bicyclidine quit (Ping timeout: 252 seconds) 2015-03-21T14:57:43Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T14:58:14Z Joreji joined #lisp 2015-03-21T14:58:45Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T15:00:04Z pt1 quit (Remote host closed the connection) 2015-03-21T15:03:14Z Joreji joined #lisp 2015-03-21T15:03:57Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T15:05:09Z larion quit (Ping timeout: 244 seconds) 2015-03-21T15:05:34Z em joined #lisp 2015-03-21T15:06:04Z frkout joined #lisp 2015-03-21T15:11:00Z em quit (Ping timeout: 272 seconds) 2015-03-21T15:11:38Z yeticry quit (Ping timeout: 272 seconds) 2015-03-21T15:12:37Z pavelpenev joined #lisp 2015-03-21T15:13:09Z Ethan- quit (Ping timeout: 246 seconds) 2015-03-21T15:15:01Z jleija joined #lisp 2015-03-21T15:15:51Z billstclair quit (Quit: Linkinus - http://linkinus.com) 2015-03-21T15:19:32Z munksgaard quit (Read error: Connection reset by peer) 2015-03-21T15:19:47Z przl quit (Ping timeout: 246 seconds) 2015-03-21T15:20:00Z Joreji joined #lisp 2015-03-21T15:20:55Z sol_ joined #lisp 2015-03-21T15:23:25Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-03-21T15:23:26Z munksgaard joined #lisp 2015-03-21T15:24:03Z billstclair joined #lisp 2015-03-21T15:24:21Z clop joined #lisp 2015-03-21T15:25:06Z pt1 joined #lisp 2015-03-21T15:25:55Z Karl_Dscc joined #lisp 2015-03-21T15:27:33Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T15:28:41Z d4ryus_ joined #lisp 2015-03-21T15:30:44Z Patzy joined #lisp 2015-03-21T15:31:29Z d4ryus quit (Ping timeout: 245 seconds) 2015-03-21T15:32:41Z yeticry joined #lisp 2015-03-21T15:35:44Z d4ryus_ is now known as d4ryus 2015-03-21T15:38:40Z faheem_: How about "Cleave it with Cleavir"? 2015-03-21T15:39:45Z drmeister: Hello 2015-03-21T15:40:23Z sol_ quit (Ping timeout: 250 seconds) 2015-03-21T15:40:31Z faheem_: Hey Chris. How's it going? 2015-03-21T15:40:37Z danlentz_ joined #lisp 2015-03-21T15:40:37Z danlentz quit (Ping timeout: 264 seconds) 2015-03-21T15:40:37Z danlentz_ is now known as danlentz 2015-03-21T15:41:51Z pt1 quit (Remote host closed the connection) 2015-03-21T15:44:59Z Joreji joined #lisp 2015-03-21T15:45:14Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T15:45:52Z xiaoguo joined #lisp 2015-03-21T15:46:29Z przl joined #lisp 2015-03-21T15:48:11Z drmeister: I'm working on compiling CLOS with Cleavir/Clasp - there are tricky bootstrapping issues and features of the ECL code that are causing Cleavir to stumble. 2015-03-21T15:48:26Z drmeister: I'm currently compiling this function. It has a DEFCONSTANT right in the middle of it. 2015-03-21T15:49:07Z drmeister: http://paste.lisp.org/display/146414 2015-03-21T15:49:31Z drmeister: beach: Are you online by any chance? 2015-03-21T15:49:45Z Ven joined #lisp 2015-03-21T15:50:18Z Joreji joined #lisp 2015-03-21T15:50:31Z drmeister: Cleavir is trying to EVAL the DEFCONSTANT in the current environment. It recursively unwinds the environment with successive calls to EVAL and hits the global environment where it doesn't know that CLASS is a lexical variable. 2015-03-21T15:50:56Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T15:50:59Z drmeister: I can see it unwind the environment right past the CLASS lexical variable definition. 2015-03-21T15:51:34Z faheem_: drmeister: is CLOS the last major bit? 2015-03-21T15:51:55Z xiaoguo quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2015-03-21T15:51:56Z przl quit (Ping timeout: 264 seconds) 2015-03-21T15:52:40Z malbertife joined #lisp 2015-03-21T15:53:02Z drmeister: Here is the SLDB backtrace. 2015-03-21T15:53:03Z drmeister: http://paste.lisp.org/display/146415 2015-03-21T15:53:19Z drmeister: faheem_: Yes - my experience has been once I get through CLOS it should be clear sailing. 2015-03-21T15:53:43Z drmeister: This debugging experience is made so much better by SLIME 2015-03-21T15:53:58Z faheem_: drmeister: ok, that's good. must have been quite a journey, but it sounds like you are nearly there. 2015-03-21T15:54:00Z guicho joined #lisp 2015-03-21T15:54:53Z drmeister: Notice frame 18 - it's in the global environment trying valiantly to eval: (CORE:*MAKE-CONSTANT 'CLOS::+THE-STANDARD-CLASS+ CLASS) 2015-03-21T15:55:07Z yrk quit (Ping timeout: 250 seconds) 2015-03-21T15:55:16Z drmeister: But what's this? The lexical variable CLASS doesn't exist in the global environment! 2015-03-21T15:55:40Z drmeister: We passed the CLASS lexical variable in frame 73! 2015-03-21T15:57:08Z danlentz quit (Ping timeout: 256 seconds) 2015-03-21T15:57:50Z drmeister: Oh wait - beach has a very long comment on EVAL - I should probably read that. 2015-03-21T15:58:32Z drmeister: For those of you at home following along... 2015-03-21T15:58:35Z sol__ quit (Ping timeout: 250 seconds) 2015-03-21T15:58:37Z drmeister: https://www.irccloud.com/pastebin/kMAwVk2i 2015-03-21T15:59:32Z bandrami joined #lisp 2015-03-21T15:59:34Z em joined #lisp 2015-03-21T16:00:29Z przl joined #lisp 2015-03-21T16:00:33Z sol__ joined #lisp 2015-03-21T16:02:02Z futpib quit (Remote host closed the connection) 2015-03-21T16:03:12Z drmeister: Ho boy. 2015-03-21T16:03:30Z drmeister: beach: ping!?! 2015-03-21T16:03:53Z futpib joined #lisp 2015-03-21T16:05:10Z drmeister: DEFCONSTANT using a lexical variable within a DEFUN - pain in the backside. 2015-03-21T16:05:32Z beach: I am here. 2015-03-21T16:05:38Z boogie joined #lisp 2015-03-21T16:07:03Z Joreji joined #lisp 2015-03-21T16:07:28Z drmeister: Hurray! 2015-03-21T16:08:26Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T16:08:33Z drmeister: I'm thinking I should take +the-standard-class+ and make it a DEFVAR outside of this DEFUN and change (defconstant +the-standard-class+ class) to (setq +the-standard-class+ class) 2015-03-21T16:08:54Z danlentz joined #lisp 2015-03-21T16:09:00Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-03-21T16:09:10Z drmeister: That would work around this problem. This code is the original ECL CLOS source code. 2015-03-21T16:09:27Z drmeister: Do you have any advice? 2015-03-21T16:09:29Z beach: It is unusual to have a DEFCONSTANT form inside a function. 2015-03-21T16:09:49Z drmeister: Agreed. 2015-03-21T16:10:00Z slyrus joined #lisp 2015-03-21T16:10:06Z beach: It is hard to give any advice because they obviously do some unusual things for reasons of bootstrapping. 2015-03-21T16:10:15Z drmeister: It works for my bootstrapping compiler because it treads constants like global variables that can't be changed. 2015-03-21T16:10:16Z beach: And I don't know the details of what it is that they are doing. 2015-03-21T16:10:22Z asoneth joined #lisp 2015-03-21T16:10:37Z slyrus: good morning 2015-03-21T16:10:44Z beach: Hi slyrus. 2015-03-21T16:11:16Z drmeister: They are setting this variable +the-standard-class+ to (find-class 'standard-class) as soon as standard-class gets created. 2015-03-21T16:11:23Z Bicyclid1ne: it's unusual, but it still ought to work... 2015-03-21T16:11:31Z drmeister: Hey slyrus 2015-03-21T16:11:32Z beach: drmeister: I agree that if the reason it worked before is that the compiler didn't treat it as a constant, you had better turn it into an ordinary variable for it to work now. 2015-03-21T16:11:52Z hardenedapple quit (Ping timeout: 256 seconds) 2015-03-21T16:11:57Z slyrus: how are SICL, Cleaver, clasp, etc... coming along? 2015-03-21T16:12:04Z slyrus: cleavir, I mean 2015-03-21T16:12:15Z beach: slyrus: We are making steady progress. 2015-03-21T16:12:22Z sz0 joined #lisp 2015-03-21T16:13:11Z drmeister: froggey mentioned that clossete uses (defvar the-class-standard-class) for this purpose. I see a lot of parallels between clossete and ECL CLOS - does anyone know if ECL CLOS was derived from it? 2015-03-21T16:13:11Z Joreji joined #lisp 2015-03-21T16:13:11Z beach: drmeister: I agree with Bicyclid1ne. It ought to work. 2015-03-21T16:13:26Z drmeister: Do you mean the DEFCONSTANT within the DEFUN aught to work? 2015-03-21T16:13:47Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T16:13:58Z beach: Sure, as long as the function is only called once. 2015-03-21T16:14:23Z drmeister: If so then I must do something different with my EVAL: 2015-03-21T16:14:26Z drmeister: https://www.irccloud.com/pastebin/gTmwCL9Q 2015-03-21T16:14:33Z slyrus: beach: good to hear that 2015-03-21T16:14:35Z beach: It depends a bit on your definition of DEFCONSTANT of course. 2015-03-21T16:14:37Z drmeister: I need to eval the form in the "env". 2015-03-21T16:15:14Z drmeister: The form this EVAL is trying to eval is (CORE:*MAKE-CONSTANT 'CLOS::+THE-STANDARD-CLASS+ CLASS) 2015-03-21T16:15:38Z drmeister: "env" is a Cleavir environment and it contains the lexical binding for CLASS - but I don't know what to do with it. 2015-03-21T16:15:52Z Bicyclid1ne: Uh, look up the value? 2015-03-21T16:16:07Z Bicyclid1ne: I'm confused. You have an interpreter, right? You must have an eval-in-env function. 2015-03-21T16:16:15Z beach: drmeister: Are you telling us that it is trying to do that at compile time? 2015-03-21T16:16:34Z drmeister: I know how to work with my lexical environments, not cleavir lexical environments - they are very different objects. 2015-03-21T16:16:56Z beach: drmeister: It shouldn't happen at compile time. 2015-03-21T16:16:59Z drmeister: beach: Now that you mention it - yes - that's part of the problem. 2015-03-21T16:17:16Z beach: Let me read the Common Lisp HyperSpec page for DEFCONSTANT. 2015-03-21T16:17:23Z drmeister: It's a DEFCONSTANT - it has the compile time side effect of declaring the constant doesn't it? 2015-03-21T16:17:35Z drmeister: Me too. 2015-03-21T16:17:42Z Bicyclid1ne: ...at top level, yeah, not in the middle of a function 2015-03-21T16:17:48Z beach: drmeister: Only of it is a top-level form. 2015-03-21T16:18:48Z beach: "defconstant normally appears as a top level form, but it is meaningful for it to appear as a non-top-level form. However, the compile-time side effects described below only take place when defconstant appears as a top level form." 2015-03-21T16:18:49Z munksgaard quit (Ping timeout: 256 seconds) 2015-03-21T16:18:49Z drmeister: Ok, it's definitely not top-level here. Is this a Cleavir issue that it's treating it like a top-level form because it's wrapped in an EVAL-WHEN? 2015-03-21T16:19:18Z beach: It could be. 2015-03-21T16:19:21Z guicho_ joined #lisp 2015-03-21T16:19:23Z drmeister: beach: Did you see the SLDB backtrace? 2015-03-21T16:19:33Z beach: Looking now... 2015-03-21T16:19:35Z drmeister: It lays everything out very nicely. 2015-03-21T16:19:49Z Joreji joined #lisp 2015-03-21T16:19:52Z drmeister: I am so, so glad I put the time into getting SLIME to work with Clasp. 2015-03-21T16:20:26Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T16:20:45Z beach: It definitely should not call EVAL at compile time. 2015-03-21T16:21:51Z drmeister: Here's the relevant parts of the backtrace - I expanded out one more frame: 2015-03-21T16:21:54Z drmeister: https://www.irccloud.com/pastebin/e9kfJMMn 2015-03-21T16:22:50Z drmeister: Frame 173 is where it compiles the EVAL-WHEN - for some reason Cleavir decides to EVAL it 2015-03-21T16:22:51Z beach: It doesn't look right. 2015-03-21T16:22:51Z Karl_Dscc quit (Remote host closed the connection) 2015-03-21T16:23:11Z Bicyclid1ne: so you have, like, (defun foo ... (defconstant ...)), right? 2015-03-21T16:23:12Z guicho quit (Ping timeout: 256 seconds) 2015-03-21T16:23:40Z Bicyclid1ne: if the eval-when is all the way in there cleavir should pretty much just ignore anything in (eval-when (:compile-toplevel) ...) 2015-03-21T16:23:50Z beach: It definitely should. 2015-03-21T16:24:16Z lbolla joined #lisp 2015-03-21T16:24:44Z beach: drmeister: I'll investigate, but it shall have to wait until tomorrow morning UTC+1. 2015-03-21T16:25:27Z remi`bd joined #lisp 2015-03-21T16:26:21Z Joreji joined #lisp 2015-03-21T16:27:04Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T16:27:33Z drmeister: ok 2015-03-21T16:28:01Z beach: Now I need to go spend time with my (admittedly small) family. 2015-03-21T16:28:30Z CrazyEddy quit (Ping timeout: 252 seconds) 2015-03-21T16:29:59Z CrazyEddy joined #lisp 2015-03-21T16:30:37Z drmeister: That takes priority. 2015-03-21T16:31:17Z beach: Preliminary analysis confirms that if *compiler* is COMPILE-FILE then it evaluates even when the form is not top-level. 2015-03-21T16:31:29Z ASau quit (Ping timeout: 245 seconds) 2015-03-21T16:31:33Z faheem_: beach: you should take the stance that you "admit nothing". 2015-03-21T16:31:56Z beach: faheem_: Might not hold up, though. 2015-03-21T16:32:09Z beach: drmeister: I have a small test case, so it should be easy to track down. 2015-03-21T16:32:15Z ASau joined #lisp 2015-03-21T16:32:24Z beach vanishes. 2015-03-21T16:32:27Z drmeister: I agree 2015-03-21T16:32:55Z Joreji joined #lisp 2015-03-21T16:32:55Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T16:33:09Z drmeister: faheem_: We all have bugs - find 'em - fix 'em - move on. 2015-03-21T16:34:05Z faheem_: drmeister: i think you missed my joke. 2015-03-21T16:34:14Z faheem_: well, hardly a joke 2015-03-21T16:34:20Z drmeister: Oh - probably - sorry. 2015-03-21T16:34:36Z faheem_: so might have beach, actually 2015-03-21T16:35:20Z frkout quit (Remote host closed the connection) 2015-03-21T16:36:39Z mj-0 joined #lisp 2015-03-21T16:36:47Z drmeister: faheem_: We all make jokes that people miss - find 'em - fix 'em - move on. :-) 2015-03-21T16:37:05Z faheem_: drmeister: :-) 2015-03-21T16:37:08Z przl quit (Ping timeout: 272 seconds) 2015-03-21T16:37:56Z Joreji joined #lisp 2015-03-21T16:38:32Z drmeister: Hmm, what to do now. 2015-03-21T16:39:18Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T16:39:36Z bgs100 joined #lisp 2015-03-21T16:39:41Z zadock joined #lisp 2015-03-21T16:40:12Z eugeneia joined #lisp 2015-03-21T16:40:15Z eugeneia: Hi all 2015-03-21T16:40:29Z schaueho joined #lisp 2015-03-21T16:40:43Z mj-0 quit (Remote host closed the connection) 2015-03-21T16:40:44Z eugeneia: is there a function in the standard that could help me to get a unique identifier across the OS? 2015-03-21T16:40:49Z przl joined #lisp 2015-03-21T16:41:15Z eugeneia: E.g. to get the UNIX pid would be one thing. 2015-03-21T16:41:40Z larion joined #lisp 2015-03-21T16:41:58Z eugeneia: or something like ccl's TEMP-PATHNAME 2015-03-21T16:42:55Z Joreji joined #lisp 2015-03-21T16:43:08Z danlentz quit (Ping timeout: 246 seconds) 2015-03-21T16:43:19Z Patzy quit (Ping timeout: 244 seconds) 2015-03-21T16:43:41Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T16:44:04Z Patzy joined #lisp 2015-03-21T16:44:48Z faheem_: eugeneia: proposed use? 2015-03-21T16:45:14Z eugeneia: faheem_: establish a unique name for the running CL instance. 2015-03-21T16:45:14Z przl quit (Ping timeout: 245 seconds) 2015-03-21T16:46:52Z boogie quit (Remote host closed the connection) 2015-03-21T16:47:16Z danlentz joined #lisp 2015-03-21T16:47:19Z faheem_: eugeneia: dumb question, but wouldn't the process id do? 2015-03-21T16:47:37Z eugeneia: faheem_: yeah sure, how do I get it in a portable way though? 2015-03-21T16:47:53Z boogie joined #lisp 2015-03-21T16:49:32Z Joreji joined #lisp 2015-03-21T16:49:39Z faheem_: eugeneia: hmm. doesn't the standard have a portable way to call out to the underlying system? and when you say portable, you want this to work for any OS? 2015-03-21T16:50:13Z Bicyclid1ne: no, it doesn't 2015-03-21T16:50:44Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T16:50:46Z eugeneia: faheem_: :) no 2015-03-21T16:50:58Z ASau quit (Remote host closed the connection) 2015-03-21T16:51:02Z faheem_: Bicyclid1ne: there is no portable way to do the equivalent of `os.system(...)`? 2015-03-21T16:51:15Z eugeneia: faheem_: of course not 2015-03-21T16:51:39Z Bicyclid1ne: well, portable, yes, but it's not in the standard 2015-03-21T16:51:49Z eugeneia: faheem_: you have to use uiop or a similar wrapper 2015-03-21T16:52:26Z pjb: pids are not unique, given that they're recycled. 2015-03-21T16:52:48Z xrash joined #lisp 2015-03-21T16:52:53Z boogie quit (Ping timeout: 265 seconds) 2015-03-21T16:52:57Z eugeneia: pjb: uniqueness is only required for as long as the process runs in my case 2015-03-21T16:53:34Z ASau joined #lisp 2015-03-21T16:55:07Z Bicyclid1ne quit (Quit: leaving) 2015-03-21T16:56:04Z Joreji joined #lisp 2015-03-21T16:58:04Z theseb joined #lisp 2015-03-21T16:59:29Z ASau quit (Remote host closed the connection) 2015-03-21T16:59:43Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T17:00:24Z badkins joined #lisp 2015-03-21T17:01:04Z zacharias joined #lisp 2015-03-21T17:02:41Z Joreji joined #lisp 2015-03-21T17:03:39Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T17:03:55Z mishoo_ quit (Ping timeout: 252 seconds) 2015-03-21T17:03:55Z zacharias_ quit (Ping timeout: 252 seconds) 2015-03-21T17:04:19Z stardiviner joined #lisp 2015-03-21T17:05:40Z clop quit (Ping timeout: 255 seconds) 2015-03-21T17:05:45Z ewiltshi_ quit (Ping timeout: 250 seconds) 2015-03-21T17:05:59Z ewiltshi joined #lisp 2015-03-21T17:06:11Z faheem_: eugeneia: excuse my ignorance. I don't know much about CL. 2015-03-21T17:07:31Z Alfr quit (Quit: Leaving) 2015-03-21T17:08:28Z hiyosi quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-03-21T17:09:10Z tajjada quit (Remote host closed the connection) 2015-03-21T17:09:18Z Joreji joined #lisp 2015-03-21T17:09:56Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T17:10:22Z ndrei quit (Remote host closed the connection) 2015-03-21T17:11:23Z yrk joined #lisp 2015-03-21T17:11:57Z yrk quit (Changing host) 2015-03-21T17:11:57Z yrk joined #lisp 2015-03-21T17:12:27Z Lycurgus joined #lisp 2015-03-21T17:12:51Z ndrei joined #lisp 2015-03-21T17:13:41Z hitecnologys: eugeneia: are you sure you need PID as unique value? I'd go for timestamps since they rarely repeat and are easy to get. 2015-03-21T17:13:52Z RenRenJuan quit (Ping timeout: 272 seconds) 2015-03-21T17:14:31Z pjb: but unless you're using nanosecond timestamps, nowadays, it won't be unique. 2015-03-21T17:15:05Z hitecnologys: It will be with 1 second precison. 2015-03-21T17:15:20Z pjb: Yes, you can as well take a constant then. 2015-03-21T17:15:35Z hitecnologys: Nobody told it need to be unique several times a second. 2015-03-21T17:15:35Z boogie joined #lisp 2015-03-21T17:15:54Z Longlius quit (Ping timeout: 256 seconds) 2015-03-21T17:15:54Z pjb: 42 is unique once too. 2015-03-21T17:15:54Z Joreji joined #lisp 2015-03-21T17:16:12Z hitecnologys: You can't take a constant since it's always the same. Timestamps change each run if program ran more than several seconds. 2015-03-21T17:16:39Z pjb: p& p& -> fail. 2015-03-21T17:16:40Z nyef: ... Unless someone is playing sillybuggers with the system clock, that is. d-: 2015-03-21T17:16:50Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T17:17:52Z hitecnologys: nyef: there are many more cases where clocks go backwards but they don't happen every day so there's no point considering them too if you're writing simple system that is allowed to crash sometimes. 2015-03-21T17:18:31Z hitecnologys: pjb: well, eugeneia didn't tell his thing should support that kind of things. 2015-03-21T17:18:55Z ndrei quit (Remote host closed the connection) 2015-03-21T17:18:57Z pjb: Yes, that's why we should start with 42. 42 is quite a unique number. 2015-03-21T17:19:14Z hitecnologys: pjb: if we're going that path, there could be two processes with the same PID on the same machine. 2015-03-21T17:19:27Z hitecnologys: pjb: nothing is absolutely unique. 2015-03-21T17:19:45Z hitecnologys: pjb: hence we have to make certain assumptions. 2015-03-21T17:20:05Z nyef: There shouldn't be two processes with the same PID in the same domain and the same time. 2015-03-21T17:20:28Z mrSpec joined #lisp 2015-03-21T17:20:38Z boogie quit (Remote host closed the connection) 2015-03-21T17:20:46Z hitecnologys: One could run two copies of programs in two VMs and there's a change they get the same process ID. If you're working with hardware, you're screwed. 2015-03-21T17:21:06Z hitecnologys: s/change/chance/ 2015-03-21T17:21:16Z ndrei joined #lisp 2015-03-21T17:21:41Z pjb: notably, if your using shared file systems (eg. nfs), you need wider unique numbers than pids. 2015-03-21T17:21:49Z pjb: s/your/you're/ 2015-03-21T17:22:22Z hitecnologys: Right, that too. 2015-03-21T17:22:32Z Joreji joined #lisp 2015-03-21T17:22:36Z boogie joined #lisp 2015-03-21T17:22:51Z hitecnologys: You can probably just take UUIDv3. 116 bits of randomness is enough for everyone. 2015-03-21T17:23:00Z JuanDaugherty quit (Remote host closed the connection) 2015-03-21T17:24:02Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T17:24:24Z not-not-pyon quit (Ping timeout: 245 seconds) 2015-03-21T17:27:55Z mj-0 joined #lisp 2015-03-21T17:29:40Z boogie quit (Remote host closed the connection) 2015-03-21T17:29:42Z Joreji joined #lisp 2015-03-21T17:29:43Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T17:31:26Z kobain joined #lisp 2015-03-21T17:34:42Z Joreji joined #lisp 2015-03-21T17:35:22Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T17:37:10Z zunpre quit (Ping timeout: 255 seconds) 2015-03-21T17:38:30Z nell joined #lisp 2015-03-21T17:38:48Z not-not-pyon joined #lisp 2015-03-21T17:39:14Z defaultxr joined #lisp 2015-03-21T17:39:55Z not-not-pyon quit (Client Quit) 2015-03-21T17:40:53Z Joreji joined #lisp 2015-03-21T17:41:09Z pyon joined #lisp 2015-03-21T17:41:50Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T17:42:49Z dfinninger joined #lisp 2015-03-21T17:43:55Z JuanDaugherty joined #lisp 2015-03-21T17:44:09Z ghard quit (Remote host closed the connection) 2015-03-21T17:47:34Z Joreji joined #lisp 2015-03-21T17:47:54Z mishoo_ joined #lisp 2015-03-21T17:48:25Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T17:48:55Z danlentz quit (Ping timeout: 256 seconds) 2015-03-21T17:49:46Z danlentz joined #lisp 2015-03-21T17:51:26Z yrk quit (Read error: Connection reset by peer) 2015-03-21T17:51:32Z Patzy quit (Remote host closed the connection) 2015-03-21T17:51:39Z Patzy joined #lisp 2015-03-21T17:52:07Z zunpre joined #lisp 2015-03-21T17:52:28Z mj-0 quit (Remote host closed the connection) 2015-03-21T17:53:19Z yrk joined #lisp 2015-03-21T17:53:53Z yrk quit (Changing host) 2015-03-21T17:53:53Z yrk joined #lisp 2015-03-21T17:54:12Z Joreji joined #lisp 2015-03-21T17:54:57Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T17:58:33Z schaueho quit (Ping timeout: 256 seconds) 2015-03-21T17:58:41Z ejbs joined #lisp 2015-03-21T18:00:15Z mj-0 joined #lisp 2015-03-21T18:00:36Z Joreji joined #lisp 2015-03-21T18:04:01Z Longlius joined #lisp 2015-03-21T18:05:29Z hardenedapple joined #lisp 2015-03-21T18:07:29Z asoneth quit (Ping timeout: 246 seconds) 2015-03-21T18:07:40Z LiamH joined #lisp 2015-03-21T18:08:53Z mega1: Is there a recognized 'syntax' for errors signalled by some evaluated form similar to '=>' for the return value? 2015-03-21T18:10:07Z hardenedapple quit (Ping timeout: 244 seconds) 2015-03-21T18:10:21Z hardenedapple joined #lisp 2015-03-21T18:17:05Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T18:19:20Z pjb: mega1: not really. The only "syntax" is the "Exceptional Situations:" section. 2015-03-21T18:20:08Z pjb: I'd write: (form) / prints: blah / signals: condition / => result 2015-03-21T18:20:16Z pjb: actually I use --> not =>. 2015-03-21T18:20:27Z ehu quit (Quit: Leaving.) 2015-03-21T18:22:27Z Joreji joined #lisp 2015-03-21T18:22:45Z ehu joined #lisp 2015-03-21T18:22:52Z ehu quit (Client Quit) 2015-03-21T18:22:59Z mega1: Right. That's for the documentation. 2015-03-21T18:23:01Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T18:23:08Z mega1: I was actually thinking about transcripts. 2015-03-21T18:24:48Z mega1: perhaps "error=>", "E=>" or "^=>"? 2015-03-21T18:29:01Z Joreji joined #lisp 2015-03-21T18:29:48Z asoneth joined #lisp 2015-03-21T18:30:22Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T18:31:56Z hardenedapple quit (Ping timeout: 246 seconds) 2015-03-21T18:32:51Z That_Engineer joined #lisp 2015-03-21T18:33:18Z pjb: not all conditions are errors. 2015-03-21T18:34:02Z Joreji joined #lisp 2015-03-21T18:34:39Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T18:35:04Z pjb: mega1: clall uses the following format: http://paste.lisp.org/+34Z4 2015-03-21T18:35:29Z yrk quit (Read error: Connection reset by peer) 2015-03-21T18:36:55Z brandonz joined #lisp 2015-03-21T18:37:27Z LiamH quit (Read error: Connection reset by peer) 2015-03-21T18:39:01Z Joreji joined #lisp 2015-03-21T18:39:36Z LiamH joined #lisp 2015-03-21T18:39:57Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T18:42:54Z dfinninger quit (Remote host closed the connection) 2015-03-21T18:44:14Z mj-0 quit (Remote host closed the connection) 2015-03-21T18:48:11Z beach left #lisp 2015-03-21T18:49:27Z yrk joined #lisp 2015-03-21T18:49:56Z yrk quit (Changing host) 2015-03-21T18:49:56Z yrk joined #lisp 2015-03-21T18:50:05Z kcj joined #lisp 2015-03-21T18:50:37Z Joreji joined #lisp 2015-03-21T18:51:42Z xinau joined #lisp 2015-03-21T18:53:37Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T18:54:25Z danlentz quit (Ping timeout: 264 seconds) 2015-03-21T18:54:30Z Ven joined #lisp 2015-03-21T18:54:41Z cyphase quit (Ping timeout: 265 seconds) 2015-03-21T18:55:39Z danlentz joined #lisp 2015-03-21T18:55:39Z pavelpenev quit (Read error: Connection reset by peer) 2015-03-21T18:56:01Z pavelpenev joined #lisp 2015-03-21T18:56:05Z joneshf-laptop quit (Read error: Connection reset by peer) 2015-03-21T18:56:16Z joneshf-laptop joined #lisp 2015-03-21T18:56:34Z nell quit (Quit: WeeChat 0.4.2) 2015-03-21T18:56:56Z mega1: thanks 2015-03-21T18:57:17Z nell joined #lisp 2015-03-21T18:58:35Z Adlai quit (Ping timeout: 246 seconds) 2015-03-21T18:59:18Z Joreji joined #lisp 2015-03-21T18:59:57Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T19:02:14Z linux_dream joined #lisp 2015-03-21T19:02:27Z linux_dream quit (Remote host closed the connection) 2015-03-21T19:04:49Z Joreji joined #lisp 2015-03-21T19:06:18Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T19:07:02Z vr-rm joined #lisp 2015-03-21T19:07:14Z cyphase joined #lisp 2015-03-21T19:07:31Z vaporatorius quit (Quit: Leaving) 2015-03-21T19:12:22Z Joreji joined #lisp 2015-03-21T19:12:22Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T19:13:32Z mishoo_ quit (Ping timeout: 264 seconds) 2015-03-21T19:14:21Z mishoo_ joined #lisp 2015-03-21T19:16:24Z clop joined #lisp 2015-03-21T19:17:23Z Joreji joined #lisp 2015-03-21T19:18:38Z les quit (Quit: leaving) 2015-03-21T19:19:00Z jewel quit (Ping timeout: 252 seconds) 2015-03-21T19:19:13Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-03-21T19:19:55Z les joined #lisp 2015-03-21T19:22:50Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T19:25:06Z That_Engineer quit (Ping timeout: 256 seconds) 2015-03-21T19:26:02Z Adlai joined #lisp 2015-03-21T19:26:08Z SpikeMaster joined #lisp 2015-03-21T19:28:42Z Joreji joined #lisp 2015-03-21T19:28:43Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T19:29:38Z hiroaki joined #lisp 2015-03-21T19:29:41Z mishoo_ quit (Ping timeout: 244 seconds) 2015-03-21T19:30:42Z amaron joined #lisp 2015-03-21T19:31:40Z Ven joined #lisp 2015-03-21T19:32:02Z hiroakip joined #lisp 2015-03-21T19:34:24Z clop quit (Ping timeout: 252 seconds) 2015-03-21T19:38:41Z Joreji joined #lisp 2015-03-21T19:40:40Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T19:45:00Z cadadar joined #lisp 2015-03-21T19:45:38Z resttime joined #lisp 2015-03-21T19:46:20Z Joreji joined #lisp 2015-03-21T19:47:15Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T19:49:38Z ASau joined #lisp 2015-03-21T19:51:48Z munksgaard joined #lisp 2015-03-21T19:52:52Z Joreji joined #lisp 2015-03-21T19:53:55Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T19:54:00Z SpikeMaster left #lisp 2015-03-21T19:57:31Z danlentz quit (Ping timeout: 265 seconds) 2015-03-21T19:58:12Z alusion joined #lisp 2015-03-21T19:59:29Z Joreji joined #lisp 2015-03-21T20:00:08Z danlentz joined #lisp 2015-03-21T20:00:30Z cadadar quit (Quit: Leaving.) 2015-03-21T20:01:40Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T20:03:53Z yrk quit (Remote host closed the connection) 2015-03-21T20:06:07Z Joreji joined #lisp 2015-03-21T20:06:33Z guicho_ quit (Read error: Connection reset by peer) 2015-03-21T20:06:48Z guicho_ joined #lisp 2015-03-21T20:07:18Z burtons: clhs error 2015-03-21T20:07:18Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/a_error.htm 2015-03-21T20:07:29Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T20:11:07Z Joreji joined #lisp 2015-03-21T20:11:09Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T20:14:14Z asoneth quit (Quit: WeeChat 1.1.1) 2015-03-21T20:15:44Z pyon is now known as transient-pyon 2015-03-21T20:16:11Z Joreji joined #lisp 2015-03-21T20:21:04Z cadadar joined #lisp 2015-03-21T20:23:22Z leb joined #lisp 2015-03-21T20:24:14Z innertracks joined #lisp 2015-03-21T20:24:58Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T20:25:41Z innertracks quit (Client Quit) 2015-03-21T20:28:57Z CrazyEddy quit (Remote host closed the connection) 2015-03-21T20:30:23Z ggole quit 2015-03-21T20:30:51Z CrazyEddy joined #lisp 2015-03-21T20:40:33Z Joreji joined #lisp 2015-03-21T20:42:00Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T20:48:01Z gmcastil joined #lisp 2015-03-21T20:50:18Z mrSpec quit (Remote host closed the connection) 2015-03-21T20:51:45Z zadock quit (Quit: Leaving) 2015-03-21T20:52:10Z Joreji joined #lisp 2015-03-21T20:53:01Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T20:54:47Z danlentz quit (Ping timeout: 256 seconds) 2015-03-21T20:58:47Z Joreji joined #lisp 2015-03-21T20:59:27Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-03-21T21:01:50Z danlentz joined #lisp 2015-03-21T21:04:42Z Quadrescence joined #lisp 2015-03-21T21:06:28Z pt1 joined #lisp 2015-03-21T21:07:03Z vaporatorius joined #lisp 2015-03-21T21:08:41Z eugeneia: All types except arrays and sequences are immutable right? 2015-03-21T21:09:00Z eugeneia: (looking at https://sellout.github.io/media/CL-type-hierarchy.png) 2015-03-21T21:09:15Z eugeneia: I wonder why isn't simple array a sequence? 2015-03-21T21:11:10Z eugeneia: its a "flavour"? 2015-03-21T21:11:20Z remi`bd: because a simple array isn’t a sequence 2015-03-21T21:11:41Z remi`bd: for instance: 2015-03-21T21:11:48Z remi`bd: * (type-of (make-array '(2 2))) 2015-03-21T21:11:58Z remi`bd: ⇒ (SIMPLE-ARRAY T (2 2)) 2015-03-21T21:12:03Z selat quit (Quit: Lost terminal) 2015-03-21T21:12:36Z eugeneia: hmm ok 2015-03-21T21:13:34Z eugeneia: Can I somehow determine the size of a specific element-type? 2015-03-21T21:14:22Z cyphase quit (Ping timeout: 265 seconds) 2015-03-21T21:14:44Z eugeneia: at least partially. 2015-03-21T21:17:05Z nyef: Each implementation has to know such things, so in principle it can be done, though not necessarily portably or conveniently. 2015-03-21T21:17:05Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T21:19:59Z gravicappa quit (Remote host closed the connection) 2015-03-21T21:20:38Z eugeneia: nyef: I think I could benefit from a partial solution, I really just wan't to estimate the size of sequences 2015-03-21T21:20:54Z eugeneia: (to decide wether its feasible to copy them) 2015-03-21T21:22:07Z eugeneia: I am experimenting with applying erlang concepts to generic CL... seeing if anything comes of it 2015-03-21T21:22:24Z loz1 quit (Ping timeout: 256 seconds) 2015-03-21T21:22:29Z Joreji joined #lisp 2015-03-21T21:23:48Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T21:25:46Z prxq joined #lisp 2015-03-21T21:26:54Z cyphase joined #lisp 2015-03-21T21:27:09Z nyef: eugeneia: Each element of a linked list takes two "words". Each element of an unspecialized array takes one "word", plus the overhead for the array. Specialized arrays take space proportional to their specialized element type, most of which are obvious. 2015-03-21T21:28:01Z nyef: And that's just for the sequence storage itself, for non-specialized element types you also have the overhead of storing the actual data elements. 2015-03-21T21:28:43Z eugeneia: yeah makes sense, thanks for the summary 2015-03-21T21:29:07Z Joreji joined #lisp 2015-03-21T21:29:37Z attila_lendvai joined #lisp 2015-03-21T21:29:37Z attila_lendvai quit (Changing host) 2015-03-21T21:29:37Z attila_lendvai joined #lisp 2015-03-21T21:29:45Z pt1 quit (Remote host closed the connection) 2015-03-21T21:29:47Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T21:37:55Z loz1 joined #lisp 2015-03-21T21:38:15Z Longlius quit (Remote host closed the connection) 2015-03-21T21:40:32Z Joreji joined #lisp 2015-03-21T21:41:19Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T21:42:14Z cyphase quit (Ping timeout: 256 seconds) 2015-03-21T21:42:49Z mishoo_ joined #lisp 2015-03-21T21:42:56Z {-}grant joined #lisp 2015-03-21T21:45:14Z cyphase joined #lisp 2015-03-21T21:47:10Z Joreji joined #lisp 2015-03-21T21:47:51Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T21:47:51Z theseb quit (Quit: Leaving) 2015-03-21T21:49:39Z {-}grant quit (Ping timeout: 265 seconds) 2015-03-21T21:51:22Z {-}grant joined #lisp 2015-03-21T21:53:44Z MrWoohoo quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2015-03-21T21:53:47Z Joreji joined #lisp 2015-03-21T21:54:26Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T21:55:15Z a2015 joined #lisp 2015-03-21T21:59:04Z zadock joined #lisp 2015-03-21T22:00:22Z cyphase quit (Ping timeout: 256 seconds) 2015-03-21T22:02:40Z eugeneia quit (Ping timeout: 255 seconds) 2015-03-21T22:03:43Z oleo is now known as Guest27034 2015-03-21T22:03:54Z zadock quit (Client Quit) 2015-03-21T22:04:14Z Karl_Dscc joined #lisp 2015-03-21T22:04:52Z oleo_ joined #lisp 2015-03-21T22:04:58Z Joreji joined #lisp 2015-03-21T22:04:59Z oleo_ quit (Read error: Connection reset by peer) 2015-03-21T22:05:51Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T22:06:48Z innertracks joined #lisp 2015-03-21T22:07:11Z oleo_ joined #lisp 2015-03-21T22:07:23Z oleo_ is now known as oleo 2015-03-21T22:07:33Z Guest27034 quit (Ping timeout: 264 seconds) 2015-03-21T22:07:45Z zunpre quit (Quit: WeeChat 0.4.3) 2015-03-21T22:08:48Z Jesin quit (Quit: Leaving) 2015-03-21T22:10:01Z danlentz quit (Quit: danlentz) 2015-03-21T22:10:16Z SaladTosser joined #lisp 2015-03-21T22:10:20Z gmcastil left #lisp 2015-03-21T22:10:57Z SaladTosser quit (K-Lined) 2015-03-21T22:11:39Z Joreji joined #lisp 2015-03-21T22:12:14Z drmeister: Is the compiler supposed to call MAKE-LOAD-FORM-SAVING-SLOTS directly - I don't think so. It looks like the compiler only ever calls MAKE-LOAD-FORM 2015-03-21T22:12:15Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T22:12:47Z pt1 joined #lisp 2015-03-21T22:12:54Z pt1 quit (Remote host closed the connection) 2015-03-21T22:13:26Z angavrilov quit (Remote host closed the connection) 2015-03-21T22:14:13Z cyphase joined #lisp 2015-03-21T22:14:49Z attila_lendvai quit (Ping timeout: 255 seconds) 2015-03-21T22:16:07Z pt1 joined #lisp 2015-03-21T22:16:22Z pt1 quit (Remote host closed the connection) 2015-03-21T22:17:19Z lbolla quit (Remote host closed the connection) 2015-03-21T22:18:10Z Joreji joined #lisp 2015-03-21T22:18:53Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T22:19:11Z mood: Shinmera: After installing the Shirakumo dist, loading modules results in a bunch of "Component ... not found" errors. At least i-sqlite and r-simple-auth can't be found. 2015-03-21T22:19:38Z {-}grant quit (Ping timeout: 256 seconds) 2015-03-21T22:19:55Z Shinmera: mood: Curious. I know that error, but I didn't encounter it when I tested on an absolutely clean install just... yesterday or two days ago. 2015-03-21T22:20:43Z aeth quit (Quit: ...) 2015-03-21T22:21:24Z mood: Shinmera: Perhaps something changed with the dist released yesterday? 2015-03-21T22:21:38Z Shinmera: No, that was to fix an issue related to that. 2015-03-21T22:22:20Z xificurC quit (Ping timeout: 252 seconds) 2015-03-21T22:22:42Z zadock joined #lisp 2015-03-21T22:22:56Z Shinmera: mood: I'll have to try again tomorrow, it's late right now and I'm watching an Eastwood movie. I hope I can reproduce it, otherwise we'll have to do some remote debugging :/ 2015-03-21T22:23:14Z Shinmera: mood: Can you tell me what your exact steps were? 2015-03-21T22:23:22Z Shinmera: a paste of the REPL transcript would be best 2015-03-21T22:26:18Z aeth joined #lisp 2015-03-21T22:26:47Z xrash quit (Ping timeout: 246 seconds) 2015-03-21T22:29:45Z drmeister: Hmm, I'm still missing something about MAKE-LOAD-FORM. It can return two forms, a creation-form and an init-form. The init-form isn't a lambda that takes one argument - it's something else. How is the created object returned by the creation-form passed to the init-form? 2015-03-21T22:30:04Z drmeister: The example from the CLHS is: 2015-03-21T22:30:08Z drmeister: https://www.irccloud.com/pastebin/7FnoCxvX 2015-03-21T22:31:00Z drmeister: On line 9 the initialization form refers to "x" which is a value in the compile-time environment - not the load-time environment. 2015-03-21T22:31:20Z drmeister: I think I understand the creation-form but the initialization-form eludes me. 2015-03-21T22:31:28Z mood: Shinmera: Sure. With a fresh Quicklisp: http://plaster.tymoon.eu/view/9J 2015-03-21T22:31:43Z Patzy quit (Ping timeout: 252 seconds) 2015-03-21T22:31:56Z xrash joined #lisp 2015-03-21T22:32:19Z mood: Shinmera: Enjoy your movie! 2015-03-21T22:32:21Z Patzy joined #lisp 2015-03-21T22:33:03Z Shinmera: mood: Well, it's not installing radiance-drivers as it should. No idea how that could happen, but again, I'll see about it tomorrow. 2015-03-21T22:34:32Z guicho_ quit (Read error: Connection reset by peer) 2015-03-21T22:34:51Z Joreji joined #lisp 2015-03-21T22:35:34Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T22:36:39Z Adlai: drmeister: "If object appears as a constant in the initialization form, at load time it will be replaced by the equivalent object constructed by the creation form; this is how the further initialization gains access to the object." 2015-03-21T22:36:49Z mood: Does anyone know of a system with a particularly high amount of dependencies? I'm playing around generating dependency graphs of systems 2015-03-21T22:37:13Z mood: This is, for example, the graph for Caveman: http://imgur.com/jIANKXN 2015-03-21T22:37:45Z Shinmera: mood: well, if you could load it, purplish (from the shirakumo dist) should have a bunch in total. 2015-03-21T22:38:26Z ziocroc quit (Remote host closed the connection) 2015-03-21T22:38:36Z Adlai: drmeister: i have a contrived example of using make-load-form: https://github.com/adlai/scalpl/blob/master/util.lisp#L59-L65 2015-03-21T22:38:47Z ziocroc joined #lisp 2015-03-21T22:38:53Z drmeister: Adlai: I didn't understand that at first but I see now that I read it again that this is the mechanism. I'm not sure how to implement it. 2015-03-21T22:40:27Z Adlai: the init-form doesn't go directly into compiled files, the file compiler needs to do something equivalent to that shallow-copy example 2015-03-21T22:40:39Z mood: Shinmera: Thanks. I can't load it, but ASDF has an opinion on its dependencies. The (:interface ...) dependencies broke my function, though 2015-03-21T22:40:53Z Shinmera: mood: They are a Radiance hack, yes. 2015-03-21T22:40:59Z Shinmera: Radiance ASDF hack, I mean 2015-03-21T22:41:27Z Joreji joined #lisp 2015-03-21T22:42:04Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T22:45:18Z Ethan- joined #lisp 2015-03-21T22:47:10Z sunwukong quit (Ping timeout: 265 seconds) 2015-03-21T22:49:06Z vaporatorius quit (Quit: Leaving) 2015-03-21T22:49:56Z kobain quit (Ping timeout: 246 seconds) 2015-03-21T22:50:05Z mood: Purplish dependency graph, possibly incomplete: http://imgur.com/x9yenQN 2015-03-21T22:50:17Z amaron quit (Ping timeout: 246 seconds) 2015-03-21T22:50:23Z mood: The blue errors are :defsystem-depends-on dependencies 2015-03-21T22:50:28Z mood: s/errors/arrows 2015-03-21T22:50:46Z Shinmera: Really nice. 2015-03-21T22:51:54Z mishoo_ quit (Ping timeout: 245 seconds) 2015-03-21T22:53:11Z Joreji joined #lisp 2015-03-21T22:53:50Z hitecnologys: mood: Oh! Finally! I've been planning on finally finishing what I've started some time ago but it seems like you've already done my job and you've done it nicely. That's a relief, thanks a lot. 2015-03-21T22:54:05Z segmond quit (Ping timeout: 252 seconds) 2015-03-21T22:54:05Z Shinmera: I once generated a complete dependency graph for all quicklisp libraries 2015-03-21T22:54:10Z Shinmera: It was too big to view :( 2015-03-21T22:54:22Z hitecnologys: That's what I've been working on too. 2015-03-21T22:54:27Z malbertife quit (Ping timeout: 252 seconds) 2015-03-21T22:54:34Z hitecnologys: But it hasn't moved since last summer. 2015-03-21T22:54:42Z pacon joined #lisp 2015-03-21T22:54:58Z Shinmera: You can just parse the quicklisp dist txt file to get the dependency info 2015-03-21T22:55:05Z Shinmera: Much easier than mucking about with ASDF. 2015-03-21T22:55:22Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T22:55:56Z mood: hitecnologys: Here is the code: http://paste.lisp.org/+34Z7 2015-03-21T22:56:05Z mood: It's just a big LOOP 2015-03-21T22:56:20Z drmeister: Adlai - thanks - I'll ponder that. 2015-03-21T22:56:58Z hitecnologys: mood: thanks, I'll check that out. 2015-03-21T22:56:59Z Shinmera: just parse the systems.txt file in quicklisp/dists/dist-name/systems.txt 2015-03-21T22:57:52Z hitecnologys: mood: are you drawing graph with that LW service (I might not remember whoose it was since it was long time ago)? 2015-03-21T22:58:13Z mood: hitecnologys: I'm just generating a DOT file. 2015-03-21T22:58:23Z mood: I let graphviz do the drawing 2015-03-21T22:58:25Z keen_________ joined #lisp 2015-03-21T22:58:38Z hitecnologys: mood: ah, I see. 2015-03-21T22:58:54Z kons joined #lisp 2015-03-21T22:59:21Z keen________ quit (Ping timeout: 246 seconds) 2015-03-21T23:00:44Z Joreji joined #lisp 2015-03-21T23:01:22Z ziocroc quit (Quit: ziocroc) 2015-03-21T23:01:34Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T23:02:52Z kobain joined #lisp 2015-03-21T23:03:49Z kobain quit (Max SendQ exceeded) 2015-03-21T23:04:10Z kobain joined #lisp 2015-03-21T23:05:05Z kobain quit (Max SendQ exceeded) 2015-03-21T23:05:26Z kobain joined #lisp 2015-03-21T23:06:01Z gingerale quit (Ping timeout: 265 seconds) 2015-03-21T23:06:21Z kobain quit (Max SendQ exceeded) 2015-03-21T23:06:45Z kobain joined #lisp 2015-03-21T23:07:22Z Joreji joined #lisp 2015-03-21T23:07:40Z kobain quit (Max SendQ exceeded) 2015-03-21T23:08:15Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T23:08:48Z kobain joined #lisp 2015-03-21T23:09:37Z Karl_Dscc quit (Remote host closed the connection) 2015-03-21T23:11:06Z loz1 quit (Ping timeout: 252 seconds) 2015-03-21T23:13:23Z Longlius joined #lisp 2015-03-21T23:13:57Z Joreji joined #lisp 2015-03-21T23:15:30Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T23:18:35Z hitecnologys quit (Quit: ZNC - http://znc.in) 2015-03-21T23:20:15Z hitecnologys joined #lisp 2015-03-21T23:21:54Z stardiviner quit (Ping timeout: 245 seconds) 2015-03-21T23:22:07Z ehu joined #lisp 2015-03-21T23:23:05Z pt1 joined #lisp 2015-03-21T23:23:05Z LiamH quit (Read error: Connection reset by peer) 2015-03-21T23:25:59Z hiroaki quit (Ping timeout: 246 seconds) 2015-03-21T23:26:48Z hiroakip quit (Ping timeout: 265 seconds) 2015-03-21T23:32:01Z Joreji joined #lisp 2015-03-21T23:33:57Z LiamH joined #lisp 2015-03-21T23:34:44Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T23:34:44Z stardiviner joined #lisp 2015-03-21T23:35:43Z clop joined #lisp 2015-03-21T23:38:31Z prxq quit (Remote host closed the connection) 2015-03-21T23:38:38Z mood: So... the complete Quicklisp dependency graph. It's not really readable because Graphviz's algorithm doesn't really like it. I can't find a converter that can turn it from SVG into PNG, either. Everything runs out of memory or just doesn't support the size. 2015-03-21T23:39:28Z mood: http://files.joram.io/dump/quicklisp.dot.svg (Warning, it's 4MB and your browser doesn't like it) 2015-03-21T23:40:03Z Joreji joined #lisp 2015-03-21T23:41:36Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T23:45:39Z cadadar quit (Quit: Leaving.) 2015-03-21T23:45:56Z kons quit (Remote host closed the connection) 2015-03-21T23:47:02Z linux_dream joined #lisp 2015-03-21T23:47:15Z Joreji joined #lisp 2015-03-21T23:47:26Z edgar-rft quit (Quit: edgar-rft) 2015-03-21T23:48:24Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T23:52:28Z larion quit (Ping timeout: 255 seconds) 2015-03-21T23:53:49Z Joreji joined #lisp 2015-03-21T23:53:59Z oleo: can't you split it ? 2015-03-21T23:54:05Z transient-pyon is now known as memoized-pyon 2015-03-21T23:54:57Z Joreji quit (Read error: Connection reset by peer) 2015-03-21T23:57:14Z Bike joined #lisp 2015-03-21T23:58:18Z chu joined #lisp