2014-11-14T00:01:45Z usrj_ joined #lisp 2014-11-14T00:03:28Z usrj quit (Ping timeout: 264 seconds) 2014-11-14T00:05:37Z usrj joined #lisp 2014-11-14T00:09:15Z usrj_ quit (Ping timeout: 272 seconds) 2014-11-14T00:11:16Z zRecursive joined #lisp 2014-11-14T00:14:52Z pecg quit (Quit: WeeChat 1.0.1) 2014-11-14T00:16:23Z usrj quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2014-11-14T00:16:44Z usrj joined #lisp 2014-11-14T00:18:27Z usrj quit (Client Quit) 2014-11-14T00:19:09Z usrj joined #lisp 2014-11-14T00:19:38Z paul0``` joined #lisp 2014-11-14T00:23:01Z LiamH quit (Quit: Leaving.) 2014-11-14T00:23:37Z paul0`` quit (Ping timeout: 245 seconds) 2014-11-14T00:24:32Z mishoo quit (Ping timeout: 256 seconds) 2014-11-14T00:24:40Z miql quit (Ping timeout: 265 seconds) 2014-11-14T00:31:35Z joshe joined #lisp 2014-11-14T00:33:30Z nha_ joined #lisp 2014-11-14T00:34:04Z protist quit (Ping timeout: 264 seconds) 2014-11-14T00:35:14Z harish quit (Ping timeout: 265 seconds) 2014-11-14T00:36:04Z nha quit (Ping timeout: 245 seconds) 2014-11-14T00:36:39Z Guest10068 joined #lisp 2014-11-14T00:36:42Z miql joined #lisp 2014-11-14T00:41:10Z yuikov joined #lisp 2014-11-14T00:41:17Z impulse quit (Ping timeout: 264 seconds) 2014-11-14T00:41:52Z miql quit (Ping timeout: 264 seconds) 2014-11-14T00:41:55Z fragamus quit (Quit: My iMac has gone to sleep. ZZZzzz…) 2014-11-14T00:42:07Z usrj_ joined #lisp 2014-11-14T00:42:47Z impulse joined #lisp 2014-11-14T00:42:57Z usrj_ quit (Client Quit) 2014-11-14T00:43:13Z usrj quit (Remote host closed the connection) 2014-11-14T00:43:40Z usrj joined #lisp 2014-11-14T00:44:03Z urandom__ quit (Quit: Konversation terminated!) 2014-11-14T00:47:09Z oleo__ joined #lisp 2014-11-14T00:47:43Z oleo is now known as Guest22182 2014-11-14T00:48:17Z Guest22182 quit (Ping timeout: 240 seconds) 2014-11-14T00:48:36Z sheilong joined #lisp 2014-11-14T00:55:49Z usrj quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2014-11-14T00:56:47Z fortitude quit (Quit: leaving) 2014-11-14T01:00:23Z vaporatorius quit (Remote host closed the connection) 2014-11-14T01:01:41Z billstclair quit (Ping timeout: 264 seconds) 2014-11-14T01:03:51Z miql joined #lisp 2014-11-14T01:06:50Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T01:08:25Z miql quit (Ping timeout: 244 seconds) 2014-11-14T01:09:29Z stepnem quit (Ping timeout: 264 seconds) 2014-11-14T01:14:02Z rvchangue quit (Ping timeout: 245 seconds) 2014-11-14T01:17:02Z rvchangue joined #lisp 2014-11-14T01:17:46Z Guest10068 quit (Quit: cyphase.com) 2014-11-14T01:17:51Z ehaliewicz quit (Remote host closed the connection) 2014-11-14T01:18:10Z cyphase joined #lisp 2014-11-14T01:18:40Z ehaliewicz joined #lisp 2014-11-14T01:26:05Z ehaliewicz quit (Remote host closed the connection) 2014-11-14T01:27:47Z EvW joined #lisp 2014-11-14T01:27:55Z ehaliewicz joined #lisp 2014-11-14T01:30:10Z mdibound joined #lisp 2014-11-14T01:31:02Z miql joined #lisp 2014-11-14T01:35:35Z miql quit (Ping timeout: 255 seconds) 2014-11-14T01:35:51Z harish joined #lisp 2014-11-14T01:52:37Z usrj joined #lisp 2014-11-14T01:58:17Z miql joined #lisp 2014-11-14T02:01:29Z stassats quit (Ping timeout: 245 seconds) 2014-11-14T02:03:16Z miql quit (Ping timeout: 265 seconds) 2014-11-14T02:03:23Z henesy joined #lisp 2014-11-14T02:08:22Z nand1` joined #lisp 2014-11-14T02:12:04Z innertracks1 quit (Quit: innertracks1) 2014-11-14T02:12:07Z nand1 quit (Ping timeout: 250 seconds) 2014-11-14T02:12:21Z effy_ joined #lisp 2014-11-14T02:13:20Z teiresias quit (Ping timeout: 256 seconds) 2014-11-14T02:14:57Z teiresias joined #lisp 2014-11-14T02:15:04Z teiresias quit (Changing host) 2014-11-14T02:15:04Z teiresias joined #lisp 2014-11-14T02:15:23Z effy quit (Ping timeout: 240 seconds) 2014-11-14T02:17:53Z kanru` joined #lisp 2014-11-14T02:25:10Z xrash joined #lisp 2014-11-14T02:25:26Z miql joined #lisp 2014-11-14T02:28:09Z aretecode quit (Quit: Toodaloo) 2014-11-14T02:30:16Z miql quit (Ping timeout: 265 seconds) 2014-11-14T02:31:52Z tbarletz quit (Remote host closed the connection) 2014-11-14T02:34:21Z vowyer_ joined #lisp 2014-11-14T02:34:46Z zRecursive: clhs ldb 2014-11-14T02:34:46Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_ldb.htm 2014-11-14T02:35:38Z nand1` quit (Remote host closed the connection) 2014-11-14T02:35:48Z sheilong quit (Quit: Konversation terminated!) 2014-11-14T02:36:07Z echo-area joined #lisp 2014-11-14T02:38:50Z vowyer_ quit (Ping timeout: 244 seconds) 2014-11-14T02:39:31Z vowyer_ joined #lisp 2014-11-14T02:43:47Z hiyosi quit (Ping timeout: 272 seconds) 2014-11-14T02:45:33Z BitPuffin quit (Ping timeout: 244 seconds) 2014-11-14T02:47:40Z EvW quit (Ping timeout: 265 seconds) 2014-11-14T02:48:52Z vowyer_ quit (Quit: C-x C-c) 2014-11-14T02:50:02Z stassats joined #lisp 2014-11-14T02:50:04Z stassats quit (Changing host) 2014-11-14T02:50:04Z stassats joined #lisp 2014-11-14T02:50:07Z stassats quit (Client Quit) 2014-11-14T02:50:46Z usrj quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-11-14T02:51:17Z innertracks joined #lisp 2014-11-14T02:52:38Z miql joined #lisp 2014-11-14T02:54:20Z wooden quit (Ping timeout: 244 seconds) 2014-11-14T02:56:27Z ehaliewicz quit (Ping timeout: 272 seconds) 2014-11-14T02:57:29Z miql quit (Ping timeout: 255 seconds) 2014-11-14T03:04:49Z Bicyclidine quit (Ping timeout: 245 seconds) 2014-11-14T03:05:33Z madmalik quit (Quit: Connection closed for inactivity) 2014-11-14T03:07:11Z yuikov quit (Remote host closed the connection) 2014-11-14T03:14:45Z wooden joined #lisp 2014-11-14T03:19:49Z miql joined #lisp 2014-11-14T03:21:18Z jlarocco quit (Quit: This computer has gone to sleep) 2014-11-14T03:24:17Z emaczen joined #lisp 2014-11-14T03:24:38Z jlarocco joined #lisp 2014-11-14T03:24:53Z miql quit (Ping timeout: 265 seconds) 2014-11-14T03:28:31Z beach joined #lisp 2014-11-14T03:28:39Z beach: Good morning everyone! 2014-11-14T03:28:44Z nyef: Hello beach. 2014-11-14T03:29:04Z nyef: Oh, for the... Our spambot of the day is "jortanna". 2014-11-14T03:35:45Z dmiles_afk joined #lisp 2014-11-14T03:38:13Z ack006 quit (Quit: Leaving) 2014-11-14T03:38:30Z Oddity joined #lisp 2014-11-14T03:39:30Z a20141112 joined #lisp 2014-11-14T03:39:41Z hiyosi joined #lisp 2014-11-14T03:41:33Z chitofan joined #lisp 2014-11-14T03:43:04Z eazar001 quit (Quit: WeeChat 1.0.1) 2014-11-14T03:43:23Z eazar001 joined #lisp 2014-11-14T03:43:27Z guythatneedshelp joined #lisp 2014-11-14T03:43:27Z jlarocco quit (Read error: Connection reset by peer) 2014-11-14T03:43:53Z jlarocco joined #lisp 2014-11-14T03:44:13Z redline6561 quit (Ping timeout: 265 seconds) 2014-11-14T03:44:18Z Vivitron` joined #lisp 2014-11-14T03:44:43Z minion quit (Disconnected by services) 2014-11-14T03:44:45Z minion joined #lisp 2014-11-14T03:44:57Z hiyosi quit (Ping timeout: 258 seconds) 2014-11-14T03:45:11Z antoszka quit (Ping timeout: 255 seconds) 2014-11-14T03:45:12Z tvaalen quit (Ping timeout: 255 seconds) 2014-11-14T03:46:30Z Lefeni joined #lisp 2014-11-14T03:46:47Z antoszka joined #lisp 2014-11-14T03:47:01Z miql joined #lisp 2014-11-14T03:47:02Z wormphlegm quit (Ping timeout: 244 seconds) 2014-11-14T03:47:10Z tvaalen joined #lisp 2014-11-14T03:47:26Z Vivitron quit (Remote host closed the connection) 2014-11-14T03:47:30Z munge quit (Read error: Connection reset by peer) 2014-11-14T03:47:38Z wormphlegm joined #lisp 2014-11-14T03:47:44Z munge joined #lisp 2014-11-14T03:48:55Z redline6561 joined #lisp 2014-11-14T03:51:22Z drl joined #lisp 2014-11-14T03:51:51Z miql quit (Ping timeout: 258 seconds) 2014-11-14T03:53:19Z drl quit (Client Quit) 2014-11-14T03:55:08Z Nilly joined #lisp 2014-11-14T03:56:34Z jortanna quit (K-Lined) 2014-11-14T04:04:19Z KarlDscc joined #lisp 2014-11-14T04:07:47Z Karl_Dscc quit (Ping timeout: 245 seconds) 2014-11-14T04:09:03Z bgs100 quit (Quit: bgs100) 2014-11-14T04:10:03Z Lefeni quit (Quit: Leaving) 2014-11-14T04:10:25Z Bicyclidine joined #lisp 2014-11-14T04:11:02Z echo-area quit (Read error: Connection reset by peer) 2014-11-14T04:12:11Z echo-area joined #lisp 2014-11-14T04:14:13Z miql joined #lisp 2014-11-14T04:15:39Z Bicyclidine quit (Ping timeout: 245 seconds) 2014-11-14T04:19:05Z miql quit (Ping timeout: 264 seconds) 2014-11-14T04:24:50Z kcj joined #lisp 2014-11-14T04:33:32Z emaczen quit (Ping timeout: 244 seconds) 2014-11-14T04:38:42Z kuimacro quit (Ping timeout: 244 seconds) 2014-11-14T04:41:24Z miql joined #lisp 2014-11-14T04:45:29Z Nilly quit (Ping timeout: 264 seconds) 2014-11-14T04:45:35Z erratis joined #lisp 2014-11-14T04:45:57Z miql quit (Ping timeout: 250 seconds) 2014-11-14T04:49:30Z xrash quit (Ping timeout: 250 seconds) 2014-11-14T04:53:34Z guythatneedshelp quit (Ping timeout: 245 seconds) 2014-11-14T04:53:53Z juiko quit (Ping timeout: 264 seconds) 2014-11-14T04:54:47Z shortCircuit__ joined #lisp 2014-11-14T04:56:15Z hiyosi joined #lisp 2014-11-14T05:01:05Z hiyosi quit (Ping timeout: 264 seconds) 2014-11-14T05:04:07Z chu joined #lisp 2014-11-14T05:04:56Z nyef quit (Quit: G'night all) 2014-11-14T05:08:34Z miql joined #lisp 2014-11-14T05:09:11Z chu quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-11-14T05:10:22Z anannie quit (Ping timeout: 240 seconds) 2014-11-14T05:13:01Z miql quit (Ping timeout: 244 seconds) 2014-11-14T05:15:47Z Guest8818 joined #lisp 2014-11-14T05:15:57Z drmeister: beach: It took me all day to get back to this but it works now - thanks for the fix! 2014-11-14T05:16:32Z drmeister: http://imgur.com/VMVOLdE 2014-11-14T05:17:12Z drmeister: That's for: (let ((x 1) (y 2)) (+ x y)) 2014-11-14T05:19:37Z drmeister: What are the corresponding functions for HIR? 2014-11-14T05:19:53Z Guest8818 quit (Ping timeout: 240 seconds) 2014-11-14T05:20:45Z a20141112 quit (Quit: Page closed) 2014-11-14T05:22:58Z beach: drmeister: You should be able to translate the AST to HIR by using the system in the directory AST-to-HIR. I think it is called cleavir-ast-to-hir. 2014-11-14T05:23:51Z beach: drmeister: In the next few days I will be making some modifications to that system. I hope they won't affect you. 2014-11-14T05:24:26Z drmeister: That's ok, I'm just getting my feet wet. I have a meeting on Tuesday that I need to prepare for so I can't dive into programming just yet. 2014-11-14T05:24:40Z beach: OK, that works. 2014-11-14T05:24:53Z drmeister: What I've been doing over the past few days is my basal level of programming. 2014-11-14T05:24:54Z beach: Did you find the problem with your special bindings? 2014-11-14T05:25:35Z drmeister: Yeah - I had screwed up the compile-time side effects of defparameter/defvar/defconstant - there were none. 2014-11-14T05:26:01Z beach: I see. 2014-11-14T05:26:16Z drmeister: The reason why I could still compile my source code is I LOAD everything before I COMPILE-FILE everything. 2014-11-14T05:26:34Z beach: Ah, so the LOAD took care of the side effects? 2014-11-14T05:26:37Z drmeister: The problem only surfaced when ASDF compiled SICL code. 2014-11-14T05:26:45Z drmeister: Yeah. 2014-11-14T05:27:32Z beach: One thing you should think of: 2014-11-14T05:28:01Z beach: When you translate a form to an AST, an error is signaled if a symbol can't be found in the global env. 2014-11-14T05:28:13Z beach: But there are restarts that you can use. 2014-11-14T05:28:20Z drmeister: It was a conjunction of problems. I'm using ECL code - the ECL code does tests for a byte code compiler that I don't have and calls a function called REGISTER-GLOBAL that should register a symbol as being special in the compile-time environment. 2014-11-14T05:28:45Z drmeister: I don't have a special compile-time environment. I just modify my runtime environment. It's all about environments. 2014-11-14T05:28:46Z beach: I myself use the restart CONSIDER-SPECIAL when doing test code. 2014-11-14T05:29:12Z beach: All about environments, indeed. 2014-11-14T05:29:22Z beach: That's why SICL has first-class global environments. 2014-11-14T05:29:33Z beach: It will make my life SO much easier. 2014-11-14T05:29:49Z drmeister: I'm beginning to appreciate them. 2014-11-14T05:30:30Z beach: It is clear to me that the people who wrote the standard thought about that possibility, but I know of no system that actually does it that way. 2014-11-14T05:30:57Z drmeister: I tried to generate ASTs for more complex code - I immediately ran into problems with lexical environments as you said I would. 2014-11-14T05:30:58Z ggole joined #lisp 2014-11-14T05:31:00Z beach: I guess all existing systems evolved from CLtL1 code. 2014-11-14T05:31:20Z drmeister: I don't understand 2014-11-14T05:31:21Z ggole quit (Read error: Connection reset by peer) 2014-11-14T05:31:34Z beach: I was talking to myself. 2014-11-14T05:32:00Z beach: I think we can figure out how to best solve the problems with lexical environments together. 2014-11-14T05:32:07Z drmeister: If I use my lexical environments - what will they have to provide cleavir? 2014-11-14T05:32:33Z beach: You will have to write methods on function-info and variable-info on those. 2014-11-14T05:33:00Z beach: It should be straightforward to do. 2014-11-14T05:33:06Z drmeister: I know variable-info and function-info - but variable-info has to provide info like types and ignore etc - correct? 2014-11-14T05:33:19Z beach: Yes. 2014-11-14T05:33:31Z beach: But it's safe to provide a type of T. 2014-11-14T05:34:49Z drmeister: Well, I might as well do it right. How does the type info get into the environment? Cleavir processes the S-expressions and reads the declares - does Cleavir augment the lexical environments? 2014-11-14T05:35:12Z beach: Yes, there are generic functions for that too. 2014-11-14T05:35:18Z beach: You have to supply methods on them. 2014-11-14T05:35:43Z drmeister: Where are those defined? 2014-11-14T05:35:44Z miql joined #lisp 2014-11-14T05:36:00Z beach: Cleavir/Environment/augmentation-functions.lisp 2014-11-14T05:36:09Z beach: Their names are add-... 2014-11-14T05:36:53Z beach: They are all side-effect free. They return an augmented environment. 2014-11-14T05:38:10Z drmeister: Is that it then? Implement the functions to augment the environments and interrogate them? 2014-11-14T05:38:19Z beach: In default-augmentation-classes, you an see how Cleavir itself implements those functions. 2014-11-14T05:38:29Z beach: Yes, I think that's it. 2014-11-14T05:38:49Z ggole joined #lisp 2014-11-14T05:40:06Z beach: The ...-info and add-... functions are basically a CLOS version of a more complete protocol than the one suggested in CLtL2. 2014-11-14T05:40:13Z cyphase quit (Read error: Connection reset by peer) 2014-11-14T05:40:42Z miql quit (Ping timeout: 265 seconds) 2014-11-14T05:40:54Z drmeister: When you augment lexical environments, it's one symbol at a time - correct? (let ((x 1) (y 2) (z 3)) ...) would generate three calls to augment the environment - correct? 2014-11-14T05:41:08Z beach: Correct. 2014-11-14T05:43:16Z drmeister: My environments have a ribcage structure. The LET example that I just gave you would generate one VALUE-ENVIRONMENT containing three bindings. I'm thinking I'll keep adding bindings to the current VALUE-ENVIRONMENT until a different type of symbol is added to the environment (like a tag body symbol or symbol-macro). 2014-11-14T05:43:41Z drmeister: If that doesn't make sense, don't worry about it. It will shake out when I sit down and actually try to implement this. 2014-11-14T05:43:49Z beach: You are creating unnecessary work for yourself by doing that I think. 2014-11-14T05:44:09Z beach: Are you worried about performance or memory use? 2014-11-14T05:44:16Z drmeister: I may be - but it works well for the CL interpreter that bootstraps everything. 2014-11-14T05:44:17Z beach: Wait until you get into optimizations. 2014-11-14T05:44:48Z protist joined #lisp 2014-11-14T05:45:10Z drmeister: A VALUE-ENVIRONMENT maps to a single VALUE-FRAME, an activation frame that stores three values. 2014-11-14T05:45:40Z drmeister: For this example. 2014-11-14T05:45:48Z beach: You can do what you want, but it will be more code, more special cases, and more things to maintain. 2014-11-14T05:46:15Z drmeister: I acknowledge that I may have overcomplicated things but it seemed like a good idea at the time. I got it from the book Lisp In Small Pieces. 2014-11-14T05:46:48Z beach: Computing resources looked different when that book was written. 2014-11-14T05:47:23Z Soft quit (Ping timeout: 240 seconds) 2014-11-14T05:47:32Z ssake quit (Ping timeout: 256 seconds) 2014-11-14T05:47:43Z ssake joined #lisp 2014-11-14T05:47:43Z drmeister: I thought it was supposed to map well to processor caches. 2014-11-14T05:47:43Z beach: By the way, you know that my wife created the English version, right? 2014-11-14T05:47:52Z beach: ... of LiSP. 2014-11-14T05:48:09Z drmeister: No, I did not. 2014-11-14T05:48:38Z drmeister: Does she program? 2014-11-14T05:48:44Z Soft joined #lisp 2014-11-14T05:48:45Z beach: Not anymore. 2014-11-14T05:48:55Z beach: Never did very much really. 2014-11-14T05:49:13Z beach: I am telling you, the environment functions will consume very little resources compared to the subsequent optimizations. 2014-11-14T05:49:33Z beach: Optimizing the cache performance there won't make epsilon difference in the end. 2014-11-14T05:49:56Z Bike: aren't the add- functions compile time stuff 2014-11-14T05:50:11Z beach: Yes, they are. Why? 2014-11-14T05:50:13Z drmeister: Right, but I need environments that will interoperate with my interpreter. Otherwise bye bye bootstrapping. 2014-11-14T05:50:44Z beach: drmeister: Your environment can not handle adding one variable at a time? 2014-11-14T05:50:45Z Bike: beach: just wanted to confirm my idea that this is pointless to optimize. 2014-11-14T05:50:53Z beach: Ah, yes. 2014-11-14T05:51:07Z cy quit (Quit: :q!) 2014-11-14T05:51:56Z beach: drmeister: Anyway, I should not get involved in how you do your programming. 2014-11-14T05:52:03Z beach: So I'll drop it now. 2014-11-14T05:53:11Z beach: Bike: There is a point to be made for compilation times to be reasonable. Even so, the quadratic (or worse) behavior of some optimization algorithms will dominate compilation times. 2014-11-14T05:53:25Z drmeister: Sure, they can but I'll probably lump bindings of a kind LET/TAGBODY/SYMBOL-MACRO together 2014-11-14T05:53:34Z ofosos joined #lisp 2014-11-14T05:53:39Z Bike: yeah i know. i just wanted to confirm you weren't talking a function call for every runtime stack manipulation. 2014-11-14T05:53:47Z beach: Right. 2014-11-14T05:54:14Z Bike: been writing a lot of µc code lately. makes you appreciate stacks 2014-11-14T05:54:35Z drmeister: With an a-list environment you might represent it like ((z . (:value)) (y . (:value)) (x. (:value))) 2014-11-14T05:54:37Z beach: Bike: Daytime job? 2014-11-14T05:54:49Z Bike: school 2014-11-14T05:54:55Z beach: Ah, OK. 2014-11-14T05:55:10Z drmeister: I would represent it like: ((value-enviironment . ( x y z)) ...) 2014-11-14T05:55:27Z Bike: it's nice being like, oh, this function doesn't call anything and doesn't use many registers, i'll just have it not touch the stack at all 2014-11-14T05:55:30Z beach: drmeister: I understand. 2014-11-14T05:55:46Z pjb: - 2014-11-14T05:56:33Z Bike: oh, i think i see drmeister's point now. 2014-11-14T05:56:36Z drmeister: My approach may cause problems if a variable get's elided out - say if the compiler decides it can be treated like a constant. 2014-11-14T05:56:46Z Bike: maybe it would be good to have a step going through collapsing environments for the runtime. 2014-11-14T05:57:34Z beach: Bike: In Cleavir I don't maintain those environments once HIR code is generated. 2014-11-14T05:58:15Z beach: Runtime stack frames are deduced from the resulting intermediate code. 2014-11-14T05:58:23Z Bike: yeah the issue looks like treating these compile-time-use environments as runtime-use environments might be a not great plan 2014-11-14T05:58:46Z beach: It might be a strategy for a very simple system. 2014-11-14T05:59:05Z drmeister: beach: Yes, that's what I understood - once I get back HIR I have to rejigger the activation frames somehow. 2014-11-14T06:00:10Z pranavrc joined #lisp 2014-11-14T06:00:11Z beach: drmeister: I know how to do that. Except that the current code does not work for non-local control transfer. That's what the modifications in the next few days are for. 2014-11-14T06:00:26Z pranavrc quit (Changing host) 2014-11-14T06:00:26Z pranavrc joined #lisp 2014-11-14T06:00:31Z drmeister: I'm not sure how it's all going to work out but I'm confident that the path will get us there. 2014-11-14T06:00:37Z drmeister: Story of my life. 2014-11-14T06:00:42Z beach: Heh! 2014-11-14T06:01:21Z mdibound left #lisp 2014-11-14T06:01:53Z beach: Bike: remind me where you are located? 2014-11-14T06:01:53Z pt1 joined #lisp 2014-11-14T06:02:06Z Bike: northwest united states 2014-11-14T06:02:18Z beach: Nice. 2014-11-14T06:02:25Z Bike: in the cold, cold desert 2014-11-14T06:02:33Z drmeister: beach: I've got non-local control transfer figured out for my current approach. 2014-11-14T06:02:55Z miql joined #lisp 2014-11-14T06:03:02Z beach: drmeister: Yes, of course! Otherwise your system would have serious limitations. 2014-11-14T06:03:05Z drmeister: I use C++ exception handling and stack unwinding for everything to maintain interop with C++ 2014-11-14T06:03:15Z Bike: maybe i'll fix up that basic closure compiler i've half-finished over thanksgiving... 2014-11-14T06:03:56Z beach: Bike: Good plan! I am currently working on translating HIR to Common Lisp, but this time using a target runtime environment. 2014-11-14T06:04:25Z resttime quit (Quit: resttime) 2014-11-14T06:04:34Z beach: It will be like a SICL system embedded in a host Common Lisp system, and it will generate "native" code, i.e. compiled host code. 2014-11-14T06:04:37Z Bike: it's just such a pain to deal with lets where half the variables are specials or whatever... 2014-11-14T06:04:51Z Bike: oh, that sounds nice. mostly i just want to play with fast compiles i suppose 2014-11-14T06:05:51Z drmeister: I better get off to bed. Good night all - and beach - thanks again. Bike - thanks as well for that help earlier. 2014-11-14T06:05:59Z beach: drmeister: Good night. 2014-11-14T06:05:59Z Bike: no prob 2014-11-14T06:07:11Z beach: The thing I am working on is a bit strange, because it uses the host stack, but then I have to make sure that the target runtime environment evolves in parallel with the host stack. 2014-11-14T06:07:34Z miql quit (Ping timeout: 244 seconds) 2014-11-14T06:07:34Z beach: I do this by using a single host special variable holding the target runtime environment. 2014-11-14T06:08:12Z Bike: apropos of nothing, how's your clos implementation? (thinking of this because i know some use the compiler) 2014-11-14T06:08:30Z beach: Yes, mine too. 2014-11-14T06:08:56Z Bike: occasionally i go back and try to understand sbcl's common loops. i don't usually get far. 2014-11-14T06:09:06Z beach: Once it runs natively, it should be very fast. 2014-11-14T06:09:20Z Bike: your clos uses the compiler at runtime? 2014-11-14T06:09:24Z beach: Yes. 2014-11-14T06:09:32Z Bike: hm hm, nifty. 2014-11-14T06:10:00Z Bike: oh, right, you had that whole thing compiling dispatch functions as jump tables, what was i thinking 2014-11-14T06:10:06Z beach: The dispatch code is basically an automaton testing a variable against constants. I compile that at runtime. 2014-11-14T06:10:30Z beach: Not jump tables. 2014-11-14T06:10:37Z beach: Just inline IFs. 2014-11-14T06:10:43Z henesy quit (Quit: Ex-Chat) 2014-11-14T06:11:02Z Bike: Does the compiler know how to make a jump table out of a long cond? 2014-11-14T06:11:12Z beach: I don't want a jump table. 2014-11-14T06:11:15Z beach: So, no. 2014-11-14T06:11:20Z Bike: Why not? 2014-11-14T06:11:51Z beach: "table" means memory loads. 2014-11-14T06:12:27Z beach: It is faster these days to do a binary search with inline code. 2014-11-14T06:12:37Z Bike: shows what i know. 2014-11-14T06:14:37Z defaultxr quit (Quit: gnight) 2014-11-14T06:15:06Z Bike: "unfortunately" the class microcontrollers don't have much in the way of cache, so that world is still mysterious to me. 2014-11-14T06:15:40Z beach: Right, that's a different world. 2014-11-14T06:16:03Z gingerale quit (Ping timeout: 244 seconds) 2014-11-14T06:16:57Z beach: I believe my CLOS implementation is easy to understand, in case you want to have a look. 2014-11-14T06:17:20Z Bike: maybe i will. hopefully it doesn't involve three new kinds of extended function names. 2014-11-14T06:17:35Z beach: What are those? 2014-11-14T06:17:42Z emaczen joined #lisp 2014-11-14T06:18:03Z Bike: let me see if i can get an example... 2014-11-14T06:18:04Z beach: SICL CLOS is not designed to be bootstrapped on a pre-CLOS Common Lisp system, so it doesn't have all the code for doing that. 2014-11-14T06:18:48Z Bike: no, no, i'm referring to sbcl clos's function names. 2014-11-14T06:19:13Z Bike: you get functions named things like (sb-pcl::ctor foo |COMPILATION-SPEED=3|) or something. 2014-11-14T06:19:18Z beach: Yes, my latest remark was unrelated. It was about being simpler. 2014-11-14T06:19:22Z Bike: oh. 2014-11-14T06:19:45Z emaczen quit (Client Quit) 2014-11-14T06:19:47Z beach: That list is a function name? 2014-11-14T06:20:15Z Bike: yeah. let me get an actual example. 2014-11-14T06:20:18Z beach: Hmm. 2014-11-14T06:21:26Z Bike: (SB-PCL::CTOR STANDARD-METHOD NIL :QUALIFIERS #:LIST-INITARG-0 :SPECIALIZERS SB-PCL::|.P1.| :LAMBDA-LIST #:LIST-INITARG-1 :FUNCTION SB-PCL::|.P3.| :DEFINITION-SOURCE SB-PCL::|.P4.|) 2014-11-14T06:21:46Z beach: Wow. 2014-11-14T06:22:01Z Bike: well, fdefinition works on it, so i guess i got it right 2014-11-14T06:22:49Z Bike: ctors are structures that are funcallable but i don't think they're funcallable-instances. so, i mean, it's pretty labyrinthine in there. 2014-11-14T06:22:56Z beach: Such names would definitely be possible, once (SETF ) are possible. 2014-11-14T06:23:46Z beach: Yeah, looks strange. 2014-11-14T06:23:54Z beach: Maybe I'll look into it some day. 2014-11-14T06:24:22Z Bike: I found an older portable version in the CMU archives, once. Lots of SI::JUMP and such 2014-11-14T06:25:45Z beach: Since I don't understand it, I won't try to have an opinion about how it is made. 2014-11-14T06:26:22Z beach: If you ever look at SICL CLOS, let me know if it looks easier to understand. 2014-11-14T06:26:22Z Bike: I think it's in the old papers, something about how to be efficient the system needs machine jumps or something. 2014-11-14T06:26:33Z Bike: sure. i think that's kind of a given though :) 2014-11-14T06:26:33Z alexey joined #lisp 2014-11-14T06:28:10Z beach: Right now, the bootstrapping code for SICL CLOS is complicated, but that's because I didn't understand at the time how to use first-class global environments. So I play tricks with the package system, just like SBCL does. 2014-11-14T06:28:41Z pt1 quit (Remote host closed the connection) 2014-11-14T06:28:57Z beach: Now that I have a protocol for first-class global environments, I should be able to maintain simultaneous environments representing different stages in the bootstrapping process. But I haven't worked that out yet. 2014-11-14T06:30:07Z miql joined #lisp 2014-11-14T06:32:13Z beach: So to get back to my current work of creating a SICL-like system embedded in a host, that's part of the effort to simplify the bootstrapping process. 2014-11-14T06:34:22Z ofosos quit (Ping timeout: 240 seconds) 2014-11-14T06:34:50Z miql quit (Ping timeout: 255 seconds) 2014-11-14T06:37:42Z jumblerg joined #lisp 2014-11-14T06:44:20Z H4ns quit (Read error: Connection reset by peer) 2014-11-14T06:45:04Z hiyosi joined #lisp 2014-11-14T06:47:04Z ndrei joined #lisp 2014-11-14T06:50:24Z hiyosi quit (Ping timeout: 250 seconds) 2014-11-14T06:54:45Z beach: Time to get to work! 2014-11-14T06:54:48Z beach left #lisp 2014-11-14T06:55:52Z Harag joined #lisp 2014-11-14T06:56:06Z _5kg quit (Ping timeout: 256 seconds) 2014-11-14T06:57:18Z miql joined #lisp 2014-11-14T06:59:16Z innertracks quit (Quit: innertracks) 2014-11-14T07:00:13Z tesuji joined #lisp 2014-11-14T07:00:18Z jusss joined #lisp 2014-11-14T07:00:52Z H4ns joined #lisp 2014-11-14T07:01:50Z miql quit (Ping timeout: 255 seconds) 2014-11-14T07:07:28Z keen___________2 joined #lisp 2014-11-14T07:07:38Z pt1 joined #lisp 2014-11-14T07:08:31Z keen___________1 quit (Ping timeout: 255 seconds) 2014-11-14T07:11:20Z jumblerg quit (Ping timeout: 244 seconds) 2014-11-14T07:11:53Z oleo__ quit (Quit: Verlassend) 2014-11-14T07:12:40Z zRecursive quit (Remote host closed the connection) 2014-11-14T07:15:01Z munksgaard joined #lisp 2014-11-14T07:18:55Z jumblerg joined #lisp 2014-11-14T07:23:16Z meiji11 joined #lisp 2014-11-14T07:23:31Z kanru` quit (Ping timeout: 244 seconds) 2014-11-14T07:24:31Z miql joined #lisp 2014-11-14T07:25:40Z kanru` joined #lisp 2014-11-14T07:27:02Z Harag quit (Remote host closed the connection) 2014-11-14T07:27:13Z Harag joined #lisp 2014-11-14T07:28:14Z Shinmera joined #lisp 2014-11-14T07:29:17Z miql quit (Ping timeout: 255 seconds) 2014-11-14T07:34:37Z munksgaard quit (Read error: Connection reset by peer) 2014-11-14T07:35:39Z edgar-rft joined #lisp 2014-11-14T07:40:54Z drdanmaku quit (Quit: Connection closed for inactivity) 2014-11-14T07:41:02Z _5kg joined #lisp 2014-11-14T07:49:10Z kuimacro joined #lisp 2014-11-14T07:51:42Z miql joined #lisp 2014-11-14T07:52:46Z mguzmann joined #lisp 2014-11-14T07:56:25Z miql quit (Ping timeout: 258 seconds) 2014-11-14T07:59:44Z mishoo joined #lisp 2014-11-14T08:00:26Z meiji11 quit (Remote host closed the connection) 2014-11-14T08:01:34Z pjb: - 2014-11-14T08:07:05Z clog quit (Ping timeout: 255 seconds) 2014-11-14T08:07:45Z clog joined #lisp 2014-11-14T08:10:32Z tesuji quit (Ping timeout: 265 seconds) 2014-11-14T08:14:11Z fridim_ joined #lisp 2014-11-14T08:15:06Z arenz joined #lisp 2014-11-14T08:16:26Z madmalik joined #lisp 2014-11-14T08:16:37Z stepnem joined #lisp 2014-11-14T08:18:54Z miql joined #lisp 2014-11-14T08:20:04Z White__Flame joined #lisp 2014-11-14T08:20:09Z White_Flame quit (Read error: Connection reset by peer) 2014-11-14T08:22:41Z mrSpec joined #lisp 2014-11-14T08:23:38Z miql quit (Ping timeout: 258 seconds) 2014-11-14T08:24:07Z pt1 quit (Remote host closed the connection) 2014-11-14T08:24:40Z pt1 joined #lisp 2014-11-14T08:26:43Z pt1_ joined #lisp 2014-11-14T08:29:27Z pt1 quit (Ping timeout: 265 seconds) 2014-11-14T08:30:53Z pt1_ quit (Ping timeout: 240 seconds) 2014-11-14T08:31:05Z Cymew joined #lisp 2014-11-14T08:32:13Z pranavrc quit (Remote host closed the connection) 2014-11-14T08:32:42Z mvilleneuve joined #lisp 2014-11-14T08:33:38Z robot-beethoven joined #lisp 2014-11-14T08:34:33Z hiyosi joined #lisp 2014-11-14T08:35:20Z erratis quit (K-Lined) 2014-11-14T08:36:06Z Lowl3v3l joined #lisp 2014-11-14T08:39:57Z hiyosi quit (Ping timeout: 250 seconds) 2014-11-14T08:44:42Z mvilleneuve_ joined #lisp 2014-11-14T08:44:47Z mvilleneuve quit (Ping timeout: 272 seconds) 2014-11-14T08:46:05Z miql joined #lisp 2014-11-14T08:47:57Z pgomes joined #lisp 2014-11-14T08:50:53Z miql quit (Ping timeout: 264 seconds) 2014-11-14T08:53:57Z prxq joined #lisp 2014-11-14T08:58:36Z moore33 joined #lisp 2014-11-14T09:00:02Z corni joined #lisp 2014-11-14T09:00:02Z corni quit (Changing host) 2014-11-14T09:00:02Z corni joined #lisp 2014-11-14T09:01:10Z _5kg quit (Ping timeout: 244 seconds) 2014-11-14T09:03:22Z redeemed joined #lisp 2014-11-14T09:06:07Z jtza8 joined #lisp 2014-11-14T09:06:27Z przl joined #lisp 2014-11-14T09:08:51Z hardenedapple joined #lisp 2014-11-14T09:11:40Z harish quit (Quit: Leaving) 2014-11-14T09:13:19Z miql joined #lisp 2014-11-14T09:14:18Z harish joined #lisp 2014-11-14T09:15:00Z salv01 quit (Quit: Leaving.) 2014-11-14T09:16:03Z salv01 joined #lisp 2014-11-14T09:17:17Z pjb quit (Ping timeout: 264 seconds) 2014-11-14T09:17:37Z miql quit (Ping timeout: 240 seconds) 2014-11-14T09:19:02Z mvilleneuve_ quit (Ping timeout: 245 seconds) 2014-11-14T09:21:29Z harish quit (Ping timeout: 245 seconds) 2014-11-14T09:21:36Z jumblerg quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2014-11-14T09:23:34Z mvilleneuve joined #lisp 2014-11-14T09:26:13Z jumblerg joined #lisp 2014-11-14T09:27:05Z pjb joined #lisp 2014-11-14T09:29:32Z chitofan quit (Quit: Page closed) 2014-11-14T09:33:02Z ndrei quit (Ping timeout: 255 seconds) 2014-11-14T09:33:11Z pranavrc joined #lisp 2014-11-14T09:35:17Z jusss quit (Ping timeout: 264 seconds) 2014-11-14T09:37:14Z _enigma__ quit (Remote host closed the connection) 2014-11-14T09:37:17Z przl quit (Ping timeout: 240 seconds) 2014-11-14T09:37:59Z pranavrc quit (Ping timeout: 272 seconds) 2014-11-14T09:40:28Z miql joined #lisp 2014-11-14T09:41:36Z zacharias joined #lisp 2014-11-14T09:41:53Z mvilleneuve quit (Ping timeout: 240 seconds) 2014-11-14T09:42:30Z corni quit (Ping timeout: 244 seconds) 2014-11-14T09:43:07Z mvilleneuve joined #lisp 2014-11-14T09:44:17Z przl joined #lisp 2014-11-14T09:45:14Z miql quit (Ping timeout: 245 seconds) 2014-11-14T09:46:12Z _5kg joined #lisp 2014-11-14T09:48:53Z alexherbo2 quit (Remote host closed the connection) 2014-11-14T09:48:56Z mvilleneuve quit (Ping timeout: 250 seconds) 2014-11-14T09:53:16Z uselpa joined #lisp 2014-11-14T09:53:18Z uselpa quit (Client Quit) 2014-11-14T09:56:16Z pranavrc joined #lisp 2014-11-14T09:58:54Z mvilleneuve joined #lisp 2014-11-14T10:02:21Z ndrei joined #lisp 2014-11-14T10:03:17Z jtza8 quit (Ping timeout: 240 seconds) 2014-11-14T10:04:13Z yuikov joined #lisp 2014-11-14T10:06:37Z Lowl3v3l quit (Read error: Connection reset by peer) 2014-11-14T10:07:28Z White_Flame joined #lisp 2014-11-14T10:07:37Z miql joined #lisp 2014-11-14T10:07:55Z White__Flame quit (Ping timeout: 250 seconds) 2014-11-14T10:08:12Z przl quit (Ping timeout: 256 seconds) 2014-11-14T10:10:24Z alexey quit (Remote host closed the connection) 2014-11-14T10:10:42Z Vutral quit (Ping timeout: 245 seconds) 2014-11-14T10:12:11Z miql quit (Ping timeout: 255 seconds) 2014-11-14T10:13:18Z mvilleneuve quit (Ping timeout: 256 seconds) 2014-11-14T10:15:32Z usrj joined #lisp 2014-11-14T10:15:35Z mvilleneuve joined #lisp 2014-11-14T10:16:45Z BitPuffin joined #lisp 2014-11-14T10:17:01Z pt1 joined #lisp 2014-11-14T10:19:24Z White_Flame quit (Ping timeout: 245 seconds) 2014-11-14T10:21:28Z Vutral joined #lisp 2014-11-14T10:21:35Z BitPuffin quit (Ping timeout: 265 seconds) 2014-11-14T10:22:23Z robot-beethoven quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-11-14T10:24:03Z hiyosi joined #lisp 2014-11-14T10:27:19Z mvilleneuve quit (Ping timeout: 265 seconds) 2014-11-14T10:27:35Z mvilleneuve joined #lisp 2014-11-14T10:27:46Z White_Flame joined #lisp 2014-11-14T10:28:14Z LoicLisp joined #lisp 2014-11-14T10:29:19Z hiyosi quit (Ping timeout: 265 seconds) 2014-11-14T10:32:52Z pppp2 joined #lisp 2014-11-14T10:32:52Z usrj quit (Ping timeout: 240 seconds) 2014-11-14T10:33:10Z yuikov quit (Remote host closed the connection) 2014-11-14T10:34:49Z miql joined #lisp 2014-11-14T10:37:48Z Harag quit (Remote host closed the connection) 2014-11-14T10:37:51Z Harag1 joined #lisp 2014-11-14T10:39:52Z pppp2 quit (Quit: Leaving) 2014-11-14T10:39:53Z miql quit (Ping timeout: 265 seconds) 2014-11-14T10:40:07Z alexey joined #lisp 2014-11-14T10:40:18Z echo-area quit (Remote host closed the connection) 2014-11-14T10:44:23Z harish joined #lisp 2014-11-14T10:45:59Z Shinmera quit (Quit: しつれいしなければならないんです。) 2014-11-14T10:46:53Z usrj joined #lisp 2014-11-14T10:47:01Z mvilleneuve_ joined #lisp 2014-11-14T10:47:17Z mvilleneuve quit (Ping timeout: 264 seconds) 2014-11-14T10:48:17Z wooden quit (Ping timeout: 272 seconds) 2014-11-14T10:48:34Z Harag1 quit (Ping timeout: 255 seconds) 2014-11-14T10:53:17Z attila_lendvai joined #lisp 2014-11-14T10:53:17Z attila_lendvai quit (Changing host) 2014-11-14T10:53:17Z attila_lendvai joined #lisp 2014-11-14T10:57:53Z Beetny quit (Ping timeout: 240 seconds) 2014-11-14T11:01:59Z miql joined #lisp 2014-11-14T11:02:33Z przl joined #lisp 2014-11-14T11:03:12Z nand1 joined #lisp 2014-11-14T11:04:19Z farhaven quit (Ping timeout: 255 seconds) 2014-11-14T11:05:56Z gravicappa joined #lisp 2014-11-14T11:06:30Z miql quit (Ping timeout: 250 seconds) 2014-11-14T11:08:28Z pt1 quit (Ping timeout: 258 seconds) 2014-11-14T11:09:03Z farhaven joined #lisp 2014-11-14T11:09:24Z pavelpenev joined #lisp 2014-11-14T11:10:11Z Ranis joined #lisp 2014-11-14T11:10:36Z farhaven quit (Client Quit) 2014-11-14T11:10:45Z farhaven joined #lisp 2014-11-14T11:11:42Z pppp2 joined #lisp 2014-11-14T11:16:31Z pppp2 quit (Read error: Connection reset by peer) 2014-11-14T11:16:56Z dmiles_afk quit (Quit: Read error: 110 (Connection timed out)) 2014-11-14T11:20:12Z BSaboia joined #lisp 2014-11-14T11:22:01Z usrj_ joined #lisp 2014-11-14T11:22:45Z usrj quit (Remote host closed the connection) 2014-11-14T11:22:53Z KarlDscc quit (Remote host closed the connection) 2014-11-14T11:22:58Z stepnem quit (Ping timeout: 265 seconds) 2014-11-14T11:24:22Z usrj_ quit (Client Quit) 2014-11-14T11:24:39Z stepnem joined #lisp 2014-11-14T11:27:22Z theos quit (Ping timeout: 240 seconds) 2014-11-14T11:29:13Z miql joined #lisp 2014-11-14T11:34:05Z miql quit (Ping timeout: 264 seconds) 2014-11-14T11:34:13Z jumblerg quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2014-11-14T11:35:14Z przl quit (Ping timeout: 245 seconds) 2014-11-14T11:37:04Z attila_lendvai quit (Quit: Leaving.) 2014-11-14T11:38:10Z jusss` joined #lisp 2014-11-14T11:40:23Z theos joined #lisp 2014-11-14T11:41:53Z Shinmera joined #lisp 2014-11-14T11:42:02Z Karl_Dscc joined #lisp 2014-11-14T11:42:23Z ndrei quit (Ping timeout: 250 seconds) 2014-11-14T11:43:55Z kanru` quit (Ping timeout: 244 seconds) 2014-11-14T11:45:10Z attila_lendvai joined #lisp 2014-11-14T11:45:51Z attila_lendvai quit (Client Quit) 2014-11-14T11:52:22Z protist quit (Ping timeout: 245 seconds) 2014-11-14T11:54:58Z hiyosi joined #lisp 2014-11-14T11:56:11Z Karl_Dscc quit (Remote host closed the connection) 2014-11-14T11:56:23Z miql joined #lisp 2014-11-14T11:58:00Z protist joined #lisp 2014-11-14T11:58:11Z joast quit (Ping timeout: 265 seconds) 2014-11-14T11:58:29Z kcj quit (Read error: Connection reset by peer) 2014-11-14T11:59:38Z hiyosi quit (Ping timeout: 244 seconds) 2014-11-14T12:01:09Z miql quit (Ping timeout: 265 seconds) 2014-11-14T12:04:23Z ndrei joined #lisp 2014-11-14T12:04:46Z usrj joined #lisp 2014-11-14T12:06:26Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T12:09:22Z Grue` quit (Ping timeout: 265 seconds) 2014-11-14T12:10:30Z dmiles_afk joined #lisp 2014-11-14T12:10:34Z rjmacready_ joined #lisp 2014-11-14T12:15:01Z usrj quit (Remote host closed the connection) 2014-11-14T12:15:09Z usrj joined #lisp 2014-11-14T12:15:09Z pt1 joined #lisp 2014-11-14T12:16:51Z alexey quit (Remote host closed the connection) 2014-11-14T12:18:28Z Grue` joined #lisp 2014-11-14T12:19:41Z _5kg quit (Ping timeout: 264 seconds) 2014-11-14T12:19:44Z sheilong joined #lisp 2014-11-14T12:22:46Z _5kg joined #lisp 2014-11-14T12:23:32Z miql joined #lisp 2014-11-14T12:27:52Z miql quit (Ping timeout: 240 seconds) 2014-11-14T12:28:42Z usrj_ joined #lisp 2014-11-14T12:30:15Z mvilleneuve_ quit (Ping timeout: 272 seconds) 2014-11-14T12:30:33Z Karl_Dscc joined #lisp 2014-11-14T12:32:44Z usrj quit (Ping timeout: 245 seconds) 2014-11-14T12:33:32Z kanru` joined #lisp 2014-11-14T12:35:13Z jusss` quit (Remote host closed the connection) 2014-11-14T12:39:35Z pavelpenev joined #lisp 2014-11-14T12:50:18Z Longlius quit (Remote host closed the connection) 2014-11-14T12:50:46Z miql joined #lisp 2014-11-14T12:54:32Z ghard_ joined #lisp 2014-11-14T12:54:37Z ghard_ quit (Client Quit) 2014-11-14T12:55:32Z miql quit (Ping timeout: 255 seconds) 2014-11-14T12:55:40Z k-stz joined #lisp 2014-11-14T12:56:09Z mvilleneuve joined #lisp 2014-11-14T12:57:34Z chu joined #lisp 2014-11-14T12:59:56Z eudoxia joined #lisp 2014-11-14T13:00:53Z BlastHardcheese quit (Ping timeout: 240 seconds) 2014-11-14T13:03:57Z munksgaard joined #lisp 2014-11-14T13:05:40Z sheilong quit (Ping timeout: 250 seconds) 2014-11-14T13:06:02Z resttime joined #lisp 2014-11-14T13:09:42Z BlastHardcheese joined #lisp 2014-11-14T13:10:41Z hiyosi joined #lisp 2014-11-14T13:14:20Z _5kg quit (Ping timeout: 244 seconds) 2014-11-14T13:14:20Z Grue` quit (Ping timeout: 244 seconds) 2014-11-14T13:15:43Z hiyosi quit (Ping timeout: 255 seconds) 2014-11-14T13:17:07Z drdanmaku joined #lisp 2014-11-14T13:17:57Z miql joined #lisp 2014-11-14T13:21:15Z hardenedapple quit (Quit: WeeChat 1.0.1) 2014-11-14T13:22:50Z miql quit (Ping timeout: 265 seconds) 2014-11-14T13:22:50Z pranavrc quit 2014-11-14T13:23:56Z jusss joined #lisp 2014-11-14T13:24:29Z jumblerg joined #lisp 2014-11-14T13:25:46Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T13:29:56Z nha_ quit (Ping timeout: 256 seconds) 2014-11-14T13:33:13Z kuimacro quit (Quit: Nettalk6 - www.ntalk.de) 2014-11-14T13:35:54Z jtza8 joined #lisp 2014-11-14T13:36:34Z oleo joined #lisp 2014-11-14T13:37:08Z wooden joined #lisp 2014-11-14T13:37:08Z wooden quit (Changing host) 2014-11-14T13:37:08Z wooden joined #lisp 2014-11-14T13:45:07Z miql joined #lisp 2014-11-14T13:49:52Z miql quit (Ping timeout: 250 seconds) 2014-11-14T13:53:22Z thawes joined #lisp 2014-11-14T13:53:37Z Grue` joined #lisp 2014-11-14T13:54:37Z MoALTz joined #lisp 2014-11-14T13:54:58Z Xach joined #lisp 2014-11-14T13:56:07Z MoALTz_ quit (Ping timeout: 245 seconds) 2014-11-14T13:57:51Z MoALTz_ joined #lisp 2014-11-14T13:58:11Z _5kg joined #lisp 2014-11-14T14:01:03Z MoALTz quit (Ping timeout: 244 seconds) 2014-11-14T14:03:03Z gravicappa quit (Remote host closed the connection) 2014-11-14T14:03:55Z nha joined #lisp 2014-11-14T14:05:35Z EvW joined #lisp 2014-11-14T14:06:22Z bullone joined #lisp 2014-11-14T14:07:23Z eudoxia: after 3 years of continuous development, fukamachi's clack is at version 1.0! 2014-11-14T14:07:34Z eudoxia: hooray for lisp on the web! 2014-11-14T14:08:00Z Xach: hooray! 2014-11-14T14:08:48Z stassats joined #lisp 2014-11-14T14:11:30Z TDog quit (Remote host closed the connection) 2014-11-14T14:11:32Z hiyosi joined #lisp 2014-11-14T14:12:17Z luis: eudoxia: clack is the low-level layer right? 2014-11-14T14:12:19Z miql joined #lisp 2014-11-14T14:12:34Z eudoxia: luis: it's a server abstraction layer basically 2014-11-14T14:15:06Z Longlius joined #lisp 2014-11-14T14:15:38Z luis: eudoxia: he had a server as well right? Did he have a higher-level layer too? 2014-11-14T14:16:18Z hiyosi quit (Ping timeout: 258 seconds) 2014-11-14T14:16:32Z eudoxia: luis: yes, he wrote woo as a backend for clack, and also a couple of web frameworks on top of clack 2014-11-14T14:16:59Z miql quit (Ping timeout: 255 seconds) 2014-11-14T14:18:32Z BitPuffin joined #lisp 2014-11-14T14:19:12Z luis: So, we have caveman on top of ningle, on top of clack, on top of whatever webserver we choose, right? 2014-11-14T14:19:35Z eudoxia: yes 2014-11-14T14:23:17Z wasamasa: hmm, last time I've checked there was just a file to support wookie, not woo 2014-11-14T14:23:40Z pt1 quit (Remote host closed the connection) 2014-11-14T14:23:47Z eudoxia: hm woo is still pretty experimental 2014-11-14T14:24:14Z My_Hearing is now known as Mon_Ouie 2014-11-14T14:24:35Z eudoxia: the clack handler for woo is included in woo's repo, it might be merged into clack when it's more stable 2014-11-14T14:24:45Z wasamasa: ah, that makes sense 2014-11-14T14:24:52Z jtza8 quit (Ping timeout: 245 seconds) 2014-11-14T14:26:17Z gigetoo quit (Ping timeout: 264 seconds) 2014-11-14T14:26:32Z gigetoo joined #lisp 2014-11-14T14:29:37Z mguzmann quit (Quit: WeeChat 0.4.2) 2014-11-14T14:30:50Z zeitue quit (Quit: Leaving) 2014-11-14T14:33:57Z usrj_ quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )) 2014-11-14T14:39:30Z miql joined #lisp 2014-11-14T14:40:07Z nyef joined #lisp 2014-11-14T14:40:20Z nyef: G'morning all. 2014-11-14T14:41:31Z pecg joined #lisp 2014-11-14T14:41:31Z pecg quit (Changing host) 2014-11-14T14:41:31Z pecg joined #lisp 2014-11-14T14:44:31Z miql quit (Ping timeout: 265 seconds) 2014-11-14T14:46:20Z shortCircuit__ quit (Remote host closed the connection) 2014-11-14T14:47:00Z jusss quit (Remote host closed the connection) 2014-11-14T14:47:06Z rjmacready_: nyef: hey 2014-11-14T14:47:40Z jusss joined #lisp 2014-11-14T14:59:11Z pavelpenev joined #lisp 2014-11-14T15:00:42Z jusss: is there a website can run lisp code ? 2014-11-14T15:00:47Z jusss: like codepad.org 2014-11-14T15:01:01Z jusss: but I cann't find cl in it 2014-11-14T15:01:58Z Xach: I think there might be one, but I can't remember the address. 2014-11-14T15:02:02Z Xach: jusss: what would you do if you had a site like that? 2014-11-14T15:02:54Z joast joined #lisp 2014-11-14T15:06:34Z jusss: Xach: run it on a browser 2014-11-14T15:06:41Z miql joined #lisp 2014-11-14T15:06:42Z jusss: Xach: android 2014-11-14T15:07:43Z Xach: I don't remember, sorry. 2014-11-14T15:08:15Z jusss quit (Remote host closed the connection) 2014-11-14T15:08:29Z dlowe: jusss: try parenscript. 2014-11-14T15:10:11Z jasom: oh, jusss is gone; I have one but it takes 2 hours to load on desktop chrome on a xeon, so I don't think that would work well on android 2014-11-14T15:11:06Z Xach: I interpreted as a repl wired up to a server-side CL. 2014-11-14T15:11:11Z Xach: web repl, that is. 2014-11-14T15:11:53Z miql quit (Ping timeout: 264 seconds) 2014-11-14T15:12:13Z dlowe: yeah, but a repl implement in JS seems a lot less problematic 2014-11-14T15:12:36Z hiyosi joined #lisp 2014-11-14T15:13:26Z Xach: problematic schmoblematic 2014-11-14T15:13:46Z dlowe: you know, like not giving the whole world access to your server. 2014-11-14T15:13:57Z stassats: you can run sbcl on android 2014-11-14T15:14:16Z stassats: then run hunchentoot and evaluate all the things 2014-11-14T15:17:02Z hiyosi quit (Ping timeout: 256 seconds) 2014-11-14T15:19:34Z billstclair joined #lisp 2014-11-14T15:19:52Z mingvs quit (Ping timeout: 256 seconds) 2014-11-14T15:20:43Z DGASAU quit (Remote host closed the connection) 2014-11-14T15:21:23Z mingvs joined #lisp 2014-11-14T15:22:21Z pjb: jusss is gone; I have one too :-) 2014-11-14T15:22:42Z DGASAU joined #lisp 2014-11-14T15:24:32Z pjb- joined #lisp 2014-11-14T15:28:29Z Karl_Dscc quit (Remote host closed the connection) 2014-11-14T15:28:54Z zacharias quit (Quit: WeeChat 0.4.3) 2014-11-14T15:32:46Z yrk joined #lisp 2014-11-14T15:33:15Z yrk quit (Changing host) 2014-11-14T15:33:16Z yrk joined #lisp 2014-11-14T15:33:52Z miql joined #lisp 2014-11-14T15:36:30Z pjb- quit (Quit: from my iPad) 2014-11-14T15:38:34Z miql quit (Ping timeout: 256 seconds) 2014-11-14T15:38:39Z ndrei quit (Read error: Connection reset by peer) 2014-11-14T15:39:34Z ndrei joined #lisp 2014-11-14T15:41:42Z urandom__ joined #lisp 2014-11-14T15:44:23Z Cymew quit (Ping timeout: 244 seconds) 2014-11-14T15:47:58Z jlarocco quit (Quit: This computer has gone to sleep) 2014-11-14T15:49:08Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T15:50:33Z cy joined #lisp 2014-11-14T15:50:33Z Bruno_ joined #lisp 2014-11-14T15:50:57Z cy is now known as Guest2590 2014-11-14T15:50:58Z Bruno_ quit (Read error: Connection reset by peer) 2014-11-14T15:51:55Z Guest2590 quit (Changing host) 2014-11-14T15:51:55Z Guest2590 joined #lisp 2014-11-14T15:52:18Z Guest2590 is now known as cy 2014-11-14T15:52:50Z BSaboia quit (Ping timeout: 255 seconds) 2014-11-14T15:53:11Z kushal joined #lisp 2014-11-14T15:54:34Z jlongster joined #lisp 2014-11-14T15:59:09Z pgomes quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2014-11-14T16:01:03Z miql joined #lisp 2014-11-14T16:02:40Z pavelpenev joined #lisp 2014-11-14T16:05:42Z miql quit (Ping timeout: 245 seconds) 2014-11-14T16:08:49Z impulse quit (Quit: leaving) 2014-11-14T16:09:05Z przl joined #lisp 2014-11-14T16:11:46Z attila_lendvai joined #lisp 2014-11-14T16:12:22Z prxq quit (Quit: No Ping reply in 180 seconds.) 2014-11-14T16:12:46Z prxq joined #lisp 2014-11-14T16:13:41Z mvilleneuve quit (Ping timeout: 264 seconds) 2014-11-14T16:16:11Z miql joined #lisp 2014-11-14T16:16:19Z bullone quit (Quit: Connection closed for inactivity) 2014-11-14T16:17:53Z ndrei quit (Ping timeout: 264 seconds) 2014-11-14T16:19:44Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T16:24:10Z Karl_Dscc joined #lisp 2014-11-14T16:25:27Z hiyosi joined #lisp 2014-11-14T16:29:13Z usrj joined #lisp 2014-11-14T16:31:41Z pavelpenev joined #lisp 2014-11-14T16:34:58Z Cymew joined #lisp 2014-11-14T16:36:22Z nha quit (Ping timeout: 240 seconds) 2014-11-14T16:38:07Z tesuji joined #lisp 2014-11-14T16:40:40Z haom joined #lisp 2014-11-14T16:43:09Z redeemed quit (Quit: q) 2014-11-14T16:43:59Z ejbs joined #lisp 2014-11-14T16:44:08Z Cymew quit (Remote host closed the connection) 2014-11-14T16:45:33Z chu quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-11-14T16:46:21Z salv01 quit (Remote host closed the connection) 2014-11-14T16:47:01Z Cymew joined #lisp 2014-11-14T16:47:51Z beach joined #lisp 2014-11-14T16:48:01Z beach: Good evening everyone! 2014-11-14T16:48:56Z Xach: hello beach 2014-11-14T16:49:10Z nyef: Hello beach. 2014-11-14T16:49:14Z oleo: evening all 2014-11-14T16:49:55Z beach: Compiling this: (lambda (...) (block B (ff (lambda (...) (return-from B (gg ...)))))) is very messy. 2014-11-14T16:49:56Z ejbs: Evening 2014-11-14T16:50:59Z nyef: beach: Yes. Yes, it is. 2014-11-14T16:51:06Z beach: All the values produced by BLOCK are needed, no matter how many. Those values should be the ones returned by the call to GG, and the number of values returned by GG is also unknown. 2014-11-14T16:51:51Z Grue` quit (Ping timeout: 244 seconds) 2014-11-14T16:51:59Z beach: ... so GG must be invoked and the values produced must be saved somewhere. Then the stack must be unwound. Finally, those saved values must be returned from BLOCK. 2014-11-14T16:54:09Z beach: I considered doing this: Unwind the stack first. Then call GG as a tail call from inside B. 2014-11-14T16:54:46Z nyef: Special bindings, the possibility of a should-still-be-live exit getting unwound prematurely. 2014-11-14T16:54:55Z nyef: Basically doesn't work. 2014-11-14T16:55:00Z beach: Yeah, not a great idea :( 2014-11-14T16:55:38Z nyef: SBCL has a convention for blocks of unknown-values on the stack. Some unknown set of values, with a variable for the start address and a variable for the length. 2014-11-14T16:56:37Z beach: I see, yes. 2014-11-14T16:57:09Z nyef: Nesting of these values has to be tracked in conjunction with DX allocation, as they amount to a headerless DX-allocated array. 2014-11-14T16:57:21Z gravicappa joined #lisp 2014-11-14T16:58:19Z beach: Very messy! 2014-11-14T16:58:49Z Vutral quit (Ping timeout: 265 seconds) 2014-11-14T16:59:07Z beach: Now if the number of values that GG produces is known, then it gets easier. 2014-11-14T16:59:50Z moore33: Hello beach! 2014-11-14T16:59:57Z beach: Hi moore33. 2014-11-14T17:00:09Z beach: Of if the number of values required from the execution of B is known. 2014-11-14T17:00:58Z nyef: Deal with the general case, then optimize the nicer ones. 2014-11-14T17:01:07Z beach: Yeah. 2014-11-14T17:01:36Z nyef: Also note that you're looking at passing arguments to a continuation here, which may help. 2014-11-14T17:01:52Z Cymew quit (Ping timeout: 256 seconds) 2014-11-14T17:02:04Z beach: It may. 2014-11-14T17:02:19Z przl quit (Ping timeout: 245 seconds) 2014-11-14T17:02:31Z usrj quit (Quit: Leaving) 2014-11-14T17:04:07Z jumblerg quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2014-11-14T17:04:53Z nyef: You basically have the same issue with (APPLY #'VALUES ...) as the return form for a function. 2014-11-14T17:05:13Z pjb quit (Ping timeout: 255 seconds) 2014-11-14T17:05:36Z beach: I suppose so, yes. 2014-11-14T17:05:38Z usrj joined #lisp 2014-11-14T17:07:12Z Vutral joined #lisp 2014-11-14T17:07:26Z nyef: I suppose now's not the right time to ask what you have planned for debugger support, is it? 2014-11-14T17:07:55Z beach: I have been giving it some thought, so ask away. 2014-11-14T17:09:00Z beach: Or was "What have you planneed for debugger support?" your question? 2014-11-14T17:09:16Z nyef: Pretty much. 2014-11-14T17:09:42Z beach: I think each compilation unit has a "code object" that describes the code in various ways. 2014-11-14T17:10:01Z beach: The source location for instance. And a mapping of values of the program counter to register contents. 2014-11-14T17:10:27Z beach: Also needed for the GC. 2014-11-14T17:11:02Z pjb joined #lisp 2014-11-14T17:12:15Z ioanna joined #lisp 2014-11-14T17:12:27Z beach: nyef: Anything more specific? I haven't worked out the details yet. 2014-11-14T17:13:50Z nyef: One question which bugs me is if I don't use advanced debugger features like stepping and whatnot because they tend not to provide much useful information (not to mention tend to be buggy as heck), or if they don't provide much useful information because I don't know how to use them well. 2014-11-14T17:14:04Z EvW quit (Ping timeout: 244 seconds) 2014-11-14T17:14:31Z beach: I see what you mean. 2014-11-14T17:14:54Z beach: When I programmed in C, I used the corresponding GDB functions a lot. 2014-11-14T17:15:08Z nyef: And I don't know which, I suspect that it might depend on the language involved, and SBCL's debugger is a bleeding nightmare, internally and externally. 2014-11-14T17:15:08Z beach: But I don't find the standard stepper very useful. 2014-11-14T17:15:32Z beach: I can believe that. 2014-11-14T17:15:45Z beach: What I would like to have is a thread debugging another thread. 2014-11-14T17:16:08Z nyef: I find steppers to be very useful for machine code, and ISTR that I used to use the one in VB6 quite a bit... 2014-11-14T17:16:12Z eudoxia: yes, sbcl could use an improvement in the signal-to-noise ratio 2014-11-14T17:16:57Z beach: nyef: What I mean is that stepping is very useful, but having to start the evaluation by wrapping the form in (step ...) is not practical. 2014-11-14T17:17:06Z usrj quit (Quit: Leaving) 2014-11-14T17:17:32Z beach: I would like to set a breakpoint before or after some form, and then step once that breakpoint is reached. 2014-11-14T17:17:58Z nyef: Right, but why should you have to do that? Stepping should use breakpoints, breakpoints should actually work properly without being insanely dangerous and indifferently supported, things like that. 2014-11-14T17:18:09Z ejbs` joined #lisp 2014-11-14T17:18:12Z stassats: right 2014-11-14T17:18:33Z beach: nyef: Sure, I agree. 2014-11-14T17:18:36Z nyef: And at the same time, the interface is invariably painful to use anyway. 2014-11-14T17:19:22Z beach: I am thinking a debugger might require some GUI or Emacs-like interface. Just a command line is not practical. 2014-11-14T17:19:43Z nyef: Mmm. And emacs means slime means pain. 2014-11-14T17:20:05Z Grue` joined #lisp 2014-11-14T17:20:05Z ejbs quit (Ping timeout: 265 seconds) 2014-11-14T17:20:08Z beach: Note the "-like"! :) 2014-11-14T17:20:14Z nyef: Fair enough. 2014-11-14T17:20:31Z theseb joined #lisp 2014-11-14T17:20:32Z miql quit (Quit: leaving) 2014-11-14T17:22:19Z theseb: iirc the reason gensym isn't 100% adequate, according to schemers, is because it doesn't give protection against insane macros that redefine reserved keywords like car, cdr, list and quote yes? 2014-11-14T17:22:40Z oGMo: no, because you can't macrolet etc those anyway 2014-11-14T17:22:45Z theseb: but couldn't you "protect" yourself from such crazy macros by simply not allowing redefinitions of keywords in your lisp? 2014-11-14T17:22:52Z oGMo: or you can't in Compliant Code(tm) 2014-11-14T17:23:12Z theseb: (i'm trying to understand why full hygeine is necessary ) 2014-11-14T17:23:24Z eudoxia: i don't think it is 2014-11-14T17:23:25Z oGMo: theseb: which is exactly how CL does it, e.g. SBCL will error if you try 2014-11-14T17:23:39Z nyef: theseb: It's not, but it's a lot more useful when you have a lisp-1 rather than a lisp-2. 2014-11-14T17:23:44Z impulse joined #lisp 2014-11-14T17:24:18Z theseb: eudoxia: don't think what is? 2014-11-14T17:24:25Z eudoxia: hygienic macros 2014-11-14T17:24:34Z oGMo: and almost always, you are in your own package using your own symbols, so you almost certainly will not run into the issue practically, though you can obviously break it if you try ahrd 2014-11-14T17:24:43Z eudoxia quit (Quit: leaving) 2014-11-14T17:25:15Z theseb: oGMo: disallowing redefs of keywords seems like a much cleaner/easier way to fix this problem than using hygiene 2014-11-14T17:25:22Z theseb: oGMo: i'm glad CL does that 2014-11-14T17:25:28Z oGMo: theseb: you keep using that word... 2014-11-14T17:25:31Z oGMo: ("keywords") 2014-11-14T17:25:42Z theseb: oGMo: it is a Python-ism.....and C-ism too i think 2014-11-14T17:25:58Z theseb: oGMo: "keywords" = strings predefined by language for some stuff i think 2014-11-14T17:26:02Z usrj joined #lisp 2014-11-14T17:26:04Z stacksmith joined #lisp 2014-11-14T17:26:14Z oGMo: in CL, keywords are symbols in the package KEYWORD, and you can bind them if you want (sometimes useful) 2014-11-14T17:26:15Z beach: Standard operators. 2014-11-14T17:26:35Z theseb: yes...standard operators....better 2014-11-14T17:27:00Z oGMo: theseb: but, yes, in general, just don't mess with symbols from other packages, except by well-defined interfaces (e.g., defmethod) 2014-11-14T17:27:09Z moore33 quit 2014-11-14T17:27:30Z theseb: thanks 2014-11-14T17:29:35Z fridim_ quit (Ping timeout: 255 seconds) 2014-11-14T17:30:14Z beach: nyef: One line of thinking I had was this: When code is compiled with debug 3, insert an inexpensive test before/after the evaluation of each form. The test returns true if there is a breakpoint in this function in this thread. In most threads, the test returns false, so little overhead. In the thread being debugged, it returns true, and then the thread object is checked (more expensive) to see whether this particular value of PC 2014-11-14T17:30:14Z beach: has a breakpoint. 2014-11-14T17:30:15Z oGMo: ..and yes the lisp-2-ness is a huge difference too, because you don't have to worry about LET etc 2014-11-14T17:30:59Z nyef: beach: symbol-value test, similar to SBCL's *STEPPING* ? 2014-11-14T17:31:22Z beach: No, more like "is bit 0 set in register R?" 2014-11-14T17:32:15Z beach: Maybe a bit in the status register. 2014-11-14T17:33:47Z beach: When the test yields false, it should be a single instruction or so. 2014-11-14T17:33:52Z pjb: beach: this is basically how my stepper works. 2014-11-14T17:34:24Z beach: pjb: "this"? Do you use machine-level instructions? 2014-11-14T17:34:25Z pjb: Well, conceptually, it doesn't go down to assembler, since it's a conforming stepper :-) 2014-11-14T17:34:33Z beach: That's what I thought. 2014-11-14T17:36:04Z beach: But you must still generate different code from the existing compiled code, right? 2014-11-14T17:36:27Z pjb: Yes. 2014-11-14T17:36:35Z beach: What I am thinking here is that if I compile with DEBUG 3, functions compiled this way would always have those tests in them. 2014-11-14T17:36:37Z pjb: the inserting around each expression of the test. 2014-11-14T17:36:45Z beach: I see, yes. 2014-11-14T17:37:22Z pjb: It's sure that it could be nicer done at the implementation leve. 2014-11-14T17:37:24Z pjb: l 2014-11-14T17:37:41Z beach: So I am thinking, during normal execution, there would be a one-instruction overhead for each reasonably large form to evaluate. 2014-11-14T17:37:59Z pjb: form and subforms… 2014-11-14T17:38:06Z beach: Yes, of course. 2014-11-14T17:38:38Z beach: This overhead would be unnoticeable, especially since DEBUG 3 would probably also prevent some optmizations. 2014-11-14T17:39:14Z pjb: Some processors have TRAP instructions designed for that. 2014-11-14T17:39:21Z pjb: conditional traps. 2014-11-14T17:39:24Z beach: True. 2014-11-14T17:40:12Z DGASAU quit (Remote host closed the connection) 2014-11-14T17:40:16Z beach: I haven't looked into the details of what modern processors do exactly, but I saw there was a large chapter in the ARM specification about stuff like that. 2014-11-14T17:40:24Z jasom: beach: what about just insert a NOP at each function and replace it with a BREAK 2014-11-14T17:40:30Z pjb: And other have a tracing execution mode, it could be activated/deactivated upon entry/exit of safety 3 functions. 2014-11-14T17:40:45Z beach: jasom: Then the break would happen in all threads. 2014-11-14T17:40:48Z jasom: oh 2014-11-14T17:41:04Z xrash joined #lisp 2014-11-14T17:41:25Z beach: jasom: But I could replace the NOP by the test. 2014-11-14T17:41:32Z pjb: also, modifying code on modern processors is more difficult: you have to invalidate I-caches, perhaps manipulate page access rights, etc. 2014-11-14T17:41:48Z beach: Yeah, I am nervous about modifying the code. 2014-11-14T17:41:50Z jasom: pjb: most lisp implementations already have the ability to do that, right? 2014-11-14T17:42:00Z DGASAU joined #lisp 2014-11-14T17:42:07Z pjb: Perhaps not at so fine a level. 2014-11-14T17:42:27Z pjb: But yes. 2014-11-14T17:42:32Z jasom: how does e.g. gdb handle per-thread breakpoints? 2014-11-14T17:42:46Z jasom: does it just use a traditional SW breakpoint and then resume if the TID doesn't match? 2014-11-14T17:42:47Z usrj quit (Quit: Leaving) 2014-11-14T17:42:53Z pjb: I guess so yes. 2014-11-14T17:43:26Z beach: That sounds more expensive than what I suggested. No? 2014-11-14T17:43:44Z beach: Maybe not. 2014-11-14T17:43:54Z beach: But it does involve modifying the code. 2014-11-14T17:43:58Z jasom: beach: more expensive for threads that don't have the breakpoint, but less otherwise; using a register is going to hurt on all targets that aren't sparc or Power 2014-11-14T17:44:19Z beach: jasom: Yes, I agree. 2014-11-14T17:44:30Z jasom: curse you x86 and arm! 2014-11-14T17:45:03Z jasom just had an evil idea for x86, but it invovles CPU ucode so it's probably a non-starter 2014-11-14T17:45:06Z beach: In the worst case, it could be a stack location. 2014-11-14T17:46:15Z jasom: I was thinking how the original BDM was implemented in 68k microcode; setting a hardware breakpoint actually modified the instruction decode logic on those parts 2014-11-14T17:47:15Z beach: nyef: You haven't said anything about all these ideas. Any thoughts? 2014-11-14T17:48:59Z nyef: Sorry, got sideswiped by work stuff. 2014-11-14T17:49:21Z loz joined #lisp 2014-11-14T17:49:32Z ndrei joined #lisp 2014-11-14T17:49:33Z beach: jasom: Here is another idea to avoid reserving a register: Make the bit part of the static environment of the function and let the register allocator figure out if and when it should be in a register, on the stack, etc. 2014-11-14T17:49:54Z protist quit (Quit: Konversation terminated!) 2014-11-14T17:51:07Z gravicappa quit (Ping timeout: 255 seconds) 2014-11-14T17:52:05Z Grue` quit (Ping timeout: 255 seconds) 2014-11-14T17:52:18Z gingerale joined #lisp 2014-11-14T17:52:19Z beach: Oh, got to go. Dinner! I might be back later. 2014-11-14T17:52:33Z easye` quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-11-14T17:52:44Z easye joined #lisp 2014-11-14T17:53:08Z Grue` joined #lisp 2014-11-14T17:58:19Z ioanna quit (Ping timeout: 246 seconds) 2014-11-14T17:59:04Z rjmacready_ quit (Quit: Page closed) 2014-11-14T18:00:11Z mutley89 quit (Ping timeout: 255 seconds) 2014-11-14T18:01:18Z xrash quit (Ping timeout: 244 seconds) 2014-11-14T18:05:51Z mutley89 joined #lisp 2014-11-14T18:06:05Z xrash joined #lisp 2014-11-14T18:08:41Z EvW joined #lisp 2014-11-14T18:08:53Z arenz quit (Ping timeout: 240 seconds) 2014-11-14T18:11:30Z jumblerg joined #lisp 2014-11-14T18:11:56Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T18:14:05Z innertracks joined #lisp 2014-11-14T18:16:40Z tesuji quit (Ping timeout: 256 seconds) 2014-11-14T18:29:44Z pnpuff joined #lisp 2014-11-14T18:32:40Z pnpuff left #lisp 2014-11-14T18:32:54Z pnpuff joined #lisp 2014-11-14T18:36:50Z beach left #lisp 2014-11-14T18:38:13Z BitPuffin quit (Ping timeout: 272 seconds) 2014-11-14T18:38:52Z Alfr joined #lisp 2014-11-14T18:40:11Z pnpuff quit (Quit: quit) 2014-11-14T18:40:41Z ofosos joined #lisp 2014-11-14T18:40:49Z jumblerg quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2014-11-14T18:40:56Z zacharias joined #lisp 2014-11-14T18:41:57Z ndrei quit (Ping timeout: 240 seconds) 2014-11-14T18:43:01Z jumblerg joined #lisp 2014-11-14T18:44:00Z jasom: I *really* need to submit a pull-request to bordeaux-threads for the recursive lock nonsense 2014-11-14T18:44:03Z nand1 quit (Remote host closed the connection) 2014-11-14T18:44:22Z jasom just ran into a failure in CCL that worked on sbcl, which means someone thought they were using a recursive lock on sbcl, but really was using a nop 2014-11-14T18:45:41Z nand1 joined #lisp 2014-11-14T18:47:22Z vhost- is now known as vhost-_computer 2014-11-14T18:47:27Z yrk quit (Quit: ERC (IRC client for Emacs 25.0.50.1)) 2014-11-14T18:47:31Z vhost-_computer is now known as vhost- 2014-11-14T18:49:25Z jasom: oh, nope, in this case it's because bt:make-lock makes a recursive lock on ccl. That's not right 2014-11-14T18:49:45Z theotherstupidgu joined #lisp 2014-11-14T18:50:54Z loz quit (Quit: Leaving.) 2014-11-14T18:50:57Z loz1 joined #lisp 2014-11-14T18:52:44Z jasom: okay is it possible to search CCL's trac for an arbitrary string in the description? 2014-11-14T18:53:12Z gravicappa joined #lisp 2014-11-14T18:55:56Z jasom: ah: " It is an error to call this unless the lock has previously been acquired (and not released) by the same thread." 2014-11-14T18:56:25Z jasom: so even non-recursive locks can't be released by another thread 2014-11-14T18:58:05Z jasom: bit of a pain; that means condition-variables since bt has no semaphores 2014-11-14T19:00:38Z malbertife joined #lisp 2014-11-14T19:02:11Z tbarletz joined #lisp 2014-11-14T19:03:17Z Patzy quit (Ping timeout: 240 seconds) 2014-11-14T19:04:20Z Patzy joined #lisp 2014-11-14T19:08:41Z chu joined #lisp 2014-11-14T19:13:45Z nha joined #lisp 2014-11-14T19:17:43Z ggole quit 2014-11-14T19:18:41Z nha quit (Ping timeout: 250 seconds) 2014-11-14T19:22:37Z hiyosi quit (Ping timeout: 240 seconds) 2014-11-14T19:22:47Z jasom: anyway, woo runs at 1/3 the speed on ccl vs sbcl. Not bad considering it's purely optimized for sbcl 2014-11-14T19:24:43Z ofosos quit (Ping timeout: 255 seconds) 2014-11-14T19:31:41Z milosn quit (Ping timeout: 264 seconds) 2014-11-14T19:31:47Z wglb` joined #lisp 2014-11-14T19:32:19Z milosn joined #lisp 2014-11-14T19:35:54Z wglb quit (Remote host closed the connection) 2014-11-14T19:38:34Z Longlius quit (Ping timeout: 245 seconds) 2014-11-14T19:45:25Z innertracks quit (Quit: innertracks) 2014-11-14T19:49:05Z joneshf-laptop quit (Ping timeout: 264 seconds) 2014-11-14T19:51:23Z mutley89 quit (Ping timeout: 240 seconds) 2014-11-14T19:53:00Z Longlius joined #lisp 2014-11-14T19:55:05Z Mon_Ouie quit (Ping timeout: 264 seconds) 2014-11-14T19:57:50Z Alfr quit (Quit: Leaving) 2014-11-14T19:58:22Z Mon_Ouie joined #lisp 2014-11-14T20:08:12Z DGASAU quit (Remote host closed the connection) 2014-11-14T20:10:40Z DGASAU joined #lisp 2014-11-14T20:12:50Z Beetny joined #lisp 2014-11-14T20:14:20Z jumblerg quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2014-11-14T20:15:13Z jumblerg joined #lisp 2014-11-14T20:15:35Z pavelpenev joined #lisp 2014-11-14T20:17:03Z Mon_Ouie quit (Ping timeout: 265 seconds) 2014-11-14T20:17:28Z Bicyclidine joined #lisp 2014-11-14T20:19:24Z nha joined #lisp 2014-11-14T20:19:25Z hiyosi joined #lisp 2014-11-14T20:21:23Z rune1 joined #lisp 2014-11-14T20:21:27Z rune1 left #lisp 2014-11-14T20:21:39Z stacksmith: Shinmera? 2014-11-14T20:21:49Z Shinmera: Hmm? 2014-11-14T20:22:14Z stacksmith: Oh, good, you are here. I saw your post - I was away for a couple of weeks and couldn't follow up. 2014-11-14T20:22:28Z stacksmith: I am very curious about Parasol 2014-11-14T20:22:36Z Ayey_ joined #lisp 2014-11-14T20:22:40Z Shinmera: You mean my blog entry? 2014-11-14T20:22:44Z stacksmith: yeah 2014-11-14T20:22:51Z Shinmera: Ah, alright. What are you curious about then? 2014-11-14T20:23:02Z stacksmith: Where are you at with it? Can you draw/paint with it? 2014-11-14T20:23:17Z attila_lendvai quit (Quit: Leaving.) 2014-11-14T20:23:22Z Shinmera: I'm currently still writing mostly back-end infrastructure stuff, so you can't do anything with it really. 2014-11-14T20:23:25Z kcj joined #lisp 2014-11-14T20:23:31Z drmeister: Regarding debugging in Common Lisp - In Clasp I'm using DWARF so you should be able to single step with GDB or LLDB. 2014-11-14T20:23:36Z Shinmera: Won't be long until I've wired it all up to actually paint anything though. 2014-11-14T20:24:22Z hiyosi quit (Ping timeout: 240 seconds) 2014-11-14T20:24:31Z drmeister: It also allows me to smoothly debug C++ and Common Lisp. It works somewhat in GDB at the moment but not quite as well in LLDB. 2014-11-14T20:24:34Z stacksmith: Cool. My wife is a painter, and I've been looking around for something that makes sense for a while... 2014-11-14T20:25:01Z Shinmera: I'm currently using MyPaint, but there's enough things I dislike about it to want to write my own. 2014-11-14T20:25:05Z nha quit (Ping timeout: 255 seconds) 2014-11-14T20:25:38Z Shinmera: stacksmith: If you want to try something that is runnable, you could check out the old-master branch, around commit 0f4c2f748e6586c29e6a208cc22f5e21c8126c73 2014-11-14T20:26:07Z stacksmith: I am really excited about having a basic engine that's extensible, and having a CL backbone of course is the way to go... 2014-11-14T20:26:22Z Shinmera: The old version got as far as this https://camo.githubusercontent.com/22fe71fcfbf5e6c0bb6892b008d5e4a3723bddb3/687474703a2f2f33332e6d656469612e74756d626c722e636f6d2f34333139623533303835313938393566663438663831393835663033363461332f74756d626c725f6e377961667a34373957317167693474736f315f313238302e706e67 2014-11-14T20:27:06Z cracauer quit (Remote host closed the connection) 2014-11-14T20:27:21Z Shinmera: But yeah, it's gonna be a while before my re-write is usable. I'm trying to juggle a lot of things simultaneously, so I can't spend too much time on it, unfortunately. 2014-11-14T20:27:25Z LiamH joined #lisp 2014-11-14T20:28:07Z nyef: Shinmera: Any chance it'll be usable by, say, mid-February? 2014-11-14T20:28:11Z stacksmith: I get it, not expecting miracles... 2014-11-14T20:28:51Z stacksmith: The engine is the key, the UI/brush math is secondary... 2014-11-14T20:28:52Z Shinmera: nyef: Well, depends on your requirements for 'usable', but you should be able to do basic tablet input by then, I'm fairly confident. Now I'm curious though, why mid-February exactly? 2014-11-14T20:29:03Z nyef: Modbook Pro X. 2014-11-14T20:29:22Z Shinmera: Never heard of that, but alright. 2014-11-14T20:29:41Z haom left #lisp 2014-11-14T20:29:54Z Shinmera: If you can run CCL and Qt on it, you should be fine. 2014-11-14T20:30:00Z nyef: It's a 15-inch retina macbook that's been converted to a tablet. 2014-11-14T20:30:07Z yeticry quit (Quit: leaving) 2014-11-14T20:30:23Z Shinmera: Yeah, I'm looking at the site. Seems interesting. 2014-11-14T20:30:38Z stacksmith: Shinmera, please make sure the UI does not contaminate the core paint engine... I've seen good things go bad fast. 2014-11-14T20:30:41Z Shinmera: I won't be able to test things on Mac Os myself, as I don't own a machine for it. 2014-11-14T20:31:00Z malbertife quit (Ping timeout: 265 seconds) 2014-11-14T20:31:12Z nyef: Ah, okay. So, something to look forward to trying once it arrives. (-: 2014-11-14T20:31:26Z Shinmera: stacksmith: I wouldn't worry there, I got good plans for that. 2014-11-14T20:31:28Z nyef: Otherwise I might have to stick to using the GIMP. 2014-11-14T20:31:58Z Shinmera: stacksmith: My brush engine allows you to define brushes in terms of a class hierarchy; reusing and combining properties/capabilities of brushes. 2014-11-14T20:32:17Z Shinmera: stacksmith: and of course since this is CL you can define whatever wild crazy thing you want by writing your own scripts. 2014-11-14T20:33:27Z stacksmith: Shinmera, I've been watching how oil painters work, and have some ideas about UI or lack thereof. Basically, instead of fancy widgets, you need a place to mix paints, and have brushes that push and drag paint around as they apply it... 2014-11-14T20:33:34Z Ayey_ quit (Remote host closed the connection) 2014-11-14T20:34:01Z Vutral quit (Ping timeout: 255 seconds) 2014-11-14T20:34:04Z Ayey_ joined #lisp 2014-11-14T20:34:28Z Shinmera: stacksmith: Well, I don't know if I'm gonna do the math and algorithms to make that possible, but I don't see why someone couldn't write that in as a brush class. 2014-11-14T20:34:34Z nyef: Ooh. I know an oil painter with a mac and access to a wacom tablet... 2014-11-14T20:35:17Z stacksmith: Shinmera, exactly. That's why having a clean core stroke engine is really important. 2014-11-14T20:37:00Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T20:39:42Z CrazyWoods joined #lisp 2014-11-14T20:40:01Z kushal quit (Ping timeout: 258 seconds) 2014-11-14T20:41:15Z theseb left #lisp 2014-11-14T20:43:21Z jumblerg quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2014-11-14T20:43:23Z pavelpenev joined #lisp 2014-11-14T20:44:52Z Vutral joined #lisp 2014-11-14T20:53:47Z peterhil quit (Quit: Must not waste too much time here...) 2014-11-14T20:54:33Z ehu joined #lisp 2014-11-14T20:56:34Z Ven joined #lisp 2014-11-14T20:56:52Z Alfr joined #lisp 2014-11-14T20:59:49Z wglb` quit (Read error: Connection reset by peer) 2014-11-14T21:00:00Z Karl_Dscc quit (Remote host closed the connection) 2014-11-14T21:00:38Z ndrei joined #lisp 2014-11-14T21:00:56Z loz1 quit (Quit: Leaving.) 2014-11-14T21:01:14Z wglb joined #lisp 2014-11-14T21:02:32Z attila_lendvai joined #lisp 2014-11-14T21:02:32Z attila_lendvai quit (Changing host) 2014-11-14T21:02:32Z attila_lendvai joined #lisp 2014-11-14T21:03:52Z Bicyclidine quit (Ping timeout: 265 seconds) 2014-11-14T21:04:12Z yeticry joined #lisp 2014-11-14T21:07:03Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-11-14T21:07:55Z keppy joined #lisp 2014-11-14T21:20:57Z stassats quit (Ping timeout: 240 seconds) 2014-11-14T21:22:31Z drdo: So i need to do a presentation on software verification/testing/analysis. Is there something interesting for a lisp? 2014-11-14T21:25:31Z nyef: drdo: Maybe something to do with ACL2? 2014-11-14T21:25:53Z vhlfd joined #lisp 2014-11-14T21:27:14Z drdo: Hmm, that seems interesting 2014-11-14T21:30:33Z drdo: nyef: Are you familiar with it? Is it something i could study and understand the high-level workings of in a short amount of time? 2014-11-14T21:31:36Z drdo: I've been keeping away from theorem provers because while they are very interesting, just studying the logics involved would take serious effort and time 2014-11-14T21:31:58Z nyef: I'm not particularly familiar with it, no. You might try reading through an introductory part of the documentation for an initial assessment, though. At least that much shouldn't take too long. 2014-11-14T21:33:47Z drdo: Theorem provers would actually be perfect for me. I'm studying logic and am going to do my thesis somewhere there. But i can't spare the effort and time to go ahead and study something like Coq 2014-11-14T21:36:30Z hiyosi joined #lisp 2014-11-14T21:37:14Z ejbs`` joined #lisp 2014-11-14T21:38:33Z CrazyWoods quit (Quit: leaving) 2014-11-14T21:39:07Z ejbs` quit (Ping timeout: 244 seconds) 2014-11-14T21:39:50Z chu quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-11-14T21:40:30Z Ayey_ quit (Remote host closed the connection) 2014-11-14T21:41:07Z impulse quit (Ping timeout: 245 seconds) 2014-11-14T21:41:20Z hiyosi quit (Ping timeout: 250 seconds) 2014-11-14T21:41:40Z impulse joined #lisp 2014-11-14T21:41:42Z Bicyclidine joined #lisp 2014-11-14T21:42:12Z hiroakip joined #lisp 2014-11-14T21:46:18Z bdr3552 joined #lisp 2014-11-14T21:47:05Z attila_lendvai quit (Quit: Leaving.) 2014-11-14T21:47:26Z prxq_ joined #lisp 2014-11-14T21:48:10Z k-stz quit (Remote host closed the connection) 2014-11-14T21:49:29Z Shinmera quit (Quit: しつれいしなければならないんです。) 2014-11-14T21:50:16Z prxq quit (Ping timeout: 265 seconds) 2014-11-14T21:50:17Z dfox quit (Ping timeout: 264 seconds) 2014-11-14T21:50:21Z Shinmera joined #lisp 2014-11-14T21:50:25Z vhlfd quit (Quit: leaving) 2014-11-14T21:52:20Z Longlius quit (Remote host closed the connection) 2014-11-14T21:53:12Z drdo: nyef: btw, what about something for lisp, rather than just being written in lisp? 2014-11-14T21:54:01Z jasom: drdo: hard to do due to the dynamic nature of lisp 2014-11-14T21:54:04Z nyef: Rather than just being written in lisp, and using a subset of lisp as the proof language? 2014-11-14T21:54:38Z drdo: nyef: I mean, to verify/test/analyse something about lisp programs 2014-11-14T21:54:57Z jlarocco_work quit (Quit: Leaving) 2014-11-14T21:55:32Z nyef: All ACL2 proofs are, in some sense, about lisp programs, because they are all lisp programs. 2014-11-14T21:55:57Z nyef: An actual use applied to lisp? Well, IIRC some amount of ACL2 is proven in itself... 2014-11-14T21:56:44Z prxq_ quit (Remote host closed the connection) 2014-11-14T21:56:53Z gravicappa quit (Remote host closed the connection) 2014-11-14T21:56:55Z drdo: nyef: I meant more like something for use while developing using lisp 2014-11-14T21:57:06Z drdo: A good example of the kind of thing i mean is quickcheck for Haskell 2014-11-14T21:57:35Z nyef: Hrm. There's a random-tester for lisp compilers somewhere. 2014-11-14T21:58:06Z jasom: drdo: Python does some source-code analysis on lisp code. Other than type-propogation none of it is formal IIRC though 2014-11-14T21:58:34Z nyef: jasom: What constitutes "formal" in this context? 2014-11-14T21:59:27Z jasom: nyef: "This syntactically correct lisp code definitely has semantics" 2014-11-14T21:59:44Z pnpuff joined #lisp 2014-11-14T21:59:52Z jasom: versus "This syntactically correct code looks suspicious" 2014-11-14T21:59:56Z drdo: Since lisp is harder than most to actually test, i thought there might be some interesting ideas 2014-11-14T22:00:13Z nyef: Ah, okay. 2014-11-14T22:00:22Z oleo: sheele, rt..... 2014-11-14T22:00:27Z oleo: many test frameworks.... 2014-11-14T22:00:28Z jasom: drdo: https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0CCoQFjAB&url=http%3A%2F%2F3e8.org%2Fpub%2Fscheme%2Fdoc%2Flisp-pointers%2Fv5i1%2Fp235-maclachlan.pdf&ei=cXtmVNKZBsjWoAS9-IGIBQ&usg=AFQjCNE2n8FyKZ-170jhZCoSUKRI37h_NA&sig2=O-zdvk0_1C4b2Zj-DctXqg&bvm=bv.79400599,d.cGU 2014-11-14T22:00:34Z nyef: drdo: What do you mean "harder than most to actually test"? 2014-11-14T22:00:35Z oleo: sheeple* sorry 2014-11-14T22:00:41Z jasom: wow, that's a really ugly link 2014-11-14T22:01:03Z drdo: nyef: I don't know to be honest 2014-11-14T22:01:32Z jasom: drdo: see sec. 2.2 of that pdf for an example 2014-11-14T22:02:17Z drdo: huh something that would be mad cool would be some sort of hygiene static analyser 2014-11-14T22:02:46Z drdo: that could warn about potential hygiene violations in macroexpansion 2014-11-14T22:02:49Z ehu quit (Ping timeout: 258 seconds) 2014-11-14T22:03:03Z jasom: drdo: not really possible to distinguish between intentional and unintentional shadowing bindings 2014-11-14T22:05:54Z Bicyclidine: google search links are messy for some reason. http://3e8.org/pub/scheme/doc/lisp-pointers/v5i1/p235-maclachlan.pdf seems more direct 2014-11-14T22:06:29Z Bicyclidine: would it take that much static analysis to find hygeine violations? you'd just be looking for read-time symbolic constants showing up in variable positions of the expansion, i guess 2014-11-14T22:07:52Z pnpuff left #lisp 2014-11-14T22:07:56Z byte48_ is now known as byte48 2014-11-14T22:10:17Z hiroakip quit (Ping timeout: 245 seconds) 2014-11-14T22:12:11Z dfox joined #lisp 2014-11-14T22:14:16Z keppy quit (Ping timeout: 250 seconds) 2014-11-14T22:14:28Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T22:14:35Z nyef: Bicyclidine: More or less. It's not that it's amazingly hard, it's that macro hygiene is often deliberately violated. 2014-11-14T22:14:48Z Bicyclidine: right 2014-11-14T22:15:58Z nyef: What I'd like to see is a verified compiler for CL, but that'd be a heck of a lot of work. 2014-11-14T22:17:23Z keppy joined #lisp 2014-11-14T22:17:56Z thawes quit (Remote host closed the connection) 2014-11-14T22:20:20Z hitecnologys_ joined #lisp 2014-11-14T22:20:34Z Alfr quit (Quit: Leaving) 2014-11-14T22:21:39Z Xach: or maybe a thoroughly eyeballed compiler 2014-11-14T22:23:09Z hitecnologys quit (Ping timeout: 245 seconds) 2014-11-14T22:23:09Z hitecnologys_ is now known as hitecnologys 2014-11-14T22:23:56Z hiroakip joined #lisp 2014-11-14T22:24:52Z ejbs`` quit (Ping timeout: 245 seconds) 2014-11-14T22:25:08Z Grue` quit (Ping timeout: 265 seconds) 2014-11-14T22:26:39Z nyef: To enough bugs, all eyeballs are shallow. 2014-11-14T22:28:20Z jasom: nyef: I like that quote 2014-11-14T22:30:27Z xrash quit (Ping timeout: 265 seconds) 2014-11-14T22:32:23Z Grue` joined #lisp 2014-11-14T22:32:40Z pavelpenev joined #lisp 2014-11-14T22:34:47Z cy quit (Quit: :q!) 2014-11-14T22:35:11Z xrash joined #lisp 2014-11-14T22:37:18Z hiyosi joined #lisp 2014-11-14T22:39:58Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T22:40:25Z pavelpenev joined #lisp 2014-11-14T22:42:17Z hiyosi quit (Ping timeout: 240 seconds) 2014-11-14T22:45:17Z ndrei quit (Ping timeout: 240 seconds) 2014-11-14T22:47:20Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T22:47:45Z xrash quit (Ping timeout: 272 seconds) 2014-11-14T22:48:51Z LoicLisp quit (Remote host closed the connection) 2014-11-14T22:51:01Z pavelpenev joined #lisp 2014-11-14T22:52:15Z xrash joined #lisp 2014-11-14T22:55:50Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T22:56:45Z csziacobus joined #lisp 2014-11-14T22:57:59Z pavelpenev joined #lisp 2014-11-14T23:00:02Z BitPuffin joined #lisp 2014-11-14T23:00:02Z ecraven: Do I understand correctly that keyword arguments are only parsed after all required and optional arguments have been filled? 2014-11-14T23:00:14Z Bicyclidine quit (Ping timeout: 244 seconds) 2014-11-14T23:00:52Z Longlius joined #lisp 2014-11-14T23:01:02Z Xach: parsed? 2014-11-14T23:01:34Z Xach: ecraven: yes. it is usually awkward and trouble-prone to mix &optional and &key 2014-11-14T23:02:57Z Blaguvest joined #lisp 2014-11-14T23:03:37Z ecraven: Xach: I was just pondering this :) 2014-11-14T23:03:46Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T23:03:57Z ecraven: is it possible to mix &rest and &key? to have a few rest pieces, then a keyword with value or two, then more rest, then another keyword? 2014-11-14T23:04:04Z rvchangue quit (Ping timeout: 244 seconds) 2014-11-14T23:04:08Z ecraven: or must all keyword arguments be contiguous and before any rest? 2014-11-14T23:04:14Z |3b|: they overlap 2014-11-14T23:04:42Z EvW quit (Ping timeout: 265 seconds) 2014-11-14T23:05:13Z ecraven: so (&key foo bar &rest baaz) would give '(1 2 3) for baaz if I called it with parameters (1 :foo 'foo 2 :bar 3)? 2014-11-14T23:05:14Z |3b|: &rest contains all of the &key, and must be valid &key argument list (even number of values, matches keywords etc) 2014-11-14T23:05:33Z |3b|: it would include the keywords also 2014-11-14T23:05:33Z ecraven: ah, the keyword arguments aren't removed from the &rest parameter? 2014-11-14T23:05:38Z ecraven: ok, thanks a lot! 2014-11-14T23:05:58Z ecraven: this clears things up considerably :) and indeed mixing &optional and &key is really an obviously bad idea 2014-11-14T23:06:31Z |3b|: that can be useful, for example when you want to pass the arguments directly to another function, but have keyword checking or want the keywords for argument hinting in editors 2014-11-14T23:06:44Z pavelpenev joined #lisp 2014-11-14T23:06:45Z |3b|: "that" as in mixing &rest and &key 2014-11-14T23:07:03Z |3b|: mixing &key with &optional is less useful 2014-11-14T23:07:39Z nyef: Don't forget about &allow-other-keys. 2014-11-14T23:08:18Z nyef: For some reason I've taken to using destructuring-bind with &key &allow-other-keys in the arglist to find things in plists. 2014-11-14T23:08:37Z |3b| does that sometimes also 2014-11-14T23:08:53Z nyef: But only when I want more than one thing, otherwise I can just use getf. 2014-11-14T23:08:57Z |3b|: right 2014-11-14T23:11:17Z fantazo joined #lisp 2014-11-14T23:11:36Z vaporatorius joined #lisp 2014-11-14T23:11:54Z Vutral quit (Ping timeout: 250 seconds) 2014-11-14T23:13:52Z didi joined #lisp 2014-11-14T23:15:06Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T23:18:20Z munksgaard quit (Read error: Connection reset by peer) 2014-11-14T23:19:30Z didi: How can I know if a slot is bound in an `initialize-instance' method? I have an `initialize-instance' method on a subclass of a superclass. The superclass has a slot with `:initarg'. When making a new instance of the subclass, I want to compute the value of the superclass' slot only if none has been passed to `make-instance'. 2014-11-14T23:19:48Z |3b|: clhs slot-boundp 2014-11-14T23:19:48Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_slt_bo.htm 2014-11-14T23:20:14Z didi: So simple. Thank you, |3b|. 2014-11-14T23:20:18Z vowyer_ joined #lisp 2014-11-14T23:21:36Z Grue`: ecraven: &rest goes before &key 2014-11-14T23:22:03Z Vutral joined #lisp 2014-11-14T23:24:14Z pavelpenev joined #lisp 2014-11-14T23:24:34Z vowyer_ quit (Ping timeout: 255 seconds) 2014-11-14T23:25:07Z vowyer_ joined #lisp 2014-11-14T23:26:58Z Adlai quit (Remote host closed the connection) 2014-11-14T23:27:25Z Adlai joined #lisp 2014-11-14T23:29:13Z araujo quit (Read error: Connection reset by peer) 2014-11-14T23:30:05Z araujo joined #lisp 2014-11-14T23:31:05Z hiroakip quit (Ping timeout: 264 seconds) 2014-11-14T23:32:40Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T23:33:32Z rvchangue joined #lisp 2014-11-14T23:35:10Z mrSpec quit (Remote host closed the connection) 2014-11-14T23:35:31Z pavelpenev joined #lisp 2014-11-14T23:36:51Z kuimacro joined #lisp 2014-11-14T23:40:02Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T23:40:19Z pavelpenev joined #lisp 2014-11-14T23:41:16Z jusss joined #lisp 2014-11-14T23:41:51Z jusss: why format is not a s-expr? 2014-11-14T23:42:04Z didi: Reasons. 2014-11-14T23:42:08Z Shinmera: beacuase 2014-11-14T23:43:22Z nha joined #lisp 2014-11-14T23:45:08Z nyef: Because the entire idea was just sort of strung together, and never properly parsed out? 2014-11-14T23:45:55Z puchacz joined #lisp 2014-11-14T23:46:40Z puchacz: hi, can somebody who has chtml and cxml-dom installed try to evaluate (dom:map-document (chtml:make-string-sink) (chtml:parse "'" (cxml-dom:make-dom-builder))) please? 2014-11-14T23:46:53Z puchacz: I am getting "'" which I think is a bug 2014-11-14T23:47:13Z puchacz: when I inspect the result of parsing, it seems to be parsed wrongly 2014-11-14T23:47:37Z puchacz: ' is not recognised as entity 2014-11-14T23:47:41Z Shinmera: ' is not a valid HTML4 entity. 2014-11-14T23:47:44Z GGMethos quit (Quit: WeeChat 1.0.1) 2014-11-14T23:47:46Z nha quit (Ping timeout: 244 seconds) 2014-11-14T23:48:07Z puchacz: makes sense, thanks 2014-11-14T23:48:09Z Shinmera: You're looking for " 2014-11-14T23:48:30Z puchacz: or modify the parser.... 2014-11-14T23:48:33Z Shinmera: Or ' 2014-11-14T23:49:19Z Shinmera: Plump should recognize '. 2014-11-14T23:49:36Z Nilly joined #lisp 2014-11-14T23:49:40Z pavelpenev quit (Ping timeout: 256 seconds) 2014-11-14T23:51:07Z Shinmera quit (Quit: しつれいしなければならないんです。) 2014-11-14T23:51:12Z puchacz: is plump able to swallow html5? 2014-11-14T23:51:26Z puchacz: all these data-xxx attributes etc 2014-11-14T23:53:29Z edgar-rft quit (Quit: end of life during parsing) 2014-11-14T23:56:58Z jumblerg joined #lisp 2014-11-14T23:59:52Z Grue`: what's special about data-xxx attributes?