2015-02-12T00:00:09Z juanlas joined #lisp 2015-02-12T00:00:19Z juanlas quit (Client Quit) 2015-02-12T00:00:28Z vaporatorius quit (Remote host closed the connection) 2015-02-12T00:02:59Z innertracks joined #lisp 2015-02-12T00:03:43Z Big_G joined #lisp 2015-02-12T00:03:56Z seg quit (Quit: !!) 2015-02-12T00:04:10Z Kruppe quit (Ping timeout: 255 seconds) 2015-02-12T00:04:28Z innertracks quit (Client Quit) 2015-02-12T00:04:32Z scymtym_ joined #lisp 2015-02-12T00:04:53Z johann_ quit (Ping timeout: 265 seconds) 2015-02-12T00:05:13Z ASau quit (Ping timeout: 264 seconds) 2015-02-12T00:05:58Z fantazo quit (Quit: Verlassend) 2015-02-12T00:06:01Z meiji11 joined #lisp 2015-02-12T00:06:48Z Kruppe joined #lisp 2015-02-12T00:08:22Z innertracks joined #lisp 2015-02-12T00:08:51Z justanotheruser joined #lisp 2015-02-12T00:08:59Z jlongste` quit (Ping timeout: 246 seconds) 2015-02-12T00:09:55Z tkhoa2711 joined #lisp 2015-02-12T00:10:31Z seg joined #lisp 2015-02-12T00:11:47Z jlongste` joined #lisp 2015-02-12T00:12:44Z hiroakip quit (Ping timeout: 245 seconds) 2015-02-12T00:17:14Z radioninja quit (Ping timeout: 252 seconds) 2015-02-12T00:17:41Z enitiz quit (Read error: Connection reset by peer) 2015-02-12T00:25:44Z stepnem quit (Ping timeout: 246 seconds) 2015-02-12T00:30:37Z Bicyclidine quit (Quit: leaving) 2015-02-12T00:32:30Z joneshf-laptop quit (Remote host closed the connection) 2015-02-12T00:32:56Z tkhoa2711 quit (Quit: tkhoa2711) 2015-02-12T00:35:37Z mfay joined #lisp 2015-02-12T00:36:14Z Karl_Dscc quit (Remote host closed the connection) 2015-02-12T00:36:53Z mfay: Hey, can I ask a quick lisp question that is giving me a huge headache? I'm trying to override the #'equal that is used by (member atm list) by doing (member atm list :test #'in-class) where in-class is a function i defined to return t or nil. Is that the right syntax? Because I'm getting an error that says "IF: variable RETURN has no value" 2015-02-12T00:36:53Z hitecnologys quit (Read error: Connection reset by peer) 2015-02-12T00:37:38Z BRPocock: sounds like an error in #'in-class … try calling it from the REPL with some sample values? 2015-02-12T00:37:56Z hitecnologys joined #lisp 2015-02-12T00:37:59Z nell joined #lisp 2015-02-12T00:38:23Z jasom: mfay: If you're using sbcl, then that should have warned you when it compiled too... 2015-02-12T00:38:45Z k-dawg joined #lisp 2015-02-12T00:38:56Z mfay: What's sbcl? It just runs it and gives me that error at the line I use member 2015-02-12T00:39:17Z jasom: mfay: sbcl is one common lisp implementation. 2015-02-12T00:39:41Z jasom: mfay: anyway if you paste the source to in-clase at http://paste.lisp.org I bet we can help you find the problem 2015-02-12T00:39:47Z seg quit (Quit: !!) 2015-02-12T00:42:27Z mfay: jasom: there's sort of two much code to put everything... but what's relevant is http://paste.lisp.org/display/145737 2015-02-12T00:45:16Z dstatyvka left #lisp 2015-02-12T00:45:30Z BRPocock: hint: to exit a function early is a special form, usage: (return-from function value) 2015-02-12T00:45:48Z jasom: mfay: I think you want "(return-from in-class t)" rather than "return t" 2015-02-12T00:46:27Z jasom: (if x return y) means "IF X, THEN return, ELSE y" and return isn't a variable so... 2015-02-12T00:46:56Z ynniv quit (Quit: ynniv) 2015-02-12T00:47:18Z gendl quit (Quit: gendl) 2015-02-12T00:47:22Z BRPocock left #lisp 2015-02-12T00:48:30Z mfay: oh wait the if line isn't supposed to be in there, it does the same thing as the cond on the next line.. 2015-02-12T00:50:26Z warweasle joined #lisp 2015-02-12T00:50:32Z seg joined #lisp 2015-02-12T00:50:42Z mfay: but i'm not sure how that solves the problem.. 2015-02-12T00:51:33Z devll quit (Ping timeout: 250 seconds) 2015-02-12T00:52:54Z mfay: also, i changed all the returns to return-from and i still get the same error.. 2015-02-12T00:53:45Z attila_lendvai quit (Quit: Leaving.) 2015-02-12T00:55:50Z warweasle quit (Quit: I just can't take it anymore!!!) 2015-02-12T00:57:34Z fragamus quit (Quit: Computer has gone to sleep.) 2015-02-12T00:57:34Z logand` quit (Ping timeout: 252 seconds) 2015-02-12T00:59:43Z seg quit (Quit: !!) 2015-02-12T01:00:24Z johann joined #lisp 2015-02-12T01:00:43Z harish quit (Ping timeout: 252 seconds) 2015-02-12T01:01:45Z innertracks quit (Quit: innertracks) 2015-02-12T01:05:39Z johann quit (Ping timeout: 264 seconds) 2015-02-12T01:06:00Z protist joined #lisp 2015-02-12T01:09:40Z ebrasca quit (Quit: ebrasca) 2015-02-12T01:10:31Z seg joined #lisp 2015-02-12T01:11:32Z stardiviner quit (Ping timeout: 245 seconds) 2015-02-12T01:12:10Z mfay quit (Ping timeout: 246 seconds) 2015-02-12T01:12:59Z justanotheruser quit (Ping timeout: 246 seconds) 2015-02-12T01:14:16Z enitiz joined #lisp 2015-02-12T01:17:27Z linux_dream joined #lisp 2015-02-12T01:18:25Z urandom__ quit (Quit: Konversation terminated!) 2015-02-12T01:21:01Z guicho_ quit (Ping timeout: 250 seconds) 2015-02-12T01:21:31Z jlongste` quit (Ping timeout: 256 seconds) 2015-02-12T01:22:11Z mrcom joined #lisp 2015-02-12T01:23:59Z Pyridrym quit (Quit: leaving) 2015-02-12T01:25:25Z k-dawg quit (Quit: This computer has gone to sleep) 2015-02-12T01:25:25Z stardiviner joined #lisp 2015-02-12T01:26:34Z Big_G quit (Read error: Connection reset by peer) 2015-02-12T01:29:38Z cdtaylor joined #lisp 2015-02-12T01:30:08Z pillton: Isn't there a machine learning company that uses lisp and is based in Japan? 2015-02-12T01:30:16Z ASau joined #lisp 2015-02-12T01:30:36Z frkout joined #lisp 2015-02-12T01:30:57Z nyef: My understanding is that the Japanese lispers mostly keep to themselves... and that they're in a rather inconvenient time zone for most of us as well. 2015-02-12T01:31:05Z justanotheruser joined #lisp 2015-02-12T01:31:28Z pillton: No need to be offensive about my timezone! 2015-02-12T01:31:44Z emaczen: what do you guys use for completion in slime? Right now slime-complete-symbol is bound to C-M-i. 2015-02-12T01:31:57Z nsjph: it's asia morning right now 2015-02-12T01:32:44Z emaczen: By default, this is the same binding used for completion in elisp, but I was told to change the variable 'tab-always-indent' to complete when already indented 2015-02-12T01:33:12Z Xach: emaczen: I use C-c C-i 2015-02-12T01:33:33Z Xach: pillton: MSI springs to mind 2015-02-12T01:33:53Z emaczen: Xach: that seems to work as well -- I'm going to go ask the emacs guys 2015-02-12T01:34:03Z pillton: Xach: Yes, that is them. I knew it started with M. 2015-02-12T01:35:44Z Xach: emaczen: ask them what? 2015-02-12T01:38:01Z gendl joined #lisp 2015-02-12T01:40:34Z Fare quit (Quit: Leaving) 2015-02-12T01:40:51Z emaczen: Xach: How to change a keybinding in slime -- but now I am asking here because they just ignored me :( 2015-02-12T01:42:50Z Guest43702: they probably just don't know 2015-02-12T01:42:55Z Guest43702: most emacs users are not lispers 2015-02-12T01:43:25Z emaczen: Guest43702: yeah that makes sense, I have asked elisp questions though and got knowledgeable answers 2015-02-12T01:44:39Z nell quit (Ping timeout: 264 seconds) 2015-02-12T01:44:51Z Xach: emaczen: http://www.emacswiki.org/emacs/SlimeMode has some examples of define-key that you may be able to adapt. or you might need local-set-key in a hook. 2015-02-12T01:45:06Z Xach: I think this is more of an emacs question than a common lisp question; slime is just the mode. 2015-02-12T01:45:34Z Guest43702: oh, you are correct. *nod* 2015-02-12T01:46:00Z frkout quit (Remote host closed the connection) 2015-02-12T01:46:26Z frkout joined #lisp 2015-02-12T01:46:52Z EvW quit (Ping timeout: 250 seconds) 2015-02-12T01:48:21Z jlongste` joined #lisp 2015-02-12T01:53:44Z hitecnologys quit (Quit: hitecnologys) 2015-02-12T01:54:20Z jlongste` quit (Ping timeout: 246 seconds) 2015-02-12T01:58:26Z linux_dream quit (Quit: Leaving) 2015-02-12T01:59:52Z arpunk joined #lisp 2015-02-12T02:01:47Z Tristam joined #lisp 2015-02-12T02:02:05Z ASau quit (Remote host closed the connection) 2015-02-12T02:03:58Z ASau joined #lisp 2015-02-12T02:04:27Z innertracks joined #lisp 2015-02-12T02:04:33Z scymtym_ quit (Ping timeout: 245 seconds) 2015-02-12T02:07:59Z johann joined #lisp 2015-02-12T02:09:29Z Tristam quit (Max SendQ exceeded) 2015-02-12T02:10:45Z Tristam joined #lisp 2015-02-12T02:16:03Z gmcastil joined #lisp 2015-02-12T02:16:14Z Oladon1 joined #lisp 2015-02-12T02:17:11Z Tristam quit (Max SendQ exceeded) 2015-02-12T02:18:44Z harish joined #lisp 2015-02-12T02:18:45Z Oladon quit (Ping timeout: 256 seconds) 2015-02-12T02:19:19Z studly-admired-g joined #lisp 2015-02-12T02:19:26Z Tristam joined #lisp 2015-02-12T02:20:01Z emaczen: what is: [Condition of type UIOP/LISP-BUILD:COMPILE-FILE-ERROR] 2015-02-12T02:20:09Z emaczen: how can I make this error message useful? 2015-02-12T02:22:04Z Xach: emaczen: look at what's above it, and look at the compilation log for errors or warnings 2015-02-12T02:22:12Z jeaye joined #lisp 2015-02-12T02:24:15Z jeaye quit (Remote host closed the connection) 2015-02-12T02:24:51Z jeaye joined #lisp 2015-02-12T02:27:00Z jeaye quit (Read error: Connection reset by peer) 2015-02-12T02:27:23Z jeaye joined #lisp 2015-02-12T02:27:53Z jeaye left #lisp 2015-02-12T02:30:22Z nell joined #lisp 2015-02-12T02:30:25Z jacsib quit (Ping timeout: 244 seconds) 2015-02-12T02:31:26Z ahungry joined #lisp 2015-02-12T02:32:22Z manuel__ joined #lisp 2015-02-12T02:33:11Z jacsib joined #lisp 2015-02-12T02:33:16Z Pyridrym joined #lisp 2015-02-12T02:35:58Z johann quit (Remote host closed the connection) 2015-02-12T02:36:34Z johann joined #lisp 2015-02-12T02:37:25Z beach joined #lisp 2015-02-12T02:37:39Z beach: Good morning everyone! 2015-02-12T02:37:57Z emaczen: morning beach 2015-02-12T02:37:58Z johann quit (Read error: Connection reset by peer) 2015-02-12T02:38:16Z studly-admired-g quit (Ping timeout: 246 seconds) 2015-02-12T02:38:26Z johann joined #lisp 2015-02-12T02:40:41Z jlongste` joined #lisp 2015-02-12T02:42:30Z nyef: Hello beach. 2015-02-12T02:42:41Z jpanest_ joined #lisp 2015-02-12T02:44:17Z ASau` joined #lisp 2015-02-12T02:44:38Z antgreen` joined #lisp 2015-02-12T02:44:39Z dmiles joined #lisp 2015-02-12T02:45:02Z jlongste` quit (Ping timeout: 246 seconds) 2015-02-12T02:45:19Z cdtaylor quit 2015-02-12T02:47:39Z gmcastil quit (Ping timeout: 264 seconds) 2015-02-12T02:47:52Z ski_ joined #lisp 2015-02-12T02:48:26Z pjb quit (Ping timeout: 245 seconds) 2015-02-12T02:49:19Z recycle joined #lisp 2015-02-12T02:51:31Z trnv2 joined #lisp 2015-02-12T02:51:57Z loke: Good morning 2015-02-12T02:52:17Z ASau quit (*.net *.split) 2015-02-12T02:52:17Z antgreen quit (*.net *.split) 2015-02-12T02:52:17Z sword`` quit (*.net *.split) 2015-02-12T02:52:17Z Grue` quit (*.net *.split) 2015-02-12T02:52:17Z grantix quit (*.net *.split) 2015-02-12T02:52:17Z alexherbo2 quit (*.net *.split) 2015-02-12T02:52:17Z jpanest quit (*.net *.split) 2015-02-12T02:52:17Z trn quit (*.net *.split) 2015-02-12T02:52:17Z ski quit (*.net *.split) 2015-02-12T02:52:17Z dmiles_afk quit (*.net *.split) 2015-02-12T02:52:17Z jim87864` quit (*.net *.split) 2015-02-12T02:53:07Z MutSbeta joined #lisp 2015-02-12T02:53:39Z pjb joined #lisp 2015-02-12T02:56:28Z fragamus joined #lisp 2015-02-12T02:57:01Z drmeister: Hey beach - are these hoisted load-time-values passed to enclosed functions through closures? 2015-02-12T02:58:03Z trnv2 is now known as trn 2015-02-12T02:58:39Z beach: Yes. 2015-02-12T02:58:49Z alexherbo2 joined #lisp 2015-02-12T02:58:50Z beach: Same mechanism as closed-over variables. 2015-02-12T03:00:13Z drmeister: So why pass them as arguments to the top-level-function rather than as part of a closed over environment? 2015-02-12T03:00:21Z beach: It makes the mechanism "portable" in some sense. 2015-02-12T03:00:53Z beach: I considered that. 2015-02-12T03:01:01Z Oveja quit (Ping timeout: 264 seconds) 2015-02-12T03:01:23Z beach: It may remove the problem of the argument limit. 2015-02-12T03:01:57Z drmeister: Is there any advantage to passing them as arguments rather than as part of a closed over environment? 2015-02-12T03:02:23Z beach: Not that I can think of. 2015-02-12T03:02:57Z beach: I did it this way, because the AST notation can express it. 2015-02-12T03:03:55Z drmeister: Got it. 2015-02-12T03:04:25Z beach: It is so much easier to do transformations at the AST level. 2015-02-12T03:05:42Z drmeister: I had another assertion failure that I sent you email about. 2015-02-12T03:05:49Z beach: I saw that. 2015-02-12T03:06:00Z beach: But it is hard to see what is going on from the backtrace. 2015-02-12T03:07:17Z drmeister: Is there any further info I can provide you? 2015-02-12T03:07:56Z beach: I don't know yet. I'll run some more tests when I am a bit more awake. 2015-02-12T03:09:56Z stardiviner quit (Ping timeout: 252 seconds) 2015-02-12T03:10:28Z jlongste` joined #lisp 2015-02-12T03:12:02Z gendl quit (Quit: gendl) 2015-02-12T03:12:22Z vdamewood joined #lisp 2015-02-12T03:12:44Z yeticry quit (Ping timeout: 246 seconds) 2015-02-12T03:12:52Z beach: drmeister: From my side, you are providing great feedback because you are using a different environment than I am. But if this way of working is too frustrating for you, you could wait until things are a bit more polished. 2015-02-12T03:13:28Z dafunktion quit (Remote host closed the connection) 2015-02-12T03:13:29Z drmeister: It's not frustrating. I'm eager to make progress and generate some LLVM-IR 2015-02-12T03:13:39Z beach: OK. Just checking. 2015-02-12T03:13:49Z yeticry joined #lisp 2015-02-12T03:13:51Z dafunktion joined #lisp 2015-02-12T03:14:20Z dafunktion quit (Remote host closed the connection) 2015-02-12T03:14:55Z dafunktion joined #lisp 2015-02-12T03:15:34Z jeaye joined #lisp 2015-02-12T03:16:00Z jeaye left #lisp 2015-02-12T03:18:17Z yrdz quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-02-12T03:19:33Z dafunktion quit (Ping timeout: 245 seconds) 2015-02-12T03:20:42Z yrdz joined #lisp 2015-02-12T03:21:09Z drmeister: Are symbols treated as load-time-values? 2015-02-12T03:24:05Z beach: Constant symbols, yes. 2015-02-12T03:24:43Z beach: drmeister: The ASSERT error is one we have seen and one that I have not been able to reproduce, as I recall, right? 2015-02-12T03:25:22Z drmeister: As in function lookups (foo 1 2 3) FOO is a load-time value just as '1 '2 and '3 are. 2015-02-12T03:25:42Z drmeister: I'm not sure if it's the same ASSERT error that happened before. 2015-02-12T03:25:43Z beach: It should be, yes. 2015-02-12T03:25:56Z beach: I am pretty sure. 2015-02-12T03:26:07Z drmeister: I've kind of started over - it may be. 2015-02-12T03:26:37Z beach: drmeister: Since I don't look up global named functions this way, I don't have a load-time-value of the symbol FOO in this case. 2015-02-12T03:26:48Z fragamus quit (Quit: Computer has gone to sleep.) 2015-02-12T03:27:13Z drmeister: I don't understand that - how do you look up global named functions? 2015-02-12T03:27:44Z beach: I retrieve a CONS cell from the global first-class environment. 2015-02-12T03:27:51Z beach: ... at load time. 2015-02-12T03:27:54Z sword`` joined #lisp 2015-02-12T03:28:00Z beach: Or rather "link time". 2015-02-12T03:28:25Z drmeister: I see. 2015-02-12T03:28:34Z beach: So my load-time-value is (function-cell 'foo *global-environment*). 2015-02-12T03:28:58Z yrdz quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-02-12T03:29:23Z drmeister: I can do that as well. 2015-02-12T03:29:40Z beach: drmeister: Where do you store your global functions? 2015-02-12T03:29:55Z drmeister: function slot of symbol 2015-02-12T03:30:14Z beach: Then you can't do it my way. Unless I am missing something. 2015-02-12T03:30:14Z yrdz joined #lisp 2015-02-12T03:30:19Z beach: You need access to the symbol. 2015-02-12T03:30:49Z Zhivago: You need access to some indirection box to support redefinition. 2015-02-12T03:31:05Z drmeister: I see. 2015-02-12T03:31:25Z beach: drmeister: By default, once I get around to doing it right, there should be an FDEFINITION-AST that has a LOAD-TIME-VALUE-AST with the quoted symbol in it for global function lookup. 2015-02-12T03:32:05Z beach: drmeister: Where do you store functions named (SETF FOO)? 2015-02-12T03:32:40Z drmeister: Somewhere else - I'd have to dig around to find that 2015-02-12T03:34:31Z Guest43702 quit (Quit: Lost terminal) 2015-02-12T03:36:43Z beach: About the ASSERT error, we never got around to figuring that one out. As I recall, I was speculating that I should wrap the calls to GETHASH in some functions that can be traced, so that we can see which hash table does not contain the right value, and then hopefully figure out why. 2015-02-12T03:37:29Z innertracks quit (Quit: innertracks) 2015-02-12T03:38:14Z drmeister: I'm investigating as well - you probably know this already but NEW-INPUTS has the value (NIL) in this function: 2015-02-12T03:38:18Z drmeister: https://www.irccloud.com/pastebin/aHDbfWtX 2015-02-12T03:39:05Z drmeister: That's whats causing the assertion to fail. NEW-INPUTS doesn't contain any objects of type 'datum 2015-02-12T03:39:07Z joneshf-laptop joined #lisp 2015-02-12T03:39:12Z beach: Right. 2015-02-12T03:39:54Z beach: ... because one of the hash tables either contains NIL or contains no entry where it should contain a datum. 2015-02-12T03:40:10Z zacharias_ joined #lisp 2015-02-12T03:40:30Z ruste joined #lisp 2015-02-12T03:41:26Z drmeister: I can trace GETHASH 2015-02-12T03:41:37Z beach: Oh. OK. 2015-02-12T03:41:55Z drmeister: It generates a lot of output - lets see what happens 2015-02-12T03:42:48Z zeitue joined #lisp 2015-02-12T03:43:12Z montyxcantsin joined #lisp 2015-02-12T03:43:18Z zacharias quit (Ping timeout: 252 seconds) 2015-02-12T03:43:24Z beach: My function PROCESS-CAPTURED-VARIABLES is too big as well. I should try and break it down into smaller chunks. 2015-02-12T03:46:32Z drmeister: BRB 2015-02-12T03:47:01Z beach: drmeister: I am going to vanish for half an hour or so. 2015-02-12T03:52:06Z montyxcantsin quit (Ping timeout: 250 seconds) 2015-02-12T03:52:49Z recycle quit (Ping timeout: 256 seconds) 2015-02-12T03:57:19Z recycle joined #lisp 2015-02-12T03:58:22Z nyef quit (Quit: G'night all) 2015-02-12T04:00:08Z zacts quit (Remote host closed the connection) 2015-02-12T04:04:07Z johann quit (Remote host closed the connection) 2015-02-12T04:04:43Z johann joined #lisp 2015-02-12T04:08:52Z johann quit (Ping timeout: 240 seconds) 2015-02-12T04:13:08Z emaczen: is (maphash (lambda (k v) k) some-hash-table) the best way to get the keys of a hash table? 2015-02-12T04:13:15Z beach: drmeister: I think what I will do (once I am a bit more awake) is to create some more abstractions from that big function. That way, the abstracted functions can do more checks, and they can be traced independently. 2015-02-12T04:13:20Z Zhivago: Questions containing 'best' are generally unanswerable. 2015-02-12T04:13:58Z emaczen: how about recommended? 2015-02-12T04:14:02Z drmeister: beach: I'm evaluating parts of it - trying to get some insight - nothing yet. 2015-02-12T04:14:24Z beach: emaczen: That form will throw away the keys after they have been retrieved. 2015-02-12T04:14:40Z emaczen: it mutates the hash-table? 2015-02-12T04:15:05Z emaczen: what do you mean by throw away? 2015-02-12T04:15:40Z drmeister: beach: It's this loop that is collecting (NIL) - correct? 2015-02-12T04:15:43Z recycle quit (Ping timeout: 255 seconds) 2015-02-12T04:15:44Z drmeister: https://www.irccloud.com/pastebin/LE0jYxhu 2015-02-12T04:15:46Z beach: emaczen: For each entry in the hash table, it will call the function (lambda (k v) k) with the key and the value. That function does nothing with the key. 2015-02-12T04:16:08Z emaczen: You mean value? 2015-02-12T04:16:51Z beach: drmeister: Yes, I think that's correct. 2015-02-12T04:16:59Z beach: emaczen: What do you think it does with the key? 2015-02-12T04:17:16Z drmeister: emaczen: You are not collecting the keys in anything. 2015-02-12T04:17:30Z emaczen: beach: I thought it was just returning all the keys (I was orginially calling format and so it printed them all in the REPL and I got confused) 2015-02-12T04:18:14Z beach: emaczen: Read the Common Lisp HyperSpec entry for maphash. 2015-02-12T04:18:19Z beach: clhs maphash 2015-02-12T04:18:19Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_maphas.htm 2015-02-12T04:18:28Z beach: emaczen: It returns NIL. 2015-02-12T04:19:41Z emaczen: beach: I just looked up the loop syntax -- a little weird -- "being the hash-key" 2015-02-12T04:20:05Z emaczen: (loop for k being the hash-key in some-hash-table collect k) 2015-02-12T04:20:10Z emaczen: ^^ that's what I did 2015-02-12T04:20:35Z beach: emaczen: Right, that's different from your maphash form. This time you collect the keys. 2015-02-12T04:21:29Z beach: emaczen: With maphash, you could do (let ((keys '())) (maphash (lambda (key value) (push key keys)) table) keys) 2015-02-12T04:22:29Z emaczen: beach: Thanks for the tip! 2015-02-12T04:22:38Z beach: Anytime. 2015-02-12T04:24:50Z emaczen: I've read a little bit of ANSI common lisp by Paul Graham and he says that (push value list) and then (nreverse list) is a common lisp idiom. 2015-02-12T04:25:05Z emaczen: My question is how efficient is the nreverse in good implementations 2015-02-12T04:25:07Z beach: That's true, if you care about the order. 2015-02-12T04:25:52Z dafunktion joined #lisp 2015-02-12T04:26:08Z beach: emaczen: It is definitely O(n) and no consing. It needs a few memory accesses per CONS cell. 2015-02-12T04:27:54Z beach: Unless you are doing something completely trivial to compute the values to push, computing the values takes more time than doing the NREVERSE. 2015-02-12T04:28:22Z beach: emaczen: Are you sure you ought to care about that level of performance? 2015-02-12T04:28:54Z drmeister: beach: I learned a little more. 2015-02-12T04:29:02Z drmeister: In the code snippet above 2015-02-12T04:29:17Z emaczen: Just curious. I was thinking if there was a pointer from the "tail" to the "head" but then you would need pointers in the opposite direction and the list returned from nreverse would need to know this 2015-02-12T04:29:29Z beach: drmeister: What did you learn? 2015-02-12T04:29:33Z emaczen: So you would need a double-linked-list to get those backwards pointers 2015-02-12T04:29:34Z drmeister: I changed the code to this: 2015-02-12T04:29:39Z drmeister: https://www.irccloud.com/pastebin/j99KXJDf 2015-02-12T04:29:50Z drmeister: True a: NIL 2015-02-12T04:30:06Z drmeister: So (gethash (cons owner import) cell-locations) is returning NIL 2015-02-12T04:30:17Z dafunktion quit (Ping timeout: 244 seconds) 2015-02-12T04:30:27Z beach: Yeah, I was guessing that. 2015-02-12T04:30:35Z beach: It is the only #'EQUAL hash table. 2015-02-12T04:30:49Z emaczen: What is the recommended way to implement datastructures in CL (I know you can do defstruct and then practically do the same thing like you would in a C-like language) but I've also seen Paul Graham do some pretty cool things with closures and graphs 2015-02-12T04:30:56Z drmeister: It only has one entry 2015-02-12T04:31:07Z emaczen: graphs/trees 2015-02-12T04:31:09Z drmeister: a CLEAVIR-IR:ENTER-INSTRUCTION#<0x115b578d8> = (G2159#) [remove entry] 2015-02-12T04:31:32Z drmeister: And you are looking up (cons owner import) which will fail. 2015-02-12T04:33:19Z beach: what does that entry mean? 2015-02-12T04:33:41Z drmeister: I'm not sure what you are asking 2015-02-12T04:34:05Z drmeister: The key/value pair in the hash table? 2015-02-12T04:34:09Z beach: How should I interpret CLEAVIR-IR:ENTER... = (G...)? 2015-02-12T04:34:39Z beach: is the enter-instruction the key? 2015-02-12T04:34:54Z drmeister: The key is a CLEAVIR-IR:ENTER-INSTRUCTION - yeah 2015-02-12T04:35:18Z drmeister: Does that make sense? 2015-02-12T04:35:20Z beach: and this is the hash table named cell-locations? 2015-02-12T04:36:10Z drmeister: Yes 2015-02-12T04:36:58Z beach: There is a single (setf (gethash ...)) for that table, and the key is a CONS. 2015-02-12T04:37:13Z drmeister: I'm looking at it - curious 2015-02-12T04:37:44Z beach: emaczen: You should use STANDARD-OBJECTs, created by making instances of classed defined by DEFCLASS. 2015-02-12T04:38:28Z emaczen: beach: what is the point of defstruct then? 2015-02-12T04:38:53Z emaczen: E.g. in C++ I would make a node struct and a linked-list class 2015-02-12T04:39:10Z beach: emaczen: Not much point anymore. It existed before CLOS was in the language. 2015-02-12T04:39:55Z k-dawg joined #lisp 2015-02-12T04:40:15Z drmeister: beach: I just created a #'equal hash-table and added an entry with a CONS as a key - it worked fine - investigating 2015-02-12T04:40:29Z beach: drmeister: OK. Great! 2015-02-12T04:41:19Z qubitnerd joined #lisp 2015-02-12T04:41:28Z beach: emaczen: Classes in Common Lisp are not as complicated as in other languages. They just behave much better than structs with respect to interactive development. Also, structs only support single inheritance. 2015-02-12T04:43:56Z emaczen: beach: is there a constant time append function for a sequence type? I just checked vector-push and vector-push-extend and couldn't really get them to work. 2015-02-12T04:44:09Z emaczen: e.g. (setf v (vector 1 2 3)) 2015-02-12T04:44:15Z emaczen: (vector-push 4 v) 2015-02-12T04:44:37Z Bike: cl:vector makes a simple-vector, w hich doesn't have a fill pointer, iirc 2015-02-12T04:44:54Z beach: emaczen: You must learn to stick in a "I see", or "OK" from time to time before you change the subject. Otherwise, one never knows whether you even read what one wrote. 2015-02-12T04:45:00Z drmeister: beach: Never mind that last value - there is a problem with my implementation of slime - when I inspect a variable by hitting it inspects the variable above it in the frame (annoying) 2015-02-12T04:45:03Z drmeister: Hang on 2015-02-12T04:45:11Z emaczen: beach: got it! 2015-02-12T04:45:32Z drmeister: There is only one value in that hash table and I think it is: 2015-02-12T04:45:33Z drmeister: (a CLEAVIR-IR:TOP-LEVEL-ENTER-INSTRUCTION#<0x11688b798> . G2435#) = G2442# 2015-02-12T04:45:41Z emaczen: beach: I read all the gold that comes out of this channel :) 2015-02-12T04:46:07Z Petit_Dejeuner_ joined #lisp 2015-02-12T04:46:12Z beach: drmeister: That looks a lot better. 2015-02-12T04:46:47Z beach: drmeister: Now the question is: what is the call to gethash asking for that it returns NIL? 2015-02-12T04:47:13Z psy_ quit (Read error: Connection reset by peer) 2015-02-12T04:47:16Z emaczen: Bike: I'm not sure I folow 2015-02-12T04:47:21Z beach: emaczen: Listen to what Bike said. You must create a vector with a fill pointer. 2015-02-12T04:47:47Z beach: emaczen: See make-array. 2015-02-12T04:48:10Z Bike: emaczen: for vector-push to work the vector needs a "fill pointer". vectors made with the vector function do not have one. 2015-02-12T04:48:43Z emaczen: Bike and Beach: Are there other methods besides make-array that would work? 2015-02-12T04:48:45Z drmeister: Checking 2015-02-12T04:49:22Z beach: emaczen: Not if you want to use VECTOR-PUSH-EXTEND. 2015-02-12T04:49:40Z ASau` is now known as ASau 2015-02-12T04:49:42Z beach: emaczen: Is there something wrong with MAKE-ARRAY? 2015-02-12T04:49:54Z Quadrescence joined #lisp 2015-02-12T04:50:12Z recycle joined #lisp 2015-02-12T04:50:58Z psy_ joined #lisp 2015-02-12T04:51:48Z jasom: one of these days I'm going to try out a web framework and not run into a bug that annoys me enough to fix myself in the first two days 2015-02-12T04:52:03Z emaczen: beach: No, I am just looking for alternatives. It seems to work. 2015-02-12T04:53:21Z grantix joined #lisp 2015-02-12T04:53:29Z drmeister: beach: There may be a problem with my HASH-TABLE-EQUAL when I gethash with a CONS 2015-02-12T04:53:57Z beach: drmeister: I thought that might be the case. 2015-02-12T04:54:29Z beach: But it should always be the last thing to suspect bugs in the implementation. 2015-02-12T04:54:53Z enitiz quit (Ping timeout: 265 seconds) 2015-02-12T04:55:39Z recycle quit (Ping timeout: 245 seconds) 2015-02-12T04:56:57Z Pyridrym quit (Quit: Lost terminal) 2015-02-12T04:57:22Z quazimodo quit (Ping timeout: 245 seconds) 2015-02-12T04:59:26Z Big_G joined #lisp 2015-02-12T05:01:25Z Pyridrym joined #lisp 2015-02-12T05:03:09Z Harag joined #lisp 2015-02-12T05:03:51Z drmeister: My tests are all working fine - argh 2015-02-12T05:04:49Z drmeister: https://www.irccloud.com/pastebin/D0aqSfSS 2015-02-12T05:04:57Z johann joined #lisp 2015-02-12T05:05:40Z recycle joined #lisp 2015-02-12T05:05:50Z ruste quit (Read error: Connection reset by peer) 2015-02-12T05:08:39Z emaczen: what is the literal for the space character? 2015-02-12T05:09:23Z k-dawg quit (Quit: This computer has gone to sleep) 2015-02-12T05:10:10Z johann quit (Ping timeout: 255 seconds) 2015-02-12T05:10:11Z Bike: #\ or #\Space 2015-02-12T05:10:40Z emaczen: Thanks Bike! 2015-02-12T05:10:53Z innertracks joined #lisp 2015-02-12T05:11:50Z theos joined #lisp 2015-02-12T05:12:31Z theos: hmm 2015-02-12T05:13:39Z keen__________59 joined #lisp 2015-02-12T05:14:59Z keen__________58 quit (Ping timeout: 256 seconds) 2015-02-12T05:19:27Z beach: drmeister: Could it have something to do with GC? 2015-02-12T05:19:46Z drmeister: This is the boehm GC - it shouldn't be a problem. 2015-02-12T05:20:15Z kcj joined #lisp 2015-02-12T05:20:16Z beach: Because it doesn't move things? 2015-02-12T05:20:37Z drmeister: Right 2015-02-12T05:24:07Z Quadrescence quit (Quit: This computer has gone to sleep) 2015-02-12T05:27:28Z emaczen quit (Ping timeout: 245 seconds) 2015-02-12T05:28:12Z Harag1 joined #lisp 2015-02-12T05:28:15Z Harag quit (Read error: Connection reset by peer) 2015-02-12T05:30:59Z gingerale joined #lisp 2015-02-12T05:35:18Z cluck quit (Remote host closed the connection) 2015-02-12T05:37:44Z zacts joined #lisp 2015-02-12T05:39:27Z jackdaniel: parallell builds work on ecl, but it's on git head, not release 2015-02-12T05:43:18Z beach: drmeister: For testing things like hash tables, I strongly recommend random testing. Make a parallel implementation (say using lists) with the same interface. Then generate random operations that are submitted to both implementations, and the results are then compared. I have had a lot of success with that kind of testing. 2015-02-12T05:55:03Z innertracks quit (Quit: innertracks) 2015-02-12T05:56:00Z edgar-rft joined #lisp 2015-02-12T05:56:59Z gingerale quit (Ping timeout: 252 seconds) 2015-02-12T06:06:16Z drmeister: beach: It might be a GC issue. 2015-02-12T06:07:51Z drmeister: I recently moved where I stored the multiple values array from the stack into thread-local storage. thread-local storage is not visible to the garbage collector - maybe that's screwing me up. 2015-02-12T06:11:03Z jlongste` quit (Ping timeout: 264 seconds) 2015-02-12T06:12:32Z Zhivago: Wow, that's kind of broken. 2015-02-12T06:12:39Z Zhivago: Why does boehms scan that? 2015-02-12T06:13:36Z pranavrc joined #lisp 2015-02-12T06:13:36Z pranavrc quit (Changing host) 2015-02-12T06:13:36Z pranavrc joined #lisp 2015-02-12T06:15:07Z moei joined #lisp 2015-02-12T06:16:45Z drmeister: boehm doesn't scan it. 2015-02-12T06:17:12Z drmeister: boehm only scans it's own memory pools 2015-02-12T06:18:43Z Zhivago: Hmm, that seems like a severe limitation -- there's no way to register thread local stores? 2015-02-12T06:19:47Z Zhivago: It looks like there's an add_roots interface to support that. 2015-02-12T06:20:13Z drmeister: WARNING: the collector does not guarantee to scan thread-local storage (e.g. of the kind accessed with pthread_getspecific). The collector does scan thread stacks, though, so generally the best solution is to ensure that any pointers stored in thread-local storage are also stored on the thread's stack for the duration of their lifetime. (This is arguably a 2015-02-12T06:20:13Z drmeister: longstanding bug, but it hasn't been fixed yet.) 2015-02-12T06:20:39Z drmeister: From https://github.com/ivmai/bdwgc/ 2015-02-12T06:21:26Z drmeister: The easiest thing to do is create a pointer from thread local storage to struct stored at the top of the heap and put the thread local pointers there. 2015-02-12T06:21:39Z drmeister: s/heap/stack/ sheesh 2015-02-12T06:25:21Z manuel__ quit (Quit: manuel__) 2015-02-12T06:25:39Z keen__________60 joined #lisp 2015-02-12T06:26:32Z keen__________59 quit (Ping timeout: 244 seconds) 2015-02-12T06:31:06Z mishoo_ joined #lisp 2015-02-12T06:31:57Z Pyridrym quit (Quit: leaving) 2015-02-12T06:32:25Z schaueho joined #lisp 2015-02-12T06:33:58Z mrSpec joined #lisp 2015-02-12T06:34:04Z drmeister: beach: I might have fixed the problem, it may have been a GC problem - because something different is happening but I'm not sure if the something different comes before or after the previous error. 2015-02-12T06:34:48Z drmeister: beach: I'm making it to: (cleavir-ast-to-hir:compile-toplevel ast) 2015-02-12T06:34:58Z beach: OK. 2015-02-12T06:35:52Z BlueRavenGT quit (Ping timeout: 240 seconds) 2015-02-12T06:36:29Z drmeister: No, the error before was happening in HIR-TRANSFORMATIONS 2015-02-12T06:36:49Z drmeister: This one is in COMPILE-TOPLEVEL, which comes before HIR-TRANSFORMATIONS 2015-02-12T06:36:51Z beach: Correct. 2015-02-12T06:36:53Z drmeister: Damn 2015-02-12T06:36:57Z beach: Oops. 2015-02-12T06:40:07Z selat joined #lisp 2015-02-12T06:42:54Z drmeister: Maybe it's ok. Maybe GC problems were confusing me and now I'm on the right track. 2015-02-12T06:43:14Z drmeister: Do you have a moment - because I've gone and declared my own AST classes and I wanted to touch base with you on this. 2015-02-12T06:43:29Z beach: I have time. 2015-02-12T06:43:33Z hvxgr quit (Ping timeout: 252 seconds) 2015-02-12T06:44:04Z drmeister: Ok, when you hoist load-time-values you substituted lexical-ast and top-level-function-ast nodes - correct? 2015-02-12T06:44:37Z beach: I substituted LEXICAL-ASTs and *added* a TOP-LEVEL-FUNCTION-AST, yes. 2015-02-12T06:46:38Z beach: Or, rather, the LOAD-TIME-VALUE-ASTs were transformed into LEXICAL-ASTs without changing their identities. 2015-02-12T06:46:43Z drmeister: Right, I'm substituting PRECALC-VALUE-ASTs and adding a PRECALC-VALUE-VECTOR-FUNCTION-AST 2015-02-12T06:47:18Z drmeister: Ok, the LOAD-TIME-VALUE-ASTs are transformed into PRECALC-VALUE-ASTs without changing their identities. 2015-02-12T06:47:34Z beach: Sounds good. 2015-02-12T06:47:42Z drmeister: I'll show you an AST tree in a sec - just getting there. 2015-02-12T06:47:54Z drmeister: A hoisted one that is. 2015-02-12T06:48:24Z beach: Currently, in AST-to-HIR I have an assert that the top-level AST must be a TOP-LEVEL-FUNCTION-AST, so you might want to make your top-level AST a subclass of that. 2015-02-12T06:50:00Z drmeister: That's the assertion that I'm currently throwing. 2015-02-12T06:50:20Z drmeister: Good! Thank you. 2015-02-12T06:51:30Z drmeister: I had made it a subclass of FUNCTION-AST 2015-02-12T06:51:47Z beach: Yeah, that would trip the ASSERT. 2015-02-12T06:53:27Z drmeister: So my idea is to make the lambda-list of the PRECALC-VALUE-VECTOR-FUNCTION-AST accept a single required parameter, the vector of pre-calculated values. 2015-02-12T06:53:39Z salv0 quit (Ping timeout: 264 seconds) 2015-02-12T06:53:47Z beach: Sounds good to me. 2015-02-12T06:53:59Z drmeister: And the PRECALC-VALUE-AST represent references to indexed values within it. 2015-02-12T06:54:16Z beach: Sure, I understand. 2015-02-12T06:54:43Z drmeister: Ok: (hoisted-ast-form '(lambda (x) (+ 1 x))) 2015-02-12T06:55:29Z drmeister: http://imgur.com/JofmCZq 2015-02-12T06:55:32Z Grue`` joined #lisp 2015-02-12T06:55:38Z Grue`` is now known as Grue` 2015-02-12T06:56:08Z drmeister: Now, how do I go about converting this to HIR? 2015-02-12T06:56:08Z frkout_ joined #lisp 2015-02-12T06:56:31Z salv0 joined #lisp 2015-02-12T06:57:00Z beach: Looks good. 2015-02-12T06:57:07Z drmeister: When I try naively I get: #:G2058 fell through ETYPECASE expression. Wanted one of (CLEAVIR-AST:LEXICAL-AST). 2015-02-12T06:57:40Z drmeister: Do I need to make precalc-value-ast a subclass of lexical-ast? 2015-02-12T06:57:51Z beach: Yes. 2015-02-12T06:57:55Z beach: No wait. 2015-02-12T06:58:10Z ben_vulpes: what's the recommended approach for declaring a namespace in a file and then operating within the context of the compiled file (via C-c C-k in slime) at the repl? 2015-02-12T06:58:25Z ben_vulpes: please forgive my noob questions, i'm only barely conversant with common lisp. 2015-02-12T06:58:25Z beach: drmeister: What is it that you try that gives you the etypecase error? 2015-02-12T06:58:37Z Bike: ben_vulpes: defpackage, in-package 2015-02-12T06:59:03Z drmeister: https://www.irccloud.com/pastebin/e1CQ2tcg 2015-02-12T06:59:23Z ben_vulpes: thanks, Bike. 2015-02-12T06:59:37Z drmeister: In compile-general-purpose-asts.lisp 2015-02-12T06:59:58Z frkout quit (Ping timeout: 255 seconds) 2015-02-12T07:00:04Z beach: Oh, you are trying to compile it? 2015-02-12T07:00:25Z innertracks joined #lisp 2015-02-12T07:00:25Z drmeister: Yeah 2015-02-12T07:00:30Z drmeister: Just to HIR 2015-02-12T07:00:53Z ben_vulpes: Bike - so i (defpackage :my-pack) at the top of the file and compile it but then my repl seems unaware of that package, even after i call (in-package :my-pack) at the repl. 2015-02-12T07:00:57Z munksgaard joined #lisp 2015-02-12T07:01:13Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2015-02-12T07:01:20Z ben_vulpes: i think i don't understand the relatinoship between what's happening the compiled code and my repl 2015-02-12T07:01:30Z beach: drmeister: Unless your new ASTs are subclasses of existing ASTs, you must also define methods for compiling them to HIR. 2015-02-12T07:01:51Z drmeister: Right, what would it look like? 2015-02-12T07:01:55Z innertracks quit (Client Quit) 2015-02-12T07:02:32Z drmeister: Something like this:? 2015-02-12T07:02:35Z drmeister: https://www.irccloud.com/pastebin/WzhRu1oM 2015-02-12T07:03:36Z beach: drmeister: Well, that method is specialized to lexical-ast. 2015-02-12T07:04:11Z drmeister: I'd want some kind of make-precalc-vector-assignment-instruction wouldn't I? 2015-02-12T07:04:36Z beach: Your new AST, PRECALC-VALUE-AST, should probably have a LEXICAL-AST (the containing the array) as a child. 2015-02-12T07:04:41Z drmeister: To pull a value from the precalc-vector and put it in a variable 2015-02-12T07:05:11Z beach: why don't you just make it an ordinary vector? 2015-02-12T07:05:22Z zacharias_ quit (Ping timeout: 255 seconds) 2015-02-12T07:05:58Z beach: But yeah, if you want to make it a different kind of vector, you need an instruction that takes that vector and an index as inputs. 2015-02-12T07:06:31Z drmeister: I think I could make it an ordinary vector 2015-02-12T07:06:56Z beach: Then there are (or should be) existing instructions for handling those. 2015-02-12T07:07:07Z beach: and existing ASTs too. 2015-02-12T07:07:15Z drmeister: I think my current implementation is overcomplicated. It is two vectors, one for symbols that are for function invocations and another for everything else. 2015-02-12T07:07:47Z ben_vulpes left #lisp 2015-02-12T07:07:49Z drmeister: But the index is calculated at compile time. 2015-02-12T07:07:54Z drmeister: Does that cause problems? 2015-02-12T07:08:19Z drmeister: And it doesn't need to be represented as anything other than a raw integer 2015-02-12T07:08:30Z beach: Right. 2015-02-12T07:08:51Z beach: That integer needs to be a child AST of the access AST. 2015-02-12T07:09:45Z drmeister: I'm thinking I would pass the vector to the top-level function (precalc-vector-value-function) 2015-02-12T07:10:02Z beach: Yes, I understand. 2015-02-12T07:10:14Z drmeister: and it would be closed over and passed to the enclosed functions 2015-02-12T07:10:23Z beach: Yes, I understand. :) 2015-02-12T07:10:48Z drmeister: I know, I'm not completely convinced myself. 2015-02-12T07:11:03Z beach: The lambda list of the top-level ast must then contain a lexical-ast. 2015-02-12T07:11:12Z beach: The one that will contain the vector. 2015-02-12T07:11:26Z ben_vulpes joined #lisp 2015-02-12T07:11:27Z beach: Then each access AST must contain the same lexical-ast and an index AST. 2015-02-12T07:11:41Z drmeister: Ok, then there is a lexical-ast as a child of the vector access sat? 2015-02-12T07:11:46Z drmeister: s/sat/ast/ 2015-02-12T07:12:08Z beach: Yes. But I already said that. :) 2015-02-12T07:12:34Z grungier quit (Read error: Connection reset by peer) 2015-02-12T07:12:38Z beach: "Your new AST, PRECALC-VALUE-AST, should probably have a LEXICAL-AST (the containing the array) as a child." 2015-02-12T07:12:44Z drmeister: I saw you mention the integer index but I missed the vector lexical-ast 2015-02-12T07:13:04Z beach: Sure, it can happen. 2015-02-12T07:13:06Z drmeister: ok, it's a lot to take in at once 2015-02-12T07:13:28Z beach: Just think of it as an AST version of (aref vector index). 2015-02-12T07:13:33Z beach: Not rocket science. 2015-02-12T07:14:09Z hvxgr joined #lisp 2015-02-12T07:14:14Z drmeister: Right. 2015-02-12T07:14:26Z drmeister: Do you have AST nodes for raw integer arguments? 2015-02-12T07:14:38Z beach: IMMEDIATE-AST 2015-02-12T07:14:50Z drmeister: And they aren't boxed or anything? 2015-02-12T07:14:59Z beach: That's correct. 2015-02-12T07:15:27Z beach: They get turned into IMMEDIATE-INPUTs at the IR level. 2015-02-12T07:16:17Z drmeister: Ok so I would transform a (load-time-value
) into something like (aref-ast (lexical-ast :name vector) (immediate-ast :value XXX)) 2015-02-12T07:16:38Z beach: Looks right. 2015-02-12T07:16:51Z beach: I think it is called T-AREF-AST, but I might be misremembering. 2015-02-12T07:16:58Z drmeister: And the lambda-list for my precalc-value-vector-function-ast would be the ((lexical-ast :name vector)) 2015-02-12T07:17:10Z beach: Yes. 2015-02-12T07:17:19Z beach: See? Not hard at all. 2015-02-12T07:17:20Z beach: :) 2015-02-12T07:18:11Z drmeister: I'm kinda getting into the flow of it. 2015-02-12T07:18:53Z beach: This stuff is meant to be understandable to an implementer, so if it isn't, I need to know so that I can fix it. 2015-02-12T07:19:06Z drmeister: At what point would I need to assign the immediate-input value? 2015-02-12T07:19:30Z beach: Before you turn it into HIR, preferably. 2015-02-12T07:19:41Z beach: But it's easy. Just use the index in the list of load-time-values. 2015-02-12T07:19:46Z grungier joined #lisp 2015-02-12T07:19:50Z Mon_Ouie quit (Ping timeout: 246 seconds) 2015-02-12T07:20:12Z drmeister: I coalesce a lot of values across each COMPILE-FILE - does that make sense? 2015-02-12T07:20:21Z drmeister: The vector will only contain one entry for '1 2015-02-12T07:20:35Z Shinmera joined #lisp 2015-02-12T07:20:46Z beach: Sure. Coalesce first, and *then* use the index in the resulting vector. 2015-02-12T07:21:01Z zeitue quit (Read error: Connection reset by peer) 2015-02-12T07:21:39Z nostoi joined #lisp 2015-02-12T07:21:51Z drmeister: Then I don't need any ast->mir converters 2015-02-12T07:22:03Z drmeister: ast->HIR 2015-02-12T07:22:11Z lea_ joined #lisp 2015-02-12T07:22:24Z drmeister: except maybe for the precalc-value-vector-function-ast 2015-02-12T07:22:32Z beach: Correct, provided that I already wrote the methods for compiling the vector ASTs. 2015-02-12T07:22:48Z lea quit (Quit: Page Closed) 2015-02-12T07:22:56Z beach: You can just use the existing top-level-function-ast. 2015-02-12T07:23:13Z beach: Instead of N parameters, you just have 1. 2015-02-12T07:23:43Z drmeister: right 2015-02-12T07:24:03Z kapil___ joined #lisp 2015-02-12T07:24:07Z lea_ quit (Changing host) 2015-02-12T07:24:07Z lea_ joined #lisp 2015-02-12T07:24:11Z beach: No need to complicate things. ... unless you *want* to, of course. 2015-02-12T07:24:11Z lea_ is now known as lea 2015-02-12T07:25:18Z johann joined #lisp 2015-02-12T07:25:53Z drmeister: In this example: (hoisted-ast-form '(lambda (x) (+ 1 x))) --> http://imgur.com/JofmCZq 2015-02-12T07:26:34Z drmeister: I don't see the '+' symbol for the function. Is this because of the way you link in the functions ? 2015-02-12T07:27:21Z lea quit (Quit: Page Closed) 2015-02-12T07:27:28Z beach: It is hidden in the FDEFINITION-AST. That will change soon. 2015-02-12T07:27:41Z lea joined #lisp 2015-02-12T07:27:53Z beach: Soon, there will be a LOAD-TIME-VALUE-AST as a child of the FDEFINITION-AST, and it will contain the + symbol. 2015-02-12T07:28:13Z drmeister: Good, so it will be hoisted out the same way? 2015-02-12T07:28:17Z beach: Yes. 2015-02-12T07:28:25Z drmeister: That's what I was hoping to hear. 2015-02-12T07:28:44Z beach: I think I told you that currently, the + symbol is introduced at the HIR level which is too late. 2015-02-12T07:28:52Z beach: But I haven't had time to fix that yet. 2015-02-12T07:29:00Z beach: Same thing for symbol-value etc. 2015-02-12T07:29:19Z drmeister: When would you be able to fix that? 2015-02-12T07:29:27Z rick-monster quit (Ping timeout: 276 seconds) 2015-02-12T07:29:37Z beach: I'll try my best today, but I also need to work on my papers. 2015-02-12T07:29:43Z drmeister: Wait - same thing for the symbol-value? 2015-02-12T07:29:47Z drmeister: What does that mean? 2015-02-12T07:29:48Z beach: Yes. 2015-02-12T07:30:09Z drmeister: You mean symbol-value will have a load-time-value associated with it that contains the symbol name. 2015-02-12T07:30:09Z beach: That currently, there is a symbol-value-ast with the symbol hidden in it, so the symbol is not hoisted. 2015-02-12T07:30:14Z beach: Yes. 2015-02-12T07:30:19Z drmeister: Hoisting - good. 2015-02-12T07:30:29Z drmeister: So no symbols will remain within the AST 2015-02-12T07:30:34Z beach: Correct. 2015-02-12T07:30:42Z drmeister: What about NIL and T? 2015-02-12T07:30:55Z beach: They are just symbols too. 2015-02-12T07:30:58Z drmeister: Good 2015-02-12T07:31:04Z drmeister: Anything else? 2015-02-12T07:31:11Z beach: I don't think so. 2015-02-12T07:32:31Z beach: drmeister: I should probably get to work. And you should probably sleep, right? 2015-02-12T07:32:32Z drmeister: Ok, I'll simplify my precalculated value holder so that it can be represented by a single vector. 2015-02-12T07:32:34Z hiroakip joined #lisp 2015-02-12T07:32:42Z drmeister: Sleep is for weenies 2015-02-12T07:32:47Z beach: heh. 2015-02-12T07:32:48Z drmeister: Yes, I should get some sleep 2015-02-12T07:33:07Z drmeister: Ok, I'm off to dream about ASTs 2015-02-12T07:33:12Z beach: OK, sleep well. Time to get to work! 2015-02-12T07:33:14Z beach left #lisp 2015-02-12T07:35:33Z johann quit (Remote host closed the connection) 2015-02-12T07:35:44Z zeitue joined #lisp 2015-02-12T07:36:06Z johann joined #lisp 2015-02-12T07:36:50Z drmeister: General question: Is ELT considered to be faster for accessing vectors than AREF? 2015-02-12T07:37:02Z Shinmera: No, the other way around. 2015-02-12T07:37:14Z drmeister: Why? 2015-02-12T07:37:17Z Shinmera: ELT has to do additional checks, such as for the fill-pointer. 2015-02-12T07:37:25Z drmeister: Ok. 2015-02-12T07:37:25Z Zhivago: I wouldn't consider it so. You probably want SVREF. 2015-02-12T07:37:31Z psy_ quit (Quit: Leaving) 2015-02-12T07:37:39Z selat quit (Ping timeout: 246 seconds) 2015-02-12T07:37:41Z Shinmera: AREF lets you get elements beyond the fill-pointer, ELT won't. 2015-02-12T07:37:53Z drmeister: Got it. 2015-02-12T07:38:37Z drmeister: Thanks everyone - good night 2015-02-12T07:38:42Z Shinmera: Sleep well. 2015-02-12T07:40:37Z johann quit (Ping timeout: 256 seconds) 2015-02-12T07:41:00Z pt1 joined #lisp 2015-02-12T07:41:11Z rick-monster joined #lisp 2015-02-12T07:41:31Z thomas is now known as 7JTAB9B2I 2015-02-12T07:41:31Z fantazo joined #lisp 2015-02-12T07:43:16Z White_Flame: loke: in discussing strings and hairy-vector-aref, I completely forgot about svref. 2015-02-12T07:43:36Z loke: White_Flame: you are right 2015-02-12T07:43:56Z loke: but still, you can't just casually use that on any array 2015-02-12T07:44:07Z selat joined #lisp 2015-02-12T07:44:09Z MutSbeta quit (Quit: Leaving.) 2015-02-12T07:44:14Z lea_ joined #lisp 2015-02-12T07:45:37Z lea_ is now known as figment 2015-02-12T07:47:56Z frkout_ quit (Remote host closed the connection) 2015-02-12T07:48:23Z frkout joined #lisp 2015-02-12T07:48:48Z pt1 quit (Read error: Connection reset by peer) 2015-02-12T07:49:09Z figment quit (Changing host) 2015-02-12T07:49:10Z figment joined #lisp 2015-02-12T07:49:17Z kapil___ quit (Changing host) 2015-02-12T07:49:17Z kapil___ joined #lisp 2015-02-12T07:51:00Z ggole joined #lisp 2015-02-12T07:52:15Z pt1 joined #lisp 2015-02-12T07:52:51Z vdamewood quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2015-02-12T07:53:29Z figment left #lisp 2015-02-12T07:54:52Z defaultxr quit (Quit: gnight) 2015-02-12T07:56:06Z Beetny joined #lisp 2015-02-12T07:57:42Z frkout_ joined #lisp 2015-02-12T08:00:33Z frkout quit (Ping timeout: 250 seconds) 2015-02-12T08:01:02Z d4ryus joined #lisp 2015-02-12T08:01:20Z figment joined #lisp 2015-02-12T08:02:47Z cpc26 joined #lisp 2015-02-12T08:04:00Z d4ryus___ quit (Ping timeout: 252 seconds) 2015-02-12T08:04:24Z cpc26_ quit (Ping timeout: 245 seconds) 2015-02-12T08:05:10Z MrWoohoo quit (Ping timeout: 250 seconds) 2015-02-12T08:09:52Z arenz joined #lisp 2015-02-12T08:10:42Z larion quit (Ping timeout: 245 seconds) 2015-02-12T08:11:01Z zacharias_ joined #lisp 2015-02-12T08:18:46Z mvilleneuve_ joined #lisp 2015-02-12T08:19:01Z cadadar joined #lisp 2015-02-12T08:20:24Z meiji11 quit (Remote host closed the connection) 2015-02-12T08:28:53Z frkout_ quit (Remote host closed the connection) 2015-02-12T08:29:20Z frkout joined #lisp 2015-02-12T08:31:25Z Cymew joined #lisp 2015-02-12T08:32:55Z madnificent joined #lisp 2015-02-12T08:34:45Z kapil___ quit 2015-02-12T08:35:54Z munksgaard quit (Ping timeout: 252 seconds) 2015-02-12T08:36:20Z ered quit (Read error: Connection reset by peer) 2015-02-12T08:36:26Z johann joined #lisp 2015-02-12T08:36:43Z Cymew quit (Ping timeout: 256 seconds) 2015-02-12T08:36:57Z viaken: Is there a fortune cookie explination for why you can (setf (cdr ...)), but you can't (setf (nthcdr ...)) ? 2015-02-12T08:38:18Z protist_ joined #lisp 2015-02-12T08:38:29Z protist quit (Read error: Connection reset by peer) 2015-02-12T08:40:09Z Cymew joined #lisp 2015-02-12T08:40:16Z ben_vulpes left #lisp 2015-02-12T08:41:29Z johann quit (Ping timeout: 245 seconds) 2015-02-12T08:41:55Z ovenpasta joined #lisp 2015-02-12T08:43:10Z scymtym_ joined #lisp 2015-02-12T08:45:10Z figment quit (Remote host closed the connection) 2015-02-12T08:46:47Z zadock joined #lisp 2015-02-12T08:48:37Z axion: cdr is an accessor. nthcdr has no place, just a function 2015-02-12T08:51:28Z Beetny quit (Read error: Connection reset by peer) 2015-02-12T08:52:20Z vdamewood joined #lisp 2015-02-12T08:56:40Z lieven: I don't see any reason nthcdr couldn't have been defined as an accessor. 2015-02-12T09:01:03Z nostoi quit (Quit: Verlassend) 2015-02-12T09:01:39Z Ven joined #lisp 2015-02-12T09:02:08Z ered joined #lisp 2015-02-12T09:02:23Z fragamus joined #lisp 2015-02-12T09:02:55Z MrWoohoo joined #lisp 2015-02-12T09:03:24Z Beetny joined #lisp 2015-02-12T09:04:39Z joshe quit (Ping timeout: 272 seconds) 2015-02-12T09:04:49Z stepnem joined #lisp 2015-02-12T09:04:56Z joshe joined #lisp 2015-02-12T09:05:12Z Shinmera: (rplacd (nthcdr (1- n) list) newcdr) 2015-02-12T09:05:13Z yawniek_ quit (Ping timeout: 264 seconds) 2015-02-12T09:08:02Z Shinmera: But yeah, strange that nthcdr isn't an accessor. 2015-02-12T09:08:15Z rotty_ quit (Ping timeout: 244 seconds) 2015-02-12T09:08:22Z rotty joined #lisp 2015-02-12T09:08:46Z jsnell quit (Ping timeout: 244 seconds) 2015-02-12T09:08:47Z fridim_ joined #lisp 2015-02-12T09:08:53Z jsnell joined #lisp 2015-02-12T09:09:04Z H4ns: for an accessor, nthcdr does too much 2015-02-12T09:09:17Z psy_ joined #lisp 2015-02-12T09:09:47Z Ven quit (Read error: Connection reset by peer) 2015-02-12T09:09:54Z psy_ quit (Max SendQ exceeded) 2015-02-12T09:10:01Z ck_ quit (Ping timeout: 264 seconds) 2015-02-12T09:10:17Z ck_ joined #lisp 2015-02-12T09:11:30Z xan_ quit (Quit: Lost terminal) 2015-02-12T09:11:38Z Big_G quit (Read error: Connection reset by peer) 2015-02-12T09:11:49Z lieven: occasionally, it's just an oversight in the standard. file-position has a weird one argument/two argument distinction between getter and setter instead of being an accessor usable with setf. 2015-02-12T09:12:09Z grantix quit (Remote host closed the connection) 2015-02-12T09:13:52Z grantix joined #lisp 2015-02-12T09:14:31Z wilfredh joined #lisp 2015-02-12T09:14:54Z munksgaard joined #lisp 2015-02-12T09:16:01Z quazimodo joined #lisp 2015-02-12T09:18:56Z hitecnologys joined #lisp 2015-02-12T09:20:43Z quazimodo quit (Client Quit) 2015-02-12T09:22:53Z larion joined #lisp 2015-02-12T09:23:21Z psy_ joined #lisp 2015-02-12T09:27:09Z Cymew: It's almost as if the standard was designed by comittee, and they had made strange compromises. ;) 2015-02-12T09:27:16Z selat quit (Quit: Lost terminal) 2015-02-12T09:27:47Z lieven: or didn't get round to cleaning up some stuff. at the end funding was running out and they were in a hurry 2015-02-12T09:28:37Z harish quit (Ping timeout: 245 seconds) 2015-02-12T09:28:44Z lieven: the whole exception API doubles a lot of CLOS functionality since they weren't sure CLOS was going to make it and it still isn't required that exceptions are normal CLOS objects. 2015-02-12T09:30:41Z gniourf quit (Quit: Leaving) 2015-02-12T09:32:07Z gniourf joined #lisp 2015-02-12T09:32:49Z lemoinem quit (Ping timeout: 264 seconds) 2015-02-12T09:33:09Z logand joined #lisp 2015-02-12T09:33:10Z lemoinem joined #lisp 2015-02-12T09:34:53Z Cymew: Aren't all exceptions CLOS objects? Odd. that was one murky corner I was unawares of. 2015-02-12T09:36:23Z Cymew: I would guess in most implementations they are, though. Without knowing how they are implemented it feels like it would be easier to do it that way. Good to know they don't have to be if strangeness happens one day, I'd say. 2015-02-12T09:37:13Z johann joined #lisp 2015-02-12T09:37:21Z Cymew: Reminds me it's time to check if there have been any updates to the repo of sbcl btw 2015-02-12T09:37:45Z lieven: they are CLOS objects but they can be of a metaclass that forbids mixing them with normal objects 2015-02-12T09:37:55Z quazimodo joined #lisp 2015-02-12T09:38:10Z H4ns: there is the issue of the availability of clos in the first stage of bootstrapping an implementation. 2015-02-12T09:38:14Z lieven: The metaclass of the class condition is not specified. Names of condition types may be used to specify supertype relationships in define-condition, but the consequences are not specified if an attempt is made to use a condition type as a superclass in a defclass form. (9.1.1) 2015-02-12T09:38:29Z H4ns: some implementations want conditions while bootstrapping and only add full clos later in the process. 2015-02-12T09:38:30Z lieven: so using any of the normal CLOS operations is undefined 2015-02-12T09:38:50Z Cymew: H4ns: Suddenly makes sense 2015-02-12T09:39:17Z lieven: that's why you need to use MAKE-CONDITION and can't use MAKE-INSTANCE portably etc 2015-02-12T09:39:45Z Cymew: One of these days I'm going to dive into CLOS and MOP 2015-02-12T09:41:53Z kuzy000_ joined #lisp 2015-02-12T09:42:25Z johann quit (Ping timeout: 255 seconds) 2015-02-12T09:46:24Z oleo joined #lisp 2015-02-12T09:47:49Z oleo__ quit (Ping timeout: 255 seconds) 2015-02-12T09:59:57Z Ven joined #lisp 2015-02-12T10:00:26Z fikusz quit (Quit: Leaving) 2015-02-12T10:00:52Z stepnem quit (Ping timeout: 255 seconds) 2015-02-12T10:02:35Z pt1_ joined #lisp 2015-02-12T10:02:44Z easye joined #lisp 2015-02-12T10:02:58Z easye quit (Remote host closed the connection) 2015-02-12T10:03:05Z easye joined #lisp 2015-02-12T10:03:15Z fikusz joined #lisp 2015-02-12T10:05:44Z pt1 quit (Ping timeout: 246 seconds) 2015-02-12T10:05:55Z stepnem joined #lisp 2015-02-12T10:07:41Z cadadar quit (Quit: Leaving.) 2015-02-12T10:07:42Z cpc26_ joined #lisp 2015-02-12T10:08:39Z Ven quit (Ping timeout: 264 seconds) 2015-02-12T10:08:54Z devll joined #lisp 2015-02-12T10:09:02Z cpc26 quit (Read error: Connection reset by peer) 2015-02-12T10:09:39Z psy_ quit (Ping timeout: 256 seconds) 2015-02-12T10:09:43Z vdamewood quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2015-02-12T10:17:25Z k-dawg joined #lisp 2015-02-12T10:18:17Z Karl_Dscc joined #lisp 2015-02-12T10:23:18Z selat joined #lisp 2015-02-12T10:23:53Z logand quit (Ping timeout: 246 seconds) 2015-02-12T10:25:56Z zadock quit (Quit: Leaving) 2015-02-12T10:26:13Z pt1_ quit (Ping timeout: 264 seconds) 2015-02-12T10:28:03Z Ven joined #lisp 2015-02-12T10:28:45Z pt1 joined #lisp 2015-02-12T10:31:35Z ebrasca joined #lisp 2015-02-12T10:33:06Z Ven quit (Read error: Connection reset by peer) 2015-02-12T10:33:23Z Ven joined #lisp 2015-02-12T10:33:32Z radioninja joined #lisp 2015-02-12T10:37:53Z xan_ joined #lisp 2015-02-12T10:38:04Z Ven quit (Client Quit) 2015-02-12T10:41:55Z attila_lendvai joined #lisp 2015-02-12T10:41:55Z attila_lendvai quit (Changing host) 2015-02-12T10:41:55Z attila_lendvai joined #lisp 2015-02-12T10:49:31Z redeemed joined #lisp 2015-02-12T10:51:09Z intinig joined #lisp 2015-02-12T10:51:14Z kuzy000_ quit (Remote host closed the connection) 2015-02-12T10:52:12Z paradoja joined #lisp 2015-02-12T10:52:59Z cheier joined #lisp 2015-02-12T10:53:33Z cheier quit (Remote host closed the connection) 2015-02-12T10:55:18Z kuzy000_ joined #lisp 2015-02-12T10:55:27Z scymtym_ quit (Ping timeout: 264 seconds) 2015-02-12T10:58:30Z robot-beethoven quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-02-12T11:00:00Z hugoduncan quit (Remote host closed the connection) 2015-02-12T11:00:27Z Karl_Dscc quit (Remote host closed the connection) 2015-02-12T11:00:53Z hugod joined #lisp 2015-02-12T11:01:17Z hugod is now known as Guest25984 2015-02-12T11:02:41Z Guest25984 is now known as hugoduncan 2015-02-12T11:03:25Z pt1 quit (Ping timeout: 264 seconds) 2015-02-12T11:04:25Z dafunktion joined #lisp 2015-02-12T11:05:52Z the_real_intinig joined #lisp 2015-02-12T11:06:56Z milosn quit (Ping timeout: 246 seconds) 2015-02-12T11:08:37Z harish joined #lisp 2015-02-12T11:09:40Z ovenpasta quit (Ping timeout: 244 seconds) 2015-02-12T11:09:43Z intinig quit (Ping timeout: 256 seconds) 2015-02-12T11:10:30Z dafunktion quit (Remote host closed the connection) 2015-02-12T11:15:22Z pt1 joined #lisp 2015-02-12T11:23:33Z antgreen` is now known as antgreen 2015-02-12T11:25:40Z lispyone joined #lisp 2015-02-12T11:25:58Z johann joined #lisp 2015-02-12T11:27:24Z djinni` quit (Read error: Connection reset by peer) 2015-02-12T11:27:25Z lispyone quit (Remote host closed the connection) 2015-02-12T11:30:05Z resttime quit (Quit: resttime) 2015-02-12T11:30:52Z johann quit (Ping timeout: 255 seconds) 2015-02-12T11:33:12Z attila_lendvai quit (Quit: Leaving.) 2015-02-12T11:34:45Z attila_lendvai joined #lisp 2015-02-12T11:35:01Z djinni` joined #lisp 2015-02-12T11:36:37Z attila_lendvai quit (Read error: Connection reset by peer) 2015-02-12T11:39:28Z attila_lendvai joined #lisp 2015-02-12T11:39:32Z pt1 quit (Ping timeout: 246 seconds) 2015-02-12T11:40:52Z attila_lendvai quit (Client Quit) 2015-02-12T11:40:53Z attila_lendvai1 joined #lisp 2015-02-12T11:40:53Z attila_lendvai1 is now known as attila_lendvai 2015-02-12T11:40:53Z attila_lendvai quit (Changing host) 2015-02-12T11:40:53Z attila_lendvai joined #lisp 2015-02-12T11:45:15Z attila_lendvai quit (Read error: Connection reset by peer) 2015-02-12T11:47:48Z attila_lendvai joined #lisp 2015-02-12T11:50:09Z pjb` joined #lisp 2015-02-12T11:51:26Z psy_ joined #lisp 2015-02-12T11:52:04Z pjb quit (Ping timeout: 252 seconds) 2015-02-12T11:52:05Z psy_ quit (Max SendQ exceeded) 2015-02-12T11:52:25Z attila_lendvai quit (Read error: No route to host) 2015-02-12T11:52:28Z frkout quit (Ping timeout: 245 seconds) 2015-02-12T11:58:56Z attila_lendvai joined #lisp 2015-02-12T12:00:29Z Mon_Ouie joined #lisp 2015-02-12T12:00:29Z Mon_Ouie quit (Changing host) 2015-02-12T12:00:29Z Mon_Ouie joined #lisp 2015-02-12T12:02:11Z fantazo quit (Quit: Verlassend) 2015-02-12T12:04:02Z xyh joined #lisp 2015-02-12T12:07:24Z hardenedapple joined #lisp 2015-02-12T12:08:22Z pt1 joined #lisp 2015-02-12T12:13:13Z jackdaniel: how to check url of system in quicklisp? 2015-02-12T12:14:32Z JuanDaugherty joined #lisp 2015-02-12T12:14:44Z Karl_Dscc joined #lisp 2015-02-12T12:17:02Z psy_ joined #lisp 2015-02-12T12:18:23Z xyh quit (Ping timeout: 244 seconds) 2015-02-12T12:18:55Z 7JTAB9B2I left #lisp 2015-02-12T12:19:04Z Beetny quit (Ping timeout: 265 seconds) 2015-02-12T12:19:39Z johann joined #lisp 2015-02-12T12:22:20Z hhdave joined #lisp 2015-02-12T12:23:00Z Subfusc quit (Remote host closed the connection) 2015-02-12T12:23:21Z Xach: jackdaniel: Which URL? Like, where it came from? 2015-02-12T12:23:34Z Subfusc joined #lisp 2015-02-12T12:24:37Z devll quit (Remote host closed the connection) 2015-02-12T12:25:17Z paradoja quit (Ping timeout: 245 seconds) 2015-02-12T12:26:41Z jackdaniel: Xach: yes 2015-02-12T12:26:46Z the_real_intinig quit (Remote host closed the connection) 2015-02-12T12:27:52Z intinig joined #lisp 2015-02-12T12:28:26Z Subfusc quit (Remote host closed the connection) 2015-02-12T12:28:30Z Xach: jackdaniel: https://github.com/quicklisp/quicklisp-projects/ has the data quicklisp uses to fetch stuff 2015-02-12T12:28:41Z Subfusc joined #lisp 2015-02-12T12:29:33Z jackdaniel: thanks 2015-02-12T12:30:11Z ovenpasta joined #lisp 2015-02-12T12:31:09Z jackdaniel: it would be nice tough to be able to type (ql:system-url "foo-bar") 2015-02-12T12:32:08Z Xach: Yes, very much so 2015-02-12T12:32:18Z Xach: though some projects don't have URLs 2015-02-12T12:32:28Z Xach: not in the browsey way anyway 2015-02-12T12:35:00Z Longlius quit (Remote host closed the connection) 2015-02-12T12:35:14Z intinig quit (Ping timeout: 245 seconds) 2015-02-12T12:35:30Z jackdaniel: i just wanted to check, if memoize comes from fare's repo (not apparently, what i was looking for was fare-memoization) 2015-02-12T12:35:54Z Xach uses function-cache 2015-02-12T12:37:57Z jackdaniel: (reverse '(not apparently)) 2015-02-12T12:38:36Z Harag1 quit (Ping timeout: 250 seconds) 2015-02-12T12:46:54Z ynniv joined #lisp 2015-02-12T12:52:34Z radioninja quit (Ping timeout: 252 seconds) 2015-02-12T12:52:51Z Mon_Ouie quit (Ping timeout: 256 seconds) 2015-02-12T12:54:12Z Ven joined #lisp 2015-02-12T12:55:51Z Shinmera: jackdaniel: some ASDF systems have a homepage set. (see ASDF:SYSTEM-HOMEPAGE) 2015-02-12T12:57:43Z mishoo_ quit (Ping timeout: 255 seconds) 2015-02-12T12:59:25Z radioninja joined #lisp 2015-02-12T12:59:48Z ynniv quit (Quit: ynniv) 2015-02-12T12:59:59Z intinig joined #lisp 2015-02-12T13:02:39Z enitiz joined #lisp 2015-02-12T13:03:06Z enitiz quit (Read error: Connection reset by peer) 2015-02-12T13:10:54Z quazimodo quit (Ping timeout: 252 seconds) 2015-02-12T13:12:35Z lispyone joined #lisp 2015-02-12T13:13:16Z urandom__ joined #lisp 2015-02-12T13:14:39Z flip214: when I define a structure or class, the slot accessor type checks may or may not be written to the code, depending on SAFETY. Can I get a (generated) function that contains _all_ checks for manual calling, eg. after deserialization? 2015-02-12T13:14:50Z zacharias_ is now known as zacharias 2015-02-12T13:14:58Z flip214: I'd like to have types like (INTEGER 0 15) enforced at some points in the code. 2015-02-12T13:15:47Z Ethan- joined #lisp 2015-02-12T13:17:29Z Shinmera: slot types are optimisation declarations, not type checks, and may not be considered at all. 2015-02-12T13:17:34Z jackdaniel: flip214: maybe (declare (type /typespec/ var*)) ? 2015-02-12T13:18:29Z oleo quit (Quit: Verlassend) 2015-02-12T13:18:51Z Shinmera: If you want to generate a function to explicitly call CHECK-TYPE or similar, you'll have to write your own DEFCLASS wrapper. 2015-02-12T13:20:02Z flip214: Shinmera: thank you... do you know whether there's prior art for that? 2015-02-12T13:20:22Z Shinmera: I usually don't bother with type checks, so I've never felt a need for that. 2015-02-12T13:20:43Z Shinmera: So no, I don't know of anything that does that. 2015-02-12T13:20:59Z AeroNotix: what's the map function I want to map across a hash-table and get the return values of the functions I map across? 2015-02-12T13:21:00Z flip214: thank you! 2015-02-12T13:21:08Z AeroNotix: (also, is there a way to set the return type with maphash?) 2015-02-12T13:21:36Z AeroNotix: a hash-table is not a http://www.lispworks.com/documentation/lw60/CLHS/Body/26_glo_p.htm#proper_sequence 2015-02-12T13:21:44Z flip214: AeroNotix: alexandria:maphash-keys 2015-02-12T13:21:48Z AeroNotix: flip214: danke 2015-02-12T13:21:52Z flip214: resp. alexandria:maphash-values 2015-02-12T13:21:58Z flip214: or LOOP or ITER... 2015-02-12T13:22:09Z AeroNotix: okay 2015-02-12T13:24:32Z frogi34 joined #lisp 2015-02-12T13:28:13Z pranavrc quit 2015-02-12T13:28:44Z hugoduncan is now known as hugod 2015-02-12T13:29:41Z splittist: flip214: one common approach is to put check-types into the make-foo 'constructor' function. 2015-02-12T13:30:37Z frogi34 quit (Quit: Page closed) 2015-02-12T13:31:07Z flip214: by declaring (SAFETY 3) in there? 2015-02-12T13:31:11Z xyh joined #lisp 2015-02-12T13:31:31Z xyh quit (Remote host closed the connection) 2015-02-12T13:32:10Z flip214: hmmm, that wouldn't help if the data comes in via shared memory... 2015-02-12T13:32:16Z xyh joined #lisp 2015-02-12T13:35:59Z ynniv joined #lisp 2015-02-12T13:36:10Z ebrasca quit (Quit: ebrasca) 2015-02-12T13:36:45Z tkhoa2711 joined #lisp 2015-02-12T13:39:11Z mishoo_ joined #lisp 2015-02-12T13:40:50Z lispyone quit (Remote host closed the connection) 2015-02-12T13:43:48Z kubdf joined #lisp 2015-02-12T13:46:47Z taylanub quit (Disconnected by services) 2015-02-12T13:46:47Z taylanub joined #lisp 2015-02-12T13:47:42Z arpunk quit (Remote host closed the connection) 2015-02-12T13:48:27Z fantazo joined #lisp 2015-02-12T13:49:09Z oleo joined #lisp 2015-02-12T13:52:52Z qubitnerd quit (Ping timeout: 240 seconds) 2015-02-12T13:55:42Z EvW joined #lisp 2015-02-12T14:02:09Z quazimodo joined #lisp 2015-02-12T14:03:04Z johann quit (Remote host closed the connection) 2015-02-12T14:03:38Z johann joined #lisp 2015-02-12T14:07:42Z ski_ quit (Remote host closed the connection) 2015-02-12T14:08:19Z johann quit (Ping timeout: 252 seconds) 2015-02-12T14:12:11Z tkhoa2711 quit (Quit: tkhoa2711) 2015-02-12T14:12:52Z yeticry quit (Ping timeout: 255 seconds) 2015-02-12T14:13:28Z ynniv quit (Quit: ynniv) 2015-02-12T14:14:38Z yeticry joined #lisp 2015-02-12T14:14:50Z psy_ quit (Remote host closed the connection) 2015-02-12T14:16:58Z johann joined #lisp 2015-02-12T14:23:17Z badkins joined #lisp 2015-02-12T14:25:10Z attila_lendvai quit (Quit: Leaving.) 2015-02-12T14:25:11Z cluck joined #lisp 2015-02-12T14:25:46Z tkhoa2711 joined #lisp 2015-02-12T14:34:37Z sivoais quit (Ping timeout: 264 seconds) 2015-02-12T14:35:19Z xorox90 joined #lisp 2015-02-12T14:37:04Z Kruppe quit (Quit: ZNC - http://znc.in) 2015-02-12T14:39:12Z moore33 joined #lisp 2015-02-12T14:41:32Z drmeister: (typep XXX '(or integer string)) is a reasonable thing to do if I want to check if XXX is an integer or a string type - correct? 2015-02-12T14:41:55Z sivoais joined #lisp 2015-02-12T14:42:27Z Xach: drmeister: yes. 2015-02-12T14:42:32Z Xach: drmeister: check-type is another tool in the toolbox 2015-02-12T14:42:41Z drmeister: Thank you 2015-02-12T14:43:53Z vaporatorius joined #lisp 2015-02-12T14:46:01Z Kruppe joined #lisp 2015-02-12T14:46:01Z Kruppe quit (Remote host closed the connection) 2015-02-12T14:47:11Z Soft joined #lisp 2015-02-12T14:47:34Z pt1 quit (Remote host closed the connection) 2015-02-12T14:48:31Z k-stz joined #lisp 2015-02-12T14:48:36Z Kruppe joined #lisp 2015-02-12T14:48:49Z intinig quit (Remote host closed the connection) 2015-02-12T14:49:17Z intinig joined #lisp 2015-02-12T14:49:31Z manuel__ joined #lisp 2015-02-12T14:49:33Z intinig quit (Remote host closed the connection) 2015-02-12T14:49:42Z the_real_intinig joined #lisp 2015-02-12T14:50:55Z Kruppe quit (Client Quit) 2015-02-12T14:52:07Z pt1 joined #lisp 2015-02-12T14:52:46Z EvW quit (Ping timeout: 265 seconds) 2015-02-12T14:53:16Z Kruppe joined #lisp 2015-02-12T14:54:59Z lispyone joined #lisp 2015-02-12T14:57:11Z rhllor joined #lisp 2015-02-12T14:58:20Z Kruppe quit (Quit: ZNC - http://znc.in) 2015-02-12T15:00:37Z Kruppe joined #lisp 2015-02-12T15:02:26Z joneshf joined #lisp 2015-02-12T15:03:56Z bobbysmith0071 quit (Ping timeout: 246 seconds) 2015-02-12T15:05:06Z Kruppe quit (Client Quit) 2015-02-12T15:07:46Z bobbysmith007 joined #lisp 2015-02-12T15:13:28Z ahungry_ joined #lisp 2015-02-12T15:14:51Z jlongste` joined #lisp 2015-02-12T15:19:13Z Ethan- quit (Ping timeout: 244 seconds) 2015-02-12T15:20:33Z protist_ quit (Quit: Konversation terminated!) 2015-02-12T15:22:27Z devll joined #lisp 2015-02-12T15:25:37Z mishoo_ quit (Ping timeout: 264 seconds) 2015-02-12T15:28:16Z johann quit (Remote host closed the connection) 2015-02-12T15:30:57Z zeitue quit (Remote host closed the connection) 2015-02-12T15:36:47Z Pyridrym joined #lisp 2015-02-12T15:37:09Z xificurC quit (Quit: WeeChat 1.1.1) 2015-02-12T15:39:22Z LiamH joined #lisp 2015-02-12T15:39:30Z defaultxr joined #lisp 2015-02-12T15:40:50Z theos quit (Disconnected by services) 2015-02-12T15:41:12Z theos joined #lisp 2015-02-12T15:46:28Z mvilleneuve_ quit (Quit: This computer has gone to sleep) 2015-02-12T15:46:54Z Mon_Ouie joined #lisp 2015-02-12T15:52:26Z mishoo_ joined #lisp 2015-02-12T15:53:36Z Big_G joined #lisp 2015-02-12T15:55:42Z manuel__ quit (Quit: manuel__) 2015-02-12T15:57:56Z antgreen quit (Ping timeout: 250 seconds) 2015-02-12T15:59:31Z camm` joined #lisp 2015-02-12T16:02:36Z k-dawg quit (Quit: This computer has gone to sleep) 2015-02-12T16:02:52Z pt1 quit (Read error: Connection reset by peer) 2015-02-12T16:03:21Z pt1 joined #lisp 2015-02-12T16:03:36Z paradoja joined #lisp 2015-02-12T16:05:04Z Kruppe joined #lisp 2015-02-12T16:05:58Z pt1 quit (Remote host closed the connection) 2015-02-12T16:06:30Z psy_ joined #lisp 2015-02-12T16:06:54Z schoppenhauer quit (Quit: Adé) 2015-02-12T16:07:00Z BRPocock joined #lisp 2015-02-12T16:08:57Z schoppenhauer joined #lisp 2015-02-12T16:10:39Z Cymew quit (Ping timeout: 245 seconds) 2015-02-12T16:14:04Z ehu joined #lisp 2015-02-12T16:17:04Z gravicappa joined #lisp 2015-02-12T16:17:49Z ehu quit (Read error: Connection reset by peer) 2015-02-12T16:20:08Z ehu joined #lisp 2015-02-12T16:20:29Z theseb joined #lisp 2015-02-12T16:22:01Z lispyone quit (Remote host closed the connection) 2015-02-12T16:23:00Z rhllor quit (Quit: rhllor) 2015-02-12T16:23:09Z Mon_Ouie quit (Quit: WeeChat 1.1.1) 2015-02-12T16:23:22Z quazimodo quit (Ping timeout: 240 seconds) 2015-02-12T16:23:24Z ehu quit (Read error: Connection reset by peer) 2015-02-12T16:23:59Z ehu joined #lisp 2015-02-12T16:24:24Z munksgaard quit (Ping timeout: 245 seconds) 2015-02-12T16:25:03Z Mon_Ouie joined #lisp 2015-02-12T16:25:04Z Mon_Ouie quit (Changing host) 2015-02-12T16:25:04Z Mon_Ouie joined #lisp 2015-02-12T16:25:09Z BlueRavenGT joined #lisp 2015-02-12T16:26:23Z ovenpasta quit (Ping timeout: 244 seconds) 2015-02-12T16:27:47Z LiamH quit (Quit: Leaving.) 2015-02-12T16:29:15Z j_king quit (Excess Flood) 2015-02-12T16:29:23Z j_king joined #lisp 2015-02-12T16:29:26Z jaimef quit (Ping timeout: 265 seconds) 2015-02-12T16:29:55Z renopt quit (Ping timeout: 265 seconds) 2015-02-12T16:30:02Z renopt joined #lisp 2015-02-12T16:30:03Z ehu1 joined #lisp 2015-02-12T16:30:06Z clintm joined #lisp 2015-02-12T16:30:22Z ehu quit (Read error: Connection reset by peer) 2015-02-12T16:30:24Z Jubb quit (Ping timeout: 265 seconds) 2015-02-12T16:30:56Z jaimef joined #lisp 2015-02-12T16:31:53Z Jubb joined #lisp 2015-02-12T16:32:25Z zacharias quit (Ping timeout: 252 seconds) 2015-02-12T16:32:49Z rhllor joined #lisp 2015-02-12T16:34:01Z ehu1 quit (Read error: Connection reset by peer) 2015-02-12T16:35:29Z justanotheruser quit (Quit: Reconnecting) 2015-02-12T16:35:37Z justanotheruser joined #lisp 2015-02-12T16:39:13Z johann_ joined #lisp 2015-02-12T16:41:50Z gingerale joined #lisp 2015-02-12T16:43:22Z manuel___ joined #lisp 2015-02-12T16:44:03Z johann_ quit (Ping timeout: 264 seconds) 2015-02-12T16:44:59Z badkins quit 2015-02-12T16:47:38Z kobain joined #lisp 2015-02-12T16:48:03Z kobain quit (Max SendQ exceeded) 2015-02-12T16:48:21Z kobain joined #lisp 2015-02-12T16:48:30Z kobain quit (Changing host) 2015-02-12T16:48:30Z kobain joined #lisp 2015-02-12T16:48:50Z kobain quit (Max SendQ exceeded) 2015-02-12T16:49:08Z kobain joined #lisp 2015-02-12T16:51:31Z xificurC joined #lisp 2015-02-12T16:54:18Z Quadrescence joined #lisp 2015-02-12T16:55:01Z justanotheruser quit (Ping timeout: 264 seconds) 2015-02-12T16:55:15Z fragamus quit (Quit: Computer has gone to sleep.) 2015-02-12T16:56:12Z qubitnerd joined #lisp 2015-02-12T16:59:19Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2015-02-12T16:59:22Z larion quit (Ping timeout: 240 seconds) 2015-02-12T17:00:17Z peterhil joined #lisp 2015-02-12T17:00:47Z peterhil` quit (Ping timeout: 246 seconds) 2015-02-12T17:03:05Z ggole quit 2015-02-12T17:03:33Z redeemed quit (Quit: q) 2015-02-12T17:06:25Z justanotheruser joined #lisp 2015-02-12T17:07:05Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2015-02-12T17:07:59Z innertracks joined #lisp 2015-02-12T17:08:01Z schaueho quit (Quit: Leaving) 2015-02-12T17:08:59Z lispyone joined #lisp 2015-02-12T17:09:08Z Quadrescence quit (Quit: This computer has gone to sleep) 2015-02-12T17:10:01Z hlavaty quit (Remote host closed the connection) 2015-02-12T17:11:06Z kobain joined #lisp 2015-02-12T17:11:13Z foom quit (Ping timeout: 245 seconds) 2015-02-12T17:12:23Z hiroakip quit (Ping timeout: 256 seconds) 2015-02-12T17:12:25Z innertracks quit (Ping timeout: 255 seconds) 2015-02-12T17:14:30Z innertracks joined #lisp 2015-02-12T17:17:07Z Shinmera quit (Quit: しつれいしなければならないんです。) 2015-02-12T17:17:34Z beach joined #lisp 2015-02-12T17:17:35Z the_real_intinig quit (Remote host closed the connection) 2015-02-12T17:17:41Z joneshf quit (Remote host closed the connection) 2015-02-12T17:17:47Z beach: Good evening everyone! 2015-02-12T17:18:11Z bb010g quit (Quit: Connection closed for inactivity) 2015-02-12T17:20:09Z moore33: Hey beach. 2015-02-12T17:20:12Z Shinmera joined #lisp 2015-02-12T17:20:50Z dafunktion joined #lisp 2015-02-12T17:20:53Z beach: moore33: Haven't seen you for a while. What's up? 2015-02-12T17:21:23Z moore33: Working away in OpenGL land :) for work and pleasure. 2015-02-12T17:21:27Z Patzy quit (Ping timeout: 256 seconds) 2015-02-12T17:21:33Z beach: Excellent! 2015-02-12T17:21:47Z mindCrime__ is now known as mindCrime_ 2015-02-12T17:22:07Z moore33: I'm thinking about buying a 200€ chromebook and seeing how well Lisp+emacs runs on it. 2015-02-12T17:22:12Z Patzy joined #lisp 2015-02-12T17:22:27Z beach: Sure, why not. 2015-02-12T17:23:07Z moore33: As far as I know, the Android emacs port doesn't work in 5.0 :( 2015-02-12T17:23:22Z beach: Not good. 2015-02-12T17:23:32Z moore33: And writing code on the tablet is a pain in the butt in any event. 2015-02-12T17:23:53Z beach: But it is possible to hook up a keyboard, right? 2015-02-12T17:23:56Z ASau quit (Ping timeout: 246 seconds) 2015-02-12T17:24:19Z moore33: beach: Yes, but that seems like overkill for the bus. 2015-02-12T17:24:27Z moore33: or on the bus. 2015-02-12T17:24:30Z beach: True. 2015-02-12T17:24:41Z mindCrime_ is now known as mindCrime 2015-02-12T17:28:23Z josemanuel joined #lisp 2015-02-12T17:31:22Z drmeister: Hi beach 2015-02-12T17:31:33Z beach: Hello drmeister. 2015-02-12T17:31:48Z beach: drmeister: There were more changes than I had anticipated. 2015-02-12T17:31:52Z beach: I am not sure I got them all. 2015-02-12T17:32:07Z drmeister: I ran into that GETHASH failure with HASH-TABLE-EQUAL again - I'm still working on it. 2015-02-12T17:32:13Z beach: Oh, OK. 2015-02-12T17:32:27Z dafunktion quit (Remote host closed the connection) 2015-02-12T17:33:14Z drmeister: I can get it to happen reproducibly with your code but not my test examples - argh. I'm inserting printf statements into GETHASH under external control to get at it. 2015-02-12T17:33:18Z beach: drmeister: At this point, I am too tired to do any more work, so any more changes shall have to wait until tomorrow. 2015-02-12T17:33:24Z drmeister: No problem. 2015-02-12T17:33:41Z drmeister: Are there any other AST nodes that would have SYMBOL constants? 2015-02-12T17:33:41Z beach: Wow, nasty bug, then, huh? 2015-02-12T17:34:01Z drmeister: I don't know yet. 2015-02-12T17:34:47Z beach: drmeister: I don't think there are any others, but I can never remember these tings. 2015-02-12T17:35:03Z Shinmera: moore33: You could always use emacs over SSH if you have a server to run it on. 2015-02-12T17:35:03Z beach: ... so I would have to check. And I am too tired to do that now. 2015-02-12T17:35:19Z beach: drmeister: Also, it's my night to cook, so I have to go pretty soon. 2015-02-12T17:35:29Z hardenedapple quit (Quit: WeeChat 1.1.1) 2015-02-12T17:36:04Z beach: Shinmera: My experience is that wifi coverage on the bus is fairly limited. 2015-02-12T17:36:58Z Shinmera: Well, there's 3G for the needy, but yes. Somehow my mind skipped over the scenario constraint of a bus. 2015-02-12T17:37:41Z tsumetai quit (Ping timeout: 244 seconds) 2015-02-12T17:38:18Z drmeister: beach: Understood. 2015-02-12T17:38:58Z beach: moore33: Did you see that our beautiful city was elected "European best destination 2015"? 2015-02-12T17:39:12Z beach: [sorry for the off-topic] 2015-02-12T17:39:30Z moore33: beach: Yes! Glad I'm already here so I don't have to make the trip :) 2015-02-12T17:40:01Z beach: True. 2015-02-12T17:40:07Z tsumetai joined #lisp 2015-02-12T17:40:20Z moore33: Shinmera: Unfortunately the tablet in question doesn't have 3G. I suppose I could rig up some sort of 3G hotspot with my phone. 2015-02-12T17:40:31Z moore33: I'd like to run code locally, though. 2015-02-12T17:40:43Z Shinmera: moore33: There's also 3G usb spots, but even then it's a wonky solution :/ 2015-02-12T17:41:02Z Shinmera: I recall hearing stassats say that he ran SBCL on a chromebook recently. 2015-02-12T17:44:56Z moore33: later 2015-02-12T17:45:01Z moore33 quit 2015-02-12T17:45:20Z fantazo quit (Quit: Verlassend) 2015-02-12T17:47:20Z Bicyclidine joined #lisp 2015-02-12T17:48:09Z arenz quit (Ping timeout: 245 seconds) 2015-02-12T17:48:44Z beach: drmeister: I still intend to set up another environment that is a little bit more like that of Clasp than the one I know have for SICL, so that I can test things more easily. But I haven't quite finished the SICL environment after all the changes I made today, so I need more time. 2015-02-12T17:50:21Z larion joined #lisp 2015-02-12T17:50:30Z beach: Anyway, I need to go fix dinner. I might be back later. 2015-02-12T17:52:54Z apokalypse joined #lisp 2015-02-12T17:53:35Z milosn_ joined #lisp 2015-02-12T17:53:44Z xrash joined #lisp 2015-02-12T17:53:48Z tkhoa2711 quit (Quit: tkhoa2711) 2015-02-12T17:55:15Z apokalypse is now known as dr_apokalypse 2015-02-12T17:55:23Z Shinmera: beach: If you want a binary for x64 linux I can bundle you one. 2015-02-12T17:55:29Z Shinmera: A Clasp binary I mean. 2015-02-12T17:55:31Z zadock joined #lisp 2015-02-12T17:56:04Z dr_apokalypse quit (Quit: leaving) 2015-02-12T17:56:04Z milosn_ is now known as milosn 2015-02-12T17:56:57Z serichsen joined #lisp 2015-02-12T17:58:05Z dr_apokalypse joined #lisp 2015-02-12T17:59:31Z drmeister: beach: Got it - thanks. 2015-02-12T17:59:47Z manuel___ quit (Quit: manuel___) 2015-02-12T18:00:26Z xorox90 quit (Quit: Connection closed for inactivity) 2015-02-12T18:00:54Z defaultxr quit (Quit: work) 2015-02-12T18:05:20Z radioninja quit (Ping timeout: 252 seconds) 2015-02-12T18:05:58Z AeroNotix: Is anyone else totally unhappy with the state of unit testing in Common Lisp? 2015-02-12T18:06:10Z AeroNotix: it's far too complex, feels brittle 2015-02-12T18:07:04Z Shinmera: Have you tried all of the gazillion testing frameworks? 2015-02-12T18:07:50Z AeroNotix: Shinmera: roughly 5 of them 2015-02-12T18:08:39Z jlongste` quit (Ping timeout: 264 seconds) 2015-02-12T18:09:06Z Shinmera: Sounds like a fair amount to make such a statement then. I've only tried 5am, but I don't really know what unit tests should be like so I can't say what it should look like either. 2015-02-12T18:09:09Z xyh: AeroNotix: https://github.com/cicada-language/cicada/blob/master/vm/common-lisp/little-tester/little-tester.org 2015-02-12T18:10:22Z AeroNotix: xyh: hmm, poorly documented 2015-02-12T18:10:28Z rhllor quit (Ping timeout: 255 seconds) 2015-02-12T18:10:33Z zacharias joined #lisp 2015-02-12T18:10:42Z xyh: AeroNotix: example of usage :: https://github.com/cicada-language/cicada/blob/master/vm/common-lisp/basic/basic.test.lisp 2015-02-12T18:10:52Z Shinmera: Have you tried fukamachi's prove? That one seemed interesting to me, but I never got around to trying it. 2015-02-12T18:11:05Z AeroNotix: Shinmera: link? I didn't try that one 2015-02-12T18:11:15Z Shinmera: https://github.com/fukamachi/prove/ 2015-02-12T18:11:19Z AeroNotix: thanks 2015-02-12T18:11:32Z Shinmera: Google would've given you it in less time too ;) 2015-02-12T18:11:43Z AeroNotix: oh this looks nice 2015-02-12T18:11:53Z AeroNotix: Shinmera: yes but I want to interact with Lispers who know about things I want to learn about 2015-02-12T18:12:02Z AeroNotix: aimlessly googling is no good 2015-02-12T18:12:18Z Shinmera: Typing 'fukamachi prove' is what I did and I'm quite sure that given my hint that wouldn't have been aimless. 2015-02-12T18:12:32Z AeroNotix: this prove looks pretty good and ticks the first few boxes I have 2015-02-12T18:12:34Z pnpuff joined #lisp 2015-02-12T18:12:34Z Shinmera: Anyway, if you do end up trying it let me know what you think. 2015-02-12T18:12:50Z Shinmera: What was your issue with 5am if you did try it? 2015-02-12T18:13:16Z pnpuff left #lisp 2015-02-12T18:13:24Z AeroNotix: Shinmera: complex to get it to run in a CI context 2015-02-12T18:13:24Z AeroNotix: (most of them are like this) 2015-02-12T18:13:35Z AeroNotix: i.e. trying to get a damned non-zero exit status from test runs! 2015-02-12T18:13:39Z AeroNotix: really annoying 2015-02-12T18:13:46Z Shinmera: Ah, I see. 2015-02-12T18:13:46Z serichsen quit (Ping timeout: 252 seconds) 2015-02-12T18:14:12Z Shinmera: I never thought about CLI contexts. 2015-02-12T18:14:33Z AeroNotix: Shinmera: biggest problem for me 2015-02-12T18:14:39Z AeroNotix: Ralt spent a lot of time getting Lispkit nice and runnable for CI 2015-02-12T18:15:27Z rhllor joined #lisp 2015-02-12T18:15:33Z AeroNotix: (which uses fiveam) 2015-02-12T18:15:38Z Shinmera: I'm quite sure you could augment the non-zero exit for any framework if you add it yourself in the test-op method, but having it out of the box would be nice. 2015-02-12T18:15:59Z AeroNotix: yup 2015-02-12T18:16:22Z Karl_Dscc quit (Remote host closed the connection) 2015-02-12T18:16:44Z Shinmera: How do you run the tests from the CLI now? Something like 'sbcl --eval "(asdf:test-system :foo)"' ? 2015-02-12T18:16:45Z AeroNotix: this is pretty much it. It's never thought about in any of them. 2015-02-12T18:17:27Z larion quit (Read error: Connection reset by peer) 2015-02-12T18:17:40Z AeroNotix: sbcl_TEST_OPTS=--noinform --disable-debugger --load $(QL_LOCAL)/setup.lisp --load ./run-tests.lisp --quit 2015-02-12T18:17:43Z AeroNotix: https://gist.github.com/AeroNotix/5db5ff691760385d6d1d 2015-02-12T18:17:56Z AeroNotix: and that's run-tests.lisp 2015-02-12T18:18:26Z Shinmera: You shouldn't have to quickload manually, test-system should take care of that. 2015-02-12T18:18:31Z jlongste` joined #lisp 2015-02-12T18:18:54Z Shinmera: test-system of your main should delegate to test-system of the .. test system, with the main in its dependencies. 2015-02-12T18:19:02Z jlongste` is now known as jlongster 2015-02-12T18:19:09Z Shinmera: (See https://reader.tymoon.eu/article/311 ) 2015-02-12T18:19:09Z drmeister: What *print-XXX* would cause a structure to print as: 2015-02-12T18:19:13Z drmeister: https://www.irccloud.com/pastebin/PYwMAkGI 2015-02-12T18:19:18Z drmeister: Rather than: 2015-02-12T18:19:38Z drmeister: (a CLEAVIR-IR:TOP-LEVEL-ENTER-INSTRUCTION#<0x10baa0b58> . preval2153#) 2015-02-12T18:20:21Z AeroNotix: Shinmera: I'll look into it. 2015-02-12T18:20:30Z AeroNotix: Can you see my point though? It's far too complex to do this. 2015-02-12T18:20:34Z drmeister: Because I've got a weird problem - the addresses of these objects appear different but they should be the same. 2015-02-12T18:20:39Z Shinmera: AeroNotix: Definitely, yes. 2015-02-12T18:21:04Z Shinmera: AeroNotix: Though your foo.lisp test file should not be necessary imo. 2015-02-12T18:22:38Z AeroNotix: What I'd really like is for there to be a de-facto CLI tool 2015-02-12T18:22:48Z AeroNotix: e.g. `ql` which wraps quicklisp ops 2015-02-12T18:22:52Z Shinmera: drmeister: I'm confused. What should print like what instead of what? 2015-02-12T18:22:55Z AeroNotix: ql install foobar 2015-02-12T18:23:00Z AeroNotix: ql test 2015-02-12T18:23:32Z Shinmera: AeroNotix: That sounds familiar somehow 2015-02-12T18:23:42Z Shinmera: AeroNotix: I can't recall what it reminds me of though 2015-02-12T18:23:45Z Xach: I wouldn't mind something like that, but in the repl. 2015-02-12T18:23:55Z AeroNotix: Xach: CLI tooling is better for automation 2015-02-12T18:24:14Z AeroNotix: I want to use CL in a production setting. REPL is great for dev, but deploying infr needs proper automatable tooling 2015-02-12T18:24:15Z Shinmera: Put the automation inside CL 2015-02-12T18:24:21Z drmeister: Shinmera: I've got this: #S(# #slots[6] :slot0 CONS... :slot1 CONS... :slot2 INSTANCE... :slot3 CONS... :slot4 CONS... :slot5 CONS...) 2015-02-12T18:24:39Z AeroNotix: wrapping everythign in sbcl --eval or sbcl --load is tiresome 2015-02-12T18:24:42Z drmeister: vs this: a CLEAVIR-IR:TOP-LEVEL-ENTER-INSTRUCTION#<0x10baa0b58> 2015-02-12T18:24:52Z drmeister: Are these two different objects? 2015-02-12T18:24:55Z AeroNotix: a single tool with declarative operations is necessary to overcome this boilerplate 2015-02-12T18:25:14Z drmeister: Or is one a different printed representation of the other? I'm very confused at the moment. 2015-02-12T18:25:21Z Xach: AeroNotix: You can save me some grepping: why does ryeboy depend-on asdf? 2015-02-12T18:25:44Z drmeister: Maybe the first is the class of the second? 2015-02-12T18:25:47Z AeroNotix: Xach: because I copy and pasted most of that asd definition from somewhere else most likely. 2015-02-12T18:25:49Z AeroNotix: I can remove it. 2015-02-12T18:25:52Z Shinmera: drmeister: I have no idea how a standard-class can end up as the name of a struct. 2015-02-12T18:25:55Z jlongste` joined #lisp 2015-02-12T18:26:05Z AeroNotix: Xach: done 2015-02-12T18:26:13Z jlongster quit (Read error: Connection reset by peer) 2015-02-12T18:26:36Z drmeister: Is one a class and the other an instance of the class? 2015-02-12T18:26:58Z Shinmera: drmeister: I've been confused by your way of printing unreadable objects before. 2015-02-12T18:27:05Z Shinmera: I didn't mention it at the time for some reason. 2015-02-12T18:27:15Z drmeister: Shinmera: That makes two of us. 2015-02-12T18:27:24Z drmeister: It's something I need to fix. 2015-02-12T18:27:43Z lispyone quit (Remote host closed the connection) 2015-02-12T18:27:43Z drmeister: Here's one that makes sense to me: # 2015-02-12T18:27:57Z drmeister: It's a HASH-TABLE-EQUAL containing 4 entries 2015-02-12T18:28:37Z Shinmera: Have a look at your PRINT-UNREADABLE-OBJECT implementation, maybe something's off in there. 2015-02-12T18:28:42Z drmeister: I'm not sure why an instance prints like this: a CLEAVIR-IR:TOP-LEVEL-ENTER-INSTRUCTION#<0x10baa0b58> 2015-02-12T18:28:58Z Xach: AeroNotix: I usually do something like BATCHSBCL=sbcl --non-interactive ..., QUICKLISP=$(BATCHSBCL) --load quicklisp/setup.lisp, etc in the makefile, and then use those as needed in targets. 2015-02-12T18:29:19Z drmeister: But I believe that this is an instance of a CLEAVIR-IR:TOP-LEVEL-ENTER-INSTRUCTION at address 0x10baa0b58 2015-02-12T18:29:26Z Shinmera: drmeister: It sounds to me like you're printing the type before the actual unreadable object print hits. 2015-02-12T18:30:01Z Shinmera: clhs print-unreadable-object 2015-02-12T18:30:01Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/m_pr_unr.htm 2015-02-12T18:30:02Z drmeister: Where would that be happening? 2015-02-12T18:30:11Z Shinmera: I'm guessing there. 2015-02-12T18:30:45Z Shinmera: Or alternatively you defined some PRINT-OBJECT method without using P-U-O. 2015-02-12T18:31:00Z Shinmera: And messed up there. 2015-02-12T18:31:06Z gendl joined #lisp 2015-02-12T18:31:43Z Bicyclidine quit (Ping timeout: 256 seconds) 2015-02-12T18:32:58Z drmeister: Is there any way to copy the mini buffer output to the clipboard in emacs before it vanishes? 2015-02-12T18:33:42Z Xach: drmeister: you can look in the *Messages* buffer 2015-02-12T18:36:02Z drmeister: Thanks: (prin1-to-string cleavir-hir-transformations::imports) "# " 2015-02-12T18:36:16Z drmeister: That is HASH-TABLE-EQ printed as an unprintable object 2015-02-12T18:36:34Z Shinmera: Looks good. 2015-02-12T18:36:57Z drmeister: (prin1-to-string cleavir-hir-transformations::owner) ==> "a CLEAVIR-IR:TOP-LEVEL-ENTER-INSTRUCTION#<0x10baa0b58>" 2015-02-12T18:37:11Z drmeister: This should be an instance of a class. 2015-02-12T18:37:19Z paradoja quit (Ping timeout: 245 seconds) 2015-02-12T18:37:22Z drmeister: That does not look good - right? Why is it doing that? 2015-02-12T18:37:32Z Shinmera: Yeah, that's wrong. 2015-02-12T18:37:46Z serichsen joined #lisp 2015-02-12T18:37:52Z wheelsucker joined #lisp 2015-02-12T18:38:09Z drmeister: Any idea why it's doing that? 2015-02-12T18:38:14Z Bicyclidine joined #lisp 2015-02-12T18:38:23Z drmeister: I know I wrote it - but I don't know where that is coming from. 2015-02-12T18:38:38Z drmeister: Is it some generic PRINT-OBJECT method on instances? 2015-02-12T18:38:40Z Shinmera: Have a look at the print-object method for a standard-class instance. 2015-02-12T18:39:14Z Shinmera: Hm, no 2015-02-12T18:39:17Z Shinmera: print-object on T 2015-02-12T18:39:24Z Shinmera: It does the same weird stuff even for a character. 2015-02-12T18:39:58Z drmeister: https://www.irccloud.com/pastebin/Qm9TfTlQ 2015-02-12T18:40:43Z drmeister: So it's doing what it's supposed to be doing isn't it? 2015-02-12T18:41:02Z Shinmera: should probably be (print-unreadable-object (instance stream :type T :identity T)) 2015-02-12T18:41:33Z Shinmera: But your P-U-O is probably busted in that it executes the body before writing the #< and type. 2015-02-12T18:41:38Z badkins joined #lisp 2015-02-12T18:41:40Z Shinmera: Which is what I guessed before. 2015-02-12T18:42:38Z Shinmera: Yeah, P-U-O is broken. 2015-02-12T18:42:47Z Shinmera: https://filebox.tymoon.eu/file/TXpVeQ== 2015-02-12T18:43:13Z Alfr joined #lisp 2015-02-12T18:43:45Z drmeister: So what do you recommend? Look at the P-U-O code? 2015-02-12T18:43:49Z Shinmera: Yes. 2015-02-12T18:44:07Z Shinmera: Also change the print-object standard method to what I suggested above. 2015-02-12T18:45:37Z francogrex joined #lisp 2015-02-12T18:46:20Z ehu joined #lisp 2015-02-12T18:47:03Z Shinmera: is this it? https://github.com/drmeister/clasp/blob/2ba833a547ff99b8f5b1dd6a17161124f8cde76f/src/lisp/kernel/closette/newcl.lsp#L85 2015-02-12T18:47:32Z drmeister: No - hang on - it's in C++ 2015-02-12T18:47:47Z Shinmera: Ok, because that seemed fine with the exception of not using gensyms. 2015-02-12T18:47:49Z drmeister: I see the problem. 2015-02-12T18:48:14Z drmeister: I'm using C++ streams mixed with CL streams - that won't work. 2015-02-12T18:49:11Z Shinmera: A racing issue or similar seemed like a candidate as well, but I dismissed it as ridiculous. I guess I wasn't far off. 2015-02-12T18:50:17Z lispyone joined #lisp 2015-02-12T18:50:41Z hardenedapple joined #lisp 2015-02-12T18:50:46Z beach left #lisp 2015-02-12T18:51:06Z innertracks quit (Quit: innertracks) 2015-02-12T18:52:09Z drmeister: I fixed the code so that it just uses CL streams, now everything should be in sequence. 2015-02-12T18:53:43Z kubdf quit (Ping timeout: 246 seconds) 2015-02-12T18:54:28Z drmeister: Does this look better? 2015-02-12T18:54:31Z drmeister: https://www.irccloud.com/pastebin/zwa6XSqI 2015-02-12T18:55:08Z Shinmera: I'd omit the "a ", and one of them has an @ for the address, the other doesn't. 2015-02-12T18:55:42Z innertracks joined #lisp 2015-02-12T18:56:08Z drmeister: I'll have to fix that in the Common Lisp code. 2015-02-12T18:56:36Z hitecnologys quit (Quit: hitecnologys) 2015-02-12T18:56:40Z drmeister: Ok, well, this should make the problem easier to understand and debug. 2015-02-12T18:57:03Z drmeister: Thanks Shinmera, I'll fix the "a " and add an "@" to the standard-class one later. 2015-02-12T18:57:11Z Shinmera: Glad to be of help! 2015-02-12T18:57:25Z gendl quit (Quit: gendl) 2015-02-12T18:57:45Z larion joined #lisp 2015-02-12T18:58:18Z francogrex quit (Ping timeout: 265 seconds) 2015-02-12T19:01:45Z malbertife joined #lisp 2015-02-12T19:01:58Z ehaliewicz joined #lisp 2015-02-12T19:02:53Z malbertife quit (Client Quit) 2015-02-12T19:03:01Z tristero quit (Remote host closed the connection) 2015-02-12T19:03:11Z rhllor quit (Quit: rhllor) 2015-02-12T19:03:23Z innertracks quit (Quit: innertracks) 2015-02-12T19:03:29Z serichsen quit (Remote host closed the connection) 2015-02-12T19:04:02Z Bicyclidine quit (Ping timeout: 246 seconds) 2015-02-12T19:04:04Z drmeister: Ok - all better now. 2015-02-12T19:07:36Z tristero joined #lisp 2015-02-12T19:07:55Z Patzy quit (Remote host closed the connection) 2015-02-12T19:08:02Z Patzy joined #lisp 2015-02-12T19:10:22Z innertracks joined #lisp 2015-02-12T19:10:49Z resttime joined #lisp 2015-02-12T19:12:17Z EvW joined #lisp 2015-02-12T19:13:00Z mvilleneuve joined #lisp 2015-02-12T19:13:24Z fragamus joined #lisp 2015-02-12T19:14:26Z xyh quit (Remote host closed the connection) 2015-02-12T19:14:57Z lispyone quit (Remote host closed the connection) 2015-02-12T19:15:15Z Bicyclidine joined #lisp 2015-02-12T19:15:17Z serichsen joined #lisp 2015-02-12T19:16:17Z Karl_Dscc joined #lisp 2015-02-12T19:18:31Z lispyone joined #lisp 2015-02-12T19:19:39Z edgar-rft quit (Quit: continuation corrupted by eternal bleeding) 2015-02-12T19:22:30Z fragamus quit (Quit: Computer has gone to sleep.) 2015-02-12T19:23:55Z milosn quit (Read error: Connection reset by peer) 2015-02-12T19:24:05Z fragamus joined #lisp 2015-02-12T19:24:24Z EvW quit (Ping timeout: 265 seconds) 2015-02-12T19:28:04Z milosn joined #lisp 2015-02-12T19:29:35Z LiamH joined #lisp 2015-02-12T19:36:58Z serichsen quit (Ping timeout: 265 seconds) 2015-02-12T19:38:59Z asoneth joined #lisp 2015-02-12T19:39:45Z EvW joined #lisp 2015-02-12T19:40:47Z hardenedapple quit (Ping timeout: 246 seconds) 2015-02-12T19:46:22Z fantazo joined #lisp 2015-02-12T19:47:30Z JuanDaugherty quit (Remote host closed the connection) 2015-02-12T19:48:25Z BRPocock quit (Ping timeout: 264 seconds) 2015-02-12T19:49:58Z emma quit (Ping timeout: 245 seconds) 2015-02-12T19:54:31Z devon``: hiring Lispers - send portfolio to CV@Beeches.org 2015-02-12T19:54:52Z White_Flame: what about contracting? 2015-02-12T19:55:02Z devon``: likewise 2015-02-12T19:56:21Z brpocock joined #lisp 2015-02-12T19:57:50Z White_Flame: check PM 2015-02-12T20:03:09Z Pyridrym quit (Quit: Lost terminal) 2015-02-12T20:03:11Z justanotheruser quit (Ping timeout: 246 seconds) 2015-02-12T20:03:21Z Bicyclidine quit (Ping timeout: 250 seconds) 2015-02-12T20:04:04Z Pyridrym joined #lisp 2015-02-12T20:04:07Z Patzy quit (Remote host closed the connection) 2015-02-12T20:04:15Z Patzy joined #lisp 2015-02-12T20:05:09Z tokenrove: AeroNotix: are you doing CI with CL? if so, care to share your setup? 2015-02-12T20:05:13Z Bicyclidine joined #lisp 2015-02-12T20:06:31Z AeroNotix: tokenrove: travis-ci 2015-02-12T20:06:51Z AeroNotix: tokenrove: https://github.com/AeroNotix/lispkit has a working travis-ci set up. 2015-02-12T20:06:59Z dr_apokalypse quit (Remote host closed the connection) 2015-02-12T20:07:18Z tokenrove: cool. i was looking to do something similar. thanks. 2015-02-12T20:07:29Z AeroNotix: nw 2015-02-12T20:07:48Z cojy_ quit (Ping timeout: 252 seconds) 2015-02-12T20:07:54Z gluegadget quit (Ping timeout: 265 seconds) 2015-02-12T20:08:51Z justanotheruser joined #lisp 2015-02-12T20:09:21Z victor_lowther quit (Ping timeout: 265 seconds) 2015-02-12T20:09:48Z NhanH quit (Read error: Connection reset by peer) 2015-02-12T20:10:20Z monod joined #lisp 2015-02-12T20:11:42Z Pyridrym quit (Quit: Lost terminal) 2015-02-12T20:12:59Z splittist quit (Read error: Connection reset by peer) 2015-02-12T20:13:13Z devon`` quit (Ping timeout: 265 seconds) 2015-02-12T20:14:48Z Pyridrym joined #lisp 2015-02-12T20:16:09Z NhanH joined #lisp 2015-02-12T20:16:33Z gluegadget joined #lisp 2015-02-12T20:17:17Z victor_lowther joined #lisp 2015-02-12T20:17:24Z cojy_ joined #lisp 2015-02-12T20:19:08Z splittist joined #lisp 2015-02-12T20:27:04Z Ralt: hi 2015-02-12T20:27:06Z ruste joined #lisp 2015-02-12T20:27:18Z _Loic_ joined #lisp 2015-02-12T20:27:18Z AeroNotix: yo yo 2015-02-12T20:27:19Z Ralt: how can I get a approximate value of a fraction? 2015-02-12T20:27:44Z Ralt: ohai AeroNotix 2015-02-12T20:28:24Z _death: rationalize? 2015-02-12T20:28:45Z Ralt: _death: ignore me. I was looking for round. 2015-02-12T20:30:58Z White_Flame: there's also (float 1/2) etc 2015-02-12T20:31:22Z AeroNotix: Just use ints. :P 2015-02-12T20:31:30Z AeroNotix: (defvar pi 3) 2015-02-12T20:32:13Z qubitnerd quit (Ping timeout: 252 seconds) 2015-02-12T20:32:58Z emma_ joined #lisp 2015-02-12T20:33:07Z lispyone quit (Remote host closed the connection) 2015-02-12T20:33:38Z Ralt: just wanted a quick approximation for this: http://www.reddit.com/r/askscience/comments/2vmukn/lets_say_i_can_access_all_digital_information/cojk6u1?context=1 2015-02-12T20:34:29Z White_Flame: I can never understand the reddit interface 2015-02-12T20:34:41Z White_Flame: "This is really incredible work!" <- who is he addressing? 2015-02-12T20:34:47Z Ralt: the parent 2015-02-12T20:35:17Z Ralt: change the url to use ?context=2 instead of ?context=1 2015-02-12T20:35:50Z White_Flame: oh, I misread "You are viewing a single comment's thread" as "You are viewing a single thread's comments" 2015-02-12T20:35:50Z lispyone joined #lisp 2015-02-12T20:36:20Z White_Flame: but it's a common problem I see with most reddit links. The subject matter never seems to appear on the page 2015-02-12T20:36:57Z Ralt: people just don't send you the correct link 2015-02-12T20:37:09Z Bicyclidine: lol, this is pretty inefficient. 2015-02-12T20:37:31Z Bicyclidine: clhs logcount 2015-02-12T20:37:31Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_logcou.htm 2015-02-12T20:37:33Z Ralt: Bicyclidine: I'm open to suggestions to improve it :-) 2015-02-12T20:37:40Z Bicyclidine: should go faster than format (with zeroes = 8 - that, ofc) 2015-02-12T20:37:50Z Ralt: oh. Didn't know there was a function for it. That's cheating. 2015-02-12T20:38:05Z Bicyclidine: psh, your processor probably has it as an instruction. totally legit 2015-02-12T20:38:16Z AeroNotix: Shinmera: case-in-point prove doesn't work as it claims. 2015-02-12T20:38:25Z AeroNotix: It says it can be loaded with quicklisp, for a start 2015-02-12T20:38:49Z Shinmera: And it can. 2015-02-12T20:39:51Z AeroNotix: Shinmera: not here it can't 2015-02-12T20:40:02Z Shinmera: How can it "not"? 2015-02-12T20:40:12Z AeroNotix: I mean, it's not in quicklisp already is what I mean. 2015-02-12T20:40:13Z gendl joined #lisp 2015-02-12T20:40:16Z Shinmera: But it is. 2015-02-12T20:40:20Z Shinmera: Your QL dist is outdated. 2015-02-12T20:40:27Z AeroNotix: trying to update then 2015-02-12T20:40:44Z Bicyclidine: Ralt: also if you wanted to keep the stringing for whatever reason, (let* ((zeros (count #\0 (format nil "~b" byte))) (ones (- 8 zeros))) (format t ...)) 2015-02-12T20:41:14Z Bicyclidine: actually you shouldn't use eight, since you just read it as unsigned bytes it could be some other byte size 2015-02-12T20:41:17Z oGMo: um 2015-02-12T20:41:32Z Bicyclidine: i have no idea how that will open actually. 2015-02-12T20:41:49Z holycow joined #lisp 2015-02-12T20:41:55Z Ralt: I'll just assume it's 8 bytes. 2015-02-12T20:41:58Z schaueho joined #lisp 2015-02-12T20:42:02Z holycow is now known as Guest14123 2015-02-12T20:42:05Z Bicyclidine: oGMo: if i said something wrong do correct me 2015-02-12T20:42:09Z oGMo: i hope you're kidding because that's probably the worst (and also wrongest) way to count bits i've ever seen heh 2015-02-12T20:42:20Z Bicyclidine: oh, well, yeah. 2015-02-12T20:42:23Z innertracks quit (Quit: innertracks) 2015-02-12T20:42:40Z Bicyclidine: actually the format won't print leading zeroes, which kind of ruins the point 2015-02-12T20:42:41Z Ralt: yup. Using logcount is definitely better. 2015-02-12T20:42:43Z oGMo: http://en.wikipedia.org/wiki/Hamming_weight 2015-02-12T20:42:54Z Bicyclidine: yeah, i already mentioned logcount. 2015-02-12T20:43:09Z _death: not reading byte-by-byte would be even better.. 2015-02-12T20:43:11Z oGMo: logcount is probably well-implemented because it's pretty trivial 2015-02-12T20:44:09Z AeroNotix: Shinmera: ok that was it, thought I'd updated recently. 2015-02-12T20:44:45Z Shinmera: Always update before claiming things aren't in QL. 2015-02-12T20:44:52Z AeroNotix: Shinmera: good call :) 2015-02-12T20:45:23Z oGMo: or that things are broken/buggy/not working as advertised/etc 2015-02-12T20:47:16Z Ralt: but sometimes things are broken because of a dist is broken by another dist... 2015-02-12T20:48:47Z LiamH quit (Quit: Leaving.) 2015-02-12T20:48:57Z gingerale quit (Remote host closed the connection) 2015-02-12T20:50:19Z dafunktion joined #lisp 2015-02-12T20:51:31Z a20150201 joined #lisp 2015-02-12T20:51:40Z fantazo quit (Quit: Verlassend) 2015-02-12T20:52:10Z burtons joined #lisp 2015-02-12T20:55:12Z EvW quit (Ping timeout: 250 seconds) 2015-02-12T20:56:33Z a20150201 quit (Quit: Page closed) 2015-02-12T20:57:01Z a20150201 joined #lisp 2015-02-12T20:59:31Z eni_ joined #lisp 2015-02-12T21:00:05Z Shinmera: Exciting: 118 lines twitter client https://filebox.tymoon.eu/file/TXpVMA== 2015-02-12T21:00:17Z eni_ is now known as eni 2015-02-12T21:00:45Z oGMo: Shinmera: is that gtk3? 2015-02-12T21:00:55Z Shinmera: Nah, Qt. 2015-02-12T21:01:03Z gendl quit (Quit: gendl) 2015-02-12T21:01:04Z oGMo: ah, well, still native 2015-02-12T21:01:09Z Shinmera: It's using the GTK+ theme engine though. 2015-02-12T21:02:35Z Shinmera: (the 118 lines includes a login dialog not pictured) 2015-02-12T21:02:48Z brpocock quit (Remote host closed the connection) 2015-02-12T21:03:05Z BRPocock joined #lisp 2015-02-12T21:03:17Z BRPocock left #lisp 2015-02-12T21:04:48Z innertracks joined #lisp 2015-02-12T21:07:58Z josemanuel quit (Quit: Saliendo) 2015-02-12T21:08:03Z antonv joined #lisp 2015-02-12T21:09:33Z attila_lendvai joined #lisp 2015-02-12T21:11:26Z JuanDaugherty joined #lisp 2015-02-12T21:12:26Z moei quit (Quit: Leaving...) 2015-02-12T21:13:19Z rhllor joined #lisp 2015-02-12T21:13:43Z selat quit (Quit: Lost terminal) 2015-02-12T21:14:13Z xificurC quit (Quit: WeeChat 1.1.1) 2015-02-12T21:17:39Z xificurC joined #lisp 2015-02-12T21:18:24Z radioninja joined #lisp 2015-02-12T21:20:44Z pnpuff joined #lisp 2015-02-12T21:22:01Z fridim_ quit (Ping timeout: 264 seconds) 2015-02-12T21:22:21Z pnpuff quit (Quit: leaving) 2015-02-12T21:22:38Z emma_ is now known as emma 2015-02-12T21:22:55Z EvW joined #lisp 2015-02-12T21:24:34Z Bicyclidine quit (Quit: leaving) 2015-02-12T21:25:00Z drmeister: This should not be true - correct? (eql (sxhash (make-instance 'foo)) (sxhash (make-instance 'foo))) 2015-02-12T21:25:39Z Grue`: it can be true 2015-02-12T21:25:42Z White_Flame: a hash function that always returns a constant is a valid, but not high quality 2015-02-12T21:26:09Z Grue`: reminds me of hash function in PHP for function names, which was length of function name 2015-02-12T21:26:11Z drmeister: Ok, it may be true by coincidence but in principle it should be false. 2015-02-12T21:26:46Z drmeister: s/in principle/most often/ 2015-02-12T21:26:48Z White_Flame: it would be generally expected to be false, with some rare true cases, for a reasonable hash function 2015-02-12T21:28:37Z kuzy000_ quit (Ping timeout: 265 seconds) 2015-02-12T21:29:23Z Ralt: Grue`: source? I only know of spl_object_hash, which can be unreliable (in case of reused memory) 2015-02-12T21:29:54Z White_Flame: drmeister: actually, I rescind my statement 2015-02-12T21:30:17Z drmeister: Which one? 2015-02-12T21:30:33Z White_Flame: In the case of eql hash tables, the eql-hash function should return different values 2015-02-12T21:31:26Z White_Flame: but I wouldn't expect the normal context-free sxhash on an object to include the address in hashing 2015-02-12T21:33:38Z _death: why not 2015-02-12T21:33:44Z Big_G quit (Read error: Connection reset by peer) 2015-02-12T21:33:50Z White_Flame: because if the object moves, the hash would change 2015-02-12T21:33:52Z gravicappa quit (Ping timeout: 240 seconds) 2015-02-12T21:34:08Z White_Flame: the GC typically interoperates with eq/eql hashtables to maintain them properly 2015-02-12T21:34:28Z White_Flame: depending on implementation specifics 2015-02-12T21:34:57Z badkins quit 2015-02-12T21:34:59Z hiroakip joined #lisp 2015-02-12T21:35:54Z _death: it also depends on your gc then 2015-02-12T21:36:26Z Oveja joined #lisp 2015-02-12T21:37:11Z muthukum_ joined #lisp 2015-02-12T21:38:32Z Oveja quit (Max SendQ exceeded) 2015-02-12T21:38:38Z muthukum_ left #lisp 2015-02-12T21:39:52Z hiroakip quit (Ping timeout: 264 seconds) 2015-02-12T21:43:25Z yrk quit (Quit: ERC (IRC client for Emacs 25.0.50.1)) 2015-02-12T21:43:48Z AeroNotix: Shinmera: prove is impressive 2015-02-12T21:47:20Z fe[nl]ix: AeroNotix: what's prove ? 2015-02-12T21:48:18Z Petit_Dejeuner_ quit (Ping timeout: 245 seconds) 2015-02-12T21:49:04Z AeroNotix: fe[nl]ix: a testing library 2015-02-12T21:49:13Z AeroNotix: but is nice and has good docs 2015-02-12T21:49:57Z Ralt: AeroNotix: go to your room 2015-02-12T21:50:34Z AeroNotix: Ralt: seriously! Check it out 2015-02-12T21:50:42Z AeroNotix: much nicer to use than the alternatives. 2015-02-12T21:50:46Z Ralt: I did. And I want to talk to you about it on #lispkit :) 2015-02-12T21:50:53Z AeroNotix goes 2015-02-12T21:52:08Z asoneth quit (Quit: WeeChat 1.1.1) 2015-02-12T21:52:53Z scymtym_ joined #lisp 2015-02-12T21:53:00Z zadock quit (Quit: Leaving) 2015-02-12T21:54:50Z larion quit (Ping timeout: 246 seconds) 2015-02-12T21:54:52Z madnificent quit (Ping timeout: 240 seconds) 2015-02-12T21:55:00Z Natch quit (Ping timeout: 250 seconds) 2015-02-12T21:57:01Z Mon_Ouie quit (Quit: WeeChat 1.1.1) 2015-02-12T21:57:27Z mikaelj quit (Remote host closed the connection) 2015-02-12T21:57:29Z mvilleneuve quit (Quit: This computer has gone to sleep) 2015-02-12T21:59:09Z Natch joined #lisp 2015-02-12T21:59:51Z JokesOnYou77_ quit (Quit: Leaving) 2015-02-12T22:01:33Z ahungry_ quit (Quit: leaving) 2015-02-12T22:03:31Z Natch quit (Ping timeout: 252 seconds) 2015-02-12T22:03:36Z taylanub left #lisp 2015-02-12T22:08:13Z oleo is now known as Guest9538 2015-02-12T22:09:59Z oleo__ joined #lisp 2015-02-12T22:11:15Z Guest9538 quit (Ping timeout: 246 seconds) 2015-02-12T22:13:05Z Alfr quit (Quit: Leaving) 2015-02-12T22:13:25Z eni quit (Remote host closed the connection) 2015-02-12T22:15:27Z _Loic_ quit (Remote host closed the connection) 2015-02-12T22:15:57Z xan_ quit (Quit: Lost terminal) 2015-02-12T22:16:30Z lispyone quit (Remote host closed the connection) 2015-02-12T22:17:44Z schaueho quit (Ping timeout: 245 seconds) 2015-02-12T22:18:18Z lispyone joined #lisp 2015-02-12T22:19:06Z mrSpec quit (Remote host closed the connection) 2015-02-12T22:19:08Z sbryant quit (Ping timeout: 245 seconds) 2015-02-12T22:19:16Z sbryant joined #lisp 2015-02-12T22:19:25Z innertracks1 joined #lisp 2015-02-12T22:19:43Z reb``` joined #lisp 2015-02-12T22:20:44Z ASau joined #lisp 2015-02-12T22:20:48Z innertracks quit (Ping timeout: 245 seconds) 2015-02-12T22:20:56Z reb`` quit (Read error: Connection reset by peer) 2015-02-12T22:24:01Z hiroakip joined #lisp 2015-02-12T22:26:03Z Natch joined #lisp 2015-02-12T22:27:48Z monod quit (Quit: Sto andando via) 2015-02-12T22:28:33Z rhllor quit (Quit: rhllor) 2015-02-12T22:28:52Z LiamH joined #lisp 2015-02-12T22:31:59Z hiroakip quit (Ping timeout: 256 seconds) 2015-02-12T22:32:28Z dafunktion quit (Remote host closed the connection) 2015-02-12T22:34:19Z pjb` is now known as pjb 2015-02-12T22:37:24Z radioninja quit (Ping timeout: 252 seconds) 2015-02-12T22:39:58Z pt1 joined #lisp 2015-02-12T22:40:08Z PaulCapestany quit 2015-02-12T22:42:15Z PaulCapestany joined #lisp 2015-02-12T22:44:41Z csziacobus_ joined #lisp 2015-02-12T22:44:57Z mrcom quit (Ping timeout: 252 seconds) 2015-02-12T22:47:30Z pjb: minion: memo for Cymew: conditions COULD be CLOS objects, but don't have to be. The condition system was defined before CLOS. 2015-02-12T22:47:30Z minion: Remembered. I'll tell Cymew when he/she/it next speaks. 2015-02-12T22:52:01Z kobain quit (Ping timeout: 264 seconds) 2015-02-12T22:52:37Z camm` quit (Ping timeout: 255 seconds) 2015-02-12T22:54:32Z xrash quit (Remote host closed the connection) 2015-02-12T22:55:00Z dkcl joined #lisp 2015-02-12T22:57:36Z quazimodo joined #lisp 2015-02-12T22:57:59Z wheelsucker quit (Quit: Client Quit) 2015-02-12T23:00:27Z justanotheruser quit (Ping timeout: 265 seconds) 2015-02-12T23:02:06Z BRPocock joined #lisp 2015-02-12T23:03:26Z dafunktion joined #lisp 2015-02-12T23:05:26Z hiroakip joined #lisp 2015-02-12T23:05:38Z mindCrime quit (Remote host closed the connection) 2015-02-12T23:06:03Z mindCrime joined #lisp 2015-02-12T23:07:09Z kraehe joined #lisp 2015-02-12T23:07:19Z kephra quit (Ping timeout: 245 seconds) 2015-02-12T23:08:36Z pillton: I was (re)reading the AMOP book last night with the purpose of getting a better description of the design decisions which led to the three layers that underpin CLOS. 2015-02-12T23:08:50Z kobain joined #lisp 2015-02-12T23:09:12Z pillton: The syntactic layer (defclass, defgeneric, etc.), the glue layer (ensure-class, ensure-generic-function, etc.) and the meta object layer (standard-class, standard-generic-function, etc.) 2015-02-12T23:09:18Z Shinmera: The article explaining my tiny twitter client in tutorial form is out: https://reader.tymoon.eu/article/313 2015-02-12T23:10:03Z pillton: Do people still refer to the different layers that way now? 2015-02-12T23:10:24Z BRPocock quit (Ping timeout: 252 seconds) 2015-02-12T23:10:37Z Bike: i don't see why they wouldn't, if they had reason to talk about it, which they probably don't 2015-02-12T23:10:42Z jlongste` quit (Ping timeout: 245 seconds) 2015-02-12T23:12:10Z justanotheruser joined #lisp 2015-02-12T23:12:36Z pillton: I really like the design pattern. It is very clever and it makes things easy to implement. 2015-02-12T23:14:49Z pillton: I am struggling to describe when it would be better to use ENSURE-CLASS over DEFCLASS. 2015-02-12T23:15:44Z taylanub joined #lisp 2015-02-12T23:15:48Z dafunktion quit (Ping timeout: 245 seconds) 2015-02-12T23:16:43Z Bike: mop ensure-class 2015-02-12T23:16:44Z specbot: http://metamodular.com/CLOS-MOP/ensure-class.html 2015-02-12T23:16:57Z lispyone quit (Remote host closed the connection) 2015-02-12T23:16:57Z dandersen joined #lisp 2015-02-12T23:17:14Z Bike: when you have a metaclass that would usefully have other syntactic options, i suppose 2015-02-12T23:17:46Z dkcl quit (Ping timeout: 250 seconds) 2015-02-12T23:17:55Z dafunktion joined #lisp 2015-02-12T23:18:04Z Bike: or you want to do things at runtime specifically, like say for cl-json's fluid classes, probably. 2015-02-12T23:18:31Z Shinmera quit (Quit: しつれいしなければならないんです。) 2015-02-12T23:19:48Z foom joined #lisp 2015-02-12T23:19:49Z pillton: Hmm. Yes. 2015-02-12T23:20:52Z pt1 quit (Remote host closed the connection) 2015-02-12T23:22:05Z Longlius joined #lisp 2015-02-12T23:22:45Z pillton: Thanks Bike. I think I know why I am mentally stuck now. 2015-02-12T23:24:21Z ehu quit (Quit: Leaving.) 2015-02-12T23:27:53Z mishoo_ quit (Ping timeout: 250 seconds) 2015-02-12T23:29:27Z quazimodo quit (Ping timeout: 245 seconds) 2015-02-12T23:30:18Z LiamH quit (Quit: Leaving.) 2015-02-12T23:30:33Z urandom__ quit (Quit: Konversation terminated!) 2015-02-12T23:31:13Z dandersen quit (Ping timeout: 245 seconds) 2015-02-12T23:31:49Z Mon_Ouie joined #lisp 2015-02-12T23:31:49Z Mon_Ouie quit (Changing host) 2015-02-12T23:31:49Z Mon_Ouie joined #lisp 2015-02-12T23:31:54Z dkcl joined #lisp 2015-02-12T23:35:17Z burtons quit (Ping timeout: 245 seconds) 2015-02-12T23:37:14Z dandersen joined #lisp 2015-02-12T23:37:56Z dkcl quit (Read error: Connection reset by peer) 2015-02-12T23:40:28Z mindCrime_ joined #lisp 2015-02-12T23:40:44Z mindCrime quit (Ping timeout: 250 seconds) 2015-02-12T23:41:12Z dkcl joined #lisp 2015-02-12T23:41:29Z dandersen quit (Ping timeout: 245 seconds) 2015-02-12T23:44:39Z pjb: sxhash cannot change: 3. The hash-code for an object is always the same within a single session provided that the object is not visibly modified with regard to the equivalence test equal. See Section 18.1.2 (Modifying Hash Table Keys). 2015-02-12T23:45:09Z pjb: The point is that hash-table don't have to use sxhash, and therefore, may have to rehash when moving the objects occur. 2015-02-12T23:45:14Z justanotheruser quit (Ping timeout: 252 seconds) 2015-02-12T23:46:38Z a20150201 quit (Quit: Page closed) 2015-02-12T23:47:14Z EvW quit (Ping timeout: 250 seconds) 2015-02-12T23:51:41Z Big_G joined #lisp 2015-02-12T23:51:52Z larion joined #lisp 2015-02-12T23:55:36Z AeroNotix: https://github.com/AeroNotix/ryeboy yay, mostly complete. 2015-02-12T23:55:38Z mindCrime_ is now known as mindCrime 2015-02-12T23:55:49Z larion quit (Client Quit) 2015-02-12T23:57:03Z justanotheruser joined #lisp 2015-02-12T23:58:02Z dkcl quit (Ping timeout: 246 seconds) 2015-02-12T23:58:27Z rtra quit (Ping timeout: 265 seconds)