2015-01-28T00:00:24Z vaporatorius quit (Remote host closed the connection) 2015-01-28T00:03:31Z Karl_Dscc quit (Remote host closed the connection) 2015-01-28T00:04:17Z bgs100 joined #lisp 2015-01-28T00:05:41Z holycow joined #lisp 2015-01-28T00:05:58Z holycow is now known as Guest16953 2015-01-28T00:07:32Z spacebat` joined #lisp 2015-01-28T00:09:04Z stardiviner quit (Quit: Weird in coding now, or make love, only two things push me away from IRC.) 2015-01-28T00:09:13Z waschen quit (Remote host closed the connection) 2015-01-28T00:09:32Z stardiviner joined #lisp 2015-01-28T00:09:39Z stardiviner quit (Client Quit) 2015-01-28T00:11:25Z stardiviner joined #lisp 2015-01-28T00:11:28Z stardiviner quit (Client Quit) 2015-01-28T00:12:00Z kons quit (Ping timeout: 264 seconds) 2015-01-28T00:12:11Z nell joined #lisp 2015-01-28T00:14:44Z resttime quit (Ping timeout: 272 seconds) 2015-01-28T00:17:46Z stardiviner joined #lisp 2015-01-28T00:18:05Z stardiviner quit (Client Quit) 2015-01-28T00:18:13Z resttime joined #lisp 2015-01-28T00:19:13Z stardiviner joined #lisp 2015-01-28T00:19:41Z meiji11 joined #lisp 2015-01-28T00:20:39Z josteink quit (Ping timeout: 246 seconds) 2015-01-28T00:24:43Z SpikeMaster joined #lisp 2015-01-28T00:28:17Z josteink joined #lisp 2015-01-28T00:28:17Z xjgrant quit (Ping timeout: 245 seconds) 2015-01-28T00:29:23Z xjgrant joined #lisp 2015-01-28T00:32:06Z SpikeMaster left #lisp 2015-01-28T00:39:27Z jasom: shaungilchrist: I don't get it 2015-01-28T00:40:09Z shaungilchrist: get what? 2015-01-28T00:40:17Z jasom: sorry, I meant Shinmera 2015-01-28T00:41:41Z k-dawg joined #lisp 2015-01-28T00:43:43Z Soft quit (Quit: WeeChat 1.2-dev) 2015-01-28T00:43:59Z honkfestival quit (Quit: leaving) 2015-01-28T00:44:04Z Longlius joined #lisp 2015-01-28T00:45:57Z Ethan- joined #lisp 2015-01-28T00:50:51Z sheilong joined #lisp 2015-01-28T00:51:40Z zRecursive joined #lisp 2015-01-28T00:51:40Z honkfestival joined #lisp 2015-01-28T00:53:16Z flash- quit (Read error: Connection reset by peer) 2015-01-28T00:53:35Z flash- joined #lisp 2015-01-28T00:55:51Z bb010g joined #lisp 2015-01-28T00:55:59Z bullone quit (Ping timeout: 272 seconds) 2015-01-28T00:58:53Z spacebat` quit (Remote host closed the connection) 2015-01-28T00:59:01Z ivan\ quit (Remote host closed the connection) 2015-01-28T00:59:10Z ivan\ joined #lisp 2015-01-28T00:59:17Z Guest5049 quit (Quit: LayerBNC - https://LayerBNC.net/) 2015-01-28T01:00:21Z dagnachew joined #lisp 2015-01-28T01:01:57Z nopf quit (Remote host closed the connection) 2015-01-28T01:05:08Z BitPuffin quit (Ping timeout: 265 seconds) 2015-01-28T01:05:51Z stardiviner quit (Quit: Weird in coding now, or make love, only two things push me away from IRC.) 2015-01-28T01:07:22Z harish quit (Ping timeout: 240 seconds) 2015-01-28T01:07:35Z yrk joined #lisp 2015-01-28T01:08:05Z yrk quit (Changing host) 2015-01-28T01:08:05Z yrk joined #lisp 2015-01-28T01:09:28Z archaic joined #lisp 2015-01-28T01:09:37Z archaic is now known as Guest6545 2015-01-28T01:12:07Z moei quit (Ping timeout: 244 seconds) 2015-01-28T01:12:26Z moei joined #lisp 2015-01-28T01:15:55Z Soft joined #lisp 2015-01-28T01:18:29Z jgrant` joined #lisp 2015-01-28T01:18:32Z jgrant`: dim: Ping. 2015-01-28T01:19:15Z manuel__ quit (Quit: manuel__) 2015-01-28T01:20:45Z taspat quit (Ping timeout: 256 seconds) 2015-01-28T01:22:03Z jlongster quit (Ping timeout: 265 seconds) 2015-01-28T01:22:15Z k-dawg quit (Quit: This computer has gone to sleep) 2015-01-28T01:29:44Z cgore joined #lisp 2015-01-28T01:30:35Z CrazyWoods quit (Quit: leaving) 2015-01-28T01:35:58Z stardiviner joined #lisp 2015-01-28T01:38:56Z nell quit (Quit: WeeChat 1.2-dev) 2015-01-28T01:39:30Z MutSbeta quit (Quit: Leaving.) 2015-01-28T01:39:44Z nell joined #lisp 2015-01-28T01:40:20Z ynniv quit (Quit: ynniv) 2015-01-28T01:49:20Z ebrasca quit (Quit: ebrasca) 2015-01-28T01:53:22Z Guest16953 quit (Quit: Lost terminal) 2015-01-28T01:54:08Z jleija joined #lisp 2015-01-28T01:56:17Z cgore quit (Remote host closed the connection) 2015-01-28T01:57:48Z slyrus quit (Ping timeout: 276 seconds) 2015-01-28T02:04:14Z cmack` quit (Ping timeout: 246 seconds) 2015-01-28T02:09:43Z Bicyclidine quit (Ping timeout: 255 seconds) 2015-01-28T02:09:48Z hrs joined #lisp 2015-01-28T02:11:34Z Bicyclidine joined #lisp 2015-01-28T02:14:23Z hrs left #lisp 2015-01-28T02:16:03Z BitPuffin joined #lisp 2015-01-28T02:16:17Z Bicyclidine quit (Ping timeout: 256 seconds) 2015-01-28T02:19:09Z zyaku joined #lisp 2015-01-28T02:23:11Z attila_lendvai quit (Quit: Leaving.) 2015-01-28T02:25:07Z hiyosi quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-01-28T02:25:44Z psy_ quit (Quit: Leaving) 2015-01-28T02:25:49Z harish joined #lisp 2015-01-28T02:27:44Z ehaliewicz quit (Ping timeout: 272 seconds) 2015-01-28T02:30:23Z zophy_ joined #lisp 2015-01-28T02:30:53Z clop joined #lisp 2015-01-28T02:31:00Z frkout joined #lisp 2015-01-28T02:35:33Z Krystof quit (Ping timeout: 256 seconds) 2015-01-28T02:36:07Z echo-area joined #lisp 2015-01-28T02:38:52Z zyaku quit (Ping timeout: 240 seconds) 2015-01-28T02:41:28Z pjb` joined #lisp 2015-01-28T02:41:40Z hrs joined #lisp 2015-01-28T02:42:07Z hrs quit (Client Quit) 2015-01-28T02:43:12Z pjb quit (Ping timeout: 245 seconds) 2015-01-28T02:44:48Z pers left #lisp 2015-01-28T02:46:27Z ivan\ quit (Read error: Connection reset by peer) 2015-01-28T02:46:36Z ivan\ joined #lisp 2015-01-28T02:46:36Z stardiviner quit (Quit: Weird in coding now, or make love, only two things push me away from IRC.) 2015-01-28T02:47:08Z stardiviner joined #lisp 2015-01-28T02:48:03Z yeticry quit (Read error: Connection reset by peer) 2015-01-28T02:49:13Z heurist quit (Ping timeout: 264 seconds) 2015-01-28T02:50:28Z heurist joined #lisp 2015-01-28T02:50:32Z kapil__ joined #lisp 2015-01-28T02:52:25Z nowhere_man_ joined #lisp 2015-01-28T02:53:04Z nowhereman quit (Ping timeout: 272 seconds) 2015-01-28T02:53:27Z yeticry joined #lisp 2015-01-28T02:55:35Z antonv joined #lisp 2015-01-28T02:59:46Z jumblerg joined #lisp 2015-01-28T03:01:37Z beach joined #lisp 2015-01-28T03:01:45Z beach: Good morning everyone! 2015-01-28T03:02:40Z Xach: hello beach 2015-01-28T03:03:24Z nyef: Hello beach. 2015-01-28T03:03:32Z rotty quit (Remote host closed the connection) 2015-01-28T03:04:44Z ynniv joined #lisp 2015-01-28T03:08:36Z ynniv quit (Client Quit) 2015-01-28T03:10:49Z antonv: hi 2015-01-28T03:11:18Z antonv: it's time to try this new Lisp OS! 2015-01-28T03:11:33Z pjb` is now known as pjb 2015-01-28T03:13:15Z gko__ joined #lisp 2015-01-28T03:13:51Z BitPuffin quit (Ping timeout: 276 seconds) 2015-01-28T03:15:13Z echo-area quit (Remote host closed the connection) 2015-01-28T03:16:55Z yrk quit (Quit: ERC (IRC client for Emacs 25.0.50.1)) 2015-01-28T03:17:45Z pillton: Good afternoon beach. 2015-01-28T03:17:48Z defaultxr quit (Quit: brb) 2015-01-28T03:17:53Z Oladon: Howdy beach 2015-01-28T03:19:24Z beach: drmeister: Around? 2015-01-28T03:20:41Z defaultxr joined #lisp 2015-01-28T03:24:03Z enfors quit (Ping timeout: 246 seconds) 2015-01-28T03:24:57Z Lokathor_ joined #lisp 2015-01-28T03:28:15Z Lokathor quit (Ping timeout: 264 seconds) 2015-01-28T03:31:36Z jumblerg quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-01-28T03:33:14Z drmeister: Yes. 2015-01-28T03:33:17Z drmeister: Hello 2015-01-28T03:33:55Z beach: drmeister: I added a few HIR transformations. In particular, remaining constants are turned into LOAD-TIME-VALUE inputs. 2015-01-28T03:34:17Z beach: drmeister: The function for turning HIR into MIR is also in place. 2015-01-28T03:34:35Z beach: drmeister: But it requires a lot of configuration on the part of the implementation. 2015-01-28T03:34:43Z drmeister: Is it on github? 2015-01-28T03:34:48Z beach: Yes. 2015-01-28T03:34:53Z Vivitron` joined #lisp 2015-01-28T03:34:57Z drmeister: Grabbing 2015-01-28T03:35:11Z clop quit (Quit: Leaving) 2015-01-28T03:36:10Z beach: drmeister: In Cleavir/Intermediate-representation/HIR-to-MIR/general.lisp you will find the definition of a generic function SPECIALIZE. 2015-01-28T03:36:16Z dagnachew quit (Quit: WeeChat 1.1) 2015-01-28T03:37:46Z beach: drmeister: In Code/Backends/Processors/x86/64/HIR-to-MIR you will find the beginning of how SICL will supply methods on SPECIALIZE for the x86-64. 2015-01-28T03:37:59Z drmeister: Looking 2015-01-28T03:39:03Z beach: I am not entirely happy with SPECIALIZE. I feel I am imposing too much of a burden on the implementation. But I also don't see how to do it differently. 2015-01-28T03:39:27Z leo2007 quit (Quit: happy hacking) 2015-01-28T03:41:54Z charlie joined #lisp 2015-01-28T03:41:54Z charlie: hi 2015-01-28T03:42:03Z beach: Hello charlie. 2015-01-28T03:42:37Z vydd joined #lisp 2015-01-28T03:43:15Z drmeister: Why do almost all of the SPECIALIZE methods just return the instruction? 2015-01-28T03:44:16Z drmeister: What function invokes SPECIALIZE? 2015-01-28T03:44:22Z beach: drmeister: At that point, I don't think I want to change the call/return protocol. 2015-01-28T03:45:15Z beach: drmeister: It is called from HIR-TO-MIR. 2015-01-28T03:45:46Z beach: drmeister: So the implementation invokes CLEAVIR-IR:HIR-TO-MIR after having done all the HIR transformations. 2015-01-28T03:46:57Z beach: drmeister: The purpose of SPECIALIZE is to turn implicit operations on Lisp objects into explicit memory operations. 2015-01-28T03:47:47Z Vutral_ quit (Ping timeout: 245 seconds) 2015-01-28T03:47:49Z beach: drmeister: So CAR-INSTRUCTION, UNBOX-SINGLE-FLOAT, etc. will be expressed in terms of memory references. 2015-01-28T03:48:45Z drmeister: Does it rewrite the HIR in place like hir-transformations does? 2015-01-28T03:48:52Z beach: Yes. 2015-01-28T03:49:22Z frkout quit (Remote host closed the connection) 2015-01-28T03:49:30Z beach: If you just replace one (HIR) instruction by another (MIR) instruction, you can just return the new one. 2015-01-28T03:49:49Z frkout joined #lisp 2015-01-28T03:49:51Z beach: If you want to replace one by several, you need to use the operations INSERT-INSTRUCTION-BEFORE, etc. 2015-01-28T03:50:04Z beach: If you need to remove the instruction, you can replace it with a NOP. 2015-01-28T03:50:18Z drmeister: I think I see. 2015-01-28T03:50:42Z beach: It's a bit involved. I am sorry about that. 2015-01-28T03:50:54Z beach: But like I said, as of now, I don't know a better way. 2015-01-28T03:51:30Z drmeister: What is the "implementation" argument? 2015-01-28T03:51:40Z beach: (make-instance 'clasp) 2015-01-28T03:51:50Z beach: As before. 2015-01-28T03:51:52Z drmeister: ok 2015-01-28T03:52:01Z beach: I am hoping it will pay off, because it is on MIR that we do all the interesting optimizations. 2015-01-28T03:52:16Z drmeister: How many instructions are there to specialize on? 2015-01-28T03:52:38Z leo2007 joined #lisp 2015-01-28T03:52:41Z beach: 20 or so. I don't remember. 2015-01-28T03:52:58Z drmeister: That's not so bad. 2015-01-28T03:53:15Z beach: A bit more I think 2015-01-28T03:53:28Z drmeister: And MIR would be direct LLVM-IR 2015-01-28T03:53:40Z beach: In Cleavir/Intermediate-representation/HIR do grep defclass *.lisp | grep instruction | wc -l 2015-01-28T03:53:55Z gabriel_laddel joined #lisp 2015-01-28T03:54:23Z beach: Oops. 106. 2015-01-28T03:54:24Z beach: :) 2015-01-28T03:54:49Z drmeister: That sounds more like it. This includes all of the unboxed math operations doesn't it? 2015-01-28T03:54:49Z beach: Most of them you don't have to do at this stage. 2015-01-28T03:55:05Z beach: like double-float-cos-instruction. 2015-01-28T03:55:12Z drmeister: Yeah. 2015-01-28T03:55:34Z drmeister: Hang on, I have to find HIR-TO-MIR 2015-01-28T03:55:45Z Vutral joined #lisp 2015-01-28T03:56:59Z frkout_ joined #lisp 2015-01-28T03:57:20Z drmeister: You just specialize the initial instruction. How do the rest get specialized? In the :around method? 2015-01-28T03:57:26Z beach: drmeister: Also, you only have to provide methods on instructions that you actually generate. 2015-01-28T03:57:55Z beach: Yes. 2015-01-28T03:58:10Z beach: I am not sure why I wrote it that way. 2015-01-28T03:58:45Z jumblerg joined #lisp 2015-01-28T03:59:01Z beach: That may change in the future. All you need to know is to call hir-to-mir and provide the methods on specialize. 2015-01-28T03:59:14Z drmeister: I don't follow how the :around method does that - all it appears to do is replace the one instruction. 2015-01-28T03:59:23Z zacharias quit (Read error: Connection reset by peer) 2015-01-28T03:59:54Z drmeister: I'm looking at sicl/Code/Cleavir/Intermediate-representation/HIR-to-MIR/general.lisp 2015-01-28T04:00:02Z beach: Hmm, looks like you are right. 2015-01-28T04:00:04Z zacharias joined #lisp 2015-01-28T04:00:08Z jasom quit (Quit: WeeChat 0.4.3) 2015-01-28T04:00:25Z jgrant` is now known as jgrant 2015-01-28T04:00:35Z frkout quit (Ping timeout: 265 seconds) 2015-01-28T04:00:40Z beach: There should be a recursive call to specialize in there somewhere. 2015-01-28T04:01:20Z drmeister: Agreed. Have you tested this? Does it work? 2015-01-28T04:01:24Z beach: In the meantime, I suggest you try out the new HIR transformations. 2015-01-28T04:01:33Z beach: I have not even run it once. 2015-01-28T04:01:41Z drmeister: Understood. 2015-01-28T04:01:53Z drmeister: Bleadin' edge 2015-01-28T04:01:55Z jgrant: dim: Ping ping. 2015-01-28T04:01:59Z beach: Very much so. 2015-01-28T04:02:22Z psy_ joined #lisp 2015-01-28T04:02:23Z jgrant: Also, did that VM LispM OS ever get a repo/hosting somewhere? 2015-01-28T04:02:35Z jgrant: That was here like a week ago. 2015-01-28T04:02:46Z beach: jgrant: It did. 2015-01-28T04:02:50Z psy_ quit (Max SendQ exceeded) 2015-01-28T04:02:52Z nyef: jgrant: Earlier today. 2015-01-28T04:03:02Z drmeister: jgrant: It showed up on reddit.com/r/programming a few hours ago 2015-01-28T04:03:05Z nyef: Or maybe yesterday, depending on where in the world you are. 2015-01-28T04:03:11Z jgrant: Can I get a name of the project and site where? 2015-01-28T04:03:17Z jgrant: Assuming Github? 2015-01-28T04:03:34Z nyef: Yeah, it's on github. 2015-01-28T04:03:42Z psy_ joined #lisp 2015-01-28T04:03:52Z drmeister: http://www.reddit.com/r/programming/comments/2tvz5t/mezzano_an_os_written_in_common_lisp/ 2015-01-28T04:03:53Z bgs100 quit (Quit: bgs100) 2015-01-28T04:04:14Z jgrant: drmeister: Ah, yeah, I knew it had two Zs somewhere. Ty! 2015-01-28T04:04:59Z nyef: https://github.com/froggey/Mezzano 2015-01-28T04:05:38Z jgrant: nyef: Yeah, found it -- but ty. 2015-01-28T04:06:12Z jgrant: Very cool, that someone just was working on this on/in the backburner over the course of years. 2015-01-28T04:06:40Z drmeister: beach: I'm still puzzling over the enter instruction. It looks like for LLVM I would take the enter-instruction lambda list and generate code to put the passed arguments into LLVM allocas (slots on the stack) and set up a lexical environment that binds the symbols to the allocas. 2015-01-28T04:06:58Z jgrant: Unrelated, (sorry mind is all over the place before I try to get to bed) is there anything like Skribilo, for CL? 2015-01-28T04:07:32Z drmeister: What happens to special variables in the lambda list? 2015-01-28T04:07:38Z Xach: jgrant: What is Skribilo? 2015-01-28T04:07:48Z Xach: drmeister: it is just like a let. 2015-01-28T04:08:07Z Xach: drmeister: sorry if i'm butting in on a more specific discussion 2015-01-28T04:08:35Z jgrant: Xach: From Skribe (iirc), which is a documentation/typesetting program from Scheme. 2015-01-28T04:08:46Z jgrant: So you write Scheme, and it generates a document. 2015-01-28T04:08:57Z jgrant: SO you can practically program a text. 2015-01-28T04:09:27Z drmeister: Xach: It's ok, but "just like a let" doesn't really help here unfortunately. I'm trying to translate beach's HIR to LLVM-IR. "let"s don't mean much here. 2015-01-28T04:09:34Z beach: drmeister: New version available. Still not tested, but looks better. 2015-01-28T04:09:38Z Xach: drmeister: gotcha. missed the context. 2015-01-28T04:09:48Z drmeister: Xach: No problem. 2015-01-28T04:09:57Z karswell` quit (Read error: Connection reset by peer) 2015-01-28T04:10:12Z drmeister: It's really no problem. Sometimes comments like that illuminate things that I didn't understand before. 2015-01-28T04:10:54Z beach: drmeister: Cleavir takes care of the special variables in the lambda list. 2015-01-28T04:11:17Z drmeister: I'll generate some HIR graphs and take a look at what it does to them. 2015-01-28T04:11:33Z karswell` joined #lisp 2015-01-28T04:12:13Z beach: OK. 2015-01-28T04:12:50Z drmeister: beach: But more generally - does what I described above about the enter-instruction lambda-list sound correct? 2015-01-28T04:12:58Z beach: drmeister: The variables in the lambda list are not the final ones. They are just temporaries that get processed later. 2015-01-28T04:13:48Z drmeister: Ok, I think I have the right idea then. I'm rebuilding everything 2015-01-28T04:14:11Z beach: drmeister: Hard for me to say since I don't know the LLVM. What I intend to do in MIR and later stages is to run the register allocator on those. 2015-01-28T04:15:23Z beach: drmeister: The register allocator can be told that such-and-such location has an obligatory register assigned. So for a simple lambda list with a few required parameters, I will just tell the register allocator that those required parameters must be allocated in the registers that I have chosen for parameter passing. 2015-01-28T04:15:36Z drmeister: Do you mind if I occasionally explain some details of LLVM-IR or do you not want to hear the details? I know you are focused on other things. It helps me to have someone to describe them to. 2015-01-28T04:16:20Z beach: drmeister: I don't mind learning about it. But I am starting with a very low level of knowledge. 2015-01-28T04:16:44Z manuel__ joined #lisp 2015-01-28T04:17:01Z beach: You should definitely talk about it. Other #lisp participants may know the LLVM better than I do so they can help make the connection. 2015-01-28T04:17:04Z vydd quit (Ping timeout: 255 seconds) 2015-01-28T04:18:01Z drmeister: Right. So in LLVM-IR there are an infinite number of registers. The hardware register allocation/mapping of LLVM-IR registers is handled by LLVM. 2015-01-28T04:18:54Z beach: Sounds good. 2015-01-28T04:18:59Z drmeister: Also, I can allocate pointers on the stack and the LLVM-IR optimizers can interchange stack based pointers for hardware registers. So stack based pointers and registers are essentially the same as long as I follow some rules. 2015-01-28T04:19:52Z beach: And "alloca" allocates stack-based pointers? 2015-01-28T04:19:57Z drmeister: In my compiler I can create a stack based pointer (I call them ALLOCAs) and LLVM may turn it into an SSA register and then a hardware register later. 2015-01-28T04:19:58Z drmeister: Yes. 2015-01-28T04:20:16Z beach: OK, then what you said before sounds reasonable. 2015-01-28T04:20:53Z beach: Also, somewhere you must make the connection to your parameter-passing places. 2015-01-28T04:21:55Z drmeister: So the environment part is what I'm wrestling with. If I have a (lambda (x y z) ...) that means I create an environment that maps x, y, z each to an ALLOCA into which the code I generate will put the first, second and third arguments (which were passed in registers). 2015-01-28T04:22:34Z drmeister: Hang on - I think I can answer some of my own questions from her by running some forms through your code. 2015-01-28T04:22:38Z Zhivago: Given an infinite number of registers, why are you using stack based pointers? 2015-01-28T04:22:49Z flash-- joined #lisp 2015-01-28T04:23:02Z ehaliewicz joined #lisp 2015-01-28T04:23:10Z drmeister: Infinite number of virtual registers. I'm still running on real hardware. 2015-01-28T04:23:29Z Zhivago: Doesn't it handle spills for you? 2015-01-28T04:24:12Z drmeister: Zhivago: Actually, that is a good question. Why use alloca's and not just registers. 2015-01-28T04:24:33Z Zhivago: That's what I'm wondering. 2015-01-28T04:24:35Z pjb: - 2015-01-28T04:25:00Z Zhivago: Do you need to be able to point at them or something? 2015-01-28T04:25:27Z drmeister: I think they are interchangeable at this point. 2015-01-28T04:25:41Z Zhivago: Fair enough. 2015-01-28T04:26:02Z nyef: drmeister: Do you do dynamic-extent allocation for things yet? 2015-01-28T04:26:41Z flash- quit (Ping timeout: 265 seconds) 2015-01-28T04:26:48Z drmeister: There's an optimization pass called mem2reg that makes them interchangeable. If you don't want to deal with SSA and PHI nodes you stick things in ALLOCAs and let the mem2reg optimization pass figure out if it can go in a register and deal with PHI nodes. 2015-01-28T04:27:26Z drmeister: nyef: I don't know in what context you mean. 2015-01-28T04:27:58Z jleija quit (Quit: leaving) 2015-01-28T04:28:50Z nyef: Oh well. It was an idle question, and I'm too tired and not interested in the answer enough to further explain. 2015-01-28T04:29:39Z jamesf quit (Remote host closed the connection) 2015-01-28T04:29:40Z drmeister: nyef: That's ok, I totally understand. I do have a fully functioning Common Lisp so if dynamic-extent allocation is necessary for that then yes, I do that thing that you said. 2015-01-28T04:30:00Z nyef: It's not, it's just a nice optimization. 2015-01-28T04:30:29Z drmeister: I've had no formal training in writing compilers. What I've learned I've picked up on the street. 2015-01-28T04:30:33Z ehaliewicz quit (Ping timeout: 276 seconds) 2015-01-28T04:30:34Z Zhivago: It can make data-flow systems far more efficient. :) 2015-01-28T04:30:34Z beach: Also a tricky one if you want the code to remain safe. 2015-01-28T04:31:16Z drmeister: beach: That rings a bell, I've heard this before. 2015-01-28T04:31:25Z drmeister is trying to remember... 2015-01-28T04:32:16Z drmeister: Nope, can't recall.But something about dynamic-extent allocation and safety being tricky was important. 2015-01-28T04:32:17Z nyef: I think that the only formal training I've had is for operating a motor vehicle. 2015-01-28T04:33:13Z drmeister: I always assume that everyone here took it in Comp. Sci. 2015-01-28T04:33:31Z Bike: compiler writing? that's like 400 level, man, i'm not made of time 2015-01-28T04:33:47Z drmeister: No matter. What we know we learned in the hard-scrabble streets. 2015-01-28T04:34:12Z drmeister: They don't even teach it here at Temple. I was shocked. 2015-01-28T04:34:15Z beach: drmeister: CS is strange. There is not nearly enough time in just 5 or 8 years of education to teach even the basic things that you need to know to write real software. 2015-01-28T04:34:31Z Oddity: weeeeeee 2015-01-28T04:34:33Z Zhivago: drmeister: It requires reliable non-escape analysis. 2015-01-28T04:34:53Z antonv quit (Ping timeout: 240 seconds) 2015-01-28T04:35:19Z ivan\ quit (Remote host closed the connection) 2015-01-28T04:35:28Z ivan\ joined #lisp 2015-01-28T04:36:20Z drmeister: beach: So (hir-form '(lambda (x x) x) is not a problem right? Any reference to "x" will get the second argument. 2015-01-28T04:36:26Z badkins quit 2015-01-28T04:36:46Z beach: drmeister: I think I don't check it at this point. 2015-01-28T04:37:08Z beach: drmeister: There should be a test for duplication, at least in the required parameters. 2015-01-28T04:37:10Z drmeister: http://imgur.com/oCQvXIk 2015-01-28T04:37:23Z enitiz quit (Ping timeout: 256 seconds) 2015-01-28T04:37:27Z beach: drmeister: Looks like you are right. 2015-01-28T04:38:08Z echo-area joined #lisp 2015-01-28T04:39:53Z drmeister: Ok, now I get to the real questions that have been bugging me for months. 2015-01-28T04:39:56Z drmeister: (hir-form '(lambda (x &key y) (list x y))) 2015-01-28T04:40:40Z drmeister: http://imgur.com/YymgcN9 2015-01-28T04:40:50Z drmeister: There we go. 2015-01-28T04:41:01Z drmeister: The enter (x &KEY (Y y G1978)) 2015-01-28T04:41:18Z beach: Yes. 2015-01-28T04:41:31Z drmeister: The G1978 is the sensor for whether ":y xxx" is provided. 2015-01-28T04:41:42Z beach: Yes. 2015-01-28T04:42:46Z drmeister: The lowercase "y" and the uppercase "Y" - could you describe how those work? 2015-01-28T04:43:27Z beach: The upper-case is just the keyword to look for. I think I am printing it with ~a so there is no : prefix. 2015-01-28T04:43:35Z beach: The lower-case y is the value provided. 2015-01-28T04:43:36Z drmeister: var and init-form, but the init-form is a variable. 2015-01-28T04:44:07Z beach: The init-form is taken care of in the body of the function. 2015-01-28T04:44:18Z beach: ... where NIL is assigned to y. 2015-01-28T04:44:40Z drmeister: Ok, so these are not quite standard lambda-lists or am I not interpreting this properly. 2015-01-28T04:44:52Z beach: They are not standard lambda lists. 2015-01-28T04:45:08Z beach: In the lambda list, you have ( ) 2015-01-28T04:45:50Z beach: It means. Look for . If you find it, put the value in and T in . 2015-01-28T04:46:02Z drmeister: Phew, ok - and I understand why they aren't - you want the init-form out of there and a mandatory sensor. How do I interpret them? 2015-01-28T04:46:03Z beach: Otherwise, put (say) NIL in and NIL in 2015-01-28T04:46:21Z Bike: Uh, hang on, I thought the syntax for that was &key ((:y y) nil G1978). 2015-01-28T04:46:34Z Bike: oh. _not_ standard. nvm 2015-01-28T04:46:40Z beach: Yeah. 2015-01-28T04:46:42Z drmeister: Same thing for &optional? 2015-01-28T04:46:45Z beach: Yes. 2015-01-28T04:46:45Z drmeister: Testing. 2015-01-28T04:47:02Z beach: &optional is ( ) 2015-01-28T04:47:09Z drmeister: Right, got it. 2015-01-28T04:47:17Z beach: drmeister: Try something with a non-trivial initform. 2015-01-28T04:47:27Z sivoais quit (Ping timeout: 264 seconds) 2015-01-28T04:47:29Z Mon_Ouie quit (Quit: WeeChat 1.1) 2015-01-28T04:48:04Z moei quit (Read error: Connection reset by peer) 2015-01-28T04:48:05Z drmeister: &aux are taken out. 2015-01-28T04:48:06Z sivoais joined #lisp 2015-01-28T04:48:09Z beach: Yes. 2015-01-28T04:48:38Z moei joined #lisp 2015-01-28T04:48:56Z drmeister: What is this going to mean? (hir-form '(lambda (x &key) (list x))) 2015-01-28T04:49:15Z drmeister: I get: enter (x &KEY) 2015-01-28T04:49:19Z enitiz joined #lisp 2015-01-28T04:49:20Z drmeister: Must think on this. 2015-01-28T04:49:38Z beach: It means that if you call it with (234 :allow-other-keys t) you don't get an error. 2015-01-28T04:49:51Z drmeister: Right, ok. 2015-01-28T04:51:43Z Lokathor_ is now known as Lokathor 2015-01-28T04:51:55Z drmeister: Ok, so I generate code that takes these pidgin lambda-lists and turns them into code that binds the passed arguments into LLVM-IR registers that are bound to the lowercase symbols. 2015-01-28T04:51:57Z echo-area quit (Read error: Connection reset by peer) 2015-01-28T04:52:11Z beach: Sounds right. 2015-01-28T04:52:47Z drmeister: What do you call the things pointed to by broken arrows coming out of an instruction? 2015-01-28T04:53:01Z drmeister: Outputs 2015-01-28T04:53:03Z beach: Outputs. :) 2015-01-28T04:53:47Z echo-area joined #lisp 2015-01-28T04:53:57Z zophy_ quit (Ping timeout: 276 seconds) 2015-01-28T04:54:05Z beach: A flow graph is basically two superimposed graphs. One for control flow and one for data flow. 2015-01-28T04:54:14Z drmeister: I don't want to use the symbol names, I should use the outputs themselves as keys - right? There can be outputs/inputs with the same names that are different? 2015-01-28T04:54:42Z beach: drmeister: The symbols are just for reading the graphviz output. 2015-01-28T04:54:51Z kapil__ quit (Quit: Connection closed for inactivity) 2015-01-28T04:54:56Z beach: drmeister: You should use the identity of the output. 2015-01-28T04:55:38Z drmeister: What is the type of an identify of an output? 2015-01-28T04:55:58Z beach: I don't understand. 2015-01-28T04:56:27Z drmeister: It's not a symbol. It's a CONS or some other non-immediate object isn't it? 2015-01-28T04:57:15Z drmeister: I have to implement the environment in C++ and that means picking a type for the identity. I will probably make it a "T" type so it can be anything. 2015-01-28T04:57:59Z beach: I still don't understand. 2015-01-28T04:58:50Z beach: By "the identity of the output" I mean the value of the pointer. 2015-01-28T04:58:55Z drmeister: Hmm, what is the class of an output represented by a hexagon? 2015-01-28T04:58:56Z beach: As in EQ. 2015-01-28T04:59:13Z beach: probably dynamic-extent-location or something like that. 2015-01-28T04:59:33Z beach: dynamic-lexical-location 2015-01-28T04:59:36Z drmeister: Ok, cool, it was kind of a stupid question with a trivial answer. Whatever it is, identities are compared with EQ. 2015-01-28T04:59:53Z drmeister: Does dynamic-lexical-location have a slot called "identity"? 2015-01-28T05:00:14Z beach: No. 2015-01-28T05:00:23Z drmeister: or is the particular instance of the dynamic-lexical-location the identity? 2015-01-28T05:00:39Z beach: Correct. 2015-01-28T05:01:04Z drmeister: Got it. I was thinking something weird. 2015-01-28T05:01:16Z beach: Many people do. Including Muchnick. 2015-01-28T05:01:31Z beach: He uses integer indexes into tables instead. 2015-01-28T05:01:36Z beach: Fortran-style programming. 2015-01-28T05:01:53Z beach: I would hate to see the compiler code he produced. 2015-01-28T05:02:12Z drmeister shakes his fist and yells "Muchnick"! 2015-01-28T05:02:24Z enitiz quit (Ping timeout: 276 seconds) 2015-01-28T05:02:41Z drmeister: See, that was kind of what I was thinking. You had a variable name object with a slot called "identity" or something. 2015-01-28T05:02:59Z drmeister: Whatever. I get it. 2015-01-28T05:03:00Z beach: Yes, I understand. Not so. 2015-01-28T05:03:57Z ehaliewicz joined #lisp 2015-01-28T05:03:59Z drmeister: Ok here: http://imgur.com/YymgcN9 2015-01-28T05:04:22Z drmeister: What is the blue ellipse at the bottom labeled "V"? 2015-01-28T05:04:33Z beach: Multiple values. 2015-01-28T05:04:48Z beach: F->M means fixed-to-multiple. 2015-01-28T05:05:10Z drmeister: F->M takes one return value and sets up the multiple-values with that one value? 2015-01-28T05:05:27Z beach: F->M takes N values and turn them into multiple values. 2015-01-28T05:05:46Z drmeister: F->M has N inputs? 2015-01-28T05:05:49Z beach: Yes. 2015-01-28T05:05:52Z drmeister: Got it. 2015-01-28T05:06:16Z drmeister: Orange filled boxes - constants? 2015-01-28T05:06:27Z beach: load-time-value-input. 2015-01-28T05:06:45Z beach: It contains a form to be evaluated at load time. 2015-01-28T05:07:06Z beach: Constants turn into load-time-value-inputs, but load-time-value also turns into load-time-value-input. 2015-01-28T05:07:53Z beach: A constant can be thought of as being a load-time-value with a constant form. 2015-01-28T05:08:21Z drmeister: Got it. 2015-01-28T05:08:26Z drmeister: (hir-form '(let ((y 100)) #'(lambda (x) (list x y)))) 2015-01-28T05:08:28Z drmeister: Closures 2015-01-28T05:08:59Z drmeister: http://imgur.com/CqJtXNg 2015-01-28T05:09:28Z drmeister: Create cell, Write cell, Fetch 2015-01-28T05:09:37Z drmeister: Read cell 2015-01-28T05:09:42Z beach: Yes. Cells for storing the captured variables. 2015-01-28T05:09:45Z drmeister: Could you describe how those work? 2015-01-28T05:10:04Z beach: In SICL, they are CONS, CAR, RPLACA. 2015-01-28T05:10:09Z gingerale joined #lisp 2015-01-28T05:10:12Z beach: But I can't decide how you want to do it. 2015-01-28T05:10:29Z nyef: These are your closure value cells? 2015-01-28T05:10:35Z beach: Notice how G2324 is now used. 2015-01-28T05:10:42Z beach: nyef: Yes. 2015-01-28T05:10:51Z drmeister: I know what I do now - I'm trying to figure out how to map this onto that. 2015-01-28T05:11:14Z nyef: drmeister: What do you do now for closed-over value storage? 2015-01-28T05:11:35Z drmeister: I store them in arrays on the heap 2015-01-28T05:11:39Z beach: drmeister: Fetch takes a static environment and an index and returns the cell for that closed-over variable. 2015-01-28T05:11:43Z heurist` joined #lisp 2015-01-28T05:11:51Z drmeister: G2324 looks like it could be one of those arrays. 2015-01-28T05:12:07Z drmeister: That sounds like what I need. 2015-01-28T05:12:27Z beach: Sounds like it, yes. 2015-01-28T05:12:30Z drmeister: What is Read cell doing that Fetch didn't do? 2015-01-28T05:12:50Z beach: FETCH fetches the cell from the environment, READ reads the contents of the cell. 2015-01-28T05:13:09Z beach: That way, the cell itself is subject to register allocation. 2015-01-28T05:13:11Z vydd joined #lisp 2015-01-28T05:13:24Z drmeister: Can a cell have more than one slot? It would appear so otherwise why the 0 input to Fetch? 2015-01-28T05:13:32Z drmeister: Hang on, trying. 2015-01-28T05:13:36Z beach: A call can have only one slot. 2015-01-28T05:13:53Z beach: The 0 argument to fetch is the index of the cell in the static environment. 2015-01-28T05:14:47Z heurist quit (Ping timeout: 256 seconds) 2015-01-28T05:15:06Z beach: Notice that read-cell only takes the cell as its input. 2015-01-28T05:15:14Z drmeister: What constitutes a "cell"? What does a "cell" store? 2015-01-28T05:15:25Z beach: The value of the closed-over variable. 2015-01-28T05:15:33Z drmeister: My cells store an array of pointers and a pointer to the next "cell" 2015-01-28T05:15:53Z Bike: beach's cells are more like the pointers than like an array. they're a common thing in uh ml probably. 2015-01-28T05:15:58Z drmeister: Mine are called "activation frames" 2015-01-28T05:16:04Z beach: drmeister: No. 2015-01-28T05:16:15Z beach: drmeister: That would be what I call "static environment". 2015-01-28T05:16:20Z Bike: if the function closed over more than one variable there'd be more than one cell. 2015-01-28T05:16:31Z beach: drmeister: FETCH fetches one cell from the static environment. 2015-01-28T05:16:41Z beach: drmeister: What Bike says. 2015-01-28T05:17:55Z vydd quit (Ping timeout: 265 seconds) 2015-01-28T05:18:23Z drmeister: If a cell is the value of a closed over value then what does passing 1 as the second argument to Fetch do to the cell? 2015-01-28T05:18:24Z kapil__ joined #lisp 2015-01-28T05:18:37Z drmeister: I also see that "enclose" takes as arguments both cells. 2015-01-28T05:18:39Z Bike: You mean 0? 2015-01-28T05:18:59Z Bike: The cell isn't the value of a closed over value, it's a place the value can be in. 2015-01-28T05:19:11Z beach: drmeister: Fetch doesn't do anything to the cell. It does something to the static environment, namely it fetches one cell from the static environment. 2015-01-28T05:20:31Z Bike: like beach said: create cell = (lambda (value) (cons value nil)), write cell = (lambda (cell value) (setf (car cell) value)), read cell = (lambda (cell) (car cell)) (hopefully i understand write cell well enough) 2015-01-28T05:20:48Z Bike: Then the closure environment is just an array of cells (conses) and fetch is just an svref. 2015-01-28T05:20:55Z beach: Yes. 2015-01-28T05:20:58Z beach: Correct. 2015-01-28T05:22:05Z beach: drmeister: Again, a cell is the storage for one single closed-over variable. 2015-01-28T05:22:10Z GGMethos quit (Quit: WeeChat 1.0.1) 2015-01-28T05:23:41Z drmeister: Is there any concept of static environments being linked to each other? Or are they always one vector of cells? 2015-01-28T05:24:15Z beach: drmeister: A few weeks ago, we agreed that doing it the way you do it now will retain objects that should not be retained. 2015-01-28T05:24:49Z beach: drmeister: What Cleavir does, does not have to be compatible with what Clasp does. This entire HIR program is autonomous, so the way closed-over variables are handled does not have to be the same as the rest of Clasp. 2015-01-28T05:24:58Z beach: drmeister: If you want the rest of Clasp to leak memory, that's fine. 2015-01-28T05:25:07Z drmeister: I think you agreed. I was probably staring blankly into space. 2015-01-28T05:25:30Z drmeister: I don't understand what objects would be retained. 2015-01-28T05:26:11Z drmeister: I'm trying to be funny by the way wrt "staring yadda yadda". 2015-01-28T05:26:26Z beach: drmeister: (let ((x huge-object) (y 10)) (lambda () (bla y))) 2015-01-28T05:26:27Z drmeister: I'm reading and processing what you just said. 2015-01-28T05:26:48Z beach: drmeister: If you link the environments, x will be retained. 2015-01-28T05:27:14Z drmeister: Oh yeah - I get that. 2015-01-28T05:27:35Z beach: drmeister: So Cleavir only puts y in a cell in the static environment. 2015-01-28T05:27:44Z gingerale quit (Ping timeout: 245 seconds) 2015-01-28T05:28:03Z drmeister: Ok, I think I see. We can do environments differently here because they don't interact with environments compiled or interpreted by the rest of my code? 2015-01-28T05:28:09Z beach: Yes. 2015-01-28T05:28:38Z beach: If I were you, just do what Bike said. Implement the cells as conses. 2015-01-28T05:28:59Z beach: That's what I will do in SICL. 2015-01-28T05:29:03Z drmeister: Right, because the only thing that sees these environments is the code compiled by the compiler that is generating the environments. 2015-01-28T05:29:11Z beach: Yes. 2015-01-28T05:29:18Z heurist` is now known as heurist 2015-01-28T05:29:44Z drmeister: If they are implemented as CONSes then you have to follow linked list. Why not arrays? 2015-01-28T05:29:52Z beach: *sigh* 2015-01-28T05:30:06Z beach: drmeister: The ENVIRONMENT is an array. 2015-01-28T05:30:08Z drmeister winces 2015-01-28T05:30:31Z beach: the CELL is just an indirection with NIL in the CDR. 2015-01-28T05:31:05Z beach: drmeister: The cell is not the environment. 2015-01-28T05:31:20Z beach: drmeister: The cell is just storage for a single closed-over variable. 2015-01-28T05:31:27Z drmeister: Ok, why store the CDR at all? 2015-01-28T05:31:32Z Ethan- quit (Ping timeout: 245 seconds) 2015-01-28T05:31:46Z beach: drmeister: all CONS cells must have a CDR last time I looked. 2015-01-28T05:31:51Z drmeister: Sorry if I'm being really thick. 2015-01-28T05:31:54Z Bike: conses are just a way of doing it. cells conceptually don't have a cdr. 2015-01-28T05:32:03Z beach: If you don't like that, by all means create your own cdr-less cell. 2015-01-28T05:32:25Z beach: drmeister: I attribute your thickness to the hour of the day. 2015-01-28T05:33:01Z drmeister: Gah. You seem to be suggesting representing the static environment as an array of CONSes with NIL in the CDR Why not just represent the environment as an array of pointers then and save half the space? 2015-01-28T05:33:10Z Bike: You can! 2015-01-28T05:33:21Z Bike: Conses are just a way of explaining/implementing cells. Pointers are another implementation. 2015-01-28T05:33:33Z beach: drmeister: Like I said, by all means, create your own cdr-less cells. 2015-01-28T05:33:41Z Bike: I imagine that part of SICL is portable lisp, so not many pointers around. 2015-01-28T05:33:51Z beach: drmeister: Me, I don't have the energy to maintain too much special-case code. 2015-01-28T05:34:19Z beach: drmeister: The number of cells in a typical Common Lisp system will probably be around 100 or so. 2015-01-28T05:34:42Z jlongster joined #lisp 2015-01-28T05:35:24Z beach: drmeister: In your array of pointers, what does the pointer point to? 2015-01-28T05:36:25Z drmeister: Objects on the heap. 2015-01-28T05:36:27Z beach: drmeister: You can't do it that way without retaining dead values. You must be able to manipulate the cells individually. You also want to do that so that the cells can be subject to register allocation. 2015-01-28T05:37:02Z Guthur joined #lisp 2015-01-28T05:37:11Z drmeister: Well, let me get this straight. 2015-01-28T05:37:20Z drmeister: Your "Create cell" is CONS 2015-01-28T05:37:27Z beach: Yes. 2015-01-28T05:37:36Z beach: Or rather (list x) 2015-01-28T05:37:53Z pranavrc joined #lisp 2015-01-28T05:37:59Z drmeister: In this example: (hir-form '(let ((y 100) (z 200) ) #'(lambda (x) (list x y z)))) 2015-01-28T05:38:22Z drmeister: http://imgur.com/a2APotH 2015-01-28T05:38:54Z resttime quit (Quit: resttime) 2015-01-28T05:38:59Z drmeister: You have two "Create cell" instructions that do two CONSes that can be anywhere in memory. 2015-01-28T05:39:10Z beach: Yes. 2015-01-28T05:39:14Z beach: One for y and one for z. 2015-01-28T05:39:43Z drmeister: Right, the "enclose" instruction is given those two CONSes as argument 1 and 2 and does what to them? 2015-01-28T05:39:52Z Bike: makes the environment/array 2015-01-28T05:40:04Z Bike: and stores it with the function to make a closure, seems like 2015-01-28T05:40:05Z beach: ... and stores it in the closure. 2015-01-28T05:40:17Z drmeister: So it copies the CAR of each of them into an array of two CONSes that are adjacent to each other in memory? 2015-01-28T05:40:25Z beach: NOOOOOOOOOOOOOOOOOOOO 2015-01-28T05:40:40Z beach: It stores the cells in the array. 2015-01-28T05:40:40Z drmeister: Now I'm getting somewhere. 2015-01-28T05:41:05Z drmeister: It stores pointers to the CONSes in the array. 2015-01-28T05:41:11Z beach: Yes. 2015-01-28T05:41:17Z drmeister: Ah, I see. 2015-01-28T05:41:20Z beach: The array contains cells. 2015-01-28T05:41:29Z beach: Cells can be implemented as cons cells. 2015-01-28T05:41:47Z Poenikatu joined #lisp 2015-01-28T05:42:40Z drmeister: So you can have multiple enclose instructions that take the same CONSes and generate multiple arrays that are closed over by multiple functions and they all operate on the same CONSes. 2015-01-28T05:42:56Z beach: Yes. 2015-01-28T05:43:08Z beach: And each enclose instruction might take a different subset of the cells. 2015-01-28T05:43:14Z beach: That's how values are not retained. 2015-01-28T05:43:28Z Bike: which you need, for example, in (let (x) (list (lambda (x) x) (lambda (y) (setf x y)))) 2015-01-28T05:43:38Z drmeister: I see. 2015-01-28T05:44:07Z Bike: gotta have the same cell for x, even though a more complicated example might have different closure environments for the different functions 2015-01-28T05:44:35Z drmeister: Bike, so the first lambda doesn't need any environment but the second one does? 2015-01-28T05:44:44Z Bike: Oh, oops. 2015-01-28T05:44:49Z Bike: I meant (lambda () x), sorry. 2015-01-28T05:45:19Z drmeister: Ok, I get it. 2015-01-28T05:45:27Z beach: *whew* 2015-01-28T05:45:41Z Bike: those lambdas could be made into a different definition of cells, incidentally 2015-01-28T05:45:53Z Poenikatu: I have pasted a small function at http://pase.lisp.org/145423. Could somebody cast an eye over it and tell me why it causes the SLIME process to exit? 2015-01-28T05:46:22Z beach: "paste" 2015-01-28T05:46:25Z Bike: link doesn't work, even with pase/paste 2015-01-28T05:46:47Z Poenikatu: Sorry. http://paste.lisp.org/145423 2015-01-28T05:47:05Z beach: Still doesn't work. 2015-01-28T05:47:26Z drmeister: beach: Then everything in a hexagon can be in a register? 2015-01-28T05:47:34Z beach: drmeister: Yes. 2015-01-28T05:47:56Z drmeister: Well, this is considerably more advanced over what we were talking about a few months ago - good job! 2015-01-28T05:48:00Z beach: Boy, I am so glad I thought of doing the Graphviz output. 2015-01-28T05:48:01Z Poenikatu: http://paste.lisp.org/+347J 2015-01-28T05:48:20Z beach: drmeister: Me? Thanks. 2015-01-28T05:48:38Z drmeister: beach: Heck yeah! Those graphs are very illuminating. 2015-01-28T05:48:58Z drmeister: beach: Yes you, good job. 2015-01-28T05:49:10Z beach: *blush* thanks! 2015-01-28T05:49:16Z Bike: i think gtk has some weirdness about executing in the main thread, couldn't tell you more though 2015-01-28T05:49:31Z zRecursive left #lisp 2015-01-28T05:49:32Z shaungilchrist quit (Ping timeout: 245 seconds) 2015-01-28T05:49:43Z Poenikatu: Is it because I try to make the gtk-text-view non-editable? 2015-01-28T05:50:15Z beach: drmeister: The advantage of this discussion is also that HIR was exposed to scrutiny by Bike and nyef, and they don't seem to have any major objections. That's a good sign. 2015-01-28T05:50:32Z Bike: really have no idea. anything in *inferior-lisp*? 2015-01-28T05:50:40Z drmeister: beach: Are the orange boxes (load-time-values) only represented as inputs to instructions? They aren't instructions themselves? 2015-01-28T05:50:50Z beach: Correct. 2015-01-28T05:51:31Z beach: drmeister: In the file compiler, the forms in those things would have to be compiled as well. 2015-01-28T05:51:35Z drmeister: light green ellipses (input to Fetch) those are raw integers? 2015-01-28T05:51:43Z beach: immediate inputs, yes. 2015-01-28T05:51:46Z Poenikatu: Bike: No *inferior-lisp*. slime-events has nothing interesting 2015-01-28T05:52:20Z nyef: Sorry, wasn't paying attention. Too busy dealing with a set of register dumps from some uncooperative piece of hardware. 2015-01-28T05:52:59Z drmeister: If you've made the determination that everything in a hexagon can be a register, what about SSA and PHI nodes? 2015-01-28T05:53:19Z beach: drmeister: You should be able to convert the entire thing to SSA. 2015-01-28T05:53:56Z slyrus joined #lisp 2015-01-28T05:54:16Z Poenikatu: Bike: (write-string "\n" :repl-result) 2015-01-28T05:54:48Z Poenikatu: Bike: (return :ok nil 12) 2015-01-28T05:55:08Z beach: drmeister: SSA is best done after conversion to MIR where address calculations are exposed. 2015-01-28T05:55:43Z drmeister: Ok, this is why I'll have to use alloca 2015-01-28T05:55:54Z drmeister: (hir-form '(let ((x 100)) (tagbody top (setq x (1- x)) (if (eql x 0) (go done)) (go top) done))) 2015-01-28T05:56:17Z drmeister: http://imgur.com/GmajmGC 2015-01-28T05:57:21Z drmeister: I'll just represent every hexagon as an alloca and let mem2reg sort it out. 2015-01-28T05:57:38Z beach: Sounds good. 2015-01-28T05:57:58Z Poenikatu quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2015-01-28T05:58:30Z Poenikatu joined #lisp 2015-01-28T05:58:34Z drmeister: This looks very straightforward - thank you. It's much less mysterious than it was even a few hours ago. 2015-01-28T05:58:53Z Poenikatu quit (Changing host) 2015-01-28T05:58:53Z Poenikatu joined #lisp 2015-01-28T05:58:53Z beach: drmeister: I am glad you think so. :) 2015-01-28T05:59:51Z drmeister: Ok, I'll sleep on this and get to work on it tomorrow and the next couple of days. 2015-01-28T06:00:01Z drmeister: Thank you beach and bike - that was extremely helpful. 2015-01-28T06:00:03Z beach: drmeister: Sleep well. 2015-01-28T06:00:06Z Bike: night 2015-01-28T06:00:25Z beach: Yeah, thanks Bike! 2015-01-28T06:01:18Z nyef: Oh! Sleep. Great idea. 2015-01-28T06:01:21Z nyef quit (Quit: G'night all) 2015-01-28T06:01:28Z beach vanishes for half an hour or so. 2015-01-28T06:05:08Z tsumetai` quit (Read error: Connection reset by peer) 2015-01-28T06:06:26Z tsumetai joined #lisp 2015-01-28T06:08:04Z theos quit (Read error: Connection reset by peer) 2015-01-28T06:09:07Z theos joined #lisp 2015-01-28T06:10:13Z BlueRavenGT quit (Ping timeout: 264 seconds) 2015-01-28T06:11:14Z sheilong quit (Remote host closed the connection) 2015-01-28T06:13:58Z vydd joined #lisp 2015-01-28T06:14:39Z mvilleneuve joined #lisp 2015-01-28T06:17:53Z OrangeShark joined #lisp 2015-01-28T06:18:15Z vydd quit (Ping timeout: 256 seconds) 2015-01-28T06:21:12Z pjb: - 2015-01-28T06:23:17Z mvilleneuve quit (Quit: This computer has gone to sleep) 2015-01-28T06:24:16Z frkout_ quit (Remote host closed the connection) 2015-01-28T06:26:53Z nell quit (Quit: WeeChat 1.2-dev) 2015-01-28T06:28:10Z frkout joined #lisp 2015-01-28T06:30:57Z yeticry quit (Ping timeout: 246 seconds) 2015-01-28T06:31:05Z beach: Time to get to work! 2015-01-28T06:31:08Z beach left #lisp 2015-01-28T06:32:15Z yeticry joined #lisp 2015-01-28T06:33:25Z Khisanth quit (Ping timeout: 255 seconds) 2015-01-28T06:34:21Z Khisanth joined #lisp 2015-01-28T06:38:25Z Grue` quit (Ping timeout: 264 seconds) 2015-01-28T06:39:44Z manuel__ quit (Quit: manuel__) 2015-01-28T06:39:48Z pt1 joined #lisp 2015-01-28T06:40:56Z ivan\ quit (Read error: Connection reset by peer) 2015-01-28T06:41:05Z ivan\ joined #lisp 2015-01-28T06:41:21Z Poenikatu left #lisp 2015-01-28T06:41:42Z JokesOnYou77 quit (Ping timeout: 272 seconds) 2015-01-28T06:43:12Z hvxgr quit (Ping timeout: 245 seconds) 2015-01-28T06:45:00Z GGMethos joined #lisp 2015-01-28T06:45:01Z pt1 quit (Remote host closed the connection) 2015-01-28T06:47:37Z Cymew joined #lisp 2015-01-28T06:49:04Z mrSpec joined #lisp 2015-01-28T06:49:10Z theseb quit (Ping timeout: 255 seconds) 2015-01-28T06:52:25Z echo-area quit (Remote host closed the connection) 2015-01-28T06:54:03Z JokesOnYou77 joined #lisp 2015-01-28T06:55:05Z MutSbeta joined #lisp 2015-01-28T06:56:47Z oleo quit (Quit: Verlassend) 2015-01-28T07:00:34Z echo-area joined #lisp 2015-01-28T07:05:04Z xificurC joined #lisp 2015-01-28T07:05:12Z Karl_Dscc joined #lisp 2015-01-28T07:14:09Z hvxgr joined #lisp 2015-01-28T07:14:41Z vydd joined #lisp 2015-01-28T07:15:34Z vdamewood joined #lisp 2015-01-28T07:15:51Z pranavrc quit (Read error: No route to host) 2015-01-28T07:16:32Z harish quit (Ping timeout: 245 seconds) 2015-01-28T07:16:33Z pranavrc joined #lisp 2015-01-28T07:19:12Z cluck quit (Read error: Connection reset by peer) 2015-01-28T07:19:33Z vydd quit (Ping timeout: 276 seconds) 2015-01-28T07:20:39Z Cymew quit (Ping timeout: 246 seconds) 2015-01-28T07:25:01Z MutSbeta quit (Ping timeout: 252 seconds) 2015-01-28T07:27:58Z Beetny joined #lisp 2015-01-28T07:28:04Z Karl_Dscc quit (Remote host closed the connection) 2015-01-28T07:29:42Z yaewa joined #lisp 2015-01-28T07:30:53Z moei quit (Ping timeout: 240 seconds) 2015-01-28T07:32:53Z pt1 joined #lisp 2015-01-28T07:35:24Z zRecursive joined #lisp 2015-01-28T07:36:01Z OrangeShark quit (Quit: Leaving) 2015-01-28T07:37:41Z antonv joined #lisp 2015-01-28T07:37:54Z innertracks quit (Quit: innertracks) 2015-01-28T07:40:47Z mega1: wow, lz4 is really good 2015-01-28T07:41:09Z nopf joined #lisp 2015-01-28T07:41:11Z mega1: 0.5s for sbcl to start up and exit with no compression on my laptop 2015-01-28T07:41:22Z mega1: 0.1s with lz4 compressed core 2015-01-28T07:42:05Z ggole joined #lisp 2015-01-28T07:42:30Z MutSbeta joined #lisp 2015-01-28T07:43:09Z zRecursive left #lisp 2015-01-28T07:44:10Z mishoo joined #lisp 2015-01-28T07:45:44Z Cymew joined #lisp 2015-01-28T07:46:39Z frkout quit (Read error: Connection reset by peer) 2015-01-28T07:46:56Z frkout joined #lisp 2015-01-28T07:48:13Z Krystof joined #lisp 2015-01-28T07:50:38Z frkout_ joined #lisp 2015-01-28T07:52:03Z billitch joined #lisp 2015-01-28T07:54:39Z frkout quit (Ping timeout: 276 seconds) 2015-01-28T07:56:10Z billitch quit (Remote host closed the connection) 2015-01-28T07:56:23Z jasom joined #lisp 2015-01-28T08:00:39Z Karl_Dscc joined #lisp 2015-01-28T08:01:21Z d4ryus___ joined #lisp 2015-01-28T08:02:17Z hekmek joined #lisp 2015-01-28T08:03:00Z hekmek quit (Read error: Connection reset by peer) 2015-01-28T08:04:27Z d4ryus quit (Ping timeout: 245 seconds) 2015-01-28T08:05:11Z DalekBaldwin joined #lisp 2015-01-28T08:05:59Z Shinmera joined #lisp 2015-01-28T08:06:38Z Shinmera: jasom: That was a cheap joke on behalf of a game called 'Heavy Rain' 2015-01-28T08:07:10Z smokeink joined #lisp 2015-01-28T08:07:40Z cadadar joined #lisp 2015-01-28T08:14:09Z ehaliewicz quit (Ping timeout: 252 seconds) 2015-01-28T08:14:14Z jackdaniel: http://ix.io/g0N/common-lisp <- rfc /did it as exercise, therefore no context/ 2015-01-28T08:15:28Z vydd joined #lisp 2015-01-28T08:16:44Z smokeink quit (Read error: Connection reset by peer) 2015-01-28T08:16:47Z mrcom quit (Quit: Leaving) 2015-01-28T08:18:28Z smokeink joined #lisp 2015-01-28T08:18:56Z angavrilov joined #lisp 2015-01-28T08:20:28Z pjb: jackdaniel: in macros, it's often useful to use a more functional style: http://paste.lisp.org/+347K 2015-01-28T08:20:43Z vydd quit (Ping timeout: 272 seconds) 2015-01-28T08:21:32Z meiji11 quit (Remote host closed the connection) 2015-01-28T08:21:43Z ehaliewicz joined #lisp 2015-01-28T08:24:07Z psy_ quit (Quit: Leaving) 2015-01-28T08:28:13Z flash-- quit (Ping timeout: 264 seconds) 2015-01-28T08:30:47Z mvilleneuve joined #lisp 2015-01-28T08:33:22Z pt1_ joined #lisp 2015-01-28T08:34:20Z stardiviner quit (Quit: Weird in coding now, or make love, only two things push me away from IRC.) 2015-01-28T08:34:35Z pt1_ quit (Remote host closed the connection) 2015-01-28T08:34:51Z pt1 quit (Read error: No route to host) 2015-01-28T08:35:02Z pt1 joined #lisp 2015-01-28T08:36:30Z devon joined #lisp 2015-01-28T08:38:47Z jackdaniel: pjb: thanks 2015-01-28T08:41:08Z Grue`` joined #lisp 2015-01-28T08:41:15Z intinig joined #lisp 2015-01-28T08:42:50Z defaultxr quit (Quit: gnight) 2015-01-28T08:43:06Z zadock joined #lisp 2015-01-28T08:44:13Z zadock quit (Remote host closed the connection) 2015-01-28T08:44:26Z billitch joined #lisp 2015-01-28T08:45:16Z intinig quit (Ping timeout: 255 seconds) 2015-01-28T08:47:47Z splittist: What an exciting time to be a lisper! 2015-01-28T08:48:00Z arenz joined #lisp 2015-01-28T08:48:02Z ivan\ quit (Read error: Connection reset by peer) 2015-01-28T08:48:11Z ivan\ joined #lisp 2015-01-28T08:49:57Z cadadar quit (Quit: Leaving.) 2015-01-28T08:50:00Z cadadar1 joined #lisp 2015-01-28T08:51:43Z Cymew quit (Ping timeout: 240 seconds) 2015-01-28T08:51:45Z Longlius quit (Quit: Leaving) 2015-01-28T08:52:00Z billitch quit (Ping timeout: 246 seconds) 2015-01-28T08:52:31Z JuanDaugherty quit (Remote host closed the connection) 2015-01-28T08:52:46Z cadadar1: splittist: Because 2015 will be the year of the Lisp Desktop? 2015-01-28T08:57:29Z harish joined #lisp 2015-01-28T08:59:27Z mvilleneuve quit (Ping timeout: 264 seconds) 2015-01-28T09:02:10Z ggole quit (Ping timeout: 264 seconds) 2015-01-28T09:04:21Z antonv quit (Ping timeout: 244 seconds) 2015-01-28T09:07:15Z rtra quit (Ping timeout: 265 seconds) 2015-01-28T09:07:41Z DalekBaldwin quit (Ping timeout: 256 seconds) 2015-01-28T09:08:37Z Aranshada|W quit (Ping timeout: 245 seconds) 2015-01-28T09:10:20Z wasamasa: no, because someone else delivered a lisp OS 2015-01-28T09:12:35Z redeemed joined #lisp 2015-01-28T09:12:46Z redeemed` joined #lisp 2015-01-28T09:12:51Z redeemed` quit (Client Quit) 2015-01-28T09:13:25Z rtra joined #lisp 2015-01-28T09:14:05Z cadadar1: I was referring to that ;) At least tried to... Yeah, I'm also amazed. I'm only starting off writing my own small CL tool and seeing froggey coming up with his OS is really inspirational 2015-01-28T09:16:09Z vydd joined #lisp 2015-01-28T09:18:06Z nostoi joined #lisp 2015-01-28T09:18:30Z mvilleneuve joined #lisp 2015-01-28T09:19:24Z splittist: Yeah - all that! New (and newly released) compilers. An OS. A compiler construction kit. qtools... 2015-01-28T09:19:49Z intinig joined #lisp 2015-01-28T09:19:52Z splittist: Perhaps, like climbing Everest, or running a sub-4 minute mile, once someone has done it many more will. 2015-01-28T09:20:31Z vydd quit (Ping timeout: 252 seconds) 2015-01-28T09:21:31Z fridim_ joined #lisp 2015-01-28T09:22:30Z mvilleneuve_ joined #lisp 2015-01-28T09:22:31Z splittist: The thought of walking around with a selection of Lisp Machines on a USB stick is interesting. "Hmm. This problem looks hard. Let me just plug this in..." 2015-01-28T09:24:32Z nand1 joined #lisp 2015-01-28T09:24:52Z mvilleneuve quit (Ping timeout: 245 seconds) 2015-01-28T09:26:33Z jumblerg quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-01-28T09:28:07Z ehaliewicz quit (Ping timeout: 244 seconds) 2015-01-28T09:30:39Z theos quit (Ping timeout: 264 seconds) 2015-01-28T09:32:09Z mhd_ quit (Quit: Textual IRC Client: www.textualapp.com) 2015-01-28T09:32:46Z Karl_Dscc quit (Remote host closed the connection) 2015-01-28T09:34:43Z protist: splittist: I would like a lisp OS that has enough compatibility etc for me to run the programs I expect and not need a virtual machien 2015-01-28T09:34:46Z protist: machine* 2015-01-28T09:34:53Z harish quit (Ping timeout: 256 seconds) 2015-01-28T09:35:07Z protist: splittist: I would want to just run on the Lisp OS, no plugging in a usb 2015-01-28T09:35:24Z zacharias quit (Ping timeout: 246 seconds) 2015-01-28T09:35:37Z protist: splittist: right now I don't have a windows partition, I wiped it off long ago and just run linux...I would like to do the same some day with a Lisp OS 2015-01-28T09:37:15Z fikusz quit (Ping timeout: 264 seconds) 2015-01-28T09:40:01Z Karl_Dscc joined #lisp 2015-01-28T09:40:17Z schjetne quit (Quit: ZNC - http://znc.in) 2015-01-28T09:41:04Z pranavrc quit (Ping timeout: 245 seconds) 2015-01-28T09:41:23Z sg|polyneikes joined #lisp 2015-01-28T09:41:45Z keen__________45 joined #lisp 2015-01-28T09:42:26Z schjetne joined #lisp 2015-01-28T09:44:27Z keen__________44 quit (Ping timeout: 264 seconds) 2015-01-28T09:50:58Z intinig quit 2015-01-28T09:52:51Z yeticry quit (Ping timeout: 264 seconds) 2015-01-28T09:53:35Z yeticry joined #lisp 2015-01-28T09:57:28Z pranavrc joined #lisp 2015-01-28T10:02:09Z frkout_ quit (Remote host closed the connection) 2015-01-28T10:02:35Z frkout joined #lisp 2015-01-28T10:05:18Z theos joined #lisp 2015-01-28T10:06:10Z k-dawg joined #lisp 2015-01-28T10:07:35Z zadock joined #lisp 2015-01-28T10:07:53Z psy_ joined #lisp 2015-01-28T10:08:59Z vydd joined #lisp 2015-01-28T10:13:31Z cadadar1 quit (Quit: Leaving.) 2015-01-28T10:17:03Z Mon_Ouie joined #lisp 2015-01-28T10:17:12Z kuzy000_ joined #lisp 2015-01-28T10:18:51Z robot-beethoven quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-01-28T10:19:16Z echo-area quit (Read error: Connection reset by peer) 2015-01-28T10:19:25Z nostoi quit (Quit: Verlassend) 2015-01-28T10:19:35Z ehu joined #lisp 2015-01-28T10:19:59Z krfantasy joined #lisp 2015-01-28T10:21:10Z Mon_Ouie quit (Client Quit) 2015-01-28T10:24:17Z ehu_ joined #lisp 2015-01-28T10:26:07Z Ukari joined #lisp 2015-01-28T10:26:27Z ehu quit (Ping timeout: 264 seconds) 2015-01-28T10:26:29Z Mon_Ouie joined #lisp 2015-01-28T10:26:29Z Mon_Ouie quit (Changing host) 2015-01-28T10:26:29Z Mon_Ouie joined #lisp 2015-01-28T10:27:44Z Harag joined #lisp 2015-01-28T10:29:04Z ehu_ quit (Ping timeout: 272 seconds) 2015-01-28T10:30:37Z gravicappa joined #lisp 2015-01-28T10:32:13Z ehu joined #lisp 2015-01-28T10:36:57Z nand1 quit (Ping timeout: 245 seconds) 2015-01-28T10:40:47Z Harag quit (Ping timeout: 265 seconds) 2015-01-28T10:41:03Z jlongster quit (Ping timeout: 276 seconds) 2015-01-28T10:44:49Z ehu quit (Ping timeout: 245 seconds) 2015-01-28T10:46:20Z zadock quit (Remote host closed the connection) 2015-01-28T10:46:47Z zadock joined #lisp 2015-01-28T10:49:01Z ivan\ quit (Read error: Connection reset by peer) 2015-01-28T10:49:10Z ivan\ joined #lisp 2015-01-28T10:49:57Z harish joined #lisp 2015-01-28T10:49:58Z ehu joined #lisp 2015-01-28T10:51:33Z zacharias joined #lisp 2015-01-28T10:53:35Z oldk joined #lisp 2015-01-28T10:53:44Z kcj quit (Read error: Connection reset by peer) 2015-01-28T10:53:49Z hellofunk quit (Remote host closed the connection) 2015-01-28T10:54:47Z ehu quit (Ping timeout: 256 seconds) 2015-01-28T10:57:10Z ehu joined #lisp 2015-01-28T11:01:12Z _Loic_ joined #lisp 2015-01-28T11:02:18Z Alfr joined #lisp 2015-01-28T11:04:04Z ehu quit (Read error: Connection reset by peer) 2015-01-28T11:04:09Z ehu_ joined #lisp 2015-01-28T11:06:43Z jlongster joined #lisp 2015-01-28T11:08:55Z ehu_ quit (Ping timeout: 265 seconds) 2015-01-28T11:09:03Z ehu joined #lisp 2015-01-28T11:11:47Z jlongster quit (Ping timeout: 256 seconds) 2015-01-28T11:13:24Z ehu quit (Ping timeout: 246 seconds) 2015-01-28T11:16:45Z yeticry quit (Remote host closed the connection) 2015-01-28T11:16:56Z ehu joined #lisp 2015-01-28T11:17:13Z yeticry joined #lisp 2015-01-28T11:18:29Z Jirachier quit (Ping timeout: 272 seconds) 2015-01-28T11:19:01Z Alfr quit (Quit: Leaving) 2015-01-28T11:19:12Z Jirachier joined #lisp 2015-01-28T11:21:40Z mvdwege joined #lisp 2015-01-28T11:25:03Z krfantasy quit (Remote host closed the connection) 2015-01-28T11:25:53Z intinig joined #lisp 2015-01-28T11:29:55Z yeticry quit (Ping timeout: 256 seconds) 2015-01-28T11:31:00Z yeticry joined #lisp 2015-01-28T11:32:04Z rotty joined #lisp 2015-01-28T11:32:11Z oldk quit (Ping timeout: 256 seconds) 2015-01-28T11:34:06Z fikusz joined #lisp 2015-01-28T11:34:53Z devon quit (Ping timeout: 240 seconds) 2015-01-28T11:39:46Z ehu_ joined #lisp 2015-01-28T11:40:46Z yeticry quit (Ping timeout: 255 seconds) 2015-01-28T11:40:56Z ehu quit (Read error: Connection reset by peer) 2015-01-28T11:41:40Z yeticry joined #lisp 2015-01-28T11:42:03Z vydd quit (Remote host closed the connection) 2015-01-28T11:45:29Z vanila joined #lisp 2015-01-28T11:47:09Z Karl_Dscc quit (Remote host closed the connection) 2015-01-28T11:48:57Z zhangyh26258 joined #lisp 2015-01-28T11:51:12Z ehu joined #lisp 2015-01-28T11:51:24Z ehu_ quit (Read error: Connection reset by peer) 2015-01-28T11:54:34Z vydd joined #lisp 2015-01-28T11:57:33Z Ethan- joined #lisp 2015-01-28T11:57:41Z urandom__ joined #lisp 2015-01-28T12:03:07Z vaporatorius joined #lisp 2015-01-28T12:03:27Z Anarch joined #lisp 2015-01-28T12:07:36Z jlongster joined #lisp 2015-01-28T12:10:10Z _Loic_ quit (Remote host closed the connection) 2015-01-28T12:10:22Z Denommus` joined #lisp 2015-01-28T12:11:40Z Denommus quit (Ping timeout: 272 seconds) 2015-01-28T12:12:12Z jlongster quit (Ping timeout: 246 seconds) 2015-01-28T12:15:01Z Denommus` quit (Ping timeout: 264 seconds) 2015-01-28T12:15:12Z dlowe joined #lisp 2015-01-28T12:15:41Z madmalik joined #lisp 2015-01-28T12:16:23Z ehu quit (Ping timeout: 256 seconds) 2015-01-28T12:17:52Z Ukari quit (Quit: Leaving.) 2015-01-28T12:18:35Z agumonkey quit (Read error: Connection reset by peer) 2015-01-28T12:18:47Z agumonkey_ joined #lisp 2015-01-28T12:19:53Z eudoxia joined #lisp 2015-01-28T12:24:02Z Karl_Dscc joined #lisp 2015-01-28T12:24:58Z MrWoohoo quit (Ping timeout: 272 seconds) 2015-01-28T12:26:08Z viaken: So, my understanding is people often (usually?) fiddle with things in the SLIME REPL, then move code they're happier with to a file. Is there a nicer way to move it over, rather than just copying/pasting? 2015-01-28T12:27:34Z gko__ quit (Quit: Connection closed for inactivity) 2015-01-28T12:30:32Z Shinmera: Definitions I usually just put into an extra buffer and use C-c C-c to compile them, the repl only to run whatever I need. 2015-01-28T12:30:52Z vanila: I have /usr/local/lib/libfixposix.so but SBCL cannot find it, how do you fix that? 2015-01-28T12:32:00Z viaken: coo 2015-01-28T12:33:36Z splittist: viaken: similarly, code goes in a buffer (or perhaps *slime-scratch*) and the repl is for testing/one-linering on the basis of that. 2015-01-28T12:33:55Z splittist: Although to be fair, my one-liners can grow pretty large .... (: 2015-01-28T12:34:36Z zhangyh26258 quit (Quit: Bye) 2015-01-28T12:34:38Z yeticry quit (Ping timeout: 244 seconds) 2015-01-28T12:34:52Z pjb: Actually, with slime you can use any buffer as a REPL with C-x C-e or C-u C-x C-e. So you can fiddle directly in the source files. It's almost like with the lighttable editor. 2015-01-28T12:35:26Z madmalik left #lisp 2015-01-28T12:35:43Z vanila: got it 2015-01-28T12:35:58Z yeticry joined #lisp 2015-01-28T12:36:26Z pranavrc quit 2015-01-28T12:37:12Z Natch quit (Remote host closed the connection) 2015-01-28T12:37:21Z viaken: With lisp, you can one-line anything, really. :) 2015-01-28T12:37:42Z viaken: pjb: This, I did not know. I'll have to check that out. 2015-01-28T12:38:43Z pjb: viaken: it's for this reason that the slime repl is actually an optional contribution. You can use slime without activating it. 2015-01-28T12:40:13Z intinig quit (Remote host closed the connection) 2015-01-28T12:40:19Z yeticry quit (Ping timeout: 244 seconds) 2015-01-28T12:40:43Z intinig joined #lisp 2015-01-28T12:41:34Z yeticry joined #lisp 2015-01-28T12:41:46Z viaken: Oh, I knew about C-x C-e. What's it do with C-u? 2015-01-28T12:42:32Z vanila: How do I make SBCL handle unicode? 2015-01-28T12:43:58Z pjb: viaken: it's to have the result inserted after the point. 2015-01-28T12:44:26Z viaken: Nifty 2015-01-28T12:44:38Z pjb: vanila: (setf SB-IMPL::*DEFAULT-EXTERNAL-FORMAT* :utf-8) perhaps. 2015-01-28T12:45:02Z vanila: thanks very much! 2015-01-28T12:45:38Z pjb: vanila: also, setting the environment variable: export LC_ALL=en_US.UTF-8 2015-01-28T12:46:12Z pjb: vanila: (check the posix spec for the overriding priority between the various LC_* variables and LANG). 2015-01-28T12:48:56Z intinig quit (Ping timeout: 246 seconds) 2015-01-28T12:48:58Z protist: pjb: wow that is useful! 2015-01-28T12:49:13Z resttime joined #lisp 2015-01-28T12:49:14Z protist: pjb: I kept using (aref "⍕" 0) etc haha 2015-01-28T12:49:26Z protist: pjb: at least in SBCL 2015-01-28T12:49:41Z intinig joined #lisp 2015-01-28T12:49:42Z dlowe: I typically only use the repl when I need to poke something into my program's standard input 2015-01-28T12:49:42Z manuel__ joined #lisp 2015-01-28T12:50:24Z Beetny quit (Ping timeout: 276 seconds) 2015-01-28T12:50:50Z pjb: Yes, you would use the REPL to try out interactive functions. 2015-01-28T12:52:30Z pjb: One thing is that when you use C-x C-e, it runs your expression in a different thread each time, and unfortunately there's no way to manage those threads with slime (that I know of), so if your expression takes a long time to run (or worse, an infinite), it may be a problem. (I have a kill-thread command that I run in the REPL to select and kill those threads). 2015-01-28T12:53:04Z ivan\ quit (Read error: Connection reset by peer) 2015-01-28T12:53:13Z ivan\ joined #lisp 2015-01-28T12:53:22Z Hache_ joined #lisp 2015-01-28T12:55:36Z harish quit (Ping timeout: 276 seconds) 2015-01-28T12:58:08Z ggole joined #lisp 2015-01-28T13:01:00Z cadadar joined #lisp 2015-01-28T13:01:42Z BlastHardcheese quit (Ping timeout: 272 seconds) 2015-01-28T13:02:15Z dfox quit (Ping timeout: 276 seconds) 2015-01-28T13:02:16Z BlastHardcheese joined #lisp 2015-01-28T13:04:38Z zadock quit (Remote host closed the connection) 2015-01-28T13:04:53Z CrazyWoods joined #lisp 2015-01-28T13:05:05Z zadock joined #lisp 2015-01-28T13:07:20Z vanila: froggey, I'm getting a guru meditation trying to boot the image I compiled, the ova works though - any ideas? 2015-01-28T13:07:39Z jlongster joined #lisp 2015-01-28T13:10:14Z manuel__ quit (Quit: manuel__) 2015-01-28T13:12:50Z jlongster quit (Ping timeout: 265 seconds) 2015-01-28T13:13:28Z enitiz joined #lisp 2015-01-28T13:17:15Z dfox joined #lisp 2015-01-28T13:18:16Z manuel__ joined #lisp 2015-01-28T13:20:21Z wasamasa: hahaha 2015-01-28T13:20:39Z wasamasa: putting an amiga error message into a lisp OS 2015-01-28T13:20:43Z pt1_ joined #lisp 2015-01-28T13:21:11Z pt1 quit (Read error: Connection reset by peer) 2015-01-28T13:21:54Z mvdwege quit (Remote host closed the connection) 2015-01-28T13:22:14Z MutSbeta quit (Quit: Leaving.) 2015-01-28T13:24:51Z profess quit (Ping timeout: 276 seconds) 2015-01-28T13:26:09Z enitiz quit (Ping timeout: 276 seconds) 2015-01-28T13:27:13Z ebrasca joined #lisp 2015-01-28T13:31:08Z attila_lendvai joined #lisp 2015-01-28T13:31:08Z attila_lendvai quit (Changing host) 2015-01-28T13:31:08Z attila_lendvai joined #lisp 2015-01-28T13:32:54Z genii joined #lisp 2015-01-28T13:33:35Z froggey: vanila: have you got enough memory in the VM? 256MB is the minimum, but I recommend 512MB just to be safe. get your VM to log COM1 somewhere and I'll have a look at the log later 2015-01-28T13:34:23Z froggey: I have to go for a while, but I'll be here in a few hours 2015-01-28T13:34:39Z vanila: http://lpaste.net/119389 here is COM1 2015-01-28T13:34:56Z vanila: yeah maybe if you're interested in fixing it msg me later on or so? :) 2015-01-28T13:35:02Z vanila: il try things in the meantime 2015-01-28T13:35:04Z |3b|: pjb: C-c C-b from a lisp buffer should interrupt the thread, or C-c C-x t lists all running threads and you can interrupt them from there (though there isn't any easy way to distinguish them if you have lots running, since they are just named "worker") 2015-01-28T13:36:40Z genii left #lisp 2015-01-28T13:41:26Z mutley89 joined #lisp 2015-01-28T13:41:29Z alexherbo2 quit (Quit: WeeChat 1.1.1) 2015-01-28T13:42:30Z Aranshada|W joined #lisp 2015-01-28T13:43:32Z pjb: |3b|: thanks. I need to study slime more. 2015-01-28T13:44:21Z |3b|: just have to watch out for confusing C-c C-b with C-c C-c (which interrupts in repl, but compiles/runs it again in lisp buffer) 2015-01-28T13:44:34Z tstc` quit (Ping timeout: 256 seconds) 2015-01-28T13:44:36Z profess joined #lisp 2015-01-28T13:44:38Z pjb: Yes, I have definitely tried C-c C-c. 2015-01-28T13:44:47Z tstc joined #lisp 2015-01-28T13:46:22Z |3b| supposes it is more accurate to say C-c C-c compiles/runs 'something', rather than suggesting it will run the same thing even if you moved the cursor in between 2015-01-28T13:49:50Z psy_ quit (Ping timeout: 272 seconds) 2015-01-28T13:51:54Z intinig quit (Remote host closed the connection) 2015-01-28T13:52:23Z intinig joined #lisp 2015-01-28T13:57:21Z antonv joined #lisp 2015-01-28T13:59:02Z askatasuna joined #lisp 2015-01-28T14:01:13Z intinig quit (Ping timeout: 256 seconds) 2015-01-28T14:01:36Z jumblerg joined #lisp 2015-01-28T14:04:03Z salv0 quit (Quit: Leaving.) 2015-01-28T14:04:20Z salv0 joined #lisp 2015-01-28T14:04:30Z intinig joined #lisp 2015-01-28T14:05:10Z xach quit (Input/output error) 2015-01-28T14:05:40Z _5kg quit (Ping timeout: 255 seconds) 2015-01-28T14:06:37Z mezzamood joined #lisp 2015-01-28T14:06:37Z _5kg joined #lisp 2015-01-28T14:07:35Z mezzamood: Checking in from a fresh build of Mezzano. This thing is great! 2015-01-28T14:07:37Z jlongster joined #lisp 2015-01-28T14:08:17Z antoszka: Built it yourself from sauce? 2015-01-28T14:08:30Z mood: antoszka: Yes 2015-01-28T14:10:52Z cadadar quit (Ping timeout: 240 seconds) 2015-01-28T14:11:28Z antoszka: Cool! 2015-01-28T14:11:53Z mezzamood quit (Ping timeout: 240 seconds) 2015-01-28T14:11:56Z cadadar joined #lisp 2015-01-28T14:12:14Z jlongster quit (Ping timeout: 246 seconds) 2015-01-28T14:12:35Z mood: And then it ran out of "store" 2015-01-28T14:12:36Z attila_lendvai quit (Quit: Leaving.) 2015-01-28T14:12:59Z nyef joined #lisp 2015-01-28T14:13:14Z EvW joined #lisp 2015-01-28T14:13:14Z nyef: G'morning all. 2015-01-28T14:14:38Z Denommus joined #lisp 2015-01-28T14:14:38Z Denommus quit (Changing host) 2015-01-28T14:14:38Z Denommus joined #lisp 2015-01-28T14:15:13Z Aranshada|W left #lisp 2015-01-28T14:15:54Z hiyosi joined #lisp 2015-01-28T14:16:28Z manuel__ quit (Quit: manuel__) 2015-01-28T14:16:46Z vanila: good morning 2015-01-28T14:17:06Z vanila: did you have an yissues with booting it? I built it ok but its throwing me a guru meditation after the boot menu 2015-01-28T14:18:29Z gravicappa quit (Remote host closed the connection) 2015-01-28T14:19:42Z vanila: my command is ok? qemu-img convert -f raw -O vmdk mezzano.image mezzano.vmdk 2015-01-28T14:20:55Z jumblerg quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-01-28T14:21:09Z psy_ joined #lisp 2015-01-28T14:22:43Z Guthur quit (Remote host closed the connection) 2015-01-28T14:22:59Z mood: vanila: I did the conversion like this: VBoxManage convertfromraw --format vmdk mezzano.image mezzano.vmdk 2015-01-28T14:24:18Z MutSbeta joined #lisp 2015-01-28T14:24:23Z vanila: thanks! Same bug so I think that the actual .image file I have is wrong in some way 2015-01-28T14:25:27Z Jesin quit (Quit: Leaving) 2015-01-28T14:28:20Z jumblerg joined #lisp 2015-01-28T14:30:13Z innertracks joined #lisp 2015-01-28T14:32:36Z emlow joined #lisp 2015-01-28T14:34:45Z innertracks quit (Ping timeout: 252 seconds) 2015-01-28T14:34:54Z ivan\ quit (Read error: Connection reset by peer) 2015-01-28T14:35:03Z ivan\ joined #lisp 2015-01-28T14:35:15Z bullone joined #lisp 2015-01-28T14:35:46Z innertracks joined #lisp 2015-01-28T14:36:20Z JuanDaugherty joined #lisp 2015-01-28T14:39:11Z mishoo quit (Ping timeout: 256 seconds) 2015-01-28T14:40:20Z mishoo joined #lisp 2015-01-28T14:41:19Z oleo joined #lisp 2015-01-28T14:45:56Z vanila: do you have to do anything special with the fileserver? 2015-01-28T14:46:01Z sunwukong joined #lisp 2015-01-28T14:46:13Z vanila: I didnt understand the purpose of that bti 2015-01-28T14:47:16Z mood: vanila: The file server just has to run. It allows the VM to load files from your filesystem 2015-01-28T14:47:49Z mood: vanila: in ipl.lisp you'll have to set the IP of the host and the directories to the appropriate folders. 2015-01-28T14:48:10Z vanila: oh! I think that's what I missed then, since the 'demo' doesn't do this 2015-01-28T14:48:28Z mood: vanila: But you (at least in your paste) haven't landed at the spot where it actually needs that yet 2015-01-28T14:49:07Z mood: vanila: The file server is needed to compile all of the applications and copy some files over, which, in the demo, had already happened 2015-01-28T14:49:19Z vanila: I see! Thank you 2015-01-28T14:52:53Z sunwukong quit (Ping timeout: 240 seconds) 2015-01-28T14:56:20Z sunwukong joined #lisp 2015-01-28T14:59:06Z trn quit (Ping timeout: 276 seconds) 2015-01-28T14:59:35Z hellofunk joined #lisp 2015-01-28T14:59:58Z sunwukong quit (Read error: Connection reset by peer) 2015-01-28T15:01:35Z manuel__ joined #lisp 2015-01-28T15:01:47Z EvW quit (Ping timeout: 265 seconds) 2015-01-28T15:02:55Z trn joined #lisp 2015-01-28T15:04:40Z BitPuffin joined #lisp 2015-01-28T15:04:49Z askatasuna quit (Ping timeout: 245 seconds) 2015-01-28T15:10:08Z innertracks quit (Quit: innertracks) 2015-01-28T15:12:03Z milosn_ joined #lisp 2015-01-28T15:12:33Z zeitue quit (Remote host closed the connection) 2015-01-28T15:12:44Z pt1 joined #lisp 2015-01-28T15:13:52Z pt1_ quit (Ping timeout: 240 seconds) 2015-01-28T15:14:45Z dlowe: |3b|: it'd be neat if slime were to name the threads after the expression being evaluated 2015-01-28T15:14:53Z dlowe: "slime eval: (defun foo ..." 2015-01-28T15:15:03Z dlowe: cut at x characters 2015-01-28T15:15:05Z hlavaty joined #lisp 2015-01-28T15:16:54Z Ethan- quit (Ping timeout: 245 seconds) 2015-01-28T15:17:03Z hardenedapple joined #lisp 2015-01-28T15:19:15Z askatasuna joined #lisp 2015-01-28T15:24:12Z sunwukong joined #lisp 2015-01-28T15:28:29Z splittist: dlowe: "slime eval: (defparamete" x 10 (: 2015-01-28T15:29:15Z theBlackDragon quit (Ping timeout: 246 seconds) 2015-01-28T15:29:26Z badkins joined #lisp 2015-01-28T15:30:42Z theBlackDragon joined #lisp 2015-01-28T15:31:28Z enitiz joined #lisp 2015-01-28T15:31:43Z enitiz quit (Read error: Connection reset by peer) 2015-01-28T15:32:09Z milosn_ quit (Remote host closed the connection) 2015-01-28T15:32:09Z milosn quit (Remote host closed the connection) 2015-01-28T15:33:14Z milosn joined #lisp 2015-01-28T15:34:12Z Soft quit (Ping timeout: 276 seconds) 2015-01-28T15:36:24Z smokeink quit (Quit: Leaving) 2015-01-28T15:37:22Z mishoo quit (Ping timeout: 245 seconds) 2015-01-28T15:39:15Z Vivitron quit (Ping timeout: 256 seconds) 2015-01-28T15:39:55Z EvW joined #lisp 2015-01-28T15:40:15Z dlowe: I was thinking at least 40 2015-01-28T15:41:02Z mishoo joined #lisp 2015-01-28T15:41:59Z Jirachier quit 2015-01-28T15:43:15Z ahungry_ joined #lisp 2015-01-28T15:45:48Z splittist: dlowe: indeed (: 2015-01-28T15:48:48Z Karl_Dscc quit (Remote host closed the connection) 2015-01-28T15:48:51Z Soft joined #lisp 2015-01-28T15:48:59Z Soft quit (Changing host) 2015-01-28T15:48:59Z Soft joined #lisp 2015-01-28T15:49:39Z mrSpec quit (Remote host closed the connection) 2015-01-28T15:49:41Z paradoja joined #lisp 2015-01-28T15:49:58Z mutley89 quit (Remote host closed the connection) 2015-01-28T15:51:58Z mrSpec joined #lisp 2015-01-28T15:58:54Z jtza8 joined #lisp 2015-01-28T16:03:18Z zadock quit (Quit: Leaving) 2015-01-28T16:03:20Z vdamewood quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2015-01-28T16:07:25Z slyrus quit (Read error: Connection reset by peer) 2015-01-28T16:07:38Z zadock joined #lisp 2015-01-28T16:07:53Z vanila: mood, can I ask what size mezzano.image is [268.4MB for me]? and the vmdk [18.4MB for me]? 2015-01-28T16:08:27Z pt1 quit (Ping timeout: 264 seconds) 2015-01-28T16:09:04Z nyef: 256M and 19M for me, respectively. I guess the vmdk is compressed? 2015-01-28T16:09:15Z slyrus joined #lisp 2015-01-28T16:09:39Z joneshf-laptop quit (Ping timeout: 264 seconds) 2015-01-28T16:09:57Z paradoja left #lisp 2015-01-28T16:11:14Z Lokathor quit (Ping timeout: 246 seconds) 2015-01-28T16:11:20Z ivan\ quit (Read error: Connection reset by peer) 2015-01-28T16:11:29Z ivan\ joined #lisp 2015-01-28T16:12:19Z gravicappa joined #lisp 2015-01-28T16:12:31Z k-dawg quit (Quit: This computer has gone to sleep) 2015-01-28T16:12:33Z vanila: alright, ty! 2015-01-28T16:12:50Z vanila: being larger than 256M might be a problem maybe 2015-01-28T16:12:58Z vanila troubleshooting 2015-01-28T16:15:59Z gingerale joined #lisp 2015-01-28T16:16:53Z mvilleneuve joined #lisp 2015-01-28T16:17:47Z mvilleneuve_ quit (Ping timeout: 245 seconds) 2015-01-28T16:18:29Z cadadar1 joined #lisp 2015-01-28T16:18:52Z cadadar quit (Ping timeout: 244 seconds) 2015-01-28T16:22:28Z gniourf quit (Ping timeout: 272 seconds) 2015-01-28T16:24:22Z jim8786453 joined #lisp 2015-01-28T16:24:58Z Jesin joined #lisp 2015-01-28T16:25:22Z nell joined #lisp 2015-01-28T16:26:49Z jlongster joined #lisp 2015-01-28T16:27:36Z scoofy joined #lisp 2015-01-28T16:27:49Z tiferet joined #lisp 2015-01-28T16:27:53Z tiferet: morning 2015-01-28T16:29:00Z tiferet: so based on some recommendations received here, I ordered a copy of gentle intro to common lisp 2015-01-28T16:29:21Z tiferet: (I'm new to programming outside of TSQL and bash scripts) 2015-01-28T16:29:29Z mutley89 joined #lisp 2015-01-28T16:29:39Z tiferet: It arrived this morning! I'm so excited :D can't wait to get home 2015-01-28T16:30:28Z tiferet: I was wondering - what REPL should I use? 2015-01-28T16:30:51Z tiferet: I have Windows and Linux and run Emacs (something I can load with SLIME?) 2015-01-28T16:30:51Z nyef: The "popular" setup is emacs + SLIME + either SBCL or CCL, apparently. 2015-01-28T16:31:16Z tiferet: Oh great! I'm halfway there at least 2015-01-28T16:31:21Z nyef: ... And you'll want to have Quicklisp installed, and that has an install helper for SLIME. 2015-01-28T16:31:31Z tiferet: Right. That was my next question 2015-01-28T16:31:36Z tiferet: What is quicklisp all about? 2015-01-28T16:32:07Z nyef: It's a library installation thing. 2015-01-28T16:32:20Z nyef: Maybe a module manager? Something like that. 2015-01-28T16:32:33Z EvW quit (Remote host closed the connection) 2015-01-28T16:32:36Z tiferet: oh! like #main or something? 2015-01-28T16:32:44Z EvW joined #lisp 2015-01-28T16:32:46Z nyef: I don't know what #main is. 2015-01-28T16:32:53Z nyef: Almost any other community might call it a "package manager", but "package" has a specific meaning to us. 2015-01-28T16:33:01Z jlongster quit (Ping timeout: 264 seconds) 2015-01-28T16:33:21Z tiferet: sorry. nevermind. I was thinking that was the primary library in C/C++ but I don't know anything 2015-01-28T16:33:32Z tiferet: nyef: oh! gotcha 2015-01-28T16:33:49Z nyef: Oh. In C/C++ the usual entry point for a program is a function called main. 2015-01-28T16:33:53Z tiferet: nyef: So you can load functionality into lisp? Libraries you can call and so on? 2015-01-28T16:34:08Z nyef: int main(char *argc[], int argv) 2015-01-28T16:34:11Z tiferet: thank you =) 2015-01-28T16:34:14Z jocuman joined #lisp 2015-01-28T16:34:23Z tiferet: ahhh 2015-01-28T16:34:29Z nyef: Yeah. There's a lot of stuff that's available via various libraries. 2015-01-28T16:34:48Z tiferet: very cool :D 2015-01-28T16:34:55Z phf: naggum had a rant, where he said something to the effect of people invent languages like markdown, because they don't understand nlp. does anybody have a link to that post handy? i'm failing to come up with the correct search keywords 2015-01-28T16:35:15Z gniourf joined #lisp 2015-01-28T16:35:24Z trnv2 joined #lisp 2015-01-28T16:35:30Z tiferet: nlp? 2015-01-28T16:35:37Z nyef: phf: I forget, where is Xach's naggum archive? 2015-01-28T16:35:50Z phf: nyef: http://www.xach.com/naggum/articles/ 2015-01-28T16:36:02Z phf: but it might've been on comp.emacs! 2015-01-28T16:36:07Z nyef: tiferet: From context, more likely to be "natural language programming" than "neuro-linguistic programming". 2015-01-28T16:36:19Z tiferet: phf: people post things other than binaries to usenet :O 2015-01-28T16:36:26Z nyef: ("natural language processing" is also another option.) 2015-01-28T16:36:45Z bullone quit (Quit: Connection closed for inactivity) 2015-01-28T16:36:46Z tiferet: nyef: Thanks :) 2015-01-28T16:37:29Z trn quit (Ping timeout: 265 seconds) 2015-01-28T16:38:09Z nyef: phf: 29 hits for "markup", dunno if any of them are what you're looking for. 2015-01-28T16:39:02Z tiferet: i wanted to read it too. I use markdown for little things 2015-01-28T16:39:13Z tiferet: "site:xach.com/naggum/articles nlp" yields only one article 2015-01-28T16:39:21Z jackdaniel: phf: if you find it, could you be kind enough to leave a memo for me? 2015-01-28T16:39:26Z Xach: tiferet: the naggum search is way faster than google 2015-01-28T16:39:27Z tiferet: http://www.xach.com/naggum/articles/3122207942635383@naggum.no.html 2015-01-28T16:39:31Z cluck joined #lisp 2015-01-28T16:39:37Z Xach: http://xach.com/naggum/articles/search?q=nlp 2015-01-28T16:39:50Z tiferet: Xach: thanks 2015-01-28T16:40:15Z phf: jackdaniel: will do 2015-01-28T16:40:22Z jackdaniel: thank you 2015-01-28T16:40:56Z sharkz joined #lisp 2015-01-28T16:41:25Z tiferet: Does everyone still use Gnus for newsreading? 2015-01-28T16:41:56Z wheelsucker joined #lisp 2015-01-28T16:41:57Z Shinmera: I use thunderbird. 2015-01-28T16:42:05Z nyef: ... still? I don't know that I ever did. 2015-01-28T16:42:50Z trnv2 is now known as trn 2015-01-28T16:42:58Z tiferet: Sorry I'm talking as if this is #emacs 2015-01-28T16:42:59Z ghard joined #lisp 2015-01-28T16:43:09Z jocuman quit (Quit: Textual IRC Client: www.textualapp.com) 2015-01-28T16:43:59Z Xach: I use gnus to read comp.lang.lisp 2015-01-28T16:44:44Z EvW quit (Ping timeout: 265 seconds) 2015-01-28T16:44:47Z LiamH joined #lisp 2015-01-28T16:44:50Z tiferet: Xach: :D 2015-01-28T16:49:41Z jocuman joined #lisp 2015-01-28T16:50:15Z jtza8 quit (Ping timeout: 276 seconds) 2015-01-28T16:51:30Z bullone joined #lisp 2015-01-28T16:51:54Z vanila: nyef, did you also manage to build mezzano? 2015-01-28T16:51:59Z vanila: (and run it) 2015-01-28T16:52:09Z tiferet: soo sbcl up and running 2015-01-28T16:52:12Z tiferet: woops 2015-01-28T16:52:13Z theseb joined #lisp 2015-01-28T16:52:17Z tiferet: i meant "woo" 2015-01-28T16:52:24Z tiferet: lol -_- 2015-01-28T16:52:47Z nyef: vanila: Yeah, didn't do too much with it yet, I'm sortof buried in another project right now. 2015-01-28T16:52:51Z tiferet: Can any of you recommend some lisp projects to look at? 2015-01-28T16:53:50Z jasom: tiferet: do you have an area of interest? 2015-01-28T16:54:44Z vanila: ok i don't want to distract you! 2015-01-28T16:54:47Z vanila: that's great though 2015-01-28T16:54:58Z vanila: my friend and I both built it but no lucking booting yet 2015-01-28T16:55:31Z tiferet: jasom: Pretty much everything. I'd just like exposure to some projects built using CL that I can look at. 2015-01-28T16:55:51Z tiferet: I did the trending search on github - found an operating system 2015-01-28T16:55:52Z LiamH quit (Ping timeout: 240 seconds) 2015-01-28T16:55:55Z tiferet: amazing! 2015-01-28T16:58:46Z tiferet: bbl 2015-01-28T16:58:51Z tiferet: thanks for everything guys 2015-01-28T16:59:37Z zacharias quit (Quit: WeeChat 1.1) 2015-01-28T16:59:55Z OrangeShark joined #lisp 2015-01-28T17:00:07Z badkins quit 2015-01-28T17:06:46Z jasom: Thanks to Orivej, sbcl will be getting optional lz4 support, which comes with 4x faster loading of compressed images versus zlib 2015-01-28T17:06:52Z redeemed quit (Quit: q) 2015-01-28T17:06:55Z askatasuna quit (Ping timeout: 252 seconds) 2015-01-28T17:07:36Z jasom: should hopefully help with all the people who complain about executable sizes on sbcl 2015-01-28T17:07:56Z Patzy quit (Ping timeout: 265 seconds) 2015-01-28T17:08:09Z bb010g quit (Quit: Connection closed for inactivity) 2015-01-28T17:08:21Z Patzy joined #lisp 2015-01-28T17:08:28Z mvilleneuve quit (Quit: This computer has gone to sleep) 2015-01-28T17:08:54Z mvilleneuve joined #lisp 2015-01-28T17:08:58Z sg|polyneikes quit (Quit: IRC for Sailfish 0.8) 2015-01-28T17:09:11Z mvilleneuve quit (Client Quit) 2015-01-28T17:10:20Z Xach: I think executable size is often a proxy for "i don't think lisp is any good" 2015-01-28T17:10:25Z Vivitron joined #lisp 2015-01-28T17:10:31Z mutley89 quit (Remote host closed the connection) 2015-01-28T17:10:33Z hlavaty quit (Read error: Connection reset by peer) 2015-01-28T17:10:59Z jasom: Xach: I suppose; kind of like "too many parens" 2015-01-28T17:12:01Z LiamH joined #lisp 2015-01-28T17:12:03Z slyrus quit (Ping timeout: 252 seconds) 2015-01-28T17:12:33Z mutley89 joined #lisp 2015-01-28T17:13:00Z cadadar1 quit (Quit: Leaving.) 2015-01-28T17:13:16Z Xach: right 2015-01-28T17:13:28Z eudoxia quit (Quit: Leaving) 2015-01-28T17:13:35Z Xach: i think smaller executables is a great thing and worth doing, but i don't know to what degree it will tip fence-sitters 2015-01-28T17:16:35Z bullone quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-01-28T17:17:57Z mutley89 quit (Read error: Connection reset by peer) 2015-01-28T17:18:10Z bullone joined #lisp 2015-01-28T17:18:22Z mood: vanila: My mezzano.image is only 30MB, the vmdk also 18MB 2015-01-28T17:18:27Z LiamH quit (Ping timeout: 246 seconds) 2015-01-28T17:18:39Z vanila: That's so odd 2015-01-28T17:18:57Z scoofy left #lisp 2015-01-28T17:20:52Z enitiz joined #lisp 2015-01-28T17:22:33Z bullone quit (Client Quit) 2015-01-28T17:23:26Z enitiz quit (Max SendQ exceeded) 2015-01-28T17:23:40Z _leb joined #lisp 2015-01-28T17:24:29Z Karl_Dscc joined #lisp 2015-01-28T17:25:13Z enitiz joined #lisp 2015-01-28T17:25:24Z mutley89 joined #lisp 2015-01-28T17:26:15Z Longlius joined #lisp 2015-01-28T17:26:49Z LiamH joined #lisp 2015-01-28T17:27:57Z Petit_Dejeuner_: I've never heard of someone trying to trim down the size of an executable outside of low level hackery. 2015-01-28T17:28:18Z pt1 joined #lisp 2015-01-28T17:28:55Z nyef: Petit_Dejeuner_: Low-level hackery like... compressing it and adding a header to do the decompression at start-up time? 2015-01-28T17:29:51Z askatasuna joined #lisp 2015-01-28T17:30:09Z Petit_Dejeuner_: I mean more like, "Oh, I have to build a program for this gameboy/computer on a chip/NES/retro computer and the executable can't be that big because I have so little memory." 2015-01-28T17:30:17Z shaungilchrist joined #lisp 2015-01-28T17:30:53Z Petit_Dejeuner_: When my web browsers eats up several gigs of memory, I don't think the executable size is the problem. 2015-01-28T17:30:58Z Petit_Dejeuner_: web browser* 2015-01-28T17:31:39Z jasom: Petit_Dejeuner_: this is more "WTF! why is a "Hello, World!" program 60MB 2015-01-28T17:32:13Z enitiz quit (Ping timeout: 252 seconds) 2015-01-28T17:32:47Z Petit_Dejeuner_: "60mb" Is it that bad? 2015-01-28T17:33:00Z nyef: Nevermind that an "Oh hell, world" is a LOUSY test for code density. 2015-01-28T17:33:18Z cadadar joined #lisp 2015-01-28T17:34:01Z Petit_Dejeuner_: I mean, it's not like the size goes up when I write complex programs, right? Whatever the size is for the "Hello, World" is going to be about the same size as anything else. I assume, I haven't messed much with making executables for common lisp programs. 2015-01-28T17:35:06Z whartung: By default you drag in a lot of runtime that's unnecessary. Some implemenations have tree shakers that help you remove unnecessary code to reduce executable size in the end. 2015-01-28T17:36:26Z novemberist joined #lisp 2015-01-28T17:36:42Z Denommus` joined #lisp 2015-01-28T17:37:33Z jasom: Petit_Dejeuner_: size does go up with complex programs too, I find; sbcl is fairly profligate with its use of RAM (which I'm, in general, fine with) 2015-01-28T17:37:42Z hlavaty joined #lisp 2015-01-28T17:37:51Z jasom: RAM sizes are still going up faster than clock speeds 2015-01-28T17:38:43Z ivan\ quit (Read error: Connection reset by peer) 2015-01-28T17:38:52Z ivan\ joined #lisp 2015-01-28T17:38:53Z ivan\ quit (Changing host) 2015-01-28T17:38:53Z ivan\ joined #lisp 2015-01-28T17:41:04Z manuel__ quit (Quit: manuel__) 2015-01-28T17:41:07Z Denommus` quit (Ping timeout: 245 seconds) 2015-01-28T17:41:25Z cadadar quit (Quit: Leaving.) 2015-01-28T17:41:33Z ghard quit (Ping timeout: 246 seconds) 2015-01-28T17:43:15Z badkins joined #lisp 2015-01-28T17:45:25Z Vivitron quit (Ping timeout: 252 seconds) 2015-01-28T17:46:22Z enitiz joined #lisp 2015-01-28T17:46:43Z manuel__ joined #lisp 2015-01-28T17:46:45Z JokesOnYou77: Our old production image at work is over a gig now :P 2015-01-28T17:46:55Z Shinmera: https://filebox.tymoon.eu/file/TXpFdw== 2015-01-28T17:47:02Z ggole quit 2015-01-28T17:47:43Z JokesOnYou77: Shinmera, Nice colorscheme. Is that emacs? 2015-01-28T17:47:50Z Shinmera: Yes 2015-01-28T17:48:12Z Shinmera: Though the focus of the screenshot was supposed to be on the neat menu definition facility. 2015-01-28T17:48:29Z splittist: Shinmera: nice syntax! Why is the recent files menu called Open File? 2015-01-28T17:48:43Z Shinmera: splittist: Because I copy pasted lazily 2015-01-28T17:48:54Z JokesOnYou77: That was awesome too lol. I've jsut been staring at my plain emacs for the last couple days and thinking "I should really customize this more" 2015-01-28T17:49:23Z Shinmera: JokesOnYou77: The theme is called spolsky, and you can get it in the sublime-themes package. 2015-01-28T17:49:33Z JokesOnYou77: Cool :) 2015-01-28T17:50:30Z JokesOnYou77: That menu ui really is great though. I assume qt provides all of the OS menu assets so you don't have to worry about styling too? 2015-01-28T17:50:42Z ghard joined #lisp 2015-01-28T17:50:59Z enitiz quit (Ping timeout: 246 seconds) 2015-01-28T17:51:06Z Shinmera: By default it'll use whatever the OS-wide LAF is, but you can of course choose an explicit one or customise it. 2015-01-28T17:51:22Z antonv quit (Ping timeout: 240 seconds) 2015-01-28T17:51:31Z nyef: LAF not LnF? 2015-01-28T17:51:46Z Shinmera: Whichever acronym you prefer. 2015-01-28T17:52:01Z Shinmera: Colleen: do expand LAF 2015-01-28T17:52:01Z Colleen: LAF: Legible Afraid Folioing 2015-01-28T17:52:21Z splittist: Shinmera: Oh - now I see the other define-subwidget. 2015-01-28T17:52:37Z nyef: minion: What does LAF stand for? 2015-01-28T17:52:37Z minion: Locomotiveness Anergia Freedom 2015-01-28T17:53:31Z splittist: JokesOnYou77: why not write a webservice (in lisp, obnov) to identify emacs themes and (extra credit) setups from screenshots (: 2015-01-28T17:54:53Z tsumetai: What's obnov? 2015-01-28T17:56:17Z splittist: tsumetai: 'obviously', although I freely admit it is a pretty obscure usage. 2015-01-28T17:56:29Z jgrant quit (Ping timeout: 245 seconds) 2015-01-28T17:56:35Z JokesOnYou77: I should do that, a crawler would be a neat project 2015-01-28T17:57:58Z Shinmera: Well, there's http://emacsthemes.caisah.info/ already 2015-01-28T17:58:49Z ghard quit (Ping timeout: 264 seconds) 2015-01-28T17:59:53Z arenz quit (Ping timeout: 240 seconds) 2015-01-28T18:01:05Z pt1 quit (Remote host closed the connection) 2015-01-28T18:01:40Z _Loic_ joined #lisp 2015-01-28T18:02:03Z novemberist quit (Ping timeout: 256 seconds) 2015-01-28T18:03:11Z larme1 quit (Quit: WeeChat 1.0.1) 2015-01-28T18:03:27Z larme joined #lisp 2015-01-28T18:04:12Z theseb quit (Quit: Leaving) 2015-01-28T18:04:32Z BlueRavenGT joined #lisp 2015-01-28T18:04:39Z jgrant joined #lisp 2015-01-28T18:04:58Z Petit_Dejeuner_ quit (Ping timeout: 265 seconds) 2015-01-28T18:04:59Z flash-- joined #lisp 2015-01-28T18:05:11Z vanila: Does anyone have notes on getting a compiled version of mezzano to boot? 2015-01-28T18:05:42Z vanila: I took good notes on compiling it that should be useful to beginners but no luck actually booting it 2015-01-28T18:06:06Z whartung: I know, probably coming in a little late, but pretty exciting release isn't it? 2015-01-28T18:06:32Z vanila: very! 2015-01-28T18:07:22Z whartung: i'm curious if it can compile itself yet. 2015-01-28T18:07:46Z ghard joined #lisp 2015-01-28T18:07:50Z whartung: and the code is pretty clear that I've looked at, haven't look at it extensively 2015-01-28T18:08:03Z enitiz joined #lisp 2015-01-28T18:08:57Z flash-- is now known as flash- 2015-01-28T18:09:13Z vanila: it does seem to compile itself, I hope someone that knows the system better can say if this is true 2015-01-28T18:09:27Z sdemarre joined #lisp 2015-01-28T18:09:55Z intinig quit (Remote host closed the connection) 2015-01-28T18:10:18Z hiyosi quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-01-28T18:11:18Z jgrant quit (Remote host closed the connection) 2015-01-28T18:13:28Z araujo quit (Read error: Connection reset by peer) 2015-01-28T18:14:14Z araujo joined #lisp 2015-01-28T18:14:36Z ghard quit (Ping timeout: 244 seconds) 2015-01-28T18:18:59Z _leb quit (Quit: Computer has gone to sleep.) 2015-01-28T18:19:15Z pt1 joined #lisp 2015-01-28T18:19:31Z innertracks joined #lisp 2015-01-28T18:20:07Z eudoxia joined #lisp 2015-01-28T18:20:57Z ivan\ quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-01-28T18:22:34Z devll joined #lisp 2015-01-28T18:22:46Z _leb joined #lisp 2015-01-28T18:23:15Z jgrant joined #lisp 2015-01-28T18:25:41Z axion: can someone explain to me why internal-time-units-per-second is 1000, but the difference between calling (get-internal-run-time) 1 second apart is 100? 2015-01-28T18:26:47Z Natch joined #lisp 2015-01-28T18:28:21Z Vutral quit (Excess Flood) 2015-01-28T18:30:08Z pnpuff joined #lisp 2015-01-28T18:33:59Z Vutral joined #lisp 2015-01-28T18:35:31Z Xach: axion: run-time is cpu time. 2015-01-28T18:35:40Z Xach: axion: get-internal-real-time is wall time 2015-01-28T18:37:11Z axion: ah ok 2015-01-28T18:38:22Z _leb quit (Quit: Computer has gone to sleep.) 2015-01-28T18:39:52Z Hache_ quit (Ping timeout: 245 seconds) 2015-01-28T18:40:46Z askatasuna quit (Quit: WeeChat 1.1) 2015-01-28T18:40:47Z innertracks quit (Quit: innertracks) 2015-01-28T18:41:03Z jtza8 joined #lisp 2015-01-28T18:42:06Z Patzy quit (Ping timeout: 246 seconds) 2015-01-28T18:42:50Z pnpuff left #lisp 2015-01-28T18:42:55Z Patzy joined #lisp 2015-01-28T18:43:38Z zacharias joined #lisp 2015-01-28T18:43:53Z zacharias quit (Changing host) 2015-01-28T18:43:53Z zacharias joined #lisp 2015-01-28T18:47:59Z froggey: vanila: I'm back, are you still around? 2015-01-28T18:48:08Z froggey: mood: congrats! 2015-01-28T18:48:15Z vanila: yeah :) 2015-01-28T18:48:57Z enitiz quit (Ping timeout: 265 seconds) 2015-01-28T18:49:46Z vanila: I think something a little weird is happening when I build this since the image file is 268.4MB, does that sound off to you? 2015-01-28T18:49:47Z froggey: your image seems to be too big, it should be exactly 256MiB/268435456. it's a sparse file thought, so size-on-disk might be smaller 2015-01-28T18:49:59Z vanila: I see! 2015-01-28T18:50:31Z froggey: oh, no. that's fine 268.4MB is right when using base-10 megabytes 2015-01-28T18:51:21Z froggey: can you upload it (or the vmdk) and the mezzano.map file somewhere? 2015-01-28T18:52:23Z vanila: yeah 2015-01-28T18:52:48Z vanila: btw in ipl.lisp, should I be setting the ip address and *default-pathname-defaults* and mezzano.file-system::*home-directory* ? 2015-01-28T18:53:25Z froggey: yes, thats needed so that the rest of the system can be loaded from the host 2015-01-28T18:53:47Z vanila: and does that happen after actually booting the system in a VM? 2015-01-28T18:53:55Z froggey: you can disable bits you don't want. you could comment the whole file out to get a bare-minimum system 2015-01-28T18:53:57Z vanila: I think the crash im getting happens before this, but I don't know 2015-01-28T18:53:58Z froggey: yes 2015-01-28T18:54:10Z froggey: it does, it's not even printing the hello message 2015-01-28T18:54:25Z _Loic_ left #lisp 2015-01-28T18:54:56Z tiferet: hello again 2015-01-28T18:55:21Z froggey: after "Starting system..." you should see "Hello, Debug World!" and some info about detected devices 2015-01-28T18:55:33Z tiferet: really new to lisp and programming - why would someone choose SBCL over CCL or vice versa, please? 2015-01-28T18:55:46Z wasamasa: if you don't know, just choose SBCL 2015-01-28T18:55:56Z tiferet: wasamasa: okay, thanks. 2015-01-28T18:55:59Z jgrant quit (Remote host closed the connection) 2015-01-28T18:56:06Z tiferet: wasamasa: I would like to know, however... :D 2015-01-28T18:56:08Z wasamasa: if you happen to be on windows however, CCL might be more sensible 2015-01-28T18:56:14Z Xach: tiferet: ccl has a really fast compiler. i think it also runs on some platforms that sbcl doesn't. 2015-01-28T18:56:35Z tiferet: wasamasa: I'm on Windows and Arch Linux. 2015-01-28T18:56:38Z wasamasa: tiferet: well, SBCL is the most popular implementation and a good allrounder 2015-01-28T18:56:41Z Xach: tiferet: ccl has cocoa integration, too, and an IDE written in Clozure CL. 2015-01-28T18:56:41Z wasamasa: tiferet: that's why 2015-01-28T18:56:45Z tiferet: wasamasa: AFAIK, SBCL has a windows installer, too... 2015-01-28T18:57:00Z wasamasa: tiferet: ask those poor souls toiling away on windows, not me :P 2015-01-28T18:57:00Z Xach: sbcl produces pretty fast code, but the compiler is slow. 2015-01-28T18:57:06Z tiferet: Xach: Cocoa really? Wow! 2015-01-28T18:57:12Z tiferet: ahhhhh 2015-01-28T18:57:25Z vanila: froggey, is Undefined variable: CROSS-CL:ARRAY-RANK-LIMIT expected by the way? when initializing the environment 2015-01-28T18:57:28Z ivan\ joined #lisp 2015-01-28T18:57:34Z Xach: ccl has a different development model: it is maintained by a company (clozure associates), while sbcl is maintained by a group of volunteers. 2015-01-28T18:57:48Z tiferet: Xach: Well I have an OSX workstation here. I'm loading up CCL to play with :D 2015-01-28T18:58:23Z tiferet: Xach: hmm... that makes sbcl seem more attractive. superficially 2015-01-28T18:58:35Z froggey: vanila: yeah, that should be harmless. there are a few warnings I need to fix 2015-01-28T18:59:06Z wbooze joined #lisp 2015-01-28T18:59:20Z Xach: tiferet: i guess that depends on whether you want to be able to pay someone to care about your problems or not 2015-01-28T18:59:33Z tiferet: Are there any neat cocoa apps out there built using CL? 2015-01-28T18:59:51Z tiferet: Xach: I guess that's what it comes down to. 2015-01-28T18:59:51Z Xach: tiferet: OpusModus is pretty cool 2015-01-28T19:00:02Z tiferet: Xach: Thanks! I'll look that up 2015-01-28T19:01:02Z nyef: ... What platforms does CCL run on that SBCL doesn't? Is it just Android, or are there others? 2015-01-28T19:01:12Z tiferet: Xach: :O this looks like any 'legitimate' cocoa app 2015-01-28T19:01:36Z tiferet: Xach: is there a cross-platform, gtk-style gui library out there? 2015-01-28T19:01:36Z Xach: nyef: i thought it worked on arm more so than sbcl 2015-01-28T19:01:45Z nyef: Threads, maybe? 2015-01-28T19:02:08Z Xach: tiferet: i'm a little confused by the question, since gtk doesn't seem very cross-platform to me. 2015-01-28T19:02:21Z Xach: tiferet: but the one i've seen in real-world use is the CAPI library for LispWorks. 2015-01-28T19:02:24Z tiferet: Xach: I can run gtk apps on windows, for example 2015-01-28T19:02:37Z tiferet: Xach: Pidgin, Deluege, etc. 2015-01-28T19:02:49Z Xach: Last time I saw that it looked pretty awful, but it's been a long time. 2015-01-28T19:02:52Z nyef: We have a couple of angles for ARM threads on SBCL, but I'm kindof burned out on SBCL on ARM for the moment, and other people seem to be working on other things. 2015-01-28T19:03:04Z jasom: tiferet: I've heard good things aboout CommonQt 2015-01-28T19:03:12Z tiferet: Xach: yeah... err... that is the issue isn't it 2015-01-28T19:03:24Z tiferet: jasom: thanks =) 2015-01-28T19:03:27Z shaungilchrist quit (Ping timeout: 265 seconds) 2015-01-28T19:03:36Z tiferet: but yeah, GTK is hideous 2015-01-28T19:03:36Z wbooze quit (Client Quit) 2015-01-28T19:03:38Z jasom: tiferet: I use ltk, but it's really only good for "Throw a gui on top of this utility" rather than "I want to do really cool advanced gui stuff" 2015-01-28T19:03:52Z tiferet: jasom: right... 2015-01-28T19:04:28Z jasom: or rather, if you want to do cool advanced gui stuff, the logic for it won't be in lisp for performance reasons (since in ltk there is a big bottleneck in communicating with the gui) 2015-01-28T19:04:36Z LiamH quit (Ping timeout: 272 seconds) 2015-01-28T19:04:39Z Shinmera: Speaking of CommonQt, I just finished the new Qtools version. http://shinmera.github.io/qtools/ 2015-01-28T19:04:40Z shaungilchrist joined #lisp 2015-01-28T19:04:57Z Shinmera now hurries off to clear his mind from coding. 2015-01-28T19:05:00Z tiferet: I am using Lisp to learn programming but I have no intention of ever "giving it up" for something else. I'd love to be able to build anything under the sun in Lisp. 2015-01-28T19:05:04Z wbooze joined #lisp 2015-01-28T19:05:10Z jasom: I have an in-progress character generator for a pencil and paper RPG that LTK works great for, as an example. 2015-01-28T19:05:14Z mishoo quit (Ping timeout: 245 seconds) 2015-01-28T19:05:17Z whartung: froggey: is Mezzano yours? 2015-01-28T19:05:29Z froggey: it is 2015-01-28T19:05:30Z Xach rebuilds everything 2015-01-28T19:08:20Z protist: just built a function prototyping getting adverbs and conjunctions working right in my APL written in Common Lisp :) 2015-01-28T19:08:38Z whartung: It's really exciting. Care to talk about it at all? Plans, history, anything like that? How far away are you from having it self host? 2015-01-28T19:08:40Z protist: right now the prototype function just plays with symbols...but I have a model now :D 2015-01-28T19:09:39Z jgrant joined #lisp 2015-01-28T19:10:24Z protist: goodnight #lisp 2015-01-28T19:10:44Z tiferet: nn 2015-01-28T19:14:53Z protist: froggey: OH! you open sourced!?!?! 2015-01-28T19:15:49Z froggey: protist: yep 2015-01-28T19:16:04Z protist: froggey: exciting :D 2015-01-28T19:17:08Z devll quit (Remote host closed the connection) 2015-01-28T19:17:51Z froggey: whartung: no plans at the moment. I'm too busy dealing with the feedback from the release. as for self-hosting, I guess it's kind of close. it should be able to compile all the source code, but the program that links all the compiled code together probably won't run 2015-01-28T19:18:12Z froggey: and the FS support is incredibly buggy and not safe to use at all 2015-01-28T19:18:18Z whartung: :) 2015-01-28T19:18:35Z whartung: no doubt you're overwhelmed, it's quite a little bombshell 2015-01-28T19:19:10Z whartung: The code looks really nice, what little i've looked at. 2015-01-28T19:19:18Z LiamH joined #lisp 2015-01-28T19:19:38Z ski quit (Read error: Connection reset by peer) 2015-01-28T19:23:28Z CrazyWoods: jasom: hey :) 2015-01-28T19:23:44Z jasom: CrazyWoods: hey 2015-01-28T19:25:29Z CrazyWoods: jasom: Are you looking for gui toolkit too? 2015-01-28T19:25:37Z jasom: CrazyWoods: not at the moment 2015-01-28T19:25:52Z jasom: ltk is sufficient for my needs, and I will probably switch to commonqt should it not be 2015-01-28T19:26:16Z CrazyWoods: jasom: :) 2015-01-28T19:26:20Z ehaliewicz joined #lisp 2015-01-28T19:26:36Z CrazyWoods: jasom: What kind of application? 2015-01-28T19:27:53Z pt1 quit (Remote host closed the connection) 2015-01-28T19:28:59Z zadock quit (Quit: Leaving) 2015-01-28T19:30:10Z mishoo joined #lisp 2015-01-28T19:30:31Z Vutral quit (Ping timeout: 245 seconds) 2015-01-28T19:31:29Z jasom: CrazyWoods: i've written a few, mostly of the kind "Have the computer do something automated for me, based upon some inputs" and the gui is just to get those inputs 2015-01-28T19:32:22Z LiamH quit (Ping timeout: 255 seconds) 2015-01-28T19:32:28Z protist quit (Quit: Konversation terminated!) 2015-01-28T19:34:32Z kcj joined #lisp 2015-01-28T19:38:16Z CrazyWoods: I am still confuse why large or heavily gui application(Autodesk Maya Blender Photoshop) are develop using c++ 2015-01-28T19:39:08Z oGMo: wasn't autocad largely lisp at one point? i'm pretty sure it still has autolisp 2015-01-28T19:40:01Z CrazyWoods: oGMo: yes 2015-01-28T19:40:03Z oGMo: otherwise because 1) c++ is popular, not good and 2) good free CL implementations were probably not around when those began development 2015-01-28T19:40:48Z CrazyWoods: oGMo: is it possible to develop just in pure lisp? 2015-01-28T19:41:17Z flash- quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-01-28T19:41:27Z oGMo: CrazyWoods: well, sortof, i mean, at some point you're going to involve the OS or graphics subsystem which are probably not lisp, and at some point there's also hardware :P 2015-01-28T19:41:39Z jasom: CrazyWoods: as an example, mcclim is a pure lisp gui toolkit 2015-01-28T19:41:39Z oGMo: but if you mean "do i have to write C++" then no 2015-01-28T19:41:57Z oGMo: cl-cffi-gtk seemed pretty good at a glance 2015-01-28T19:41:57Z JokesOnYou77: Write it all with capi :P 2015-01-28T19:42:00Z Vutral joined #lisp 2015-01-28T19:42:19Z jasom: basic-binary-ipc implements asynchronous communication and only uses ffi to make OS syscalls 2015-01-28T19:42:25Z oGMo: the only real issue is it may not have some side library with extra widgets you want 2015-01-28T19:43:09Z CrazyWoods: oGMo: how about the performance? I use to think it's for performance issues that gui application are using c/c++ 2015-01-28T19:43:21Z oGMo: CrazyWoods: eh, doubtful 2015-01-28T19:43:34Z tiferet: CrazyWoods: That's what I assumed too... 2015-01-28T19:43:35Z jgrant quit (Remote host closed the connection) 2015-01-28T19:43:52Z oGMo: i doubt any free implementation is currently up to like crysis4, but 2015-01-28T19:43:54Z whartung: and that's the crux of language choice today -- the surrounding infrastructure of libraries and utitlities above and beyond teh core language. 2015-01-28T19:44:10Z tiferet: whartung: which is why javascript is everywhere, right? 2015-01-28T19:44:17Z whartung: yes 2015-01-28T19:44:25Z oGMo: after that it's pretty fast, and tbh if you really need the speed you _could_ write bits in C or asm or whatever 2015-01-28T19:44:28Z dlowe: most importantly, the libraries that do what people want right now with as little fuss as possible 2015-01-28T19:44:31Z tiferet: whartung: I wonder who's responsible for that :/ 2015-01-28T19:44:34Z dlowe: so it's a moving target 2015-01-28T19:44:36Z oGMo: you can be a purist, or get the job done 2015-01-28T19:44:43Z whartung: Netscape 2015-01-28T19:45:02Z tiferet: whartung: Navigator 2015-01-28T19:45:08Z whartung: yup 2015-01-28T19:45:21Z CrazyWoods: oGMo: cl-cffi-gtk? 2015-01-28T19:45:22Z tiferet: whartung: well no wonder they don't exist anymore 2015-01-28T19:45:28Z tiferet: whartung: Assholes =( 2015-01-28T19:45:53Z whartung: they planted the seed, then it exploded past their expiration date 2015-01-28T19:46:17Z Bicyclidine joined #lisp 2015-01-28T19:46:19Z tiferet: Do you think the js trend will die anytime soon? 2015-01-28T19:46:35Z whartung: no, just the tooling will improve 2015-01-28T19:46:45Z jasom: tiferet: until/unless js is supplanted in the browser, I doubt it 2015-01-28T19:47:03Z whartung: but with asm.js, the motivation for that is getting lower and lower 2015-01-28T19:47:17Z tiferet: sigh 2015-01-28T19:47:28Z whartung: folks are building c++ apps that run in the browser now using emscripten 2015-01-28T19:47:55Z whartung: I saw that example of QT apps running recently 2015-01-28T19:48:05Z CrazyWoods: jasom: js/html5 are likely suffer the performance when it use to deal with graphics heavily job 2015-01-28T19:48:11Z tiferet: but layers of abstraction scare people off 2015-01-28T19:48:43Z whartung: web GL lowers the barrier to higher performing graphics 2015-01-28T19:49:21Z whartung: what js can't solve is the inherent latency of connected applications 2015-01-28T19:49:42Z whartung: and the general crappiness of the browser environment 2015-01-28T19:49:48Z whartung: even Mozilla struggles hard with that. 2015-01-28T19:49:52Z tiferet: Woah, so with Emscripten you can simply write js code in c and parse it into js? 2015-01-28T19:49:52Z sunwukong quit (Ping timeout: 240 seconds) 2015-01-28T19:49:55Z tiferet: geez 2015-01-28T19:49:58Z whartung: yes 2015-01-28T19:50:17Z whartung: you just write c and it compiles in to asm.js code 2015-01-28T19:50:36Z tiferet: I'll still have to learn js to get a webdev job... 2015-01-28T19:50:43Z whartung: then you have folks like mozilla that put effort in to make asm.js Really Extra Fast 2015-01-28T19:50:45Z Xach: Let us tie this in to Lisp somehow. 2015-01-28T19:51:17Z whartung: JS is Lisp Winning, just the syntax is messed up and they f'ed up on macros. 2015-01-28T19:51:21Z jasom: None of the C implementations of lisp can be built with emscripten, as they all want to do some form of stack manipulation, or call into the C compiler at runtime 2015-01-28T19:51:28Z whartung: But since JS is a Scheme, and Scheme is a Lisp... 2015-01-28T19:51:35Z tiferet: Xach: "Emlispten - Lisp into JS parser" 2015-01-28T19:51:39Z H4ns: whartung: right. javascript is all the good things of lisp without the good things of lisp. 2015-01-28T19:51:45Z whartung: correct 2015-01-28T19:51:57Z jasom: H4ns: and the object model of self 2015-01-28T19:51:58Z whartung: defeinittely the worse is better of Lisp 2015-01-28T19:52:19Z dlowe: I don't think it has much in common with any lisp. 2015-01-28T19:52:46Z Petit_Dejeuner joined #lisp 2015-01-28T19:52:57Z whartung: then you're not paying attention, unless Lisp to you is purely syntax 2015-01-28T19:53:09Z dlowe: that's a bold assumption 2015-01-28T19:53:12Z jasom: whartung: other than lexical closures, what does it have? 2015-01-28T19:53:23Z tiferet: I googled javascript scheme and found this - http://journal.stuffwithstuff.com/2013/07/18/javascript-isnt-scheme/ 2015-01-28T19:53:31Z LiamH joined #lisp 2015-01-28T19:53:55Z jasom: and lisp went on for what, 25 years before it had lexical closures? 2015-01-28T19:54:21Z tiferet: The linked article establishes "The only "Scheme core" JS has is Closures" 2015-01-28T19:54:32Z tiferet: And I have no comment as I'm a newbie 2015-01-28T19:54:35Z H4ns: no matter how you put it, javascript is not common lisp by any standards, and thus off topic. 2015-01-28T19:54:36Z H4ns: :D 2015-01-28T19:54:57Z tiferet: H4ns: Apologies 2015-01-28T19:57:56Z shaungilchrist quit (Ping timeout: 244 seconds) 2015-01-28T19:58:22Z defaultxr joined #lisp 2015-01-28T19:58:29Z yrk joined #lisp 2015-01-28T19:58:58Z yrk quit (Changing host) 2015-01-28T19:58:58Z yrk joined #lisp 2015-01-28T19:59:01Z rhllor joined #lisp 2015-01-28T20:00:40Z cadadar joined #lisp 2015-01-28T20:02:10Z pierre1_ joined #lisp 2015-01-28T20:02:32Z jumblerg quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-01-28T20:03:33Z Petit_Dejeuner: tiferet, I remember this guy. He did the Game Design Patterns book. It's great. 2015-01-28T20:03:52Z BitPuffin quit (Ping timeout: 265 seconds) 2015-01-28T20:04:07Z Xach: drmeister: i have shuffled your patch to maintain the existing alphabetical order 2015-01-28T20:04:33Z drmeister: Excellent. Of all the orders I prefer alphabetical. 2015-01-28T20:04:41Z jgrant joined #lisp 2015-01-28T20:04:55Z yaewa quit (Quit: Leaving...) 2015-01-28T20:05:14Z moei joined #lisp 2015-01-28T20:05:49Z otwieracz: Hey, guys 2015-01-28T20:06:01Z otwieracz: https://github.com/rpav/cl-autowrap do this really work? 2015-01-28T20:06:17Z otwieracz: With anything other than example? 2015-01-28T20:06:27Z otwieracz: I mean, if I will include opencv here this will just work? 2015-01-28T20:06:41Z otwieracz: (llvm is compiling, this will take some time :)) 2015-01-28T20:07:02Z drmeister: Xach: Will it be available on github soon? Is github where it is downloaded from by quicklisp.lisp? 2015-01-28T20:07:18Z Xach: drmeister: it will be on beta.quicklisp.org soon. hopefully today. 2015-01-28T20:07:38Z Xach: that is the place from where quicklisp bootstraps 2015-01-28T20:08:02Z drmeister: Great - thank you very much. You do a great service. 2015-01-28T20:08:27Z Xach: heh heh heh. can't wait for Phase 2!! 2015-01-28T20:08:39Z jgrant quit (Remote host closed the connection) 2015-01-28T20:09:52Z Xach: ecl should be renamed clesp, and mezzano closp 2015-01-28T20:10:08Z jumblerg joined #lisp 2015-01-28T20:10:11Z Xach: then we need a clusp and clysp 2015-01-28T20:11:56Z pt1 joined #lisp 2015-01-28T20:12:15Z slyrus joined #lisp 2015-01-28T20:12:52Z pierre1__ joined #lisp 2015-01-28T20:12:56Z shaungilchrist joined #lisp 2015-01-28T20:13:59Z Longlius quit (Quit: Leaving) 2015-01-28T20:14:01Z pierre1_ quit (Ping timeout: 265 seconds) 2015-01-28T20:14:27Z ozzloy quit (Quit: leaving) 2015-01-28T20:14:28Z TDT``` quit (Remote host closed the connection) 2015-01-28T20:16:25Z Vivitron joined #lisp 2015-01-28T20:16:29Z pt1 quit (Remote host closed the connection) 2015-01-28T20:16:57Z jgrant joined #lisp 2015-01-28T20:17:03Z ozzloy joined #lisp 2015-01-28T20:17:34Z EvW joined #lisp 2015-01-28T20:17:40Z ivan\ quit (Read error: Connection reset by peer) 2015-01-28T20:18:19Z ivan\ joined #lisp 2015-01-28T20:20:17Z ehu joined #lisp 2015-01-28T20:24:34Z CrazyWoods quit (Quit: leaving) 2015-01-28T20:26:04Z gingerale quit (Ping timeout: 245 seconds) 2015-01-28T20:26:33Z vanila: mood, could I ask you about the TCP stuff? 2015-01-28T20:27:09Z mood: vanila: Sure 2015-01-28T20:27:22Z vanila: so a bug was fixed in the code and I can boot into a black screen now 2015-01-28T20:27:37Z jgrant quit (Ping timeout: 264 seconds) 2015-01-28T20:27:39Z vanila: but it's not connecting to the fileserver 2015-01-28T20:27:58Z vanila: do you use qemu or vbox? is there some special network thing I need to set? 2015-01-28T20:28:11Z mrcom joined #lisp 2015-01-28T20:28:14Z nyef: vanila: Stupid-obvious question, but did you set the address of the fileserver in ipl.lisp? 2015-01-28T20:28:30Z froggey: a black screen? you should at least see a basic repl window, even with everything in ipl.lisp commented out 2015-01-28T20:28:33Z vanila: nyef, I actually don't know what IP to put there: I've been trying 127.0.0.1 and the ip from 'ip addr' 2015-01-28T20:28:50Z mood: vanila: What's the serial port outputting? 2015-01-28T20:29:38Z mrcom: froggey: ipl is running into problems w/ VirtualBox's NATting 2015-01-28T20:30:14Z vanila: there is a 'port forwarding' thing in the NAT settings but I didn't see any in the demo image so I didn't fiddle with that 2015-01-28T20:30:23Z froggey: you need to put your host's local IP there. probably 192.168.something 2015-01-28T20:30:27Z mrcom: froggey: Symptoms are it hangs during file transfers, usually just after a "probe" 2015-01-28T20:30:38Z froggey: and you need to use the virtio-net driver 2015-01-28T20:30:54Z mrcom: froggey: Yep, doing all that. Problem is that VBox doesn't do port translation. 2015-01-28T20:30:59Z froggey: mrcom: that's odd. does it recover after some time? 2015-01-28T20:31:06Z vanila: i was able to try out some stuff with the file server just locally by telnetting to it 2015-01-28T20:31:27Z mrcom: froggey: No recover, ipl times out and drops into debugger. 2015-01-28T20:31:39Z enitiz joined #lisp 2015-01-28T20:31:45Z vydd quit 2015-01-28T20:32:00Z mrcom: froggey: Problem is that VBox doesn't do port translation. So if ipl chooses a port that's already in use on host, 2015-01-28T20:32:20Z vanila: I'm not sure about virtio-net :( 2015-01-28T20:32:38Z mrcom: froggey: ipl packets get dropped. 2015-01-28T20:33:01Z mood: mrcom: You can actually set the port on both the host and guest side 2015-01-28T20:33:12Z oleo is now known as Guest78719 2015-01-28T20:33:22Z froggey: mrcom: that's very surprising behaviour, is it documented anywhere? 2015-01-28T20:33:33Z mrcom: mood: ipl uses a new port for each file operation. 2015-01-28T20:33:50Z froggey: mrcom: you're talking about the client port, not the server port, right? 2015-01-28T20:34:10Z vanila: so I need KVM/Xen? 2015-01-28T20:34:11Z vanila: with libvirt 2015-01-28T20:34:17Z mrcom: froggey: Haven't seen any doc for VirtBox, but it's pretty thin. 2015-01-28T20:34:36Z mrcom: froggey: Yes, client ephemeral ports (58K +) 2015-01-28T20:34:42Z froggey: ok 2015-01-28T20:34:51Z mood: vanila: Why? 2015-01-28T20:34:57Z oleo__ joined #lisp 2015-01-28T20:35:03Z wbooze quit (Ping timeout: 256 seconds) 2015-01-28T20:35:06Z mood: vanila: virtio-net can be set in the Virtualbox VM settings 2015-01-28T20:35:23Z froggey: vanila: I suggest using qemu with KVM or virtualbox. non-kvm qemu will probably be too slow 2015-01-28T20:35:46Z vanila: oh! 2015-01-28T20:35:49Z vanila: sorry I got mixed up 2015-01-28T20:36:04Z Guest78719 quit (Ping timeout: 245 seconds) 2015-01-28T20:36:09Z mrcom: froggey: Not a bug, but something VBox users will run into. 2015-01-28T20:36:19Z froggey: mrcom: I don't think I'll be able to fix that quickly. qemu's user network stack might do a better job 2015-01-28T20:36:23Z froggey: ok 2015-01-28T20:36:31Z mrcom: froggey: Can think of a few quick workarounds: 2015-01-28T20:37:03Z mrcom: 1) Catch the timeout and retry. Will be slow until you happen upon a free socket. 2015-01-28T20:37:58Z mrcom: 2) Don't open a new connection with each I/O request (OK, not quite so quick to fix). 2015-01-28T20:39:16Z mrcom: froggey: I tried to run w/ just qemu, but just kept rebooting. Not sure what params needed. What have you been using? 2015-01-28T20:40:22Z kobain joined #lisp 2015-01-28T20:40:25Z vanila: I'm using: qemu-system-x86_64 -m 512 -hda mezzano.image -vga std 2015-01-28T20:40:33Z vanila: it was jst rebooting for me until a recent fix 2015-01-28T20:40:44Z innertracks joined #lisp 2015-01-28T20:40:45Z vanila: now I get some bars at the top butmostly blank 2015-01-28T20:40:55Z froggey: -m 512 -hda mezzano.image -serial stdio -net user -net nic,model=virtio -vga std 2015-01-28T20:41:36Z mrcom: Ah, was trying to directly load the image, not using -hda. 2015-01-28T20:42:36Z mrcom: And running qemu-system-i386 :/ Duh. 2015-01-28T20:42:58Z froggey: oh yeah, you need qemu-system-x86_64 too :) 2015-01-28T20:44:51Z pegu joined #lisp 2015-01-28T20:44:53Z mrcom: Much happier! See I/O 2015-01-28T20:45:14Z froggey: in general or between the fileserver & client? 2015-01-28T20:45:56Z mrcom: Hasn't gotten to fonts loading yet. No KVM :( 2015-01-28T20:46:34Z mood: qemu is a LOT slower than virtualbox, apparently 2015-01-28T20:46:58Z froggey: mood: how long did it take to build everything? 2015-01-28T20:47:15Z innertracks quit (Quit: innertracks) 2015-01-28T20:47:48Z mood: froggey: Well, I rebooted in between a couple of times because I didn't have all libraries, but not very long. Maybe two hours or so 2015-01-28T20:47:49Z mrcom: mood: I'm running QEMU on OSX, downloaded via homebrew. Haven't figured out a way for it to run KVM. May have to compile QEMU, run as root, etc. 2015-01-28T20:48:14Z froggey: I think KVM is a linux only thing 2015-01-28T20:48:34Z mrcom: repl! 2015-01-28T20:49:06Z froggey: hurrah! 2015-01-28T20:49:28Z froggey: mood: not too bad, that's about how long it takes me to do a full build 2015-01-28T20:50:26Z dkcl joined #lisp 2015-01-28T20:51:18Z dkcl quit (Read error: Connection reset by peer) 2015-01-28T20:51:19Z mrcom: Blast; ARP timeout, no server connection. Probably confused the Mac while messing around with VBox network. 2015-01-28T20:51:25Z dandersen joined #lisp 2015-01-28T20:52:16Z vanila quit (Quit: Leaving) 2015-01-28T20:54:47Z dandersen is now known as dkcl 2015-01-28T20:55:43Z mrcom quit (Ping timeout: 252 seconds) 2015-01-28T20:56:26Z mrcom joined #lisp 2015-01-28T21:00:45Z hardenedapple quit (Quit: WeeChat 1.1.1) 2015-01-28T21:01:23Z quazimodo quit (Ping timeout: 265 seconds) 2015-01-28T21:04:28Z mood: froggey: Weird, if I now build a new image and try to boot the VM, I get a Guru Meditation 2015-01-28T21:05:28Z froggey: did you pull from github? I broke everything 2015-01-28T21:05:57Z wasamasa quit (Ping timeout: 246 seconds) 2015-01-28T21:06:09Z mood: froggey: I did, yes. But only the last commit was new, and looked minor 2015-01-28T21:06:50Z benny quit (Ping timeout: 272 seconds) 2015-01-28T21:07:01Z eMBee quit (Ping timeout: 264 seconds) 2015-01-28T21:07:21Z froggey: change compiler/cross-compile.lisp:328 so it uses cl:constantp. I think you'll need to delete any .llf files that were built with the broken version as well 2015-01-28T21:07:53Z froggey: I'm going to fix it soon, I've a bunch of emails that need responses first though 2015-01-28T21:08:34Z mrcom: Running qemu, not talking to server => Didn't notice "vlan 0 is not connected to host network" warning. Added "-net user,restrict=off", no warning now. Running sudo might fix it, too. 2015-01-28T21:08:47Z wasamasa joined #lisp 2015-01-28T21:08:48Z mrcom: Yay! Talking to server. 2015-01-28T21:08:51Z DrCode quit (Ping timeout: 250 seconds) 2015-01-28T21:08:55Z jsnell quit (Ping timeout: 252 seconds) 2015-01-28T21:08:57Z wasamasa quit (Changing host) 2015-01-28T21:08:57Z wasamasa joined #lisp 2015-01-28T21:10:07Z jsnell joined #lisp 2015-01-28T21:10:34Z froggey: mrcom: sorry, I have -net user,hostfwd=tcp::7777-:80 in my qemu command as well. I didn't mention it because I thought it was just for setting up host-to-guest port forwarding. -net user should be enough 2015-01-28T21:11:12Z specbot quit (Remote host closed the connection) 2015-01-28T21:11:19Z specbot joined #lisp 2015-01-28T21:12:21Z mrcom: froggey: Rats, still hangs when runs into already-used port :( Probably why VBox does, too; it just uses qemu's NAT. 2015-01-28T21:13:22Z Vivitron quit (Ping timeout: 240 seconds) 2015-01-28T21:14:03Z rotty quit (Ping timeout: 252 seconds) 2015-01-28T21:14:19Z mrcom: froggey: OK, something for me to tinker with. Email you with what I come up with? 2015-01-28T21:14:21Z nopf quit (Ping timeout: 246 seconds) 2015-01-28T21:14:26Z shaungilchrist quit (Ping timeout: 272 seconds) 2015-01-28T21:14:48Z snafuchs quit (Ping timeout: 276 seconds) 2015-01-28T21:15:05Z froggey: alright. it's very strange behaviour 2015-01-28T21:15:20Z snafuchs joined #lisp 2015-01-28T21:15:34Z mrcom: No way for you to detect it, other than timeout. 2015-01-28T21:16:15Z Vivitron joined #lisp 2015-01-28T21:16:22Z froggey: I don't think I've ever run into anything like that, and I've had it running with vbox's NAT for a long time 2015-01-28T21:17:07Z eMBee joined #lisp 2015-01-28T21:17:13Z mrcom: It got real close--probed Mandarin_Pair.jpg :) 2015-01-28T21:17:48Z Shinmera quit (Quit: しつれいしなければならないんです。) 2015-01-28T21:20:16Z |3b|: otwieracz: it was used for cl-sdl2, so works on at least some large libraries... not sure it does much if anything useful with c++ yet though 2015-01-28T21:21:07Z PinealGlandOptic quit (Ping timeout: 244 seconds) 2015-01-28T21:21:11Z mrcom: froggey: It's running into a Skype connection. I'm going to kill Skype and try it again w/ VBox. 2015-01-28T21:21:26Z Krystof quit (Read error: Connection reset by peer) 2015-01-28T21:21:41Z angavrilov quit (Remote host closed the connection) 2015-01-28T21:23:27Z Krystof joined #lisp 2015-01-28T21:24:52Z froggey: mrcom: you could try running the file server on a different port. run-file-server and add-simple-file-host both take a :port argument, defaulting to 2599 2015-01-28T21:25:35Z shaungilchrist joined #lisp 2015-01-28T21:26:36Z Alfr joined #lisp 2015-01-28T21:26:42Z nyef: froggey: How hard would it be to add an on-disk filesystem driver? 2015-01-28T21:27:31Z froggey: like a traditional file system? 2015-01-28T21:27:35Z nyef: Yeah. 2015-01-28T21:28:05Z nyef: Are the hooks basically in place for that, at least? 2015-01-28T21:28:16Z mrcom: froggey: That's not the port that's colliding. It's the ephemeral client port. It works right up to the last not-used port (e.g. 52065 .. 52204 worked, 52205 was the first port the Mac was already using, and that failed.) 2015-01-28T21:29:40Z froggey: to some extent, I think the trickiest part would be interfacing with the disk system. it's not really designed for normal lisp code to use 2015-01-28T21:29:58Z DrCode joined #lisp 2015-01-28T21:30:33Z otwieracz: |3b|: yep, it crashes - somehow it wants to create array of size -2 2015-01-28T21:31:51Z Jirachier joined #lisp 2015-01-28T21:32:03Z froggey: mrcom: right, but tcp connections are identified by the client and server ports together (and the client and server addresses). I pretty sure that you'd only get a conflict if there was an existing connection between 2599 and 52205 2015-01-28T21:32:07Z froggey: I'm not really sure though 2015-01-28T21:32:47Z rotty joined #lisp 2015-01-28T21:33:00Z Mon_Ouie quit (Quit: WeeChat 1.1.1) 2015-01-28T21:33:06Z nopf joined #lisp 2015-01-28T21:34:27Z Alfr quit (Quit: Leaving) 2015-01-28T21:34:50Z Mon_Ouie joined #lisp 2015-01-28T21:35:41Z ivan\ quit (Remote host closed the connection) 2015-01-28T21:36:15Z pierre1__ quit (Quit: Leaving) 2015-01-28T21:36:20Z ivan\ joined #lisp 2015-01-28T21:36:52Z pierre1_ joined #lisp 2015-01-28T21:37:14Z Jirachier quit (Ping timeout: 272 seconds) 2015-01-28T21:37:18Z Xach: drmeister: new quicklisp client & bootstrap files should be good to go. let me know how it works for you. 2015-01-28T21:37:33Z drmeister: Xach: Thank you very much. 2015-01-28T21:38:23Z |3b|: otwieracz: yeah, that doesn't sound right, maybe oGMo could help (or at least tell if it should do anything useful in the first place) 2015-01-28T21:38:36Z mrcom: froggey: Good point, but the connection tuple is already unique (it includes the host IPs, too). What's happening is that the socket allocations (Mac's IP add + tcp port) are colliding, not the connections. 2015-01-28T21:39:33Z froggey: I see, I didn't realise that they were tracked seperately from connections 2015-01-28T21:40:53Z oGMo: otwieracz: it should work, people have asked about opencv before .. if it's C, it should work fine, or file an issue and i'll try to help work through it 2015-01-28T21:41:13Z otwieracz: oGMo: It's… C++ :( 2015-01-28T21:42:03Z oGMo: otwieracz: i've been wanting to write a C++-to-C generator and further autowrap integration but i need to finish some other things at the moment ;/ 2015-01-28T21:42:35Z otwieracz: I have to investigate error: returning 'int' from a function with incompatible result type '__m64' (vector of 1 'long long' value) 2015-01-28T21:42:39Z otwieracz: ooops 2015-01-28T21:42:44Z oGMo: otwieracz: there appears to be a C api ... 2015-01-28T21:42:52Z otwieracz: I have to investigate: http://opencv-python-tutroals.readthedocs.org/en/latest/py_tutorials/py_bindings/py_bindings_basics/py_bindings_basics.html#bindings-basics 2015-01-28T21:42:54Z |3b|: yeah, i've thought about working on opencv bindings, but too many things to do :/ 2015-01-28T21:43:10Z otwieracz: oGMo: „please forget, that a c-api ever existed. it died years ago” 2015-01-28T21:43:12Z |3b| 's understanding is that the C api isn't as good as the c++ api 2015-01-28T21:43:17Z |3b|: yeah 2015-01-28T21:43:27Z jgrant joined #lisp 2015-01-28T21:43:28Z _leb joined #lisp 2015-01-28T21:43:48Z oGMo: ahh figures 2015-01-28T21:45:59Z oGMo: c2ffi itself should parse a lot of C++ now, and i'm working on fixing issues as they arise.. in theory you could use the json directly and generate stuff, but i don't know what that would involve besides a fair amount of work 2015-01-28T21:46:01Z Ober_ is now known as Ober 2015-01-28T21:46:39Z otwieracz: Well. 2015-01-28T21:46:47Z oGMo: the linked document seems to indicate it's generating C++, which you could do, then generate your own simplified C api, and call that from CL 2015-01-28T21:46:47Z otwieracz: Maybe after my exam session. 2015-01-28T21:46:50Z oGMo: hah 2015-01-28T21:47:14Z otwieracz: oGMo: Yes, that's exactly what I was thinking about 2015-01-28T21:47:20Z otwieracz: oGMo: But I feel that it's wrong way :) 2015-01-28T21:47:38Z oGMo: otwieracz: well, there's not really a good way to call C++ 2015-01-28T21:47:41Z oGMo: so, yeah 2015-01-28T21:47:56Z BlueRavenGT quit (Read error: Connection reset by peer) 2015-01-28T21:47:56Z otwieracz: There are two alternatives to do it great: 2015-01-28T21:47:59Z nopf quit (Ping timeout: 244 seconds) 2015-01-28T21:48:01Z drmeister: Xach: If a quicklisp library depends on implementation specific details - do I contact the author of the system to make changes? 2015-01-28T21:48:26Z otwieracz: 1) treat OpenCV as testing field and improve cl-autowrap a loooooot to make it working with OpenCV (and tons of other stuff) out of the bo 2015-01-28T21:48:29Z otwieracz: x 2015-01-28T21:48:30Z rotty quit (Ping timeout: 244 seconds) 2015-01-28T21:49:22Z gravicappa quit (Remote host closed the connection) 2015-01-28T21:49:53Z otwieracz: 2) with Python generator as example, create special OpenCV-CL binding generator 2015-01-28T21:49:59Z mrcom quit (Quit: "Argh. Mac network gets so confused...") 2015-01-28T21:49:59Z oGMo: otwieracz: #1 could actually be broken down into the relatively simple tasks of generating C bindings for C++, then some syntax sugar in autowrap, which is my eventual goal 2015-01-28T21:50:28Z otwieracz: oGMo: I think there should be no intermediate step 2015-01-28T21:50:40Z |3b|: don't forget 3, optimize clasp until it is fast enough to use for whatever you are doing :) 2015-01-28T21:50:52Z oGMo: or that heh 2015-01-28T21:51:04Z |3b|: otwieracz: you pretty much need to generate a C api 2015-01-28T21:51:05Z oGMo: i think that's a fair amount of work itself ;) 2015-01-28T21:51:49Z oGMo: otwieracz: and yes, a C api is a must; you literally cannot call C++ generally without a C++ compiler, which i suppose is a #4 .. write a C++ compiler in CL :P 2015-01-28T21:52:06Z |3b|: either that or keep around an entire C++ compiler at runtime and effectively generate a C api on the fly 2015-01-28T21:52:11Z drmeister: I'm integrating Cleavir into Clasp now. I hope to have it generating performant code soon. 2015-01-28T21:52:24Z oGMo: a C binding generator could easily handle templates, overloading, etc, by making the C++ compiler do all the work 2015-01-28T21:52:27Z otwieracz: Friend of mine (mrSpec, hello) have already some experience with compilers 2015-01-28T21:52:43Z otwieracz: mrSpec: Hey, man, could you please write C++ compiler in CL? 2015-01-28T21:52:49Z oGMo: heh 2015-01-28T21:52:51Z mrSpec: haha ;) 2015-01-28T21:52:57Z mrSpec: Hi guys 2015-01-28T21:52:58Z |3b|: that doesn't really help, unless you also make it very fast 2015-01-28T21:53:09Z oGMo: CL backend for llvm? wait, we're going in circles 2015-01-28T21:53:11Z |3b| suspects really slow opencv would be counterproductive :p 2015-01-28T21:53:25Z |3b|: better to just write opencv in CL instead 2015-01-28T21:53:36Z oGMo: another possibility 2015-01-28T21:54:07Z |3b|: c++ isn't compatible with c++ either, so you need a specific c++ compiler not just any 2015-01-28T21:54:20Z oGMo: ah right ;/ 2015-01-28T21:54:28Z nopf joined #lisp 2015-01-28T21:55:14Z rotty joined #lisp 2015-01-28T21:55:28Z |3b|: so you either need one good enough to compile all of opencv with performance you want, or you need to track every single other c++ compiler on every platform you care about, and reverse engineer how they do things 2015-01-28T21:56:34Z drmeister: otwieracz: You know that I've integrated a C++ compiler into CL - right? 2015-01-28T21:56:44Z otwieracz: drmeister: what 2015-01-28T21:56:58Z otwieracz: drmeister: or better 2015-01-28T21:56:58Z drmeister: Your not from 'round here are you? 2015-01-28T21:57:00Z otwieracz: drmeister: WAT? 2015-01-28T21:57:13Z otwieracz: drmeister: I am not following #lisp discussions all the time, right. 2015-01-28T21:57:26Z |3b|: otwieracz: that's the "clasp" i mentioned earlier 2015-01-28T21:57:29Z otwieracz: ah 2015-01-28T21:57:46Z drmeister: otwieracz: Yeah, I wrote a Common Lisp implementation (called Clasp) that uses LLVM as it's backend. I've incorporated a lot of clang (C++ compiler) into Clasp. 2015-01-28T21:58:23Z drmeister: Better yet, it interoperates smoothly with C++. C++ functions call Common Lisp, Common Lisp functions call C++. 2015-01-28T21:58:55Z otwieracz: You guys are crazy. 2015-01-28T21:59:02Z drmeister: It's designed for performant scientific programming and its designed to facilitate exposure of C++ libraries to Common Lisp. 2015-01-28T21:59:07Z drmeister: github.com/drmeister/clasp 2015-01-28T21:59:13Z aretecode joined #lisp 2015-01-28T21:59:16Z otwieracz: And I am really jelous about your time. 2015-01-28T21:59:25Z kuzy000_ quit (Ping timeout: 264 seconds) 2015-01-28T22:00:06Z nand1 joined #lisp 2015-01-28T22:00:58Z otwieracz: drmeister: But how complete is clasp? 2015-01-28T22:01:25Z sheilong joined #lisp 2015-01-28T22:01:31Z drmeister: Hmm, I've got about 18 of the 978 CL standard symbols left to implement. It runs ASDF, SLIME and Quicklisp. 2015-01-28T22:01:45Z JuanDaugherty quit (Remote host closed the connection) 2015-01-28T22:02:04Z otwieracz: huh 2015-01-28T22:02:06Z eudoxia: drmeister: what sort of libraries are you planning to bind? OpenBabel? 2015-01-28T22:02:17Z otwieracz: And it just works with C/C++? 2015-01-28T22:02:20Z drmeister: Everything and anything useful. 2015-01-28T22:02:25Z drmeister: Yes, it just works. 2015-01-28T22:02:45Z drmeister: Name mangling, exceptions, virtual functions, C++ classes - you name it. 2015-01-28T22:02:46Z enitiz quit (Ping timeout: 265 seconds) 2015-01-28T22:03:04Z otwieracz: And you are deadly serious? 2015-01-28T22:03:19Z mrSpec: otwieracz: just get it and try it out! 2015-01-28T22:03:23Z Bicyclidine: he's got a DoD grant, mon 2015-01-28T22:03:24Z ehu: otwieracz: i think he is :-) 2015-01-28T22:03:26Z drmeister: More deadly than you can imagine. 2015-01-28T22:03:51Z nyef: otwieracz: Don't mess with a chemist. They can really mess you up. 2015-01-28T22:04:31Z drmeister: otwieracz: Note: the code that it currently generates is not terribly fast - I'm incorporating a new front end to the compiler that I believe will compete with any other Common Lisp. 2015-01-28T22:04:50Z drmeister: Give me a couple of weeks and it'll knock your socks off. 2015-01-28T22:05:09Z slyrus_ joined #lisp 2015-01-28T22:06:17Z slyrus quit (Ping timeout: 256 seconds) 2015-01-28T22:06:22Z ebrasca quit (Remote host closed the connection) 2015-01-28T22:06:31Z ebrasca joined #lisp 2015-01-28T22:06:39Z rhllor quit (Quit: rhllor) 2015-01-28T22:06:43Z slyrus_ is now known as slyrus 2015-01-28T22:07:47Z DrCode quit (Ping timeout: 250 seconds) 2015-01-28T22:09:10Z eazar001 quit (Quit: WeeChat 1.1) 2015-01-28T22:09:16Z drmeister: otwieracz: There's something else. 2015-01-28T22:09:52Z Ralt: hello 2015-01-28T22:10:12Z Ralt: I'm trying to get the output of a command using external-program, with no luck 2015-01-28T22:10:15Z drmeister: Clasp also exposes the clang AST and ASTMatcher libraries. You can use it to parse large numbers of C++ source files and analyze the AST to pull out information on whatever you want. 2015-01-28T22:10:18Z Ralt: is there any example of someone doing that? 2015-01-28T22:10:44Z drmeister: You can use to to automatically generate FFI code for your C++ library that will work on any Common Lisp. 2015-01-28T22:10:58Z eazar001 joined #lisp 2015-01-28T22:11:00Z drmeister: I haven't done this yet - I'm waiting for someone to approach me to help them. 2015-01-28T22:11:32Z |3b|: drmeister: yeah, that's the part missing from cl-autowrap too :p 2015-01-28T22:11:45Z drmeister: It will make Swig look like a toy. 2015-01-28T22:12:03Z |3b|: (actually generating c++ bindings that is) 2015-01-28T22:12:15Z nyef: "It will make Swig look like something you'd do to a beverage." 2015-01-28T22:12:29Z otwieracz: drmeister: So you are telling me 2015-01-28T22:12:52Z otwieracz: drmeister: That within few weeks we will have Common Lisp implementation compatibile with all C/C++ libraries 2015-01-28T22:13:02Z drmeister: I currently use it to analyze 178 C++ source files (the clasp source code) and build an interface between Clasp and the MPS copying garbage collector. It analyzes tens of thousands of classes and builds 18,525 lines of C++ code that define the interface. 2015-01-28T22:13:05Z otwieracz: drmeister: So this means with *all* libraries 2015-01-28T22:13:06Z eudoxia: Ralt: (with-output-to-string (stream) (external-program:run "ls" nil :output stream)) 2015-01-28T22:13:12Z drmeister: Yes. 2015-01-28T22:13:15Z Ralt: eudoxia: thanks. 2015-01-28T22:13:34Z drmeister: It's there now. I'm just making it faster. 2015-01-28T22:13:57Z otwieracz: x86(_64) only? 2015-01-28T22:14:07Z |3b|: drmeister: does clang work with msvc compiled c++ libraries? 2015-01-28T22:14:24Z drmeister: It's using LLVM - whatever works with LLVM. 2015-01-28T22:14:39Z drmeister: Currently Linux and OS X 2015-01-28T22:14:52Z eudoxia: |3b|: if the naming convention differs probs not 2015-01-28T22:15:10Z Lokathor joined #lisp 2015-01-28T22:15:19Z |3b|: eudoxia: naming convention is the least of it 2015-01-28T22:15:35Z |3b|: apparently they try to, but it is "a work in progress" 2015-01-28T22:15:46Z drmeister: |3b| "works" depends on what you want - Clasp won't work on Windows yet because clang doesn't support exception handling on Windows. 2015-01-28T22:16:00Z drmeister: Good people are working on this I'm sure. 2015-01-28T22:16:04Z DrCode joined #lisp 2015-01-28T22:16:06Z eudoxia: wait, what do you mean with that 2015-01-28T22:16:13Z eudoxia: LLVM can't generate code for exception handling? 2015-01-28T22:16:42Z drmeister: eudoxia: When I checked a couple of months ago clang doesn't support exception handling on Windows. 2015-01-28T22:16:51Z badkins quit 2015-01-28T22:16:58Z |3b|: eudoxia: that's one of the "harder than name mangling" bits 2015-01-28T22:17:15Z |3b| suspects clang can do exceptions fine on windows if it doesn't try to be msvc compatible 2015-01-28T22:17:15Z otwieracz: drmeister: "I gave you four weeks" 2015-01-28T22:17:57Z ehu quit (Ping timeout: 244 seconds) 2015-01-28T22:18:53Z |3b|: on other platforms, "compile with clang" is probably a reasonable solution 2015-01-28T22:20:59Z otwieracz: drmeister: OK, that's great news 2015-01-28T22:20:59Z dkcl quit (Read error: Connection reset by peer) 2015-01-28T22:21:12Z dkcl joined #lisp 2015-01-28T22:21:25Z drmeister: By the way what are you interested in doing? I came to the conversation late. 2015-01-28T22:21:26Z otwieracz: drmeister: Really, I am fascinated. :) 2015-01-28T22:21:37Z otwieracz: drmeister: I am willing to use OpenCV with Common Lisp. 2015-01-28T22:22:31Z eudoxia: speaking of bindings, today i tried to write some libyaml bindings and ran into all sorts of awful memory errors. hopefully Clasp will help shield my delicate lisper sensibilities from the horrors of memory and pointers. 2015-01-28T22:22:40Z drmeister: Hmm, I recall someone else was talking about OpenCV a while ago. 2015-01-28T22:23:23Z |3b|: lots of people want to use OpenCV, but get stuck on the c++ api : 2015-01-28T22:23:27Z |3b|: :( 2015-01-28T22:23:50Z drmeister: eudoxia: I've been very pleased with how little I've had to deal with points and memory issues when interfacing C++ libraries to Clasp. 2015-01-28T22:23:53Z |3b|: someone was working on bindings for a while but not seeming to have much luck, don't know what happened to that 2015-01-28T22:24:03Z enitiz joined #lisp 2015-01-28T22:24:08Z drmeister: s/points/pointers/ 2015-01-28T22:24:42Z drmeister: What was that guys handle - he had a tutor or something working with him? 2015-01-28T22:24:55Z drmeister: joe-something-something 2015-01-28T22:25:06Z |3b|: yeah, sounds right 2015-01-28T22:27:01Z otwieracz: btw, how it is in abcl? 2015-01-28T22:27:04Z drmeister: Does anyone know how to get a list of directories that ASDF searches for .asd files? 2015-01-28T22:28:05Z |3b| isn't sure you can in the general case, i think it has a list of functions to call to look for files 2015-01-28T22:28:30Z White__Flame: beyond asdf:*central-registry*? 2015-01-28T22:29:16Z |3b|: one of the functions searches that 2015-01-28T22:29:33Z |3b|: looks like asdf:*system-definition-search-functions* is the list of functions 2015-01-28T22:29:46Z White__Flame is now known as White_Flame 2015-01-28T22:30:42Z |3b|: in particular i think the quicklisp functions that might be on that list don't "search directories" as such, they look things up in a list of known systems 2015-01-28T22:31:06Z Bicyclidine: http://common-lisp.net/project/asdf/asdf/Search-Algorithm.html#Search-Algorithm iiiiit's complicated 2015-01-28T22:31:33Z hiroakip joined #lisp 2015-01-28T22:34:12Z otwieracz: OK guys. Goodnight! 2015-01-28T22:36:24Z drmeister: Good night. 2015-01-28T22:36:40Z _leb quit (Quit: Computer has gone to sleep.) 2015-01-28T22:37:24Z shaungilchrist quit (Ping timeout: 272 seconds) 2015-01-28T22:37:50Z pierre1_ quit (Quit: Leaving) 2015-01-28T22:38:29Z drmeister: How does one use asdf:*central-registry*? 2015-01-28T22:39:02Z drmeister: It's been explained to me but when I tried I failed because I had bugs in my implementation. I think I'm ready to try again. 2015-01-28T22:39:45Z |3b|: push directories onto it containing .asd files, or symbolic links to them 2015-01-28T22:40:25Z |3b| isn't sure if it wants pathnames or designators, so woujld probably use #p to be sure 2015-01-28T22:40:39Z drmeister: Got it. That sounds perfect. I've been messing with ~/.config/common-lisp/source-registry.conf.d/##-XXX.conf files 2015-01-28T22:40:39Z cmack joined #lisp 2015-01-28T22:40:52Z |3b|: yeah, that's the more general solution 2015-01-28T22:42:09Z nyef: I'm fairly sure it's designators. 2015-01-28T22:42:12Z drmeister: Does asdf search through the tree pointed to by the directories you push into asdf:*central-registry* or just the specific directories you push? 2015-01-28T22:42:34Z |3b|: just the specific directory i think 2015-01-28T22:43:24Z |3b|: originally the idea was to have a directory just containing symbolic links to all the .asd files you want to use 2015-01-28T22:43:30Z drmeister: I kind of recall that. I recall that beach descends through the tree of sick directories and pushes them one by one. 2015-01-28T22:44:35Z |3b|: the full configuration (with conf files or runtime config api) allows searching 2015-01-28T22:45:21Z bb010g joined #lisp 2015-01-28T22:45:25Z drmeister: Yes, I use conf files but I'm setting up on a new machine and ho boy - I have to remember to move all this configuration stuff as well. 2015-01-28T22:45:29Z wheelsucker quit (Quit: Client Quit) 2015-01-28T22:45:44Z shaungilchrist joined #lisp 2015-01-28T22:46:58Z drmeister: Finally! I generated a HIR graph on the new machine. 2015-01-28T22:47:10Z drmeister: (hir-form '(lambda (x) x)) 2015-01-28T22:47:25Z joneshf-laptop joined #lisp 2015-01-28T22:47:27Z hellofunk quit (Ping timeout: 246 seconds) 2015-01-28T22:47:40Z drmeister: http://imgur.com/pFRb2O6 2015-01-28T22:47:58Z jtza8 quit (Remote host closed the connection) 2015-01-28T22:48:22Z drmeister: This machine has a big display (an old Apple Cinema display 30") I can see more HIR. 2015-01-28T22:50:30Z ovidnis quit (Remote host closed the connection) 2015-01-28T22:50:54Z robot-beethoven joined #lisp 2015-01-28T22:51:08Z fantazo joined #lisp 2015-01-28T22:51:48Z JuanDaugherty joined #lisp 2015-01-28T22:52:52Z drmeister: (directory "sys:kernel;contrib;sicl;**;") is appropriate if I want to get a list of all directories recursively within #P"sys:kernel;contrib;sicl;" - correct? 2015-01-28T22:54:40Z jtz quit (Quit: WeeChat 1.0.1) 2015-01-28T22:55:57Z pillton: The (:tree ) form supported by ASDF's conf file is pretty good. Sometimes you have to invoke (asdf:clear-source-registry) in order for ASDF to pick up new .asd files. 2015-01-28T22:56:13Z fantazo quit (Quit: Verlassend) 2015-01-28T22:56:45Z edgar-rft quit (Quit: you are not expected to understand this message) 2015-01-28T22:58:07Z yrk quit (Quit: ERC (IRC client for Emacs 25.0.50.1)) 2015-01-28T22:58:12Z ivan\ quit (Remote host closed the connection) 2015-01-28T22:58:51Z ivan\ joined #lisp 2015-01-28T22:58:56Z ivan\ quit (Changing host) 2015-01-28T22:58:56Z ivan\ joined #lisp 2015-01-28T22:59:34Z xificurC quit (Ping timeout: 272 seconds) 2015-01-28T23:01:29Z Vivitron quit (Ping timeout: 252 seconds) 2015-01-28T23:05:13Z impulse quit (Ping timeout: 255 seconds) 2015-01-28T23:08:03Z cadadar quit (Ping timeout: 256 seconds) 2015-01-28T23:09:27Z eudoxia quit (Quit: Leaving) 2015-01-28T23:14:08Z mrSpec quit (Quit: mrSpec) 2015-01-28T23:15:13Z quazimodo joined #lisp 2015-01-28T23:15:45Z enitiz quit (Ping timeout: 265 seconds) 2015-01-28T23:21:35Z cmack` joined #lisp 2015-01-28T23:24:34Z cmack quit (Ping timeout: 255 seconds) 2015-01-28T23:26:29Z fridim_ quit (Ping timeout: 245 seconds) 2015-01-28T23:28:55Z arnaudga joined #lisp 2015-01-28T23:36:26Z Vivitron joined #lisp 2015-01-28T23:39:59Z araujo quit (Ping timeout: 252 seconds) 2015-01-28T23:40:24Z Ethan- joined #lisp 2015-01-28T23:41:31Z EvW quit (Remote host closed the connection) 2015-01-28T23:41:41Z EvW joined #lisp 2015-01-28T23:43:15Z badkins joined #lisp 2015-01-28T23:44:29Z dagnachew joined #lisp 2015-01-28T23:44:37Z BlueRavenGT joined #lisp 2015-01-28T23:49:41Z Jesin quit (Quit: Leaving) 2015-01-28T23:51:10Z dkcl quit (Read error: Connection reset by peer) 2015-01-28T23:51:15Z dandersen joined #lisp 2015-01-28T23:52:03Z dandersen quit (Remote host closed the connection) 2015-01-28T23:53:20Z Jesin joined #lisp 2015-01-28T23:54:03Z mishoo quit (Ping timeout: 264 seconds) 2015-01-28T23:54:22Z Karl_Dscc quit (Remote host closed the connection) 2015-01-28T23:56:04Z antgreen joined #lisp 2015-01-28T23:59:47Z rvchangu- quit (Ping timeout: 252 seconds)