2015-03-23T00:03:07Z zacts joined #lisp 2015-03-23T00:11:04Z leb joined #lisp 2015-03-23T00:11:22Z mishoo_ quit (Ping timeout: 255 seconds) 2015-03-23T00:12:49Z yakccd quit (Ping timeout: 252 seconds) 2015-03-23T00:14:36Z rszeno joined #lisp 2015-03-23T00:20:49Z k-stz quit (Remote host closed the connection) 2015-03-23T00:21:00Z dfinninger joined #lisp 2015-03-23T00:21:46Z fugue joined #lisp 2015-03-23T00:23:14Z myrkraverk quit (Ping timeout: 246 seconds) 2015-03-23T00:25:17Z dfinninger quit (Ping timeout: 252 seconds) 2015-03-23T00:25:26Z myrkraverk joined #lisp 2015-03-23T00:26:29Z innertracks quit (Quit: innertracks) 2015-03-23T00:27:58Z innertracks joined #lisp 2015-03-23T00:29:41Z tsumetai quit (Ping timeout: 252 seconds) 2015-03-23T00:31:44Z boogie quit (Remote host closed the connection) 2015-03-23T00:31:55Z bcoburn_i joined #lisp 2015-03-23T00:33:26Z bcoburn quit (Ping timeout: 244 seconds) 2015-03-23T00:33:33Z tsumetai joined #lisp 2015-03-23T00:35:05Z stepnem quit (Ping timeout: 250 seconds) 2015-03-23T00:39:51Z clop joined #lisp 2015-03-23T00:41:36Z That_Engineer quit (Quit: Leaving) 2015-03-23T00:41:45Z larion joined #lisp 2015-03-23T00:43:47Z That_Engineer joined #lisp 2015-03-23T00:44:21Z That_Engineer quit (Client Quit) 2015-03-23T00:44:40Z That_Engineer joined #lisp 2015-03-23T00:47:10Z innertracks quit (Quit: innertracks) 2015-03-23T00:47:47Z k-dawg joined #lisp 2015-03-23T00:48:34Z boogie joined #lisp 2015-03-23T00:48:48Z larion quit (Ping timeout: 272 seconds) 2015-03-23T00:50:53Z harish_ quit (Ping timeout: 246 seconds) 2015-03-23T00:53:21Z xinau joined #lisp 2015-03-23T00:55:46Z badkins quit (Remote host closed the connection) 2015-03-23T00:56:11Z x1n4u quit (Ping timeout: 246 seconds) 2015-03-23T01:00:45Z jleija joined #lisp 2015-03-23T01:00:49Z robot-beethoven joined #lisp 2015-03-23T01:13:13Z devll quit (Ping timeout: 244 seconds) 2015-03-23T01:15:09Z stardiviner quit (Ping timeout: 252 seconds) 2015-03-23T01:21:51Z larion joined #lisp 2015-03-23T01:21:57Z dfinninger joined #lisp 2015-03-23T01:26:13Z dfinninger quit (Ping timeout: 250 seconds) 2015-03-23T01:27:24Z nugnuts joined #lisp 2015-03-23T01:27:29Z larion quit (Ping timeout: 265 seconds) 2015-03-23T01:27:51Z k-dawg quit (Quit: This computer has gone to sleep) 2015-03-23T01:29:05Z fugue left #lisp 2015-03-23T01:29:34Z shum quit (Quit: ZNC - 1.6.0 - http://znc.in) 2015-03-23T01:29:43Z stardiviner joined #lisp 2015-03-23T01:30:23Z nugnuts quit (Client Quit) 2015-03-23T01:31:32Z nugnuts joined #lisp 2015-03-23T01:31:34Z Jubb quit (Ping timeout: 264 seconds) 2015-03-23T01:36:15Z frkout joined #lisp 2015-03-23T01:36:45Z Vicfred joined #lisp 2015-03-23T01:41:14Z MrWoohoo quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2015-03-23T01:48:46Z phax quit (Quit: Leaving) 2015-03-23T01:49:41Z harish joined #lisp 2015-03-23T01:52:45Z Jubb joined #lisp 2015-03-23T01:52:52Z theseb left #lisp 2015-03-23T01:53:13Z innertracks joined #lisp 2015-03-23T01:53:14Z innertracks quit (Write error: Broken pipe) 2015-03-23T01:56:06Z stardiviner quit (Ping timeout: 244 seconds) 2015-03-23T02:02:39Z Gunrunner joined #lisp 2015-03-23T02:03:03Z Karl_Dscc quit (Remote host closed the connection) 2015-03-23T02:03:19Z That_Engineer quit (Read error: Connection reset by peer) 2015-03-23T02:04:10Z larion joined #lisp 2015-03-23T02:08:46Z larion quit (Ping timeout: 264 seconds) 2015-03-23T02:09:00Z stardiviner joined #lisp 2015-03-23T02:09:27Z larion joined #lisp 2015-03-23T02:14:51Z larion quit (Ping timeout: 265 seconds) 2015-03-23T02:16:34Z smokeink joined #lisp 2015-03-23T02:16:47Z Gunrunner quit (Ping timeout: 265 seconds) 2015-03-23T02:19:44Z a2015 quit (Quit: Page closed) 2015-03-23T02:20:03Z a2015 joined #lisp 2015-03-23T02:22:19Z clop quit (Ping timeout: 245 seconds) 2015-03-23T02:22:43Z dfinninger joined #lisp 2015-03-23T02:23:39Z aap_ joined #lisp 2015-03-23T02:24:06Z bcoburn_i is now known as bcoburn 2015-03-23T02:25:22Z anunnaki quit (Ping timeout: 240 seconds) 2015-03-23T02:25:34Z aap quit (Ping timeout: 264 seconds) 2015-03-23T02:26:41Z k-dawg joined #lisp 2015-03-23T02:27:06Z dfinninger quit (Ping timeout: 244 seconds) 2015-03-23T02:30:55Z boogie quit (Remote host closed the connection) 2015-03-23T02:33:38Z bcoburn_g joined #lisp 2015-03-23T02:35:38Z bcoburn quit (Ping timeout: 265 seconds) 2015-03-23T02:37:39Z bcoburn_g is now known as bcoburn 2015-03-23T02:37:42Z bcoburn left #lisp 2015-03-23T02:44:12Z badkins joined #lisp 2015-03-23T02:46:10Z intinig joined #lisp 2015-03-23T02:46:41Z larion joined #lisp 2015-03-23T02:49:25Z badkins quit (Ping timeout: 256 seconds) 2015-03-23T02:50:38Z intinig quit (Ping timeout: 252 seconds) 2015-03-23T02:52:18Z larion quit (Ping timeout: 272 seconds) 2015-03-23T02:56:06Z hiyosi quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-03-23T02:56:26Z bgs100 quit (Quit: bgs100) 2015-03-23T02:56:37Z nugnuts quit (Quit: peace out) 2015-03-23T02:57:52Z nugnuts joined #lisp 2015-03-23T03:00:40Z mbuf joined #lisp 2015-03-23T03:08:05Z scymtym quit (Ping timeout: 252 seconds) 2015-03-23T03:14:17Z beach joined #lisp 2015-03-23T03:14:24Z beach: Good morning everyone! 2015-03-23T03:14:57Z nyef: Hello beach. 2015-03-23T03:15:05Z pillton: G'day beach. 2015-03-23T03:15:25Z clintm: hello, beach! 2015-03-23T03:16:29Z JuanDaugherty: moin 2015-03-23T03:16:41Z jleija quit (Quit: leaving) 2015-03-23T03:17:01Z k-dawg quit (Quit: This computer has gone to sleep) 2015-03-23T03:21:59Z vdamewood joined #lisp 2015-03-23T03:23:16Z f03lipe quit (Ping timeout: 256 seconds) 2015-03-23T03:23:16Z dfinninger joined #lisp 2015-03-23T03:27:31Z dfinninger quit (Ping timeout: 252 seconds) 2015-03-23T03:30:07Z kushal joined #lisp 2015-03-23T03:30:19Z That_Engineer joined #lisp 2015-03-23T03:31:05Z meep1309 joined #lisp 2015-03-23T03:33:47Z linux_dream quit (Quit: Leaving) 2015-03-23T03:35:09Z ASau quit (Remote host closed the connection) 2015-03-23T03:35:11Z linux_dream joined #lisp 2015-03-23T03:39:00Z work_op joined #lisp 2015-03-23T03:39:15Z work_op: how long has cliki been down? 2015-03-23T03:41:15Z zeitue joined #lisp 2015-03-23T03:41:44Z meep1309 quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2015-03-23T03:46:19Z larion joined #lisp 2015-03-23T03:46:34Z chu joined #lisp 2015-03-23T03:47:04Z zacts quit (Quit: leaving) 2015-03-23T03:48:08Z eugeneia quit (Ping timeout: 265 seconds) 2015-03-23T03:49:51Z PaulCapestany left #lisp 2015-03-23T03:55:21Z defaultxr quit (Quit: gnight) 2015-03-23T03:59:09Z theseb joined #lisp 2015-03-23T04:09:50Z theotherstupidgu joined #lisp 2015-03-23T04:11:10Z theotherstupidgu quit (Client Quit) 2015-03-23T04:11:59Z theotherstupidgu joined #lisp 2015-03-23T04:14:00Z linux_dream quit (Quit: Leaving) 2015-03-23T04:15:20Z That_Engineer quit (Ping timeout: 246 seconds) 2015-03-23T04:16:33Z smokeink_ joined #lisp 2015-03-23T04:18:27Z dfinninger joined #lisp 2015-03-23T04:18:32Z theotherstupidgu left #lisp 2015-03-23T04:18:40Z boogie joined #lisp 2015-03-23T04:20:28Z smokeink quit (Ping timeout: 252 seconds) 2015-03-23T04:21:34Z leb quit (Quit: Textual IRC Client: www.textualapp.com) 2015-03-23T04:23:05Z dfinninger quit (Remote host closed the connection) 2015-03-23T04:23:53Z ewiltshi quit (Quit: Lost terminal) 2015-03-23T04:25:25Z Kanae joined #lisp 2015-03-23T04:35:43Z ggole joined #lisp 2015-03-23T04:36:01Z bcoburn|l joined #lisp 2015-03-23T04:38:12Z cluck quit (Remote host closed the connection) 2015-03-23T04:38:13Z work_op left #lisp 2015-03-23T04:42:05Z mbuf quit (Quit: Leaving) 2015-03-23T04:46:34Z sword joined #lisp 2015-03-23T04:47:37Z drmeister: I'd like to search for 'c in a list like '(a b c d e f) and have it return the remainder of the list that starts with 'c --> (c d e f) 2015-03-23T04:47:45Z drmeister: Is there a function for that? 2015-03-23T04:47:53Z beach: clhs member 2015-03-23T04:47:53Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/a_member.htm 2015-03-23T04:48:20Z drmeister: Thanks (sigh) 2015-03-23T04:50:10Z psy_ quit (Ping timeout: 264 seconds) 2015-03-23T04:55:26Z Cybuster joined #lisp 2015-03-23T04:55:38Z drmeister: Hi beach 2015-03-23T04:55:53Z beach: What's up? 2015-03-23T04:56:02Z brucem: hi beach 2015-03-23T04:56:33Z Cybuster quit (Client Quit) 2015-03-23T04:57:20Z Vicfred quit (Ping timeout: 256 seconds) 2015-03-23T04:59:00Z beach: Help me interpret the entry for EVAL-WHEN please. 2015-03-23T04:59:01Z beach: clhs eval-when 2015-03-23T04:59:02Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/s_eval_w.htm 2015-03-23T04:59:03Z ggole is delighted that drmeister is writing a CL compiler but doesn't know about member 2015-03-23T04:59:56Z beach: Am I interpreting it right in that it is processed the same if it is not a top-level form and if it is not processed by the file compiler? 2015-03-23T05:01:54Z Bike: yes. 2015-03-23T05:02:20Z drmeister: ggole: I use member all the time - I forgot it returns the rest of the list - I've used it as a generalized boolean. 2015-03-23T05:02:22Z Bike: so, like, (eval-when (:compile-toplevel) (eval-when (:compile-toplevel) (print 'foo))) -> nothing 2015-03-23T05:04:29Z ggole quit (Read error: Connection reset by peer) 2015-03-23T05:04:43Z drmeister: I'm messing with trying to get Cleavir/Clasp running - it takes two hours to compile and the built image is complaining about this and that not being in the right package - grrr. 2015-03-23T05:04:49Z beach: Bike: Well NIL really. No? 2015-03-23T05:04:57Z Bike: yeah. 2015-03-23T05:05:04Z ggole joined #lisp 2015-03-23T05:05:12Z beach: Bike: If processed by the file compiler, the innermost eval-when is processed by EVAL. 2015-03-23T05:05:29Z Bike: it shouldn't print anything, is what i mean 2015-03-23T05:05:31Z beach: Otherwise, the outermost is processed by EVAL, so NIL because of that. 2015-03-23T05:05:37Z beach: Right. 2015-03-23T05:05:38Z beach: Sure. 2015-03-23T05:06:48Z beach: OK, so the fix for the problem that forms that are not top-level get evaluated is simple. 2015-03-23T05:06:59Z beach: Except I really need to rename the variables I used. 2015-03-23T05:07:11Z beach: I used *top-level-p* and *old-top-level-p*. 2015-03-23T05:07:35Z beach: I think I will call them *subforms-are-top-level-p* and *this-form-is-top-level-p* 2015-03-23T05:09:22Z beach: Maybe CURRENT instead of THIS. 2015-03-23T05:09:26Z qubitnerd joined #lisp 2015-03-23T05:10:06Z beach: Finding good names of things is one of the difficult parts of programming. 2015-03-23T05:10:33Z pavelpenev quit (Ping timeout: 252 seconds) 2015-03-23T05:10:35Z work_op joined #lisp 2015-03-23T05:15:34Z Bike: that and cache invalidation and fenceposts are the only two hard parts of programming, as they say 2015-03-23T05:16:03Z ggole quit (Ping timeout: 252 seconds) 2015-03-23T05:17:02Z f03lipe joined #lisp 2015-03-23T05:17:07Z work_op quit (Ping timeout: 246 seconds) 2015-03-23T05:17:46Z fierydiarreha quit (Ping timeout: 264 seconds) 2015-03-23T05:19:38Z fierydiarreha joined #lisp 2015-03-23T05:22:15Z SAL9000: don't forget about the worst two: off-by-one errors 2015-03-23T05:23:47Z mj-0 joined #lisp 2015-03-23T05:24:59Z stardiviner quit (Ping timeout: 250 seconds) 2015-03-23T05:26:30Z yakccd joined #lisp 2015-03-23T05:27:01Z Bike: 'fencepost error' is another name for those 2015-03-23T05:28:05Z theos quit (Read error: Connection reset by peer) 2015-03-23T05:29:14Z SAL9000: ah, I see 2015-03-23T05:29:26Z theos joined #lisp 2015-03-23T05:29:28Z brucem: SAL9000: Bike was just demonstrating the naming problem. 2015-03-23T05:29:33Z SAL9000: XD 2015-03-23T05:32:12Z ggole joined #lisp 2015-03-23T05:32:56Z CrazyEddy quit (Remote host closed the connection) 2015-03-23T05:34:03Z dfinninger joined #lisp 2015-03-23T05:37:29Z oleo_ quit (Quit: Leaving) 2015-03-23T05:37:51Z CrazyEddy joined #lisp 2015-03-23T05:38:16Z oleo joined #lisp 2015-03-23T05:38:17Z dfinninger quit (Ping timeout: 256 seconds) 2015-03-23T05:40:13Z boogie quit (Remote host closed the connection) 2015-03-23T05:40:29Z theseb quit (Quit: Leaving) 2015-03-23T05:48:26Z bjorkintosh joined #lisp 2015-03-23T05:51:34Z beach: drmeister: I *think* I fixed the problem that forms that are not top-level were evaluated, but I haven't tested it yet. 2015-03-23T05:52:02Z wheelsucker quit (Read error: Connection reset by peer) 2015-03-23T05:52:11Z drmeister: Ok, I think I'll have to test it tomorrow - I've got to get to bed 2015-03-23T05:52:49Z beach: OK. Remember we are working on the paper when you wake up. 2015-03-23T05:54:35Z aap_ is now known as aap 2015-03-23T05:54:40Z yati joined #lisp 2015-03-23T05:54:56Z beach is not reassured. 2015-03-23T05:58:41Z qubitnerd quit (Ping timeout: 256 seconds) 2015-03-23T05:58:57Z drmeister: I'm doing what I usually do - pushing forward, racing to get to a goal. 2015-03-23T05:59:16Z drmeister: Cleavir/Clasp is so close 2015-03-23T05:59:56Z beach: I blame your relative youth. 2015-03-23T06:01:22Z brucem: beach: how old are you? 2015-03-23T06:01:30Z Guest81750 joined #lisp 2015-03-23T06:01:32Z beach: I just turned 60. 2015-03-23T06:01:45Z drmeister: What? I'm 16.67% younger than you 2015-03-23T06:01:51Z Guest81750: oh, hey congrats 2015-03-23T06:02:02Z beach: Thanks (I guess). 2015-03-23T06:02:46Z oleo quit (Quit: Leaving) 2015-03-23T06:02:52Z drmeister: I set things up so I can generate native code and link together ranges of bitcode files to tease out problems with symbols not being in the right packages. 2015-03-23T06:06:32Z zadock quit (Quit: Leaving) 2015-03-23T06:08:15Z sunwukong joined #lisp 2015-03-23T06:08:34Z stardiviner joined #lisp 2015-03-23T06:10:31Z beach: drmeister: So you don't need me for anything right now, other than for fixing the problems you have encountered? 2015-03-23T06:10:54Z drmeister: Argh. Something is wrong with those damn WITH-EARLY-ACCESSORS macros 2015-03-23T06:11:14Z drmeister: beach: No - I'm heading to bed. 2015-03-23T06:11:33Z beach: You won't be able to sleep, knowing that there is something wrong. 2015-03-23T06:11:33Z drmeister: Thank you for fixing those problems. I'll grab them tomorrow and give them a whirl. 2015-03-23T06:11:51Z drmeister: Thats the curse I live with. 2015-03-23T06:12:19Z beach: That's why I work early in the morning instead. 2015-03-23T06:12:26Z beach: Or that's one reason. 2015-03-23T06:15:14Z CrazyEddy quit (Ping timeout: 252 seconds) 2015-03-23T06:16:29Z CrazyEddy joined #lisp 2015-03-23T06:18:36Z beach: drmeister: Still here? 2015-03-23T06:19:20Z beach: Never mind. Found it. 2015-03-23T06:19:48Z pranavrc joined #lisp 2015-03-23T06:19:48Z pranavrc quit (Changing host) 2015-03-23T06:19:48Z pranavrc joined #lisp 2015-03-23T06:21:07Z Harag joined #lisp 2015-03-23T06:23:52Z pt1 joined #lisp 2015-03-23T06:25:52Z qubitnerd joined #lisp 2015-03-23T06:26:35Z pavelpenev joined #lisp 2015-03-23T06:29:01Z pt1 quit (Remote host closed the connection) 2015-03-23T06:30:38Z angavrilov joined #lisp 2015-03-23T06:30:56Z drmeister: beach: are you still there? 2015-03-23T06:32:14Z beach: Yes. 2015-03-23T06:32:22Z drmeister: There's a CLOS function that Cleavir is trying to compile and I'm wondering if there is something wrong with MACROLET 2015-03-23T06:33:10Z drmeister: Give me a sec to paste these to paste.lisp.org 2015-03-23T06:33:11Z beach: Not that I am aware of, but it is possible of course. 2015-03-23T06:34:14Z drmeister: paste.lisp.org is hanging GRRRR 2015-03-23T06:34:52Z drmeister: Ok 2015-03-23T06:34:53Z drmeister: http://paste.lisp.org/display/146437 2015-03-23T06:35:23Z drmeister: The SETF on line 19 that starts... (setf (class-id class) name ... 2015-03-23T06:36:11Z drmeister: The WITH-EARLY-ACCESSORS macro is supposed to convert (class-id class) into a direct access of the slot because at this point the class doesn't exist and class-id isn't an accessor. 2015-03-23T06:36:32Z drmeister: So here I macro expanded the WITH-EARLY-ACCESSORS and everything inside of it. 2015-03-23T06:37:45Z beach: OK, got it finally. 2015-03-23T06:38:31Z drmeister: http://paste.lisp.org/display/146438 2015-03-23T06:38:50Z drmeister: Sorry for the indentation 2015-03-23T06:39:30Z beach: So what happens? 2015-03-23T06:39:35Z drmeister: So you get this MACROLET with CLASS-ID defined as a local macro. 2015-03-23T06:39:43Z beach: Yes. 2015-03-23T06:39:54Z drmeister: Well, the generated code has a function call to CLASS-ID - not the local macro expansion. 2015-03-23T06:40:13Z beach: I see. 2015-03-23T06:40:21Z drmeister: It has function calls to every one of what should be local macro expansions. 2015-03-23T06:40:42Z drmeister: I guess I should try and put together a test case. 2015-03-23T06:40:49Z beach: SETF is a macro and it is supposed to macro expand. 2015-03-23T06:40:58Z beach: ... on its first argument. 2015-03-23T06:41:09Z beach: And it is supposed to do that in the local environment. 2015-03-23T06:41:25Z beach: You might want to check what your SETF is doing. 2015-03-23T06:42:00Z qubitnerd quit (Ping timeout: 252 seconds) 2015-03-23T06:43:22Z drmeister: I checked the AST that is generated for the top level form and it contains calls to the functions like CLASS-ID. 2015-03-23T06:43:22Z drmeister: http://i.imgur.com/L0MlYzW.png 2015-03-23T06:44:02Z rszeno quit (Ping timeout: 246 seconds) 2015-03-23T06:44:50Z drmeister: How would I check what my SETF is doing? 2015-03-23T06:45:09Z drmeister: It works - if it didn't nothing would work. 2015-03-23T06:46:59Z beach: What environment does it use when it calls macroexpand? 2015-03-23T06:47:28Z mj-0 quit (Remote host closed the connection) 2015-03-23T06:47:34Z drmeister: That call to CALL-ID shouldn't be there. It should be a reference to (INSTANCE-REF object 3) 2015-03-23T06:48:02Z beach: I know. 2015-03-23T06:48:16Z drmeister: Ok, so I'm not misinterpreting things here. Good. 2015-03-23T06:48:25Z beach: So the PLACE argument to SETF is not being macroexpanded. 2015-03-23T06:48:40Z drmeister: That's what I think. 2015-03-23T06:49:01Z beach: No, it's certain. 2015-03-23T06:49:16Z drmeister: The macro expansion I posted was obtained using the following form: 2015-03-23T06:50:26Z drmeister: http://paste.lisp.org/display/146439 2015-03-23T06:50:58Z drmeister: I inserted that immediately preceding the (defun make-empty-standard-class (name &key (metaclass 'standard-class)... ) 2015-03-23T06:51:13Z mj-0 joined #lisp 2015-03-23T06:51:30Z drmeister: So the macrolet that I got back is the expansion that will happen inside the function when it's compiled. 2015-03-23T06:51:50Z beach: It is not happening. 2015-03-23T06:52:03Z beach: I mean the argument to SETF is not macro expanded. 2015-03-23T06:52:26Z rszeno joined #lisp 2015-03-23T06:52:40Z beach: SETF should macro expand its first argument. We need to figure out how that is done. 2015-03-23T06:53:23Z drmeister: I've been seeing Cleavir call my MACROLET code - I could put a breakpoint in there and see what happens. 2015-03-23T06:54:09Z beach: OK. 2015-03-23T06:54:37Z beach: But I am afraid I need to go. As I have told you in the past, Monday mornings are crazy around here. 2015-03-23T06:54:40Z drmeister: Or are MACROLET's also handled in Cleavir? Cleavir environments record local macros don't they? 2015-03-23T06:54:51Z beach: They do. 2015-03-23T06:55:09Z beach: And you SETF must expand its first argument in that Cleavir environment. 2015-03-23T06:55:32Z drmeister: Hmm. I'll sleep on it. I have to get to bed if I'm going to be in any shape to do anything tomorrow. 2015-03-23T06:55:41Z beach: OK. 2015-03-23T06:55:45Z beach: Talk when you wake up. 2015-03-23T06:55:46Z drmeister: Good night. 2015-03-23T06:55:51Z beach: 'night. 2015-03-23T07:06:26Z zacts joined #lisp 2015-03-23T07:07:10Z knobo joined #lisp 2015-03-23T07:08:10Z Harag quit (Ping timeout: 272 seconds) 2015-03-23T07:11:37Z fierydiarreha quit (Ping timeout: 265 seconds) 2015-03-23T07:12:03Z jewel joined #lisp 2015-03-23T07:15:38Z beach left #lisp 2015-03-23T07:17:11Z fierydiarreha joined #lisp 2015-03-23T07:26:44Z gingerale joined #lisp 2015-03-23T07:27:35Z pt1 joined #lisp 2015-03-23T07:32:28Z alokbeni_ joined #lisp 2015-03-23T07:34:02Z Harag joined #lisp 2015-03-23T07:36:50Z bcoburn joined #lisp 2015-03-23T07:37:01Z sol__ quit (Ping timeout: 264 seconds) 2015-03-23T07:37:14Z bcoburn|l quit (Ping timeout: 265 seconds) 2015-03-23T07:38:19Z Beetny joined #lisp 2015-03-23T07:42:15Z frkout quit (Remote host closed the connection) 2015-03-23T07:42:41Z frkout joined #lisp 2015-03-23T07:42:50Z alesguzik joined #lisp 2015-03-23T07:43:31Z ASau joined #lisp 2015-03-23T07:43:38Z quazimodo quit (Ping timeout: 272 seconds) 2015-03-23T07:45:35Z thodg joined #lisp 2015-03-23T07:45:57Z mishoo_ joined #lisp 2015-03-23T07:46:07Z ruste_ quit (Read error: Connection reset by peer) 2015-03-23T07:46:43Z alokbeni_ left #lisp 2015-03-23T07:48:07Z rszeno quit (Ping timeout: 255 seconds) 2015-03-23T07:50:31Z aloksingh joined #lisp 2015-03-23T07:53:23Z thodg quit (Ping timeout: 246 seconds) 2015-03-23T07:58:08Z Ven joined #lisp 2015-03-23T07:58:26Z ales-guzik joined #lisp 2015-03-23T07:59:25Z fierydiarreha quit (Quit: Lost terminal) 2015-03-23T08:00:21Z pt1_ joined #lisp 2015-03-23T08:00:59Z ales-guzik quit (Client Quit) 2015-03-23T08:01:01Z ehu joined #lisp 2015-03-23T08:01:37Z alesguzik quit (Ping timeout: 264 seconds) 2015-03-23T08:01:47Z Ven quit (Read error: Connection reset by peer) 2015-03-23T08:03:10Z rszeno joined #lisp 2015-03-23T08:03:15Z Ven joined #lisp 2015-03-23T08:04:01Z pt1 quit (Ping timeout: 250 seconds) 2015-03-23T08:06:25Z larion quit (Ping timeout: 264 seconds) 2015-03-23T08:12:44Z ehu quit (Ping timeout: 245 seconds) 2015-03-23T08:13:27Z ehu joined #lisp 2015-03-23T08:13:40Z Vutral quit (Ping timeout: 252 seconds) 2015-03-23T08:16:20Z mj-0 quit (Remote host closed the connection) 2015-03-23T08:16:36Z CrazyEddy quit (Ping timeout: 252 seconds) 2015-03-23T08:18:31Z Vutral joined #lisp 2015-03-23T08:19:41Z Vutral quit (Excess Flood) 2015-03-23T08:21:04Z robot-beethoven quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-03-23T08:26:33Z Ven quit (Ping timeout: 250 seconds) 2015-03-23T08:26:48Z pt1 joined #lisp 2015-03-23T08:27:02Z munksgaard joined #lisp 2015-03-23T08:29:39Z pt1_ quit (Ping timeout: 252 seconds) 2015-03-23T08:29:44Z ehu quit (Read error: Connection reset by peer) 2015-03-23T08:30:22Z yakccd quit (Ping timeout: 264 seconds) 2015-03-23T08:30:35Z mj-0 joined #lisp 2015-03-23T08:31:22Z ehu joined #lisp 2015-03-23T08:31:49Z Shinmera joined #lisp 2015-03-23T08:33:05Z mvilleneuve joined #lisp 2015-03-23T08:33:28Z Guest81750 quit (Quit: Lost terminal) 2015-03-23T08:35:10Z Cymew joined #lisp 2015-03-23T08:39:07Z vr-rm joined #lisp 2015-03-23T08:39:25Z sivoais quit (Ping timeout: 264 seconds) 2015-03-23T08:39:50Z pyon is now known as pyon-ography 2015-03-23T08:41:44Z rszeno quit (Ping timeout: 256 seconds) 2015-03-23T08:43:30Z ehu quit (Read error: Connection reset by peer) 2015-03-23T08:43:30Z sivoais joined #lisp 2015-03-23T08:45:28Z clintm quit (Remote host closed the connection) 2015-03-23T08:46:31Z Davidbrcz joined #lisp 2015-03-23T08:46:32Z ehu joined #lisp 2015-03-23T08:47:39Z clintm joined #lisp 2015-03-23T08:47:47Z jewel quit (Ping timeout: 250 seconds) 2015-03-23T08:47:57Z ehu quit (Read error: Connection reset by peer) 2015-03-23T08:48:21Z sivoais quit (Ping timeout: 252 seconds) 2015-03-23T08:50:09Z pavelpenev quit (Remote host closed the connection) 2015-03-23T08:50:27Z Vutral joined #lisp 2015-03-23T08:51:34Z ehu joined #lisp 2015-03-23T08:52:13Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2015-03-23T08:53:23Z przl joined #lisp 2015-03-23T08:54:35Z Davidbrcz quit (Ping timeout: 252 seconds) 2015-03-23T08:55:06Z radioninja quit (Ping timeout: 252 seconds) 2015-03-23T08:55:20Z ovenpasta quit (Ping timeout: 256 seconds) 2015-03-23T08:55:55Z rszeno joined #lisp 2015-03-23T08:57:41Z Vutral quit (Excess Flood) 2015-03-23T08:59:23Z stepnem joined #lisp 2015-03-23T09:00:10Z sivoais joined #lisp 2015-03-23T09:01:57Z cadadar_ joined #lisp 2015-03-23T09:02:12Z zygentoma joined #lisp 2015-03-23T09:02:22Z Vutral joined #lisp 2015-03-23T09:02:28Z Vutral quit (Excess Flood) 2015-03-23T09:03:22Z Vutral joined #lisp 2015-03-23T09:04:18Z xificurC joined #lisp 2015-03-23T09:04:49Z jewel joined #lisp 2015-03-23T09:04:55Z Vutral quit (Excess Flood) 2015-03-23T09:05:27Z Harag quit (Ping timeout: 244 seconds) 2015-03-23T09:10:05Z Ven joined #lisp 2015-03-23T09:11:12Z Shinmera: Can someone recommend a pure-CL database implementation? 2015-03-23T09:11:41Z Shinmera: I can't really consult cliki right now since it's down. 2015-03-23T09:12:22Z larion joined #lisp 2015-03-23T09:13:35Z SAL9000: Shinmera: http://webcache.googleusercontent.com/search?q=cache:http://www.cliki.net/Database 2015-03-23T09:13:50Z Shinmera: I always forget about the caches. 2015-03-23T09:14:05Z SAL9000: google doesn't have everything from cliki but that page happened to be saved 2015-03-23T09:14:15Z SAL9000: wayback machine might be worth trying, too 2015-03-23T09:14:20Z Shinmera: Right, still, that's quite a list and I don't know if any of them are well-usable, so I thought I might ask. 2015-03-23T09:14:30Z Shinmera: I've only looked at LambdaLite so far, which is a bit too lite. 2015-03-23T09:14:51Z SAL9000: can't suggest anything in particular, I've only used SQL databases 2015-03-23T09:15:20Z Shinmera: And SQL in Lisp would be fine with me too. 2015-03-23T09:15:47Z Shinmera: *An 2015-03-23T09:16:21Z Shinmera: The main reason I want such a DB is that so I can include it as a base default in Radiance without having to require any sort of external library being installed on the system. 2015-03-23T09:17:07Z agumonkey joined #lisp 2015-03-23T09:18:15Z p_l: rucksack? 2015-03-23T09:19:35Z arenz joined #lisp 2015-03-23T09:20:02Z Shinmera: The tutorial linked on the common-lisp.net page is 404-ing. :/ 2015-03-23T09:20:26Z agumonkey_ quit (Ping timeout: 244 seconds) 2015-03-23T09:22:17Z fe[nl]ix_: Shinmera: what kind of DB ? 2015-03-23T09:22:55Z Shinmera: fe[nl]ix_: Anything that offers storage to file and some kind of querying 2015-03-23T09:23:26Z fantazo joined #lisp 2015-03-23T09:24:33Z fe[nl]ix_: Shinmera: https://common-lisp.net/project/rucksack/ 2015-03-23T09:24:52Z Shinmera: Yes. As I said before, the tutorial linked on that page 404s. 2015-03-23T09:26:17Z Shinmera: I guess I'll read through it and see if it offers what I need. 2015-03-23T09:26:27Z Shinmera: The ECLM2006 talk I mean. 2015-03-23T09:26:31Z SAL9000: Shinmera: http://web.archive.org/web/20080524214344/http://common-lisp.net/cgi-bin/viewcvs.cgi/*checkout*/rucksack/doc/rucksack-tutorial.lisp?rev=1.1&root=rucksack 2015-03-23T09:27:25Z Shinmera: I wonder if that page started 404ing during the migration of cl.net or if that was already gone before. 2015-03-23T09:28:49Z ASau` joined #lisp 2015-03-23T09:31:51Z Shinmera: Looks like Rucksack will fit the bill fine. Thanks! 2015-03-23T09:32:05Z ASau quit (Ping timeout: 246 seconds) 2015-03-23T09:32:13Z fe[nl]ix_: Shinmera: I think it's because c-l.net no longer provides CVS 2015-03-23T09:33:07Z Vutral joined #lisp 2015-03-23T09:34:16Z Shinmera: Yeah. The URL should probably be fixed to point to https://gitlab.common-lisp.net/xcvb/rucksack/raw/master/doc/rucksack-tutorial.lisp 2015-03-23T09:34:23Z sivoais quit (Remote host closed the connection) 2015-03-23T09:34:52Z sivoais joined #lisp 2015-03-23T09:35:37Z sol__ joined #lisp 2015-03-23T09:35:39Z harish quit (Ping timeout: 265 seconds) 2015-03-23T09:39:17Z edgar-rft joined #lisp 2015-03-23T09:40:27Z radioninja joined #lisp 2015-03-23T09:41:29Z jumar joined #lisp 2015-03-23T09:41:43Z mj-0 quit (Remote host closed the connection) 2015-03-23T09:41:54Z smokeink_ quit (Ping timeout: 245 seconds) 2015-03-23T09:41:58Z rszeno quit (Ping timeout: 255 seconds) 2015-03-23T09:42:11Z echo-area quit (Read error: Connection reset by peer) 2015-03-23T09:42:47Z echo-area joined #lisp 2015-03-23T09:43:00Z kushal quit (Ping timeout: 252 seconds) 2015-03-23T09:43:37Z przl quit (Ping timeout: 264 seconds) 2015-03-23T09:43:39Z k-dawg joined #lisp 2015-03-23T09:45:37Z jumar left #lisp 2015-03-23T09:45:58Z smokeink joined #lisp 2015-03-23T09:47:51Z ASau` is now known as ASau 2015-03-23T09:48:50Z gniourf quit (Ping timeout: 246 seconds) 2015-03-23T09:49:25Z ehu quit (Read error: Connection reset by peer) 2015-03-23T09:49:40Z Xof quit (Ping timeout: 272 seconds) 2015-03-23T09:54:33Z JuanDaugherty quit (Remote host closed the connection) 2015-03-23T09:56:25Z gniourf joined #lisp 2015-03-23T09:58:54Z rszeno joined #lisp 2015-03-23T09:59:52Z badkins joined #lisp 2015-03-23T10:03:00Z Harag joined #lisp 2015-03-23T10:03:32Z Xof joined #lisp 2015-03-23T10:04:24Z przl joined #lisp 2015-03-23T10:04:55Z badkins quit (Ping timeout: 255 seconds) 2015-03-23T10:06:07Z williamyaoh joined #lisp 2015-03-23T10:06:08Z theotherstupidgu joined #lisp 2015-03-23T10:08:06Z pt1_ joined #lisp 2015-03-23T10:08:23Z pt1 quit (Read error: No route to host) 2015-03-23T10:08:57Z pt1 joined #lisp 2015-03-23T10:12:04Z mj-0 joined #lisp 2015-03-23T10:13:07Z pt1_ quit (Ping timeout: 256 seconds) 2015-03-23T10:16:23Z theotherstupidgu left #lisp 2015-03-23T10:16:34Z mj-0 quit (Ping timeout: 264 seconds) 2015-03-23T10:20:53Z przl quit (Ping timeout: 244 seconds) 2015-03-23T10:21:25Z ehu joined #lisp 2015-03-23T10:23:14Z pt1 quit (Read error: No route to host) 2015-03-23T10:23:26Z pt1 joined #lisp 2015-03-23T10:24:09Z xan_ joined #lisp 2015-03-23T10:31:23Z thodg joined #lisp 2015-03-23T10:37:31Z CrazyEddy joined #lisp 2015-03-23T10:37:37Z pt1 quit (Ping timeout: 252 seconds) 2015-03-23T10:38:57Z sdothum joined #lisp 2015-03-23T10:42:09Z mj-0 joined #lisp 2015-03-23T10:42:27Z loke joined #lisp 2015-03-23T10:44:51Z Xof quit (Ping timeout: 256 seconds) 2015-03-23T10:45:21Z ehu: Shinmera: that link is broken because apparently it points to viewcvs, which is now called viewvc. 2015-03-23T10:45:37Z pt1 joined #lisp 2015-03-23T10:45:59Z ehu: I may be able to introduce a rewrite rule. 2015-03-23T10:45:59Z harish joined #lisp 2015-03-23T10:46:16Z ehu: Shinmera: this is the link that should be redirected to: https://common-lisp.net/viewvc/rucksack/rucksack/doc/rucksack-tutorial.lisp?view=co&revision=1.1 2015-03-23T10:46:24Z ehu: (which, btw, seems to be 403) 2015-03-23T10:46:30Z ehu: I'll have a look at that. 2015-03-23T10:46:34Z mj-0 quit (Ping timeout: 252 seconds) 2015-03-23T10:46:38Z fe[nl]ix_: ehu: that link has been 404 for a few years 2015-03-23T10:46:40Z ehu: however, CVS won't be hosted much longer. 2015-03-23T10:46:44Z ehu: ok. 2015-03-23T10:46:48Z fe[nl]ix_: c-l.net moved to viewvc a long time ago 2015-03-23T10:46:48Z CrazyEddy quit (Remote host closed the connection) 2015-03-23T10:46:53Z ehu: yea. 2015-03-23T10:47:07Z ehu: on different URL paths, unfortunately. 2015-03-23T10:47:27Z CrazyEddy joined #lisp 2015-03-23T10:47:28Z ehu: hmm. 2015-03-23T10:49:05Z Harag quit (Ping timeout: 246 seconds) 2015-03-23T10:49:39Z Shinmera: If it's changed to the gitlab raw it should be fine 2015-03-23T10:50:05Z ehu: Shinmera: but that's not the rucksack project, is it? 2015-03-23T10:50:20Z ehu: Shinmera: it's Fare's own copy of rucksack 2015-03-23T10:50:38Z ehu: I think we want to migrate the rucksack project to gitlab/subversion+trac. 2015-03-23T10:50:55Z Shinmera: It's the only one that was on gitlab 2015-03-23T10:50:55Z ehu: and then fix the rewriting to point to whereever it ends up. 2015-03-23T10:51:00Z gravicappa joined #lisp 2015-03-23T10:51:07Z Shinmera: Right. 2015-03-23T10:51:40Z cadadar_ left #lisp 2015-03-23T10:53:10Z Quadrescence quit (Quit: This computer has gone to sleep) 2015-03-23T10:54:08Z cadadar_ joined #lisp 2015-03-23T10:54:27Z pt1_ joined #lisp 2015-03-23T10:54:37Z Karl_Dscc joined #lisp 2015-03-23T10:55:14Z alesguzik joined #lisp 2015-03-23T10:55:19Z Shinmera quit (Quit: しつれいしなければならないんです。) 2015-03-23T10:55:43Z ehu: migration away from CVS is planned to be done in the coming 4-6 weeks 2015-03-23T10:55:44Z jdz quit (Ping timeout: 252 seconds) 2015-03-23T10:55:54Z pt1__ joined #lisp 2015-03-23T10:56:40Z pt1___ joined #lisp 2015-03-23T10:56:47Z alesguzik quit (Client Quit) 2015-03-23T10:56:55Z pt1 quit (Ping timeout: 250 seconds) 2015-03-23T10:57:00Z chu quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-03-23T10:57:59Z mbuf joined #lisp 2015-03-23T10:58:00Z Harag joined #lisp 2015-03-23T10:58:47Z ehu: hmm. what happened? 2015-03-23T10:59:00Z ehu: number of projects dropped from 236 to 179 2015-03-23T10:59:02Z jtza8 joined #lisp 2015-03-23T10:59:35Z pt1_ quit (Ping timeout: 256 seconds) 2015-03-23T11:00:06Z pt1___ quit (Read error: No route to host) 2015-03-23T11:00:35Z pt1 joined #lisp 2015-03-23T11:00:50Z jdz joined #lisp 2015-03-23T11:00:58Z pt1__ quit (Ping timeout: 264 seconds) 2015-03-23T11:03:05Z karswell quit (Read error: Connection reset by peer) 2015-03-23T11:06:21Z pt1 quit (Read error: No route to host) 2015-03-23T11:06:27Z theos quit (Disconnected by services) 2015-03-23T11:06:35Z pt1 joined #lisp 2015-03-23T11:06:35Z sol__ quit (Ping timeout: 252 seconds) 2015-03-23T11:07:02Z theos joined #lisp 2015-03-23T11:08:04Z zygentoma quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2015-03-23T11:08:38Z sol__ joined #lisp 2015-03-23T11:09:45Z Mon_Ouie quit (Ping timeout: 246 seconds) 2015-03-23T11:11:36Z pt1_ joined #lisp 2015-03-23T11:13:41Z mj-0 joined #lisp 2015-03-23T11:15:18Z pt1 quit (Ping timeout: 256 seconds) 2015-03-23T11:17:43Z Jaskologist quit (Ping timeout: 244 seconds) 2015-03-23T11:17:46Z Shinmera joined #lisp 2015-03-23T11:18:11Z Karl_Dscc quit (Remote host closed the connection) 2015-03-23T11:20:09Z mj-0 quit (Ping timeout: 252 seconds) 2015-03-23T11:22:28Z intinig joined #lisp 2015-03-23T11:23:15Z posterdati300 joined #lisp 2015-03-23T11:23:48Z williamyaoh quit (Ping timeout: 256 seconds) 2015-03-23T11:24:37Z kcj joined #lisp 2015-03-23T11:31:40Z f03lipe quit (Ping timeout: 244 seconds) 2015-03-23T11:35:38Z vdamewood quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2015-03-23T11:37:23Z Mon_Ouie joined #lisp 2015-03-23T11:40:19Z nugnuts quit (Quit: peace out) 2015-03-23T11:41:53Z przl joined #lisp 2015-03-23T11:44:02Z EvW joined #lisp 2015-03-23T11:44:27Z Vutral quit (Ping timeout: 245 seconds) 2015-03-23T11:45:25Z aloksingh quit 2015-03-23T11:45:45Z alokbeniwal joined #lisp 2015-03-23T11:45:51Z alokbeniwal quit (Remote host closed the connection) 2015-03-23T11:45:55Z intinig quit (Remote host closed the connection) 2015-03-23T11:46:30Z intinig joined #lisp 2015-03-23T11:47:00Z Shinmera quit (Quit: しつれいしなければならないんです。) 2015-03-23T11:47:45Z przl quit (Ping timeout: 256 seconds) 2015-03-23T11:48:22Z fe[nl]ix_: ehu: I deleted group mirror 2015-03-23T11:49:51Z ndrei quit (Ping timeout: 252 seconds) 2015-03-23T11:50:37Z kons joined #lisp 2015-03-23T11:54:58Z intinig quit (Ping timeout: 264 seconds) 2015-03-23T11:55:07Z zacts quit (Quit: leaving) 2015-03-23T11:56:32Z funnel quit (Ping timeout: 245 seconds) 2015-03-23T11:57:08Z hiroakip joined #lisp 2015-03-23T11:57:36Z funnel joined #lisp 2015-03-23T11:59:02Z kcj quit (Remote host closed the connection) 2015-03-23T12:01:04Z zacharias joined #lisp 2015-03-23T12:02:41Z ehu quit (Read error: Connection reset by peer) 2015-03-23T12:02:47Z jackdaniel: weblocks - for/against? :-) 2015-03-23T12:03:27Z Jaskologist joined #lisp 2015-03-23T12:03:35Z pt1 joined #lisp 2015-03-23T12:03:51Z yrk joined #lisp 2015-03-23T12:03:55Z fe[nl]ix_: jackdaniel: I don't think it's actively maintained 2015-03-23T12:03:56Z clintm: jackdaniel: I've heard good things from people who use it, though I don't, mainly out of habit of using just hunchentoot, cl-who, etc. 2015-03-23T12:04:20Z yrk quit (Changing host) 2015-03-23T12:04:21Z yrk joined #lisp 2015-03-23T12:05:35Z jackdaniel: thanks 2015-03-23T12:06:44Z ehu joined #lisp 2015-03-23T12:06:52Z schoppenhauer quit (Ping timeout: 255 seconds) 2015-03-23T12:06:56Z pt1_ quit (Ping timeout: 265 seconds) 2015-03-23T12:08:53Z intinig joined #lisp 2015-03-23T12:11:47Z mj-0 joined #lisp 2015-03-23T12:11:55Z ehu: fe[nl]ix_: ah! Thanks for the update! Now I know what to search for in the logs! 2015-03-23T12:14:57Z Beetny quit (Ping timeout: 256 seconds) 2015-03-23T12:15:12Z Vutral joined #lisp 2015-03-23T12:15:18Z Lycurgus quit (Remote host closed the connection) 2015-03-23T12:16:59Z kushal joined #lisp 2015-03-23T12:17:25Z intinig quit (Remote host closed the connection) 2015-03-23T12:18:00Z ehu1 joined #lisp 2015-03-23T12:18:04Z intinig joined #lisp 2015-03-23T12:18:58Z Vutral quit (Excess Flood) 2015-03-23T12:20:02Z ehu quit (Ping timeout: 246 seconds) 2015-03-23T12:21:34Z Vutral joined #lisp 2015-03-23T12:22:43Z Vutral quit (Excess Flood) 2015-03-23T12:23:11Z ehu1 is now known as ehu 2015-03-23T12:23:27Z intinig quit (Ping timeout: 256 seconds) 2015-03-23T12:24:36Z kushal quit (Max SendQ exceeded) 2015-03-23T12:25:32Z schoppenhauer joined #lisp 2015-03-23T12:25:56Z Karl_Dscc joined #lisp 2015-03-23T12:26:03Z kushal joined #lisp 2015-03-23T12:26:59Z fantazo quit (Remote host closed the connection) 2015-03-23T12:27:02Z _Eris_ quit (Quit: leaving) 2015-03-23T12:27:42Z Xach: people do still use & update weblocks 2015-03-23T12:27:45Z Xach: i don't know much more than that 2015-03-23T12:29:34Z Vutral joined #lisp 2015-03-23T12:30:22Z frkout quit (Remote host closed the connection) 2015-03-23T12:30:41Z ruste joined #lisp 2015-03-23T12:32:57Z Vutral quit (Excess Flood) 2015-03-23T12:33:52Z Vutral joined #lisp 2015-03-23T12:33:58Z Vutral quit (Excess Flood) 2015-03-23T12:34:25Z knobo quit (Ping timeout: 250 seconds) 2015-03-23T12:36:09Z pranavrc quit 2015-03-23T12:37:30Z jtza8 quit (Ping timeout: 272 seconds) 2015-03-23T12:37:37Z yati quit (Remote host closed the connection) 2015-03-23T12:41:09Z billstclair joined #lisp 2015-03-23T12:41:09Z billstclair quit (Changing host) 2015-03-23T12:41:09Z billstclair joined #lisp 2015-03-23T12:45:09Z mbuf quit (Quit: Leaving) 2015-03-23T12:51:14Z ehu quit (Ping timeout: 244 seconds) 2015-03-23T12:52:46Z Mon_Ouie quit (Ping timeout: 255 seconds) 2015-03-23T12:53:43Z intinig joined #lisp 2015-03-23T12:53:43Z ehu joined #lisp 2015-03-23T12:54:14Z badkins joined #lisp 2015-03-23T12:54:34Z the_real_intinig joined #lisp 2015-03-23T12:55:26Z thodg quit (Ping timeout: 246 seconds) 2015-03-23T12:56:02Z badkins_ joined #lisp 2015-03-23T12:58:15Z ehu1 joined #lisp 2015-03-23T12:58:37Z intinig quit (Ping timeout: 264 seconds) 2015-03-23T12:59:56Z ehu quit (Ping timeout: 246 seconds) 2015-03-23T13:00:18Z badkins quit (Ping timeout: 272 seconds) 2015-03-23T13:02:23Z ehu1 quit (Ping timeout: 246 seconds) 2015-03-23T13:04:03Z rszeno quit (Quit: Leaving.) 2015-03-23T13:04:03Z ehu joined #lisp 2015-03-23T13:04:37Z Harag quit (Ping timeout: 264 seconds) 2015-03-23T13:04:59Z the_real_intinig quit (Remote host closed the connection) 2015-03-23T13:07:18Z ziocroc joined #lisp 2015-03-23T13:08:16Z Vutral joined #lisp 2015-03-23T13:08:23Z ndrei joined #lisp 2015-03-23T13:09:42Z moore33 joined #lisp 2015-03-23T13:09:48Z Vutral quit (Excess Flood) 2015-03-23T13:09:55Z echo-area quit (Remote host closed the connection) 2015-03-23T13:10:35Z echo-area joined #lisp 2015-03-23T13:13:32Z JuanDaugherty joined #lisp 2015-03-23T13:17:28Z Shinmera joined #lisp 2015-03-23T13:17:52Z mj-0 quit (Remote host closed the connection) 2015-03-23T13:22:02Z Adlai takes some time away from writing code to enjoy slime-sprof 2015-03-23T13:22:36Z Adlai: henceforth, the fourth monday of march will be slime-sprof-appreciation-day 2015-03-23T13:22:46Z Vutral joined #lisp 2015-03-23T13:23:41Z k-dawg quit (Quit: This computer has gone to sleep) 2015-03-23T13:23:49Z sivoais quit (Ping timeout: 250 seconds) 2015-03-23T13:24:20Z sivoais joined #lisp 2015-03-23T13:26:20Z intinig joined #lisp 2015-03-23T13:28:59Z LiamH joined #lisp 2015-03-23T13:31:34Z bcoburn quit (Ping timeout: 252 seconds) 2015-03-23T13:32:57Z pjb: Bike: eval-when preserves toplevelness. 2015-03-23T13:34:20Z Harag joined #lisp 2015-03-23T13:34:56Z Vutral quit (Excess Flood) 2015-03-23T13:37:09Z mood: Shinmera: I'm playing around with Radiance a bit, but having some trouble setting reader up. What kind of configuration should I give it and how? 2015-03-23T13:37:35Z Vutral joined #lisp 2015-03-23T13:37:49Z mood: I've called (uc:save-configuration), added :reader :title and called (uc:load-configuration) but it doesn't seem to get picked up 2015-03-23T13:38:09Z Shinmera: How did you add that? 2015-03-23T13:38:56Z Shinmera: You can just do (setf (radiance:config-tree :reader :title) "Hey!") 2015-03-23T13:39:09Z dlowe: Shinmera: I've found Rucksack to be slightly buggy reloading its db on schema changes 2015-03-23T13:39:37Z Vutral quit (Excess Flood) 2015-03-23T13:39:41Z dlowe: Shinmera: it's mostly solid, but I wouldn't trust it with anything I cared about 2015-03-23T13:39:49Z Shinmera: dlowe: I'm not sure how exactly I should interpret that. You mean you change the schema and then load the DB from disk? 2015-03-23T13:40:12Z dlowe: Shinmera: if I had a solid understanding of the trigger, I would have fixed it :p 2015-03-23T13:40:21Z Shinmera: Ah, alright. 2015-03-23T13:40:49Z Shinmera: Well, Radiance does not expose changing schemas, so I can still make a 100% conforming driver for Rucksack. 2015-03-23T13:40:54Z Shinmera: I'll keep that in mind though, thanks. 2015-03-23T13:40:57Z dlowe: I wrote a game using it, and I had to blow away the db multiple times during development 2015-03-23T13:41:09Z dlowe: and according to the design doc, I shouldn't have had to 2015-03-23T13:41:15Z Shinmera: Hrm. 2015-03-23T13:41:24Z Shinmera: Did you still end up using it or did you look for alternatives? 2015-03-23T13:41:30Z mood: Shinmera: That doesn't seem to result in any change. The title tag on the page ends up "", so nothing is rendered at all 2015-03-23T13:41:59Z dlowe: Shinmera: I still used it. It seemed fine with a stable schema, and the rest of it is pleasing 2015-03-23T13:42:47Z jtza8 joined #lisp 2015-03-23T13:42:55Z Shinmera: mood: Reader generates a static cache for all pages. Clear it with (setf reader::*cache-validated* NIL) 2015-03-23T13:43:06Z Shinmera: mood: I should really export a function to do that though :/ 2015-03-23T13:43:20Z Shinmera: dlowe: Alright. 2015-03-23T13:43:36Z mood: Shinmera: That works! 2015-03-23T13:43:42Z Shinmera: mood: Alternatively the cache gets cleared whenever a new entry is created 2015-03-23T13:43:48Z dlowe: I think it's worth saving, honestly. Development seems to halted, but it was a great lispy alternative to sqlite 2015-03-23T13:43:49Z Shinmera: Or one is edited. 2015-03-23T13:43:56Z mood: Yeah, on to logging in 2015-03-23T13:44:08Z Shinmera: mood: Are you following the blog entries at all? 2015-03-23T13:44:41Z mood: Shinmera: To some extent, but they're mostly about developing modules aren't they? Maybe I missed something 2015-03-23T13:44:44Z dlowe: though I wonder now if a similar library could be created with cl-store as the base 2015-03-23T13:44:57Z Shinmera: mood: Yeah, they are, but one of them explains authentication and how to get that going. 2015-03-23T13:45:16Z Xach quit (Ping timeout: 250 seconds) 2015-03-23T13:45:23Z hiyosi joined #lisp 2015-03-23T13:45:39Z Shinmera: mood: the basic is (user:get "my-username" :if-does-not-exist :create) and then (auth::set-password "my-username" "my-password") 2015-03-23T13:45:44Z przl joined #lisp 2015-03-23T13:45:53Z Shinmera: mood: You can then log in on http://auth.localhost:8080/login , hopefully 2015-03-23T13:46:32Z yasha9 quit (Ping timeout: 272 seconds) 2015-03-23T13:46:38Z Xach joined #lisp 2015-03-23T13:46:45Z mood: Shinmera: Ah, I didn't see the set-password anywhere. 2015-03-23T13:46:52Z Shinmera: mood: I'm really sorry that I have to walk you through it like this, but yeah, specification is the last step that's remaining towards completing radiance now. 2015-03-23T13:47:04Z Shinmera: mood: As you can see by the :: it's an implementation specific thing. 2015-03-23T13:47:21Z Shinmera: Not all auth modules will have a password mechanism, so it can't be a standard interface function 2015-03-23T13:47:59Z Shinmera: dlowe: Do you know of any other CL databases that might be worth checking out? 2015-03-23T13:48:29Z dlowe: elephantdb is a thing, I think a heavier-weight successor to Rucksack. I've never used it 2015-03-23T13:48:38Z pjb: - 2015-03-23T13:48:38Z dlowe: cliki.net should have a list of them 2015-03-23T13:48:56Z Shinmera: Yeah, but cliki is not exactly great at telling me what might be worth having a look at. 2015-03-23T13:49:05Z Xach: cliki is down 2015-03-23T13:49:05Z dlowe: When it comes down to it, I've mostly used postmodern. 2015-03-23T13:49:21Z dlowe: oh, well, it's not great at telling anyone anything atm then 2015-03-23T13:49:25Z Shinmera: Yeah, same 2015-03-23T13:49:30Z Shinmera: There's caches, fortunately. 2015-03-23T13:49:38Z pjb: http://webcache.googleusercontent.com/search?q=cache:nJijVjamjkAJ:cliki.net/database+&cd=3&hl=en&ct=clnk&gl=fr 2015-03-23T13:49:45Z Shinmera: Anyway, I already have a driver for postmodern, so that's all fine with me, and it's what I use in production and dev myself. 2015-03-23T13:49:57Z Adlai: is 'elephantdb' a homage to http://www-formal.stanford.edu/jmc/elephant/elephant.html ? 2015-03-23T13:49:58Z Shinmera: But I wanted to offer a solution that would not require external libraries to be installed. 2015-03-23T13:50:08Z mj-0 joined #lisp 2015-03-23T13:52:10Z Shinmera: mood: Oh, you also need to grant yourself permission to create blogs of course. (user:grant "my-username" "reader.write") 2015-03-23T13:55:10Z mood: Shinmera: Thanks, I figured that out. Logging in doesn't seem to work, though. I have a different session cookie on reader.localhost 2015-03-23T13:55:50Z jocuman joined #lisp 2015-03-23T13:55:50Z Shinmera: mood: I think that has to do with localhost being specially treated for cookies, iirc. 2015-03-23T13:56:17Z mood: Shinmera: Ah, that makes sense, yes 2015-03-23T13:56:26Z Ukari joined #lisp 2015-03-23T13:56:29Z Shinmera: mood: Radiance has a solution though, which is to not use subdomains at all. 2015-03-23T13:57:26Z Shinmera: mood: Try http://localhost:8080/!/auth/login 2015-03-23T13:58:24Z Shinmera: and similarly http://localhost:8080/!/reader/ etc. 2015-03-23T13:58:47Z Shinmera: If I did in fact do everything right for once it should "just work". 2015-03-23T13:59:34Z yasha9 joined #lisp 2015-03-23T13:59:35Z mood: Shinmera: Thanks, that works. http://localhost:8080/!/reader/write/ results in a 500 error though 2015-03-23T13:59:48Z mood: "Handling stray condition: invalid number of arguments: 1" 2015-03-23T13:59:58Z Shinmera: oh dear. 2015-03-23T14:00:08Z Shinmera: Let me try to reproduce. 2015-03-23T14:01:18Z badkins_ is now known as badkins 2015-03-23T14:01:29Z przl quit (Ping timeout: 252 seconds) 2015-03-23T14:01:49Z mood: Shinmera: Just going to "/write" without the "/" suffix should probably be a 404, shouldn't it? 2015-03-23T14:01:59Z mood: Or redirect, in this case 2015-03-23T14:02:14Z Shinmera: It's just an unhandled URL, which defaults to / . 2015-03-23T14:02:27Z cyphase quit (Ping timeout: 265 seconds) 2015-03-23T14:02:29Z Shinmera: In the case of Reader that is. 2015-03-23T14:02:37Z Shinmera: I don't remember why I decided to do it like that. 2015-03-23T14:03:33Z Shinmera: mood: I'm getting an access denied on my end rather than a 500. 2015-03-23T14:03:40Z przl joined #lisp 2015-03-23T14:03:53Z Shinmera: So I guess localhost doesn't accept any cookies at all. 2015-03-23T14:04:16Z mood: Shinmera: That is a bit of a weird issue. Some browsers do, some don't, some do part of the time 2015-03-23T14:04:28Z Shinmera: Right. 2015-03-23T14:04:29Z mood: It's driven me nuts in the past 2015-03-23T14:04:39Z Shinmera: Well, you can solve it by adding an entry for radiance.test to your hosts file. 2015-03-23T14:04:58Z Shinmera: Radiance should recognise that domain automatically 2015-03-23T14:05:17Z trigen quit (Max SendQ exceeded) 2015-03-23T14:05:34Z Shinmera: I really hate this kludge 2015-03-23T14:05:39Z trigen joined #lisp 2015-03-23T14:05:48Z Shinmera: It's so stupid that I need to require users to change the hosts file to try this stuff out 2015-03-23T14:06:07Z trigen quit (Max SendQ exceeded) 2015-03-23T14:06:40Z trigen joined #lisp 2015-03-23T14:07:05Z mood: Shinmera: When not using localhost it indeed results in an Access Denied 2015-03-23T14:07:14Z mood: The error message on the REPL is the same, though 2015-03-23T14:07:33Z Shinmera: Did you log in on the new domain? 2015-03-23T14:07:48Z mood: Shinmera: I did, but it's acting weird now. Hang on 2015-03-23T14:07:52Z Shinmera: Hrm. 2015-03-23T14:08:06Z Shinmera: If it still errors, do (setf radiance:*debugger* T) and send me the backtrace. 2015-03-23T14:10:28Z mood: Shinmera: http://plaster.tymoon.eu/view/9L 2015-03-23T14:10:49Z mood: Anything I need to expand? 2015-03-23T14:10:56Z Shinmera: Nah, this is fine. 2015-03-23T14:11:38Z przl quit (Ping timeout: 265 seconds) 2015-03-23T14:13:44Z LiamH: ehu: Any particular reason why I would need to reset my password for gitlab.common-lisp.net on Saturday and again today? 2015-03-23T14:15:23Z cyphase joined #lisp 2015-03-23T14:15:27Z ovenpasta joined #lisp 2015-03-23T14:17:07Z rhllor joined #lisp 2015-03-23T14:18:27Z Shinmera: mood: I don't know how that escaped me for so long either. Sigh. Fixed now. 2015-03-23T14:19:26Z ndrei quit (Ping timeout: 246 seconds) 2015-03-23T14:19:46Z Shinmera: mood: I'm seeing another bug related to URI reversal though, so hold on 2015-03-23T14:24:47Z Shinmera: mood: ok, that should be fixed now too. 2015-03-23T14:24:55Z cluck joined #lisp 2015-03-23T14:25:24Z Shinmera: Holy moly it actually works properly out of the box now. This is better than I ever expected my solution to work. Wow. 2015-03-23T14:25:35Z mood: Shinmera: :D 2015-03-23T14:25:42Z Shinmera is impressed with himself for once 2015-03-23T14:26:30Z Ukari quit (Read error: Connection reset by peer) 2015-03-23T14:26:31Z Shinmera: (for more context on what I'm pleased about, it's the problem discussed in this entry https://reader.tymoon.eu/article/308 ) 2015-03-23T14:27:20Z intinig quit 2015-03-23T14:27:29Z ehu quit (Ping timeout: 246 seconds) 2015-03-23T14:28:31Z mood: Shinmera: It works! 2015-03-23T14:28:35Z Shinmera: \o/ 2015-03-23T14:29:23Z mood: Shinmera: Do you have entries in your hostfile for every radiance.test subdomain? 2015-03-23T14:29:27Z Shinmera: By the way, you might also be interested in loading the :r-pretty-errors system, to get a nice debugger in the browser. 2015-03-23T14:29:59Z Shinmera: mood: I don't use radiance.test, but essentially yes. 2015-03-23T14:30:14Z ehu joined #lisp 2015-03-23T14:30:19Z ehu: LiamH: No idea. I haven't had to reset my password since friday. 2015-03-23T14:30:20Z Shinmera: I mean, you should be able to use the virtual subdomains just fine, if I did everything right. 2015-03-23T14:30:25Z kushal quit (Ping timeout: 255 seconds) 2015-03-23T14:30:40Z ehu: LiamH: please update me if it keeps happening. 2015-03-23T14:30:57Z rhllor quit (Quit: rhllor) 2015-03-23T14:30:59Z ndrei joined #lisp 2015-03-23T14:31:09Z mood: Shinmera: Within reader all links seem to work, but the link "Written by ..." link goes to "user.radiance.test" 2015-03-23T14:31:31Z Shinmera: mood: that's a bug, then. 2015-03-23T14:31:47Z LiamH: ehu: OK, I will. 2015-03-23T14:33:56Z zeitue quit (Quit: Leaving) 2015-03-23T14:35:14Z gklimowicz quit (Ping timeout: 245 seconds) 2015-03-23T14:35:35Z Shinmera: mood: just to confirm that I got it reproduced stably: the link is user.radiance.test/!/user/something/ right? 2015-03-23T14:35:59Z Shinmera: Err, user.radiance.test/!/reader/something/ 2015-03-23T14:36:09Z mood: Shinmera: correct 2015-03-23T14:36:25Z Shinmera: Right, I need to think for a minute. 2015-03-23T14:36:27Z BitPuffin joined #lisp 2015-03-23T14:37:16Z knobo joined #lisp 2015-03-23T14:38:07Z joga quit (Remote host closed the connection) 2015-03-23T14:42:30Z Vutral joined #lisp 2015-03-23T14:42:37Z Vutral quit (Excess Flood) 2015-03-23T14:43:46Z kushal joined #lisp 2015-03-23T14:44:10Z hlavaty joined #lisp 2015-03-23T14:44:33Z knobo quit (Ping timeout: 256 seconds) 2015-03-23T14:45:35Z mood: Shinmera: Plaster also doesn't handle the /!/ mechanism perfectly: The homepage redirects to "/new" 2015-03-23T14:45:43Z mood: URL's like this are very hard 2015-03-23T14:45:48Z Shinmera: Plaster is in general a mess. 2015-03-23T14:46:16Z Shinmera: Anyway, I got the solution but I'm hitting some weird behaviour, which is why it's taking me longer. 2015-03-23T14:46:30Z mood: No worries 2015-03-23T14:46:36Z Shinmera: I always worry 2015-03-23T14:47:21Z mood: Shinmera: Ooh, the fancy errors are awesome 2015-03-23T14:47:54Z oleo joined #lisp 2015-03-23T14:48:22Z scymtym joined #lisp 2015-03-23T14:49:11Z Shinmera: It is probably the fanciest thin in Radiance right now. 2015-03-23T14:49:14Z Shinmera: *thing 2015-03-23T14:49:52Z a2015 quit (Quit: Page closed) 2015-03-23T14:50:36Z ehu quit (Read error: Connection reset by peer) 2015-03-23T14:50:43Z ehu joined #lisp 2015-03-23T14:53:27Z mood: Shinmera: And more URL problems: Purplish links all go to chan.localhost 2015-03-23T14:53:40Z mood: Apart from that it works great, though 2015-03-23T14:54:25Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-03-23T14:56:39Z Shinmera: Fixes are in. 2015-03-23T14:57:31Z Shinmera: Err, forgot to update the dist. 2015-03-23T14:59:39Z Ven joined #lisp 2015-03-23T14:59:40Z kushal quit (Ping timeout: 255 seconds) 2015-03-23T15:00:02Z gklimowicz joined #lisp 2015-03-23T15:00:18Z Shinmera: mood: purplish too uses static caches to increase performance. 2015-03-23T15:01:18Z rhllor joined #lisp 2015-03-23T15:01:32Z joga joined #lisp 2015-03-23T15:01:46Z joga quit (Changing host) 2015-03-23T15:01:47Z joga joined #lisp 2015-03-23T15:02:34Z Shinmera: The dist is updated btw, I'm checking purplish for leftover problems now. 2015-03-23T15:06:36Z kushal joined #lisp 2015-03-23T15:09:10Z EvW quit (Read error: No route to host) 2015-03-23T15:09:21Z EvW joined #lisp 2015-03-23T15:11:22Z Ethan- quit (Ping timeout: 255 seconds) 2015-03-23T15:12:15Z drmeister: I wonder if someone could take a look at the following - I'm testing the interaction of SETF with MACROLET 2015-03-23T15:12:37Z jtza8 quit (Ping timeout: 252 seconds) 2015-03-23T15:12:38Z drmeister: http://paste.lisp.org/display/146451 2015-03-23T15:13:10Z mood: Shinmera: Well, everything seems to work now 2015-03-23T15:13:15Z Shinmera: mood: Purplish should work right with the URI system, but there's a kludge that I'll need some time to figure out how to solve. 2015-03-23T15:13:31Z drmeister: This code works fine in SBCL and Clasp. Cleavir says that 2015-03-23T15:13:34Z Shinmera: mood: It's related to the fact that API pages are domain-agnostic, but the static cache needs to know the preferred domain. 2015-03-23T15:13:50Z drmeister: https://www.irccloud.com/pastebin/QPntR6hW 2015-03-23T15:13:57Z Shinmera: mood: So creating a new post, which triggers a recache, will use the wrong scheme. 2015-03-23T15:14:34Z drmeister: So Cleavir is looking for the function (setf el0) - and doesn't do the macrolet expansion of el0. 2015-03-23T15:14:56Z pjb: That's bad. 2015-03-23T15:15:19Z drmeister: What's bad about it? 2015-03-23T15:16:06Z oleo: wth 2015-03-23T15:16:26Z guicho joined #lisp 2015-03-23T15:16:29Z oleo: macrolet defines a local macro.... 2015-03-23T15:16:55Z gravicappa quit (Remote host closed the connection) 2015-03-23T15:17:31Z drmeister: Right. 2015-03-23T15:17:40Z oleo: it takes one arg and returns a form 2015-03-23T15:18:02Z oleo: but there's nowhere to store it.... 2015-03-23T15:18:46Z Vutral joined #lisp 2015-03-23T15:18:50Z oleo: when you tell set the form to the value, will not work 2015-03-23T15:18:50Z ehu: oleo: store what? 2015-03-23T15:18:52Z mood: Shinmera: Yeah, Purplish' caching scheme doesn't like the different domains. Meh 2015-03-23T15:19:19Z drmeister: Note: This code works in SBCL and Clasp. 2015-03-23T15:19:24Z oleo: oh 2015-03-23T15:20:26Z Shinmera: mood: You can temporarily fix it by running something like (let ((radiance:*request* (make-instance 'radiance:request :uri NIL))) (setf (radiance:uri radiance:*request*) (radiance:internal-uri #@"radiance.test:8080/!/chan/")) (purplish:recache-all)) 2015-03-23T15:20:28Z drmeister: I'm trying to suss out what SETF is doing to the form - but I need to print the macroexpand of the SETF within the MACROLET environment at compile time - I'm not sure I can do that. 2015-03-23T15:20:33Z a2015 joined #lisp 2015-03-23T15:21:05Z Shinmera: mood: But again, this is a more tricky problem that I'll have to think about a bit to solve. The obvious solution is to cheat in a subdomain into the API request, but I want to have it done for the "normal" case too. 2015-03-23T15:21:21Z pjb: drmeister: it's bad because it's not conforming. 2015-03-23T15:21:32Z drmeister: What is non conforming? 2015-03-23T15:21:36Z pjb: cf. 5.1.2.7 Macro Forms as Places 2015-03-23T15:21:45Z oleo: ha :) 2015-03-23T15:21:53Z oleo: hello pjb 2015-03-23T15:21:55Z drmeister: This is the macro expansion just before the (defun write0...) 2015-03-23T15:21:57Z pjb: "<drmeister> So Cleavir is looking for the function (setf el0) - and doesn't do the macrolet expansion of el0." is not conforming. 2015-03-23T15:21:59Z drmeister: https://www.irccloud.com/pastebin/xmP0Ol9j 2015-03-23T15:22:12Z pjb: drmeister: usually, when A says X, and B says it, B refers to X. 2015-03-23T15:22:28Z pjb: This is basic human communication protocol. 2015-03-23T15:22:30Z mood: Shinmera: I must say I'm pretty impressed with how well this works. 2015-03-23T15:24:27Z nyef: pjb: But in this case the question is more "what, PRECISELY, is not conforming" than "what are you talking about?" 2015-03-23T15:24:27Z Shinmera: mood: I'm not sure if you're saying that because other frameworks set your expectations rather low. 2015-03-23T15:24:43Z ered quit (Remote host closed the connection) 2015-03-23T15:24:45Z theseb joined #lisp 2015-03-23T15:24:49Z wheelsucker joined #lisp 2015-03-23T15:24:53Z Shinmera has been pretty irked by everything he tried so far, so he wouldn't be surprised. 2015-03-23T15:24:56Z przl joined #lisp 2015-03-23T15:24:56Z drmeister: pjb: I wasn't sure if you were referring to what Cleavir was doing was bad or what SBCL and Clasp were doing what's bad. "That's bad" is not very descriptive. 2015-03-23T15:25:08Z mood: Shinmera: I'm saying that because it's a one-man project taking on gigantic goals, and the amount of bugs seems very low 2015-03-23T15:25:17Z drmeister: I appreciate the pointer though - you pinpointed the issue. 2015-03-23T15:25:24Z mood: The URL-thing, for example, is something I haven't seen any other framework even try to tackle 2015-03-23T15:26:16Z Shinmera: Me neither. 2015-03-23T15:26:21Z ered joined #lisp 2015-03-23T15:26:28Z mood: Wordpress even goes so far as hardlinking everything everywhere, which means moving a site over to a different domain is a problem. There are tools that walk all over the database to change everything, but come on 2015-03-23T15:26:58Z Shinmera: As I will mention in my lightning talk at ELS, I generally have not come across a framework that truly tries to be multi-application focused. Everything seems to want to focus on single applications. That's fine, but it's not something I want. 2015-03-23T15:27:49Z Shinmera: So it doesn't surprise me that such an elaborate routing system isn't present anywhere, because the problems only really surface once you try to combine proper module encapsulation with varying server setups. 2015-03-23T15:28:05Z pjb: drmeister: http://paste.lisp.org/+3503/1 2015-03-23T15:28:48Z pjb: nyef: just exactly the fact that clearvir is looking for the function (setf el0) and doesn't do the macrolet expansion of el0. This fact makes clearvir non-conforming. 2015-03-23T15:28:55Z BitPuffin quit (Ping timeout: 255 seconds) 2015-03-23T15:29:12Z d4ryus__ joined #lisp 2015-03-23T15:29:21Z Shinmera: mood: I'd say you can attribute the speed of development and lack of bugs to Common Lisp's strength and me not taking university as seriously as I should. 2015-03-23T15:29:33Z drmeister: pjb: Thank you - that gets at the expansion nicely. 2015-03-23T15:29:44Z pjb: drmeister: I could also explain the fact that clearvir is looking for the function (setf el0) and 2015-03-23T15:29:44Z pjb: doesn't do the macrolet expansion of el0 down to the atomic level. 2015-03-23T15:29:54Z ehu: Shinmera: which framework is that?- 2015-03-23T15:30:06Z nyef: pjb: Yes, but as drmeister said, your communication wasn't clear about which side wasn't conforming until you posted the CLHS reference. 2015-03-23T15:30:13Z Shinmera: ehu: Radiance. https://github.com/Shirakumo/Radiance 2015-03-23T15:30:25Z przl quit (Ping timeout: 264 seconds) 2015-03-23T15:30:26Z ehu: thanks. 2015-03-23T15:30:37Z ehu adds to TODO 2015-03-23T15:30:38Z pjb: nyef: there was exactly 0 reference to anything other than clearvir in drmeister's statement! 2015-03-23T15:31:04Z Shinmera: ehu: The one thing missing from its completion and proper release is a specification, so I generally don't advocate using it quite yet. 2015-03-23T15:31:23Z Shinmera: ehu: It is already being used in production for my own services though, so it is "ready" from a technical standpoint- 2015-03-23T15:31:25Z Shinmera: *. 2015-03-23T15:31:35Z pjb: nyef: if you say "the ant is 2 mm long" and I answer "it's small", "it" in my sentences doesn't refer to your penis. 2015-03-23T15:31:41Z drmeister: pjb: In your parlance: A said X and Y; B says "That's bad" it was not clear to me if X is bad or Y is bad. 2015-03-23T15:31:42Z ziocroc quit (Quit: ziocroc) 2015-03-23T15:31:48Z pjb: again, it's basic human communication protocol. 2015-03-23T15:31:50Z BitPuffin joined #lisp 2015-03-23T15:32:19Z d4ryus quit (Ping timeout: 245 seconds) 2015-03-23T15:32:23Z drmeister: pjb: I don't want to make a deal about it - I very much appreciate your help. 2015-03-23T15:32:45Z drmeister: It was a misunderstanding. 2015-03-23T15:32:56Z echo-area quit (Read error: Connection reset by peer) 2015-03-23T15:34:25Z rhllor quit (Ping timeout: 256 seconds) 2015-03-23T15:34:51Z heddwch joined #lisp 2015-03-23T15:34:52Z drmeister: pjb: Your meaning was very clear - I asked for verification because I wanted to be absolutely clear - especially when I had serious questions about which implementation SBCL/Clasp vs Cleavir was doing the right thing. 2015-03-23T15:36:22Z jocuman quit (Quit: Textual IRC Client: www.textualapp.com) 2015-03-23T15:38:14Z pt1 quit (Ping timeout: 256 seconds) 2015-03-23T15:40:20Z jocuman joined #lisp 2015-03-23T15:41:03Z ovenpasta quit (Ping timeout: 265 seconds) 2015-03-23T15:43:18Z dfinninger joined #lisp 2015-03-23T15:43:53Z rhllor joined #lisp 2015-03-23T15:46:17Z vaporatorius joined #lisp 2015-03-23T15:46:57Z nialo joined #lisp 2015-03-23T15:50:11Z przl joined #lisp 2015-03-23T15:51:59Z ehu quit (Ping timeout: 256 seconds) 2015-03-23T15:52:51Z ehu joined #lisp 2015-03-23T15:54:12Z badkins quit (Read error: Connection reset by peer) 2015-03-23T15:55:11Z smokeink quit (Quit: Angelic v4.4 - http://angelic.flexnet.org) 2015-03-23T15:55:13Z theseb quit (Quit: Leaving) 2015-03-23T15:55:41Z faheem_: pjb: i think it is cleavir, not clearvir. 2015-03-23T15:56:17Z pjb: Right. Thanks. 2015-03-23T15:57:14Z pjb: I couldn't let myself lean toward Cleavage IR, prefering a Clear IR. 2015-03-23T15:57:15Z pjb: :-) 2015-03-23T15:59:03Z guicho quit (Quit: さようなら) 2015-03-23T15:59:36Z nyef: ... Spathic? 2015-03-23T16:00:28Z ehu quit (Read error: Connection reset by peer) 2015-03-23T16:01:15Z milosn quit (Read error: Connection reset by peer) 2015-03-23T16:02:00Z boogie joined #lisp 2015-03-23T16:02:01Z ehu joined #lisp 2015-03-23T16:03:30Z Bike: pjb: when you leave me messages it would be cool if they were detailed enough for me to understand what you were referring to. i didn't say eval-when doesn't preserve toplevelness and i don't need to know how to configure clisp and i don't know why you're telling me these things. 2015-03-23T16:06:01Z tharugrim joined #lisp 2015-03-23T16:07:19Z milosn joined #lisp 2015-03-23T16:09:33Z `eeks joined #lisp 2015-03-23T16:10:12Z bb010g quit (Quit: Connection closed for inactivity) 2015-03-23T16:10:16Z pjb: Bike: you said: "<05:54:30><Bike> so, like, (eval-when (:compile-toplevel) (eval-when (:compile-toplevel) (print 'foo))) -> nothing" this would be non-conforming. 2015-03-23T16:10:34Z pjb: (when compiling). 2015-03-23T16:10:53Z pjb: Bike: about clisp, sorry, that should have been addressed to nyef. 2015-03-23T16:11:07Z `eeks: Hello there, I am trying to conditionally load an external file base on some CLI argument name: (load my_name); although the load function succeed, I can't see any of the symbols I defined in the file. 2015-03-23T16:12:00Z pjb: `eeks: symbols are not "defined" in "files". 2015-03-23T16:12:10Z pjb: `eeks: symbols are interned into packages. 2015-03-23T16:12:11Z Bike: pjb: no, it's not. the inner eval-when isn't toplevel because there's no load-toplevel in the outer one. having only compile-toplevel means it's only evaluated at compile time 2015-03-23T16:12:15Z `eeks: More precisely, the file contains a package, which exports a handful of defvar. But the package is not visible after the load. 2015-03-23T16:12:46Z Bike: Actually, what do you know, the example I came up with is almost exactly in the examples for eval-when in the clhs. 2015-03-23T16:12:46Z `eeks: `pjb: right 2015-03-23T16:12:48Z pjb: `eeks: again, packages don't export defvars. packages export symbols. 2015-03-23T16:12:52Z nyef: `eeks: Depending on the context, you may in fact be trying to find the package before the load. 2015-03-23T16:12:53Z Bike: "This always does nothing. It simply returns NIL." 2015-03-23T16:14:11Z `eeks: `nyef: any good way to enforce the ordering ? 2015-03-23T16:14:26Z `eeks: pjb: does this mean I need to (find-symbol) ? 2015-03-23T16:14:31Z pyon-ography is now known as temporary-pyon 2015-03-23T16:14:53Z pjb: `eeks: not necessarily. reading symbol tokens will perform an intern which performs a find-symbol implicitely. 2015-03-23T16:15:17Z pjb: `eeks: but for this to work, you have to use the proper symbol qualification or to have set the proper current package. 2015-03-23T16:16:11Z `eeks: pjb: it looks like my problem happens even before looking for the symbol. After the load, if I try to reference the symbol with PKG:SYM, SBCL complains about unknown package. 2015-03-23T16:17:03Z oleo: http://paste.lisp.org/display/146421#1 2015-03-23T16:17:03Z mj-0 quit (Remote host closed the connection) 2015-03-23T16:17:43Z pjb: Bike: ok, you're right about eval-when :compile-toplevel^2. I find it strange, but it's specified that way. 2015-03-23T16:17:46Z theseb joined #lisp 2015-03-23T16:18:22Z pjb: `eeks: perhaps you'd want to lisppaste your file? http://paste.lisp.org/new 2015-03-23T16:20:23Z pjb: Bike: notice that clhs eval-when says: "However, the compile-time side effects described in Section 3.2 (Compilation) only take place when eval-when appears as a top level form." which is a little ambiguous since clhs progn says: "If progn appears as a top level form, then all forms within that progn are considered by the compiler to be top level forms.". and that the glossary doesn't distinguish "appears as top level form" from "con 2015-03-23T16:20:55Z Bike: your message cut off in the sentence about the glossary. 2015-03-23T16:21:12Z jasom: oleo: friend's don't let friend's compute the iterative fibonacci without dynamic programming 2015-03-23T16:21:23Z jasom: s/friend's/friends/g 2015-03-23T16:21:23Z oleo: awww 2015-03-23T16:21:36Z pjb: Bike: also notice how clhs progn explicitely says "considered by the compiler"… Since Legally the examples are not specification, I'm not sure the semantics are very clear. But implementations implement the example… 2015-03-23T16:21:54Z pjb: Bike: + glossary doesn't distinguish "appears as top level form" from "considered by the compiler to be top level forms". 2015-03-23T16:22:04Z pjb: That's strange, erc used to split long sentence automatically. 2015-03-23T16:22:58Z Bike: well, it's because without :load-toplevel the inner forms aren't processed to be loaded, w hich is what the toplevelness thing is for. 2015-03-23T16:23:34Z Bike: it's clear from 3.2.3.1. with only compile toplevel you evaluate the inner forms but don't process them. 2015-03-23T16:23:50Z jasom: O(2^n) versus O(n) isn't exactly a hard choice 2015-03-23T16:24:09Z `eeks: pjb: http://paste.lisp.org/+3505 2015-03-23T16:24:13Z pjb: Bike: see also "3.2.3.1 Processing of Top Level Forms". I find this example very contradictory. 2015-03-23T16:24:24Z Bike: that's what i'm going off of! 2015-03-23T16:24:25Z jasom: also I would like to nominate "dynamic programming" for the single worst named thing I learned in my algorithms class 2015-03-23T16:24:34Z Bike: "Yes No --- --- Evaluate", not process 2015-03-23T16:24:41Z Bike: jasom: haha, right? 2015-03-23T16:24:51Z kushal quit (Quit: Leaving) 2015-03-23T16:25:10Z Bike: is the "plus .5 fil" thing on that page a mistake? i guess it must be 2015-03-23T16:25:25Z jasom: `eeks: ah, you read in the symbol config:mydef before you load the config file 2015-03-23T16:25:48Z Shinmera: jasom: IIRC it was named that before "programming" as we know it now was coined. 2015-03-23T16:26:01Z pjb: `eeks: if the package "CONFIG" is defined in the file file designed by the cfg parameter, then you are trying to intern a symbol named "MYDEF" in the package named "CONFIG" when you define the function LOAD-CONFIG, which is LONG BEFORE you will have loaded (if it will ever occur?! the end is nigh), the file defining the "CONFIG" package. 2015-03-23T16:26:32Z `eeks: jsom: pjb: right, this is what I am realizing now. 2015-03-23T16:26:41Z jasom: I think (symbol-value (intern "MYDEF" :config)) will work 2015-03-23T16:26:51Z ndrei quit (Read error: No route to host) 2015-03-23T16:26:56Z `eeks: jasom: let me try 2015-03-23T16:27:07Z jasom: though really that's a hack, and it's better to load the config before you read anything that needs to access symbols in it 2015-03-23T16:27:21Z pjb: `eeks: You could use instead: (when (and (find-package "CONFIG") (find-symbol "MYDEF" (find-package "CONFIG"))) (print (symbol-value (find-symbol "MYDEF" (find-package "CONFIG"))))) but really, why should the file just loaded contain such a package and such a variable at all? 2015-03-23T16:27:51Z pjb: `eeks: in general, functions should do a single thing, and you should not perform any I/O in functions performing specific tasks. 2015-03-23T16:28:05Z pjb: `eeks: ie. this PRINT should not exist in this LOAD-CONFIG function. 2015-03-23T16:28:25Z pjb: And a function named LOAD-CONFIG-AND-PRINT-CONFIG should not exist either. 2015-03-23T16:28:45Z `eeks: pjb: that's a debug print. It's not supposed to be there. I'm defining external configurations in lisp, lacking a good configuration format. 2015-03-23T16:28:46Z jasom: `eeks: it might be best do define the config packaged and environment variables outside the config file, and just SETF them in your config file. This has the added benefit of making it easy to define default values for configurable options 2015-03-23T16:29:04Z pjb: You should have two functions (load-config cfg-file) and (print-config cfg) and you should use them in combination (print-config (load-config cfg-file)). 2015-03-23T16:29:39Z `eeks: jasom: ah ! I tried that with setq initially, I should have used setf :p That's probably a load simpler. 2015-03-23T16:29:48Z pjb: `eeks: yes, it's called a Heisenbug. 2015-03-23T16:29:50Z jasom: `eeks: setf and setq should work identically for symbols 2015-03-23T16:30:01Z pjb: `eeks: bugs introduced by debugging expressions. 2015-03-23T16:30:17Z zacharias quit (Ping timeout: 246 seconds) 2015-03-23T16:30:22Z `eeks: pjb: ;p 2015-03-23T16:30:38Z jasom: pjb: I've seen it for any hard-to-observe bug 2015-03-23T16:30:44Z `eeks: jasom: ok, that works. dunno why it did not initially. 2015-03-23T16:30:47Z `eeks: thanks guys. 2015-03-23T16:31:02Z ndrei joined #lisp 2015-03-23T16:31:05Z jasom: `eeks: you may want to take a step back and think about how the reader and package system work and interact 2015-03-23T16:31:15Z jasom: it's not *that* complicated and will make things like this more obvious 2015-03-23T16:32:22Z `eeks: jasom: I will 2015-03-23T16:32:23Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-03-23T16:32:28Z nialo quit (Ping timeout: 272 seconds) 2015-03-23T16:32:32Z bcoburn|l joined #lisp 2015-03-23T16:32:43Z pjb: `eeks: you could write a function image-has-valid-configuration-p which can test for the presence of the CONFIG package and the MYDEF variables, and perhaps also validate its value. Then you could just (load cfg-file) and test (if (image-has-valid-configuration-p) …) instead of (if (eq config nil) …) 2015-03-23T16:32:57Z theseb quit (Quit: Leaving) 2015-03-23T16:33:38Z `eeks: pjb: thanks for the advice 2015-03-23T16:33:44Z przl quit (Ping timeout: 272 seconds) 2015-03-23T16:34:05Z jasom: `eeks: also, IMO, it's a good rule to use SETF for all assignments as it's one less thing to remember (e.g. (SETF a b) (SETF (car a) b) (SETF (cdr a) b) versus (setq a b) (rplca a b) (rplcd a b)) 2015-03-23T16:35:06Z pjb: `eeks: notice that loading files makes lisp evaluate expressions in them. You are actually running scripts (this may be what you want, like ~/.emacs). But for applications, an alternative would be to store just a sexp in a configuration file, and to use READ to read it. So you would have in your source files (defpackage "CONFIG …) (defvar *myconf*) (setf *myconf* (sexp-from-file cfg-file)) (if (valid-configuration-p *myconf*) … 2015-03-23T16:36:40Z pjb: `eeks: also, even if you want to run a script to configure your application, it would be a good idea to define a default configuration in your program, so that the script could contain just configuration modifying forms, not configuration defining forms. 2015-03-23T16:37:15Z pjb: `eeks: then load-config could set the *package* to the CONFIG package and the configuration script could just contain (setf *myconfig* …) or other forms. 2015-03-23T16:37:19Z Cymew quit (Ping timeout: 245 seconds) 2015-03-23T16:38:23Z pjb: `eeks: but having a default configuration in your sources let the user use your application without having to bother with defining a package that seems to be required by your application to run. Don't force your users to be programmers in your team! 2015-03-23T16:38:46Z anunnaki joined #lisp 2015-03-23T16:39:26Z kushal joined #lisp 2015-03-23T16:40:01Z hiroakip quit (Ping timeout: 264 seconds) 2015-03-23T16:40:26Z Ven joined #lisp 2015-03-23T16:42:14Z ehu1 joined #lisp 2015-03-23T16:42:18Z ovenpasta joined #lisp 2015-03-23T16:42:21Z Davidbrcz joined #lisp 2015-03-23T16:43:01Z ehu quit (Read error: Connection reset by peer) 2015-03-23T16:43:40Z badkins joined #lisp 2015-03-23T16:43:42Z bcoburn|l quit (Ping timeout: 252 seconds) 2015-03-23T16:44:42Z mj-0 joined #lisp 2015-03-23T16:47:00Z nialo joined #lisp 2015-03-23T16:49:25Z intinig joined #lisp 2015-03-23T16:49:54Z itPuffinB joined #lisp 2015-03-23T16:50:49Z ehu1 quit (Read error: Connection reset by peer) 2015-03-23T16:51:24Z CrazyEddy quit (Ping timeout: 252 seconds) 2015-03-23T16:51:38Z munksgaard quit (Ping timeout: 246 seconds) 2015-03-23T16:52:34Z BitPuffin quit (Ping timeout: 264 seconds) 2015-03-23T16:53:41Z itPuffinB is now known as BitPuffin 2015-03-23T16:53:59Z ehu joined #lisp 2015-03-23T16:54:16Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-03-23T16:54:40Z drmeister: Hi everyone! I take back all the terrible things I said about Cleavir not expanding MACROLET properly wrt SETF. It turns out I am responsible for macroexpansion and I wasn't dealing with Cleavir environments properly! 2015-03-23T16:55:57Z jasom: Just like we say here in California, "think of the environment, man" 2015-03-23T16:56:50Z jasom: drmeister: btw, I'm impressed with how quickly the cleavir integration is happening 2015-03-23T16:57:15Z drmeister: jasom: Thanks! 2015-03-23T16:57:30Z Karl_Dscc quit (Remote host closed the connection) 2015-03-23T16:58:35Z faheem_: jasom: :-) 2015-03-23T16:59:59Z larion quit (Ping timeout: 256 seconds) 2015-03-23T17:01:26Z ndrei quit (Ping timeout: 246 seconds) 2015-03-23T17:02:02Z ehu quit (Read error: Connection reset by peer) 2015-03-23T17:04:01Z ehu joined #lisp 2015-03-23T17:05:01Z pillton quit (Ping timeout: 272 seconds) 2015-03-23T17:09:53Z przl joined #lisp 2015-03-23T17:09:59Z Petit_Dejeuner quit (Ping timeout: 265 seconds) 2015-03-23T17:10:09Z xan_ quit (Quit: leaving) 2015-03-23T17:11:28Z That_Engineer joined #lisp 2015-03-23T17:13:01Z ehu quit (Ping timeout: 256 seconds) 2015-03-23T17:13:23Z futpib joined #lisp 2015-03-23T17:13:38Z itPuffinB joined #lisp 2015-03-23T17:14:00Z nialo is now known as bcoburn 2015-03-23T17:14:46Z ehu joined #lisp 2015-03-23T17:16:17Z temporary-pyon is now known as let-mut-pyon 2015-03-23T17:16:59Z BitPuffin quit (Ping timeout: 256 seconds) 2015-03-23T17:17:08Z linux_dream joined #lisp 2015-03-23T17:19:07Z itPuffinB is now known as BitPuffin 2015-03-23T17:21:42Z f03lipe joined #lisp 2015-03-23T17:24:15Z cadadar_ left #lisp 2015-03-23T17:24:17Z Petit_Dejeuner joined #lisp 2015-03-23T17:29:10Z radioninja quit (Ping timeout: 252 seconds) 2015-03-23T17:29:12Z gravicappa joined #lisp 2015-03-23T17:30:01Z mvilleneuve quit (Quit: This computer has gone to sleep) 2015-03-23T17:32:07Z {-}grant quit (Ping timeout: 250 seconds) 2015-03-23T17:35:13Z moore33 quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2015-03-23T17:36:53Z intinig quit (Remote host closed the connection) 2015-03-23T17:37:03Z CrazyEddy joined #lisp 2015-03-23T17:37:31Z intinig joined #lisp 2015-03-23T17:37:55Z intinig quit (Remote host closed the connection) 2015-03-23T17:38:13Z intinig joined #lisp 2015-03-23T17:38:25Z jasom: TIL that CCL uses an alist for its readtable 2015-03-23T17:38:32Z That_Engineer quit (Ping timeout: 246 seconds) 2015-03-23T17:39:35Z ehu quit (Ping timeout: 246 seconds) 2015-03-23T17:39:41Z jasom: which is probably why performance suffered when I had 1M entries 2015-03-23T17:40:00Z ehu joined #lisp 2015-03-23T17:42:35Z jtza8 joined #lisp 2015-03-23T17:42:50Z ndrei joined #lisp 2015-03-23T17:43:39Z bcoburn|l joined #lisp 2015-03-23T17:43:46Z pjb: jasom: that's correct. 2015-03-23T17:44:00Z linux_dream quit (Quit: Leaving) 2015-03-23T17:44:18Z Petit_Dejeuner quit (Ping timeout: 265 seconds) 2015-03-23T17:44:56Z bcoburn quit (Ping timeout: 252 seconds) 2015-03-23T17:45:29Z mj-0 quit (Remote host closed the connection) 2015-03-23T17:48:40Z Patzy quit (Remote host closed the connection) 2015-03-23T17:48:48Z Patzy joined #lisp 2015-03-23T17:49:33Z MrBoo joined #lisp 2015-03-23T17:49:34Z Xach: cods: Any thoughts about updating the cl-vectors system file to use a valid version number? 2015-03-23T17:50:34Z copec quit (Quit: checkity check out.) 2015-03-23T17:50:57Z Petit_Dejeuner joined #lisp 2015-03-23T17:51:28Z copec joined #lisp 2015-03-23T17:52:30Z jasom: pjb: it's quite space efficient though; about 1/5 the RAM usage for creating a char-code-limit sized readtable vs sbcl 2015-03-23T17:52:53Z mj-0 joined #lisp 2015-03-23T17:53:01Z rhllor quit (Quit: rhllor) 2015-03-23T17:53:52Z mj-0 quit (Remote host closed the connection) 2015-03-23T17:55:13Z Petit_Dejeuner_ joined #lisp 2015-03-23T17:58:25Z pjb: jasom: the problem is complex if you consider unicode char-code-limit, because you have to consider both sparse vectors and full vectors, thru partially full vectors (ie. you can expect dense reader macros on specific unicode pages). So you need a good adaptative data structure. 2015-03-23T17:59:08Z badkins quit 2015-03-23T17:59:20Z Petit_Dejeuner quit (Ping timeout: 256 seconds) 2015-03-23T17:59:25Z jasom: pjb: yes, it is clearly not easy 2015-03-23T18:00:05Z jasom: pjb: something like a cuckoo hash wouldn't be terible though 2015-03-23T18:00:58Z Petit_Dejeuner__ joined #lisp 2015-03-23T18:01:51Z jasom: you could run with a higher load-factor at least, and the main cost is more expensive inserts IIRC 2015-03-23T18:02:10Z ehu1 joined #lisp 2015-03-23T18:03:09Z Petit_Dejeuner_ quit (Ping timeout: 265 seconds) 2015-03-23T18:04:37Z ehu quit (Ping timeout: 255 seconds) 2015-03-23T18:06:20Z Petit_Dejeuner_ joined #lisp 2015-03-23T18:09:26Z Petit_Dejeuner__ quit (Ping timeout: 265 seconds) 2015-03-23T18:13:34Z ehu1 quit (Ping timeout: 245 seconds) 2015-03-23T18:13:51Z Petit_Dejeuner__ joined #lisp 2015-03-23T18:14:04Z mj-0 joined #lisp 2015-03-23T18:15:43Z Petit_Dejeuner_ quit (Ping timeout: 265 seconds) 2015-03-23T18:16:51Z pt1 joined #lisp 2015-03-23T18:18:48Z BitPuffin quit (Ping timeout: 244 seconds) 2015-03-23T18:22:58Z Petit_Dejeuner__ quit (Ping timeout: 265 seconds) 2015-03-23T18:29:29Z cmack joined #lisp 2015-03-23T18:34:51Z zadock joined #lisp 2015-03-23T18:34:51Z vr-rm_ joined #lisp 2015-03-23T18:35:17Z cadadar joined #lisp 2015-03-23T18:35:21Z knobo joined #lisp 2015-03-23T18:37:13Z Petit_Dejeuner joined #lisp 2015-03-23T18:37:27Z intinig quit (Remote host closed the connection) 2015-03-23T18:38:06Z intinig joined #lisp 2015-03-23T18:39:22Z kobain joined #lisp 2015-03-23T18:39:32Z wojciech_ joined #lisp 2015-03-23T18:41:55Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2015-03-23T18:43:19Z Quadrescence joined #lisp 2015-03-23T18:43:34Z kobain joined #lisp 2015-03-23T18:46:10Z radioninja joined #lisp 2015-03-23T18:46:39Z intinig quit (Ping timeout: 265 seconds) 2015-03-23T18:48:00Z Bicyclidine joined #lisp 2015-03-23T18:49:37Z futpib quit (Quit: Konversation terminated!) 2015-03-23T18:50:52Z Mon_Ouie joined #lisp 2015-03-23T18:53:16Z loz1 joined #lisp 2015-03-23T18:53:43Z ehu joined #lisp 2015-03-23T18:54:26Z sebboh joined #lisp 2015-03-23T18:54:32Z JuanDaugherty quit (Quit: Hibernate, etc.) 2015-03-23T18:54:43Z sebboh quit (Changing host) 2015-03-23T18:54:43Z sebboh joined #lisp 2015-03-23T18:55:07Z ehu: sellout: around? If you want, I can mirror your LOOM repo to common-lisp.net. 2015-03-23T18:55:30Z ehu: sellout: (I saw you put up a notice that it's now on Github) 2015-03-23T18:55:54Z sellout: ehu: Oh yeah – that’d be cool. I don’t have to do anything to keep it in sync? 2015-03-23T18:56:04Z jtza8 quit (Ping timeout: 245 seconds) 2015-03-23T18:56:10Z ehu: sellout: nope. I'll set up a daily sync job. 2015-03-23T18:56:22Z sellout: ehu: Yeah, thanks :) 2015-03-23T18:56:28Z Quadrescence quit (Quit: This computer has gone to sleep) 2015-03-23T18:56:40Z ehu: I actually already have for janderson's de-setf-* repositories. 2015-03-23T18:57:01Z ehu: all that I ask is that you check every once in a while that the sync is still working correctly. 2015-03-23T18:57:16Z ehu: (and if it works initially, that may be a long while) 2015-03-23T18:57:40Z ehu: ok. putting on the todo list. 2015-03-23T18:57:40Z intinig joined #lisp 2015-03-23T18:58:08Z loz1 quit (Ping timeout: 272 seconds) 2015-03-23T19:00:58Z ehu quit (Quit: Leaving.) 2015-03-23T19:01:46Z sebboh: What do you call the little functions inside (labels ...) ? For example, https://github.com/michaelw/cl-dot/blob/master/cl-dot.lisp#L185 2015-03-23T19:02:14Z Bicyclidine: local functions? 2015-03-23T19:02:27Z alexherbo2 quit (Quit: WeeChat 1.1.1) 2015-03-23T19:02:32Z sebboh: It has add-edge, get-node, etc. Ok, local functions. Can I trace local functions? 2015-03-23T19:02:52Z Bicyclidine: um, i think some implementations have facilities for that. 2015-03-23T19:03:01Z Bicyclidine: but what i usually do is just move it out to be a defun instead. 2015-03-23T19:03:58Z sebboh: I am using sbcl. I figured out how to trace functions defined by regular defuns and I can also trace methods. (Though, I'm still hazy on how methods are implemented.) 2015-03-23T19:04:18Z billstclair quit (*.net *.split) 2015-03-23T19:04:18Z chrnybo quit (*.net *.split) 2015-03-23T19:04:18Z jtz quit (*.net *.split) 2015-03-23T19:04:18Z _5kg quit (*.net *.split) 2015-03-23T19:04:18Z farhaven quit (*.net *.split) 2015-03-23T19:04:18Z johs quit (*.net *.split) 2015-03-23T19:04:18Z ozzloy quit (*.net *.split) 2015-03-23T19:04:18Z replcated quit (*.net *.split) 2015-03-23T19:04:26Z ozzloy joined #lisp 2015-03-23T19:04:26Z ozzloy quit (Changing host) 2015-03-23T19:04:26Z ozzloy joined #lisp 2015-03-23T19:04:28Z Vutral quit (*.net *.split) 2015-03-23T19:04:28Z dim quit (*.net *.split) 2015-03-23T19:04:28Z _death quit (*.net *.split) 2015-03-23T19:04:28Z axion quit (*.net *.split) 2015-03-23T19:04:28Z GuilOooo quit (*.net *.split) 2015-03-23T19:04:29Z sbryant quit (*.net *.split) 2015-03-23T19:04:29Z thomas quit (*.net *.split) 2015-03-23T19:04:29Z dan64 quit (*.net *.split) 2015-03-23T19:04:32Z johs joined #lisp 2015-03-23T19:04:34Z chrnybo joined #lisp 2015-03-23T19:04:34Z replcated joined #lisp 2015-03-23T19:04:34Z farhaven joined #lisp 2015-03-23T19:04:37Z jtz joined #lisp 2015-03-23T19:04:43Z GuilOooo joined #lisp 2015-03-23T19:04:43Z Bicyclidine: i mean, like i'd temporarily have (defun get-node ... paste in the code here), remove it from the labels, trace that, bam. 2015-03-23T19:04:46Z axion joined #lisp 2015-03-23T19:04:48Z sbryant joined #lisp 2015-03-23T19:04:49Z billstclair joined #lisp 2015-03-23T19:04:49Z billstclair quit (Changing host) 2015-03-23T19:04:49Z billstclair joined #lisp 2015-03-23T19:04:49Z dim joined #lisp 2015-03-23T19:04:56Z _death joined #lisp 2015-03-23T19:05:03Z dan64 joined #lisp 2015-03-23T19:05:14Z ehu joined #lisp 2015-03-23T19:05:39Z sebboh: Bicyclidine: pragmatic. I like it. Consider it done. Hm I hope scope doesn't bite me. :) 2015-03-23T19:05:45Z hiyosi quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-03-23T19:05:48Z _5kg joined #lisp 2015-03-23T19:06:11Z Bicyclidine: mm, might not work for some of those since they're closures. 2015-03-23T19:07:26Z sebboh: Hm. The only reason I want to trace these is because I don't understand how this part of CL-DOT works... :/ 2015-03-23T19:08:48Z Bicyclidine quit (Quit: Lost terminal) 2015-03-23T19:09:53Z d4ryus__ is now known as d4ryus 2015-03-23T19:10:46Z Bicyclidine joined #lisp 2015-03-23T19:11:30Z loz1 joined #lisp 2015-03-23T19:13:18Z wws joined #lisp 2015-03-23T19:14:05Z arenz quit (Ping timeout: 244 seconds) 2015-03-23T19:14:12Z Denommus joined #lisp 2015-03-23T19:14:57Z wws quit (Ping timeout: 184 seconds) 2015-03-23T19:16:09Z billstclair quit (Ping timeout: 244 seconds) 2015-03-23T19:17:06Z Davidbrcz quit (Ping timeout: 265 seconds) 2015-03-23T19:20:14Z mj-0 quit (Ping timeout: 245 seconds) 2015-03-23T19:21:47Z Harag quit (Ping timeout: 246 seconds) 2015-03-23T19:29:36Z drmeister: To confirm: MACRO-FUNCTION only returns expander functions for function macros and does not return them for symbol macros. 2015-03-23T19:29:52Z Bicyclidine: yep 2015-03-23T19:30:04Z Bicyclidine: you can't get at symbol macro expanders, far as i know. for whatever reason. 2015-03-23T19:30:44Z nyef: Probably because they're not required to be functions. 2015-03-23T19:31:00Z slyrus joined #lisp 2015-03-23T19:31:03Z nyef: Symbol-macros are a straight-up substitution with a particular form. 2015-03-23T19:31:33Z Bicyclidine: they do, actually, which is itself silly because of that 2015-03-23T19:31:40Z Bicyclidine: clhs 3.1.2.1.1 2015-03-23T19:31:41Z specbot: Symbols as Forms: http://www.lispworks.com/reference/HyperSpec/Body/03_abaa.htm 2015-03-23T19:32:38Z drmeister: So in terms of implementation - MACROEXPAND-1 should call MACRO-FUNCTION to get the macro expander for forms and call whatever the implementation uses to get the macro expander for symbols. 2015-03-23T19:32:53Z Bicyclidine: mmhm. 2015-03-23T19:33:23Z Bicyclidine: you can do like sbcl does (i think) and just store the expansion, and then do (funcall *macroexpand-hook* (lambda (&rest ignore) expansion) form env) 2015-03-23T19:33:35Z drmeister: Ok, 'cause that's one thing I was doing wrong - I was calling my implementation dependent function to get the macro expander and that didn't work with Cleavir. 2015-03-23T19:33:47Z drmeister: For function macros. 2015-03-23T19:34:53Z drmeister: Cleavir requires that I handle cleavir environments when expanding local macros. 2015-03-23T19:35:15Z drmeister: It makes sense. 2015-03-23T19:36:42Z drmeister: I had everything set up correctly to handle cleavir environments but it was being bypassed by my very old MACROEXPAND-1 code written in C++ which wasn't calling CL:MACRO-FUNCTION 2015-03-23T19:37:27Z Bicyclidine: i can't imagine a reason to write macroexpand-1 in C++. 2015-03-23T19:37:41Z drmeister: Now that I say this - I just realized I should use FUNCALL to call CL:MACRO-FUNCTION otherwise if I rewrite it in Common Lisp and override the C++ version it will still bypass it 2015-03-23T19:38:07Z drmeister: Bicyclidine: Because the interpreter needed it and when I wrote this I didn't have the interpreter running. 2015-03-23T19:38:18Z jtza8 joined #lisp 2015-03-23T19:39:52Z drmeister: This goes waaaay back 2015-03-23T19:40:09Z drmeister: The seeds of my frustration were planted long, long ago. 2015-03-23T19:40:42Z clintm: so poetic 2015-03-23T19:41:07Z drmeister: It only bore fruit when I incorporated this alien compiler. 2015-03-23T19:41:27Z ovenpasta quit (Ping timeout: 246 seconds) 2015-03-23T19:41:28Z oleo: owww did the metacircular arrow hit you ? 2015-03-23T19:41:31Z oleo: lol 2015-03-23T19:42:23Z drmeister: And I spent the last couple of days gnawing on it's fibrous, bitter flesh. 2015-03-23T19:42:32Z drmeister will stop now. 2015-03-23T19:43:11Z clintm: no no! The muse is upon you! Embrace it! 2015-03-23T19:43:11Z dlowe: "its" 2015-03-23T19:43:33Z Bicyclidine: it;s 2015-03-23T19:43:55Z dlowe: minion: thwap drmeister 2015-03-23T19:43:55Z minion: please stop playing with me... i am not a toy 2015-03-23T19:44:01Z oleo: hahaha 2015-03-23T19:44:38Z drmeister: DAMN "ITS" my beautiful verse is soiled by my inability to control my right pinky. 2015-03-23T19:45:16Z foom quit (Quit: Leaving) 2015-03-23T19:47:06Z selat quit (Quit: Lost terminal) 2015-03-23T19:47:13Z paradoja joined #lisp 2015-03-23T19:47:43Z drmeister: Mental note: Never, never (trace macro-function) 2015-03-23T19:48:18Z intinig quit (Remote host closed the connection) 2015-03-23T19:48:51Z resttime joined #lisp 2015-03-23T19:48:52Z intinig joined #lisp 2015-03-23T19:50:10Z przl quit (Ping timeout: 264 seconds) 2015-03-23T19:51:00Z thomas joined #lisp 2015-03-23T19:57:11Z intinig quit (Ping timeout: 246 seconds) 2015-03-23T19:57:49Z StrykerKKD joined #lisp 2015-03-23T20:04:25Z remi`bd joined #lisp 2015-03-23T20:05:14Z slyrus quit (Ping timeout: 244 seconds) 2015-03-23T20:06:14Z larion joined #lisp 2015-03-23T20:07:51Z pt1 quit (Remote host closed the connection) 2015-03-23T20:07:57Z zygentoma joined #lisp 2015-03-23T20:08:51Z gravicappa quit (Remote host closed the connection) 2015-03-23T20:14:43Z slyrus joined #lisp 2015-03-23T20:14:44Z mj-0 joined #lisp 2015-03-23T20:15:29Z f03lipe quit (Ping timeout: 250 seconds) 2015-03-23T20:15:42Z sol__ quit (Ping timeout: 246 seconds) 2015-03-23T20:16:16Z thomas quit (Quit: leaving) 2015-03-23T20:16:35Z thomas joined #lisp 2015-03-23T20:16:35Z thomas quit (Client Quit) 2015-03-23T20:17:04Z knobo: I'm thinking about getting back to lisp development, but I need some motivation. How is lisp good for serving web pages. Why should I write web systems in lisp? 2015-03-23T20:17:19Z thomas joined #lisp 2015-03-23T20:17:31Z oleo: well i saw some links 2015-03-23T20:17:40Z oleo: google for lispweb 2015-03-23T20:18:04Z mood: There's also a #lispweb channel, btw 2015-03-23T20:18:09Z mj-0 quit (Remote host closed the connection) 2015-03-23T20:18:57Z yeticry quit (Quit: leaving) 2015-03-23T20:19:41Z Shinmera: You'll probably write web systems in lisp for the same reason you'd write it in any other language: Cause you like the language. 2015-03-23T20:19:56Z Shinmera: Or alternatively because your boss tells you to 2015-03-23T20:19:56Z oleo: lisp is rad 2015-03-23T20:20:07Z oleo: rapid application development..... 2015-03-23T20:21:27Z ehu: sellout: mirror set up. 2015-03-23T20:21:33Z oleo: when is ffi actually legit ? 2015-03-23T20:21:40Z ehu: feel free to throw the LOOM.bak repository away. 2015-03-23T20:21:45Z oleo: someone should make a blog about such stuff.....really...... 2015-03-23T20:22:02Z sellout: ehu: Thanks. Will do. 2015-03-23T20:22:07Z ggole quit 2015-03-23T20:22:14Z linux_dream joined #lisp 2015-03-23T20:22:15Z oleo: with some more elaborate examples maybe.... 2015-03-23T20:24:38Z Shinmera quit (Quit: しつれいしなければならないんです。) 2015-03-23T20:24:48Z Shinmera joined #lisp 2015-03-23T20:25:12Z Jaskologist quit (Ping timeout: 246 seconds) 2015-03-23T20:26:38Z Grue`: knobo: lisp is good for web apps cause you can almost always hot-swap code, so no downtime, and also have a live repl to your website 2015-03-23T20:27:11Z larion quit (Ping timeout: 250 seconds) 2015-03-23T20:27:43Z loz1 quit (Quit: Leaving.) 2015-03-23T20:27:54Z |3b| notes that that can be a bad thing, since you might end up with a website that doesn't work after a restart, so you might want to thing before actually taking advantage of that ability on an important live site 2015-03-23T20:28:14Z mood: I think you should mostly see the hotswapping as an advantage during development 2015-03-23T20:28:56Z |3b|: yeah, fast turnaround and live debugging is very nice for development 2015-03-23T20:29:18Z larion joined #lisp 2015-03-23T20:29:19Z clintm: |3b|: agreed. We only do it in very specific "4-alarm emergency" situations. 2015-03-23T20:29:36Z heddwch: SLIME over an SSH tunnel makes it really easy to make sure all your definitions are in the right places. 2015-03-23T20:29:54Z mood: And it's quite an advantage. I had a test (as in, college/university) today that involved me having to write a webapp in C# (using MS MVC and friends). Having to wait 30 seconds to see every change is hell. 2015-03-23T20:29:55Z heddwch: well, swank+whatever 2015-03-23T20:30:06Z clintm: and when we do we have very specific testing requirements on development images to make sure that those fixes work in a fresh image. 2015-03-23T20:30:24Z |3b|: heddwch: until you don't notice you missed a C-c C-c and the file has different code from the running image, or whatever :) 2015-03-23T20:30:41Z heddwch: |3b|: Fair enough :) 2015-03-23T20:30:48Z Xach: mood: the upside is that for a given popular task, it is pretty likely that you can use someone else's code to do it. 2015-03-23T20:31:13Z Jaskologist joined #lisp 2015-03-23T20:31:14Z _death: heddwch: may be interested in https://github.com/death/ssh-tunnels 2015-03-23T20:31:40Z Grue`: the worst is when I have a local and remote slime open and C-c C-c sends the code to a wrong one, and then I try to figure why nothing works anymore 2015-03-23T20:31:43Z |3b|: or you introduced a load-order dependency, which won't be noticed until after a crash when you are on call at 3am :p 2015-03-23T20:32:02Z linux_dream quit (Quit: Leaving) 2015-03-23T20:32:09Z mood: Xach: That's true, yes. The usefulness of that tends to seem bigger than it is in practice, though 2015-03-23T20:32:10Z oleo: lol 2015-03-23T20:32:11Z heddwch: _death: Ooh, nice; thank you. 2015-03-23T20:32:18Z _death: it's on melpa 2015-03-23T20:32:31Z Xach: mood: yeah. things are tough all over. 2015-03-23T20:33:05Z `eeks quit (Quit: Textual IRC Client: www.textualapp.com) 2015-03-23T20:33:40Z Shinmera: Grue`: Another annoying part is that M-. will try to open paths from the server, rather than the local sources. 2015-03-23T20:34:25Z mood: Xach: And there's also the fact that MS MVC and Entity Framework are full of magic. The kind of magic that's incredibly non-obvious 2015-03-23T20:35:09Z mood: The trouble in that area starts with the lack of a symbol-like type. Now you're specifying object property names as strings... /offtopic 2015-03-23T20:35:52Z zacts joined #lisp 2015-03-23T20:37:05Z the_real_intinig joined #lisp 2015-03-23T20:37:35Z larion quit (Ping timeout: 256 seconds) 2015-03-23T20:37:59Z the_real_intinig quit (Remote host closed the connection) 2015-03-23T20:38:35Z the_real_intinig joined #lisp 2015-03-23T20:39:10Z larion joined #lisp 2015-03-23T20:40:49Z clintm: I've been toying with a tool to load and sync code across multiple application servers using slime for a project we're working on. Any of you know of prior work on this before I continue possibly reinventing wheels? 2015-03-23T20:41:07Z clintm: where application server is just an image with swank listening on a predefined port. 2015-03-23T20:45:10Z larion quit (Remote host closed the connection) 2015-03-23T20:45:10Z the_real_intinig quit (Ping timeout: 272 seconds) 2015-03-23T20:45:22Z larion joined #lisp 2015-03-23T20:45:38Z cadadar quit (Quit: Leaving.) 2015-03-23T20:45:56Z bcoburn|l quit (Ping timeout: 256 seconds) 2015-03-23T20:46:04Z przl joined #lisp 2015-03-23T20:46:25Z Vutral joined #lisp 2015-03-23T20:46:55Z jdowns joined #lisp 2015-03-23T20:47:24Z pjb: sebboh: just use com.informatimago.common-lisp.cesarum.utility:tracing-labels 2015-03-23T20:47:52Z sebboh: woah, really? Thanks, I will check it out! :) 2015-03-23T20:48:13Z bcoburn joined #lisp 2015-03-23T20:48:19Z ajtulloch joined #lisp 2015-03-23T20:48:56Z Excedrin: clintm: if you are going to reinvent the wheel, maybe take a look at Glu for inspiration, I think Glu is fairly well designed but badly implemented (for loading and syncing code across mulitiple machines), there's also Ansible and Capistrano, though I think that the whole issue is probably much simpler when you have lisp 2015-03-23T20:49:15Z Vutral quit (Excess Flood) 2015-03-23T20:49:35Z pjb: knobo: to serve web page, you only need to call sendfile(2). Ie. just run apache. Why would you need lisp to run apache? 2015-03-23T20:49:56Z wojciech_ quit (Quit: Leaving) 2015-03-23T20:51:25Z przl quit (Ping timeout: 264 seconds) 2015-03-23T20:51:25Z clintm: Excedrin: thanks, I'll take a look. 2015-03-23T20:52:24Z clintm: Well, not at capistrano. So many memories... ugh. Maybe it's better now. way back in the day it used to be so simple to use and then 2.0 hit and complexity went through the roof. 2015-03-23T20:54:12Z let-mut-pyon is now known as transient-pyon 2015-03-23T20:54:15Z clintm does not miss certain communities and micro cultures in this industry which he was previously a part of. 2015-03-23T20:54:33Z antonv joined #lisp 2015-03-23T20:54:37Z yeticry joined #lisp 2015-03-23T20:55:15Z Shinmera: Doesn't lfarm also do something similar to what you're describing? 2015-03-23T20:57:32Z clintm: Shinmera: looks like a workload distribution, but I'm still going through the page. Looks very useful for another part of this though if nothing else. Thanks for the pointer! 2015-03-23T20:58:07Z Shinmera: Sure. I never used it myself, so I can't say how proven it is. 2015-03-23T21:01:18Z Oveja joined #lisp 2015-03-23T21:03:31Z Oveja quit (Max SendQ exceeded) 2015-03-23T21:06:43Z joneshf-laptop quit (Read error: Connection reset by peer) 2015-03-23T21:07:05Z ahungry_ quit (Quit: leaving) 2015-03-23T21:07:05Z joneshf-laptop joined #lisp 2015-03-23T21:08:46Z larion quit (Ping timeout: 264 seconds) 2015-03-23T21:09:06Z ajtulloc_ joined #lisp 2015-03-23T21:10:30Z larion joined #lisp 2015-03-23T21:11:14Z nell quit (Quit: WeeChat 0.4.2) 2015-03-23T21:11:35Z ajtulloch quit (Ping timeout: 252 seconds) 2015-03-23T21:13:08Z slyrus quit (Ping timeout: 256 seconds) 2015-03-23T21:13:09Z ziocroc joined #lisp 2015-03-23T21:15:19Z vaporatorius quit (Quit: Leaving) 2015-03-23T21:15:58Z larion quit (Ping timeout: 256 seconds) 2015-03-23T21:16:46Z larion joined #lisp 2015-03-23T21:18:23Z Vutral joined #lisp 2015-03-23T21:19:12Z Kanae quit (Read error: Connection reset by peer) 2015-03-23T21:19:46Z drmeister: Bicyclidine, nyef: symbol macros have expanders associated with them - the expanders have to be functions don't they? 2015-03-23T21:20:26Z drmeister: Right now the lack of a MACRO-FUNCTION equivalent in Common Lisp for symbol macros is biting me in the butt. 2015-03-23T21:20:43Z Vutral quit (Excess Flood) 2015-03-23T21:21:24Z nyef: ... Hunh. You're right. 3.1.2.1.1 requires that there be an expansion function. 2015-03-23T21:21:58Z Bicyclidine: yes. it's silly. 2015-03-23T21:22:06Z Bicyclidine: drmeister: like i suggested you can just use a closure. 2015-03-23T21:22:30Z drmeister: I don't follow that last sentence - I can use a closure? 2015-03-23T21:23:01Z drmeister: How could I use a closure and for what - sorry to be thick. 2015-03-23T21:23:14Z rpg joined #lisp 2015-03-23T21:23:18Z Bicyclidine: (let ((expansion (si:impl-specific-symbol-macro-expansion-getter symbol env))) (funcall *macroexpand-hook* (lambda (s e) (declare (ignore s e)) expansion) symbol env)) 2015-03-23T21:23:33Z slyrus joined #lisp 2015-03-23T21:24:22Z cmack quit (Ping timeout: 264 seconds) 2015-03-23T21:24:23Z Bicyclidine: which is what sbcl does: https://github.com/sbcl/sbcl/blob/11817b8251d7db842e538705daa9ddea96b18777/src/code/macroexpand.lisp#L67-L81 2015-03-23T21:24:28Z pjb: define-symbol-macro "Globally establishes an expansion function for the symbol macro named by symbol.". 2015-03-23T21:25:00Z pjb: However, there's AFAICS, no standard way to access this expansion function. You can only call it with (macroexpand 'symbol) (or macroexpand-1). 2015-03-23T21:25:14Z Bicyclidine: which drmeister is complaining about. 2015-03-23T21:26:19Z drmeister: Bicyclidine: I have something equivalent in C++. In order to add support for Cleavir environments in MACROEXPAND-1 when it's passed a symbol I need to check if NIL or one of my environments is being passed to MACROEXPAND-1 and if not then call CLEAVIR-ENVIRONMENT:SYMBOL-MACRO-EXPANSION with that environment. 2015-03-23T21:26:19Z pjb: But drmeister is IMPLEMENTING. He can do whatever he wants, like, defining a symbol-macro-function operator. 2015-03-23T21:26:40Z remi`bd quit (Quit: leaving) 2015-03-23T21:27:07Z Bicyclidine: drmeister: i thought sicl involved some more generic protocol for working with multiple kinds of environments. but that seems easy to do, anyway. 2015-03-23T21:27:27Z drmeister: CLEAVIR-ENVIRONMENT:SYMBOL-MACRO-EXPANSION may not find an expansion in the lexical environment and will then fall back to the global environment - at that point there is nothing standard to call to get a symbol macro expansion - I have to expose my implementation dependent function and call that. 2015-03-23T21:27:32Z angavrilov quit (Remote host closed the connection) 2015-03-23T21:27:56Z cadadar joined #lisp 2015-03-23T21:28:06Z drmeister: Bicyclidine: I guess that's what I'm hacking in right now - support for different kinds of environments. Well - really just NIL, mine and Cleavir's. 2015-03-23T21:28:23Z Bicyclidine: yeah, what i meant was more general. guess beach knows 2015-03-23T21:30:13Z jdowns quit (Remote host closed the connection) 2015-03-23T21:30:38Z drmeister: Oh - you said SICL, not SBCL - I'm using beach's more generic protocol. But I just realized that it requires access to an implementation dependent function for getting at symbol macros. 2015-03-23T21:30:49Z Bicyclidine: might as well write one. 2015-03-23T21:32:01Z vdamewood joined #lisp 2015-03-23T21:32:31Z Jaskologist quit (Ping timeout: 255 seconds) 2015-03-23T21:32:32Z Karl_Dscc joined #lisp 2015-03-23T21:32:33Z drmeister: Oh - I have one - I just hadn't exposed it. 2015-03-23T21:35:30Z drmeister: There's nothing else like this is there? I'm dealing with lexical MACROLET, and SYMBOL-MACROLET environments. I'm guessing LOCALLY is the only other thing that can trip me up here. 2015-03-23T21:35:51Z drmeister: I'm 99.9999% sure the answer is no. 2015-03-23T21:36:30Z Bicyclidine: things that take environment arguments? i made a list once. there's, like, find-class. 2015-03-23T21:36:55Z dim: hehe, pgloader made it to homebrew, the macosx distribution 2015-03-23T21:37:00Z pjb: macroexpand and macroexpand-1 are the only things that take environment arguments. 2015-03-23T21:37:00Z dim: brew install pgloader! ;-) 2015-03-23T21:37:20Z pjb: and find-class. 2015-03-23T21:37:29Z Shinmera: dim: Any solution for the Debian Wheezy install yet? 2015-03-23T21:37:31Z drmeister: Functions that take environment arguments - that's an interesting way to look at it. 2015-03-23T21:37:44Z Shinmera: dim: Preferably one that does not require pulling half the world from Jessie 2015-03-23T21:37:44Z dim: Shinmera: it's as easy as me finding a real wheezy VM 2015-03-23T21:37:52Z dim: not a hacked wheezy to allow for pushing to sid 2015-03-23T21:37:53Z Bicyclidine: they're the only ones that directly use them, i think. like, make-load-form does, but it's just going to be using macroexpand and stuff. 2015-03-23T21:37:54Z drmeister: Here's what I had to add to support cleaver's generic environment approach: 2015-03-23T21:37:57Z drmeister: https://www.irccloud.com/pastebin/947XVzcl 2015-03-23T21:38:01Z Bicyclidine: also constantp on tha note. some other crap 2015-03-23T21:38:20Z Shinmera: dim: There's plenty of Wheezy OpenVZ images out there to use. 2015-03-23T21:38:23Z dim: Shinmera: the debian package is currently made to depend on all the cl packages, but even that is easy enough to build given ql-to-deb 2015-03-23T21:38:27Z Bicyclidine: drmeister: got one for lexical clasp environments, or...? 2015-03-23T21:38:34Z Davidbrcz joined #lisp 2015-03-23T21:38:39Z pt1 joined #lisp 2015-03-23T21:38:46Z dim: do you want just a /usr/bin/pgloader or a pgloader_*.deb ? 2015-03-23T21:39:09Z drmeister: Bicyclidine: For clasp lexical environments I handle that in the C++ MACROEXPAND-1 function 2015-03-23T21:39:27Z dim: Shinmera: I don't really want to maintain a backport of all the cl-* dependencies I have, but my guess is that it should be simple enough (see https://github.com/dimitri/ql-to-deb) 2015-03-23T21:39:28Z Shinmera: dim: I tried building it with the instructions given but that failed due to some MSSQL driver not being available in the version it wanted. 2015-03-23T21:39:47Z dim: oh, freetds 2015-03-23T21:39:51Z Shinmera: Yes. 2015-03-23T21:40:06Z Bicyclidine: get-setf-expansion, there's one 2015-03-23T21:40:08Z dim: the dependency is non-versionned 2015-03-23T21:40:18Z dim: at package build time at least 2015-03-23T21:40:18Z stardiviner quit (Ping timeout: 244 seconds) 2015-03-23T21:40:32Z pjb: Damn, we need to establish the list, indeed. 2015-03-23T21:40:48Z Shinmera: I don't recall if I couldn't install freetds at all or if it complained about not being able to use it. 2015-03-23T21:40:57Z Shinmera: I'm tending towards the latter though. 2015-03-23T21:41:02Z pt1 quit (Remote host closed the connection) 2015-03-23T21:41:03Z dim: it might be possible to make freetds a recommanded lib rather than an hard dependency given current pgloader code 2015-03-23T21:41:13Z Shinmera: That would be excellent 2015-03-23T21:41:21Z dim: the code is made so that it should work 2015-03-23T21:41:29Z dim: I failed to find time to test it properly tho 2015-03-23T21:41:31Z slyrus quit (Ping timeout: 255 seconds) 2015-03-23T21:41:37Z drmeister: What does it mean to call FIND-CLASS with an environment? 2015-03-23T21:41:42Z Shinmera: Alright. Well, it's not urgent for me, so take your time to work it out. 2015-03-23T21:41:42Z drmeister: Non NIL environment? 2015-03-23T21:41:46Z ehu quit (Quit: Leaving.) 2015-03-23T21:41:47Z dim: Shinmera: so, do you want a proper package of just the binary? 2015-03-23T21:41:52Z pjb: drmeister: you can write a macro that binds locally a class. 2015-03-23T21:41:58Z the_real_intinig joined #lisp 2015-03-23T21:42:03Z Shinmera: dim: That would be neat. 2015-03-23T21:42:13Z Bicyclidine: subtypep, typep, uaet, ucpt 2015-03-23T21:42:22Z dim: ahah, I wrote of when I wanted to type "or" 2015-03-23T21:42:27Z dim: damn it 2015-03-23T21:42:44Z dim: ok raising the priority Shinmera 2015-03-23T21:42:46Z wheelsucker quit (Quit: Client Quit) 2015-03-23T21:42:47Z Shinmera: A proper package is preferable. 2015-03-23T21:42:58Z Bicyclidine: there aren't lexical types, though, so that probably doesn't matter to you 2015-03-23T21:43:01Z dim: I need to fix my VM setup 2015-03-23T21:43:05Z Bicyclidine: same with find-class really 2015-03-23T21:43:10Z Shinmera: But again, it's not urgent for me, so put your priorities as you deem fit. 2015-03-23T21:43:13Z dim: using vagrant now, but it's taking too much storage for my taste 2015-03-23T21:43:21Z drmeister: pjb, Bicyclidine: So those functions could be invoked from within a macro-expansion function and passed the environment bound in the macro's lambda list using &environment - is that what that means? 2015-03-23T21:43:34Z pjb: Yes. 2015-03-23T21:43:38Z pjb: Notably macrolet. 2015-03-23T21:43:41Z Shinmera: dim: On my actual server I use proxmox with containers. It's quite nice. 2015-03-23T21:43:55Z dim: I'm using a macosx laptop and I don't have a server to play with 2015-03-23T21:44:21Z drmeister: Hmm, that's tricky - I hadn't considered that before. 2015-03-23T21:45:03Z pjb: drmeister: it's strange, because the only standard way to create a class is defclass :-) But with the MOP, you can create anonymous classes, and use (setf find-class) to bind them to class names. 2015-03-23T21:46:16Z cadadar quit (Quit: Leaving.) 2015-03-23T21:46:17Z bcoburn|l joined #lisp 2015-03-23T21:46:34Z pt1 joined #lisp 2015-03-23T21:47:05Z larion quit (Ping timeout: 246 seconds) 2015-03-23T21:47:13Z thomas quit (Quit: leaving) 2015-03-23T21:47:21Z pt1 quit (Remote host closed the connection) 2015-03-23T21:47:27Z thomas joined #lisp 2015-03-23T21:47:35Z drmeister: pjb: And these anonymous classes are supposed to disappear when they go out of scope I guess. 2015-03-23T21:47:52Z bcoburn quit (Ping timeout: 272 seconds) 2015-03-23T21:47:56Z pjb: No, thru the garbage collector, when they're not referenced anymore. 2015-03-23T21:48:16Z pjb: They're not of dynamic-extent. 2015-03-23T21:48:25Z drmeister: Right - this is a garbage collected language. 2015-03-23T21:48:35Z MrBoo quit (Remote host closed the connection) 2015-03-23T21:48:51Z drmeister: So they don't go into the global list of classes. 2015-03-23T21:49:19Z pjb: No, they don't. 2015-03-23T21:49:21Z drmeister: Because that would keep them alive. 2015-03-23T21:50:05Z ovenpasta joined #lisp 2015-03-23T21:50:06Z drmeister: So by analogy, every function that takes an environment as an argument has some sort of object that in principle can be created anonymously. 2015-03-23T21:50:14Z the_real_intinig quit (Ping timeout: 245 seconds) 2015-03-23T21:50:25Z ajtulloc_ quit (Remote host closed the connection) 2015-03-23T21:50:58Z drmeister: That may not be stated well. 2015-03-23T21:51:32Z ajtulloch joined #lisp 2015-03-23T21:52:25Z pjb: Err, I said something wrong, you can create a class with the standard form: (make-instance 'standard-class). 2015-03-23T21:52:57Z drmeister: There you go - that makes sense. 2015-03-23T21:53:22Z stardiviner joined #lisp 2015-03-23T21:53:34Z drmeister: I'll have to track down every function that takes an environment as an optional argument and read the CLHS on it again. 2015-03-23T21:54:14Z drmeister: Do people use this? 2015-03-23T21:54:52Z Shinmera: Do people use what? 2015-03-23T21:54:57Z drmeister: I mean - sure - it's in the standard - any differences between Clasp and the standard are bugs in Clasp. But I haven't come across this yet - not that I've run much CL software in Clasp yet. 2015-03-23T21:55:33Z paradoja quit (Remote host closed the connection) 2015-03-23T21:55:42Z drmeister: Shinmera: That's a bit hard to specify. CL functions that take environments as arguments must be able to deal with lexical environments. 2015-03-23T21:55:49Z pjb: That depends. People like Pascal Costanza probably use CLOS and the MOP much more intensively than others. Some libraries like McCLIM too. 2015-03-23T21:56:12Z Shinmera: drmeister: CONSTANTP is one of the functions that I've used before that takes an env. 2015-03-23T21:56:15Z cadadar joined #lisp 2015-03-23T21:56:43Z pjb: drmeister: notably, the MOP reference given aboven above, as well as Gray Stream and a few other de-facto standard should probably be implemented by an implementation that wants to have some importance. 2015-03-23T21:56:46Z drmeister: When you say that you've used it, how do you mean? How have you used the environment argument? 2015-03-23T21:57:14Z Shinmera: drmeister: I get the environment from my macro / compiler-macro lambda-list and pass it along. 2015-03-23T21:57:16Z pjb: Oh, environment arguments MUST be used, when you write macros that call macroexpand, get-setf-expansion, etc. 2015-03-23T21:57:26Z drmeister: pjb: I missed the MOP reference - can you point me to it again? 2015-03-23T21:57:36Z pjb: Otherwise they may break in local scopes. 2015-03-23T21:57:59Z pjb: drmeister: http://www.alu.org/mop/index.html 2015-03-23T21:58:13Z Shinmera: drmeister: e.g. https://github.com/Shinmera/CLSS/blob/master/engine.lisp#L296 2015-03-23T21:58:16Z drmeister: pjb: That is EXACTLY what I'm running into over the past couple of days. 2015-03-23T21:58:23Z pjb: Seems it was me who didn't give it previously. 2015-03-23T21:58:31Z drmeister: I'd like to fix this now. 2015-03-23T21:58:58Z LiamH quit (Quit: Leaving.) 2015-03-23T21:59:48Z Vutral joined #lisp 2015-03-23T21:59:53Z pjb: So yes, grepping for all operators taking an environment, and checking each usage, is in order. 2015-03-23T22:00:15Z drmeister: pjb: Ah - Clasp runs ECL CLOS which I believe supports MOP - but my implementation of some of these functions that allow environment arguments may be broken - and this may not have surfaced yet. 2015-03-23T22:00:57Z Vutral quit (Excess Flood) 2015-03-23T22:01:04Z drmeister: Shinmera: How do you define a local constant? 2015-03-23T22:01:20Z pjb: with a local symbol macro. 2015-03-23T22:01:55Z pjb: (symbol-macrolet ((tau (* 2 pi))) (setf tau 42) #|program-error|#) 2015-03-23T22:01:57Z drmeister: So (defconstant +foo+ 1) (symbol-macrolet ((bar +foo+)) (constantp bar)) --> T? 2015-03-23T22:02:14Z ered quit (Remote host closed the connection) 2015-03-23T22:02:25Z pjb: that said, (symbol-macrolet ((tau (* 2 pi))) (let ((tau 42))) tau)) --> 42 ; while it would be invalid with a global defconstant. 2015-03-23T22:02:51Z pjb: drmeister: yes, but not for the reason you think. 2015-03-23T22:02:54Z ered joined #lisp 2015-03-23T22:03:11Z drmeister: Yeah - I see that your example is different from mine. 2015-03-23T22:03:37Z pjb: constantp is a function. bar is bound to 1. (eql 1 1) therefore 1 is a "constant" (it always evaluates to the same thing, 1), therefore (constantp bar) -> T. 2015-03-23T22:03:43Z a2015 quit (Ping timeout: 246 seconds) 2015-03-23T22:03:58Z pjb: (symbol-macrolet ((bar +foo+)) (constantp 'bar)) --> nil 2015-03-23T22:04:06Z wws quit (Read error: Connection reset by peer) 2015-03-23T22:04:08Z zadock quit (Read error: Connection reset by peer) 2015-03-23T22:04:24Z pjb: constantp is rather dumb an operator. It's only useful inside macros to test the arguments of macros. 2015-03-23T22:04:35Z drmeister: Oh - you were referring to my missing the QUOTE? 2015-03-23T22:04:39Z pjb: yes. 2015-03-23T22:04:44Z drmeister: I meant my example to be: 2015-03-23T22:04:59Z drmeister: (defconstant +foo+ 1) (symbol-macrolet ((bar +foo+)) (constantp (QUOTE bar))) --> T? 2015-03-23T22:05:20Z pjb: defconstant has those two implications: setf breaks. let breaks. 2015-03-23T22:05:40Z pjb: symbol-macrolet has one implication: you can write the expansion so that setf breaks. 2015-03-23T22:06:02Z transient-pyon is now known as pyon-ography 2015-03-23T22:06:16Z pjb: No, constantp doesn't detect it: (symbol-macrolet ((bar +foo+)) (constantp (QUOTE bar))) --> nil 2015-03-23T22:06:20Z ajtulloch quit (Read error: Connection reset by peer) 2015-03-23T22:06:37Z ajtulloch joined #lisp 2015-03-23T22:08:34Z drmeister is confused - must think 2015-03-23T22:08:53Z pjb: just ignore constantp, it doesn't do what its name seems to imply. 2015-03-23T22:10:20Z nyef: (constantp (quote bar)) checks the global environment, doesn't it? 2015-03-23T22:11:09Z pjb: (symbol-macrolet ((bar +foo+)) (macrolet ((c? (&environment env) `(list ,(constantp '+foo+ env) ,(constantp 'bar env)))) (c?))) --> (t nil) 2015-03-23T22:11:57Z vr-rm_ quit (Quit: Ex-Chat) 2015-03-23T22:12:01Z drmeister: So this raises a question that I've had for a long time. What is an "accessor"? FIND-CLASS is an "accessor". It's starting to sound like I should implement them to dispatch on their optional environment parameter. 2015-03-23T22:12:19Z pjb: (symbol-macrolet ((bar +foo+)) (macrolet ((c? (&environment env) `(list ,(constantp '+foo+ env) ,(constantp 'bar env)))) (c?))) --> (t nil) ecl returns (t t), which seems more correct. 2015-03-23T22:12:57Z Shinmera: drmeister: an accessor is setf-able. 2015-03-23T22:13:03Z pjb: but really (constantp 'a-symbol-macro) falls into the implementation defined part of constantp. 2015-03-23T22:13:16Z Shinmera: drmeister: Take a look at any accessor entry, you'll find two entries, one that is a setf form, and one that is not 2015-03-23T22:13:17Z rhllor joined #lisp 2015-03-23T22:13:39Z Shinmera: drmeister: in your example of find-class, you have "find-class symbol &optional errorp environment => class" as well as "(setf (find-class symbol &optional errorp environment) new-class)" 2015-03-23T22:14:23Z That_Engineer joined #lisp 2015-03-23T22:15:21Z drmeister: So I need a getter and a setter. And the setter looks tricky. If the environment is NIL it's the global environment, if it's a lexical environment I need to push some sort of entry into the lexical environment that the getter can find. 2015-03-23T22:15:35Z pjb: yes. 2015-03-23T22:15:41Z drmeister: At runtime. 2015-03-23T22:15:57Z linux_dream joined #lisp 2015-03-23T22:15:58Z pjb: perhaps not. 2015-03-23T22:16:07Z xificurC quit (Quit: WeeChat 1.1.1) 2015-03-23T22:16:28Z drmeister: Wow - I'm feeling a yawning gulf open up underneath me. 2015-03-23T22:16:50Z drmeister: Or is this really simple - solved with a few dynamic variables and some setter/getter functions? 2015-03-23T22:17:26Z pjb: drmeister: see the third paragraph in the description of macrolet in clhs. 2015-03-23T22:17:27Z drmeister: I just have to do some more reading. 2015-03-23T22:17:30Z pjb: " but the consequences are undefined if the local macro definitions reference any local variable or function bindings that are visible in that lexical environment." 2015-03-23T22:18:06Z pjb: This means that you can limit the manipulation of the local environment at compilation/macroexpansion time, IIUC. 2015-03-23T22:18:22Z Bicyclidine quit (Ping timeout: 264 seconds) 2015-03-23T22:18:34Z pjb: Well, no, it's unrelated. 2015-03-23T22:18:42Z drmeister: I interpreted that as macros run at compile time local variables and function bindings exist at runtime. 2015-03-23T22:21:34Z pjb: My difficulty here, is that you cannot transport the environment obtained in the macro to the runtime, like: (macrolet ((e (&environment env) `',env)) (find-class 'c nil (e))) because env may not be writable to a fasl file. 2015-03-23T22:21:52Z robot-beethoven joined #lisp 2015-03-23T22:22:16Z pjb: Notice in "3.4.4 Macro Lambda Lists" how the value of env in the macro is specified to _represent_ the lexical environment, not to _be_ the lexical environment (which is therefore not reified by the standard). 2015-03-23T22:23:42Z pjb: What this means, is that (setf find-class) can bind a class at macroexpansion time, but I don't see how you can use it to bind a class at run-time, in a local lexical environment. 2015-03-23T22:24:16Z drmeister: I see what you are saying. 2015-03-23T22:25:00Z pjb: and I don't know how binding at macroexpansion time something in the local lexical environment can have an effect in the local lexical environment at run-time (always think, thru the fasl file). 2015-03-23T22:25:45Z drmeister: That is a bit of a puzzler. 2015-03-23T22:25:56Z pjb: yes. You will have to ask beach about it. 2015-03-23T22:26:19Z drmeister: Maybe it was 4:50pm on a Friday afternoon when the CL committee got to this part of the specification? 2015-03-23T22:26:50Z pjb: yes, we blame those parts in the funding end, and hurry in completing it. 2015-03-23T22:26:59Z pjb: s/in/on/ 2015-03-23T22:28:13Z gingerale quit (Ping timeout: 252 seconds) 2015-03-23T22:29:09Z linux_dream quit (Quit: Leaving) 2015-03-23T22:30:46Z easye joined #lisp 2015-03-23T22:31:09Z easye quit (Read error: Connection reset by peer) 2015-03-23T22:31:26Z easye joined #lisp 2015-03-23T22:32:37Z pjb: drmeister: find-class env is a unique case. &environment in macros is used by macroexpand/get-setf-expansion to detect macrolet/symbol-macrolet/flet (setf …) and possibly, to detect symbol-macrolet and let by constantp, at macroexpansion time. But a macro cannot modify the environment, adding binding in them (other than expanding to a binding form). 2015-03-23T22:33:36Z pjb: but in the case of (setf find-class), it allows adding a binding. Perhaps it means that a setf find-class performed in at macroexpansion time will be kept at run-time? 2015-03-23T22:33:37Z hiroakip joined #lisp 2015-03-23T22:34:01Z pjb: For the global environment, you can always use NIL at run-time to perform this binding at run-time. 2015-03-23T22:34:24Z rpg quit (Quit: rpg) 2015-03-23T22:34:45Z pjb: But for lexical environment, as I said above, you cannot use the object bound to the &environment parameter at run-time. But perhaps doing (setf find-class) at macroexpansion time will have run-time effects? 2015-03-23T22:34:59Z That_Engineer quit (Ping timeout: 246 seconds) 2015-03-23T22:37:52Z drmeister: pjb: Thanks - you've raised some very important points that I will have to chew on for a while. I'll do some reading in CLtL and the CLHS and come back with questions. 2015-03-23T22:38:13Z pjb: clhs find-class says: "The environment might be used to distinguish between a compile-time and a run-time environment.". &environment would be a compile-time environment. So perhaps (setf find-class) at macroexpansion time would have no effect at run-time. 2015-03-23T22:38:36Z pjb: So it would only be useful to define a class in a macro, to compute the macroexpansion, at compilation time. 2015-03-23T22:45:03Z Bicyclidine joined #lisp 2015-03-23T22:45:21Z bcoburn|l is now known as bcoburn 2015-03-23T22:46:53Z jtza8 quit (Remote host closed the connection) 2015-03-23T22:46:59Z the_real_intinig joined #lisp 2015-03-23T22:47:06Z drmeister: It sounds like a lot of trouble for something that isn't very useful. 2015-03-23T22:47:48Z fugue joined #lisp 2015-03-23T22:47:53Z Xach: drmeister: it's pretty interesting to see people implement cl who weren't privy to the original culture. that's how kcl came about, too. 2015-03-23T22:47:54Z That_Engineer joined #lisp 2015-03-23T22:47:59Z drmeister: But then again, I've always felt that environments are the least well described aspect of the Common Lisp specification. 2015-03-23T22:48:27Z pjb: drmeister: it's easy to check: find-grep '(setf (find-class ' ~/quicklisp 2015-03-23T22:48:29Z Xach wonders how much insight would be gained (and time lost) from going through the spec email archive from start to finish 2015-03-23T22:49:03Z drmeister: And ECL is derived from KCL 2015-03-23T22:49:03Z linux_dream joined #lisp 2015-03-23T22:49:15Z Xach: aye 2015-03-23T22:49:24Z pjb: it would probably help to be able to trace the origin of features. Why do we have this environment parameter in find-class? 2015-03-23T22:49:25Z drmeister: Somehow I think I'd rather have been in the bar when they were discussing it. 2015-03-23T22:49:58Z muir1 joined #lisp 2015-03-23T22:50:00Z drmeister: Or on the floor, in the bar when they were discussing it. 2015-03-23T22:50:13Z drmeister: Eh - maybe not. 2015-03-23T22:50:15Z Xach: you'll get your chance at els 2015-03-23T22:50:39Z mishoo_ quit (Ping timeout: 245 seconds) 2015-03-23T22:52:57Z StrykerKKD quit (Quit: Leaving) 2015-03-23T22:53:12Z antoszka: Damn, need to do my ELS bookings. 2015-03-23T22:53:28Z pjb: From "Issue MACRO-ENVIRONMENT-EXTENT Writeup" I gather that the environment parameter of find-class is a leftover of a broken CLOS implementation :-) 2015-03-23T22:54:24Z quazimodo joined #lisp 2015-03-23T22:55:08Z the_real_intinig quit (Ping timeout: 252 seconds) 2015-03-23T22:56:46Z ovenpasta quit (Ping timeout: 244 seconds) 2015-03-23T22:57:01Z sebboh: So, I've done (ql:quickload :com.informatimago.common-lisp.cesarum). That seemed to work. How do I invoke (tracing-labels ...) from com.informatimago.common-lisp.cesarum.utility ? I think I simply don't understand the syntax of naming things... I've been able to do (some-system:some-funciton ...) and (some-system::some-not-exported-function ...), but the informatimago stuff eludes me. 2015-03-23T22:57:44Z stardiviner quit (Ping timeout: 245 seconds) 2015-03-23T22:57:48Z Guest39831 quit (Quit: Lost terminal) 2015-03-23T22:59:13Z ziocroc quit (Quit: ziocroc) 2015-03-23T22:59:33Z keen_________ quit (Read error: Connection reset by peer) 2015-03-23T23:00:07Z Kanae joined #lisp 2015-03-23T23:01:23Z keen_________ joined #lisp 2015-03-23T23:02:29Z karswell joined #lisp 2015-03-23T23:03:19Z larion joined #lisp 2015-03-23T23:03:53Z Vutral joined #lisp 2015-03-23T23:06:11Z muir1 quit (Quit: Verlassend) 2015-03-23T23:07:10Z rhllor quit (Read error: Connection reset by peer) 2015-03-23T23:07:52Z sebboh: ...I found examples online of using :use with defpackage to ... I guess merge your new package with some existing namespace (like the informatimago one...), but that doesn't seem like what I should do. I just want to call one of their functions, once. ...yeah, that package defines a (for ...). It's not appropriate to pull in the whole thing. 2015-03-23T23:08:28Z ered quit (Remote host closed the connection) 2015-03-23T23:08:33Z larion quit (Ping timeout: 252 seconds) 2015-03-23T23:08:59Z ered joined #lisp 2015-03-23T23:09:04Z pjb: sebboh: it's a debugging tool, so easiest is interactively (use-package :com.informatimago.common-lisp.cesarum.utility) in your package (deal with conflict if any). 2015-03-23T23:09:23Z pjb: then edit your source, adding tracing- in front of each labels you want to debug, and reload the file. Test. 2015-03-23T23:09:30Z pjb: When done, remove tracing- from your source. 2015-03-23T23:10:01Z Vutral quit (Excess Flood) 2015-03-23T23:10:02Z alusion joined #lisp 2015-03-23T23:10:21Z pjb: You may also skip the use-package and potential conflicts, by just adding com.informatimago.common-lisp.cesarum.utility:tracing- makes it even easier to spot when you want to remove it :-) 2015-03-23T23:10:31Z stardiviner joined #lisp 2015-03-23T23:10:50Z sebboh: pjb, that's what I tried first. 2015-03-23T23:11:03Z sebboh: But maybe there's a miscommunication... :) 2015-03-23T23:11:30Z pjb: the conflict on for is why now I use :for in loop :-) 2015-03-23T23:11:40Z muir1 joined #lisp 2015-03-23T23:11:55Z arpunk joined #lisp 2015-03-23T23:12:37Z sebboh: In this file, https://github.com/michaelw/cl-dot/blob/master/cl-dot.lisp#L185 I added (ql:quickload :com.informatimago.common-lisp.cesarum) at the top, then I changed the marked line in this way: s/labels/com.informatimago.common-lisp.cesarum.utility:tracing-labels/ 2015-03-23T23:13:06Z pjb: use-package must be put after (in-package cl-dot). 2015-03-23T23:13:22Z sunwukong quit (Ping timeout: 272 seconds) 2015-03-23T23:13:25Z Davidbrcz quit (Ping timeout: 256 seconds) 2015-03-23T23:13:35Z pjb: or you may not use-package at all, if you qualify the symbol as com.informatimago.common-lisp.cesarum.utility:tracing-labels 2015-03-23T23:14:57Z sebboh: Package COM.INFORMATIMAGO.COMMON-LISP.CESARUM.UTILITY does not exist. (line 187, the fully qualified call to tracing-labels.) 2015-03-23T23:16:12Z pjb: run (ql:quickload :com.informatimago.common-lisp.cesarum) again. 2015-03-23T23:16:43Z zadock joined #lisp 2015-03-23T23:17:00Z sebboh: Hm, I've been using sbcl --script myscript.lsp 2015-03-23T23:17:42Z Bicyclidine quit (Quit: Reconnecting) 2015-03-23T23:17:55Z Bicyclidine joined #lisp 2015-03-23T23:18:15Z pjb: this is not a good way to work with lisp. 2015-03-23T23:18:26Z pjb: boot sbcl and leave it running all the time. work in the REPL. 2015-03-23T23:19:15Z pjb: You don't reboot your computer everytime you change a line in a program, do you? 2015-03-23T23:19:28Z sebboh: The line editing sucks, even with rlwrap, and I haven't yet got slime or other technology working. I edit the .lsp file with emacs, though. 2015-03-23T23:19:45Z Bicyclidine: you should get slime working, it is really nice. 2015-03-23T23:20:17Z sebboh: pjb, well, I do for all my java development, shell scripts, ... rendering html... C. Perl. ;) 2015-03-23T23:21:07Z Bicyclidine: but do you like the C development flow? i sure don't. 2015-03-23T23:21:07Z alusion quit (Quit: WeeChat 0.4.2) 2015-03-23T23:21:24Z pjb: sebboh: don't edit lines. You can use your editor, save, and reload in the REPL. 2015-03-23T23:22:00Z pjb: You can define utility commands such as: (defun r () (load "my-program.lisp")) and (define-symbol-macro r (r)) so that you only have to type r RET to reload. 2015-03-23T23:22:31Z sebboh: So I started a repl and did (ql:quickload :com.informatimago.common-lisp.cesarum) ... now I'll try to figure out how to load the file. pjb, but what about all this *global* stuff? There are .. counters. There's a function (method?) which incfs an int to produce a new ID each time it is called... 2015-03-23T23:22:36Z pjb: You may put those utility in a file workspace.lisp that you reload once when you boot sbcl. 2015-03-23T23:22:51Z sebboh: hm. 2015-03-23T23:23:08Z pjb: where? 2015-03-23T23:23:18Z pjb: where do you have this global stuff? 2015-03-23T23:24:01Z sebboh: in a defvar. I guess it's zero'd out if I re- (load ...) the file, eh? 2015-03-23T23:24:36Z pjb: No. defvar doesn't reset its variable when re-evaluated. Only defparameter does that. 2015-03-23T23:24:50Z pjb: Which makes defvar useful to define parameters, and defparameter to define variables. 2015-03-23T23:25:12Z Ethan- joined #lisp 2015-03-23T23:25:48Z sebboh: To that I can only respond with a facial expression. 2015-03-23T23:26:59Z muir1 quit (Quit: Leaving) 2015-03-23T23:27:02Z pjb: Think about it. parameters are to be set by the "caller", an external entity, so when you define them you don't want to override their value set by the external entity. therefore you'd use defvar. On the other hand, your global variables, you must initialize them and control them specifically, therefore you will set and reset them when you reload your source, using defparameter. 2015-03-23T23:27:56Z schaueho joined #lisp 2015-03-23T23:29:33Z sebboh: BTW I had typed the correct code in the first place, it just doesn't work when invoked as --script ... It does work when (load ...)'d. ...Which tells me to move the ql:quickload to a different file, then it will work with the --script, too. ... nope! Weird. 2015-03-23T23:30:00Z pjb: ql:quickload comes from quicklisp that you need to load first. 2015-03-23T23:30:09Z pjb: (load #P"~/quicklisp/setup.lisp") 2015-03-23T23:30:22Z pjb: this is done by ~/.sbclrc.lisp when you don't use --script. 2015-03-23T23:30:42Z Bicyclidine: --script makes it skip your init files. 2015-03-23T23:30:48Z pjb: Anyways, just boot sbcl and work interactively. This is the secret of lisp productivity. 2015-03-23T23:30:56Z sebboh: I have some #-quicklisp ... incantation at the top of viz.lsp, which is the file I pass to --script. 2015-03-23T23:30:57Z pjb: If you use --script, then you can as well use C++. 2015-03-23T23:31:00Z zygentoma quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2015-03-23T23:31:20Z That_Engineer quit (Ping timeout: 265 seconds) 2015-03-23T23:31:54Z Shinmera quit (Quit: しつれいしなければならないんです。) 2015-03-23T23:32:11Z sebboh: I think I copied the incantation out of my rc file, after quicklisp installed it there for me. In any case, as usual I learned a lot while not actually altering the functional parts of my code today. But now the day is done. :) 2015-03-23T23:32:26Z Ethan- quit (Remote host closed the connection) 2015-03-23T23:34:45Z cadadar quit (Quit: Leaving.) 2015-03-23T23:36:04Z hiyosi joined #lisp 2015-03-23T23:36:12Z sebboh: pjb and Bicyclidine, it's worth noting that I look forward to using a proper repl for interactive work. I didn't mean to become defensive of --script, it's just the solution that I came up with a few days ago. I will set up slime et al, but first I should upgrade emacs, and I've been putting that off. Have a good evening/day. :) 2015-03-23T23:38:29Z pjb: Good evening! 2015-03-23T23:38:36Z Bicyclidine: later. 2015-03-23T23:39:31Z sebboh quit (Quit: out) 2015-03-23T23:46:55Z That_Engineer joined #lisp 2015-03-23T23:48:19Z xificurC joined #lisp 2015-03-23T23:51:40Z munksgaard joined #lisp 2015-03-23T23:52:04Z the_real_intinig joined #lisp 2015-03-23T23:54:26Z xificurC quit (Ping timeout: 246 seconds)