2014-09-27T00:00:15Z stacksmith: Hmm. See, 5 years of being left alone to do interesting things sounds really good to me. Of course, no rape or torture. 2014-09-27T00:00:38Z faheem__1: stacksmith: i don't think any human does well completely alone. 2014-09-27T00:00:54Z faheem__1: everyone needs companionship. 2014-09-27T00:01:00Z nydel: did you see the final episode of futurama 2014-09-27T00:01:07Z stacksmith: I suspect autistic humans do well alone. 2014-09-27T00:01:09Z faheem__1: nydel: no 2014-09-27T00:01:18Z faheem__1: stacksmith: hmm. define well. 2014-09-27T00:01:19Z nydel: that, but me & ophelia, not leela. ophelia is my modified cl repl. 2014-09-27T00:01:21Z jasom: stacksmith: solitary confinement is torture 2014-09-27T00:01:23Z faheem__1: you mean, like functional. 2014-09-27T00:01:36Z faheem__1: maybe functional. i susepect they don't enjoy it. 2014-09-27T00:01:43Z faheem__1: i do much better than most people being alone. 2014-09-27T00:01:54Z faheem__1: that much is true. i don't enjoy it. 2014-09-27T00:02:26Z s3gfault quit (Quit: Leaving) 2014-09-27T00:03:27Z stacksmith: jasom: confinement generally is torture. However, with no punishment attached - a year on a remote outpost. That sounds like a joy, assuming it's not like 'naked and afraid'. 2014-09-27T00:04:10Z faheem__1: stacksmith: define remote outpost. like a space station on mars? 2014-09-27T00:04:23Z stacksmith: faheem__1: ok. 2014-09-27T00:05:19Z faheem__1: yes, that does not sound appealing. and i'm sure i'd get tired of all that red sand. 2014-09-27T00:05:27Z stacksmith: Antarctic scientific station. Groundskeeper in Belize. whatever. 2014-09-27T00:05:32Z davazp joined #lisp 2014-09-27T00:05:48Z Bicyclidine quit (Ping timeout: 272 seconds) 2014-09-27T00:06:49Z faheem__1: well, i'm off. nice chatting with you guys. 2014-09-27T00:07:13Z stacksmith: We went way off topic, didn't we. 2014-09-27T00:07:16Z varjag_ quit (Quit: Connection closed for inactivity) 2014-09-27T00:08:05Z faheem__1: there was a topic? 2014-09-27T00:08:06Z drdanmaku: some would say lisp is all about solitary confinement 2014-09-27T00:08:28Z nyef: drdanmaku: That's an odd way to refer to binding variables. 2014-09-27T00:08:31Z stacksmith: You must face yourself, grasshopper. 2014-09-27T00:08:32Z Mon_Ouie quit (Ping timeout: 245 seconds) 2014-09-27T00:10:08Z drdanmaku: yes, most people think lisp is a strange way to get variable binding, which is why we're all alone :( 2014-09-27T00:10:20Z innertracks joined #lisp 2014-09-27T00:10:45Z nyef: ... I probably shouldn't have had quite so much wine, this conversation is clearly going to go further downhill, rapidly. 2014-09-27T00:13:59Z kcj joined #lisp 2014-09-27T00:14:06Z stacksmith: nyef: that comment scared us into complete silence. 2014-09-27T00:14:16Z nyef: Good. (-: 2014-09-27T00:17:45Z marsam is now known as marsbot 2014-09-27T00:37:36Z jkaye joined #lisp 2014-09-27T00:42:20Z harish quit (Ping timeout: 272 seconds) 2014-09-27T00:42:33Z jkaye quit (Ping timeout: 272 seconds) 2014-09-27T00:43:08Z ndrei quit (Ping timeout: 244 seconds) 2014-09-27T00:44:49Z ovidnis joined #lisp 2014-09-27T00:50:24Z ndrei joined #lisp 2014-09-27T00:51:17Z SvenGek is now known as `SvenGek 2014-09-27T00:54:03Z wglb: Kinda cleared the room with that. 2014-09-27T00:54:52Z patojo quit (Quit: Leaving...) 2014-09-27T00:56:03Z davazp quit (Remote host closed the connection) 2014-09-27T00:56:40Z resttime: this Ironclad library for cryptography is some neat stuff 2014-09-27T00:57:19Z mhd quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2014-09-27T00:57:47Z resttime: takes maybe three lines and then I'm able to hash passwords with some salt 2014-09-27T00:57:48Z ndrei quit (Ping timeout: 260 seconds) 2014-09-27T00:59:44Z nyef: resttime: Yeah, ironclad is very nice stuff, I'm looking at using it myself for a couple of things in the near-term future. 2014-09-27T01:00:10Z ndrei joined #lisp 2014-09-27T01:01:54Z drmeist__ joined #lisp 2014-09-27T01:02:55Z drmeist__: faheem__1 any luck? 2014-09-27T01:03:01Z pyx joined #lisp 2014-09-27T01:04:27Z zRecursive joined #lisp 2014-09-27T01:05:02Z pyx quit (Client Quit) 2014-09-27T01:06:11Z drmeist__: Darn phone interface - can't tell whose on. 2014-09-27T01:06:24Z edgar-rft joined #lisp 2014-09-27T01:07:32Z ovidnis quit (Quit: Lost terminal) 2014-09-27T01:08:58Z `SvenGek quit 2014-09-27T01:12:06Z drmeist__ quit (Remote host closed the connection) 2014-09-27T01:17:44Z stacksmith: Has anyone published any bitcoin code? 2014-09-27T01:19:17Z Alfr quit (Ping timeout: 260 seconds) 2014-09-27T01:26:17Z davazp joined #lisp 2014-09-27T01:31:34Z normanrichards quit 2014-09-27T01:35:19Z normanrichards joined #lisp 2014-09-27T01:35:22Z normanrichards quit (Read error: Connection reset by peer) 2014-09-27T01:36:32Z Neet quit (Ping timeout: 260 seconds) 2014-09-27T01:36:37Z d4gg4d____ quit (Ping timeout: 260 seconds) 2014-09-27T01:36:48Z rvirding_ quit (Ping timeout: 272 seconds) 2014-09-27T01:37:26Z ggherdov___ quit (Ping timeout: 272 seconds) 2014-09-27T01:37:26Z aksatac___ quit (Ping timeout: 272 seconds) 2014-09-27T01:38:04Z faheem_ quit (Ping timeout: 272 seconds) 2014-09-27T01:38:42Z gregburd quit (Ping timeout: 272 seconds) 2014-09-27T01:40:14Z erikc joined #lisp 2014-09-27T01:44:24Z MutSbeta quit (Quit: Leaving.) 2014-09-27T01:59:36Z cyphase quit (Ping timeout: 272 seconds) 2014-09-27T02:02:06Z normanrichards joined #lisp 2014-09-27T02:02:06Z normanrichards quit (Read error: Connection reset by peer) 2014-09-27T02:03:53Z xyjprc quit (Remote host closed the connection) 2014-09-27T02:10:40Z scottj left #lisp 2014-09-27T02:14:30Z faheem__1 quit (Ping timeout: 258 seconds) 2014-09-27T02:16:45Z akkad quit (Ping timeout: 260 seconds) 2014-09-27T02:19:28Z akkad joined #lisp 2014-09-27T02:23:13Z normanrichards joined #lisp 2014-09-27T02:23:13Z normanrichards quit (Read error: Connection reset by peer) 2014-09-27T02:25:32Z c107 quit (Remote host closed the connection) 2014-09-27T02:32:37Z vlnx quit (Ping timeout: 260 seconds) 2014-09-27T02:33:26Z faheem joined #lisp 2014-09-27T02:38:26Z jkaye joined #lisp 2014-09-27T02:41:25Z work_op joined #lisp 2014-09-27T02:43:00Z jkaye quit (Ping timeout: 244 seconds) 2014-09-27T02:44:11Z drmeister_ joined #lisp 2014-09-27T02:45:08Z vlnx joined #lisp 2014-09-27T02:45:18Z drmeister_: faheem: are you still online 2014-09-27T02:46:05Z drmeister_: jasom: hey did it build? 2014-09-27T02:50:29Z work_op: in sbcl, if i have a huge ratio and need to convert it to a bignum, how do i do that? 2014-09-27T02:51:18Z nyef: If you have a ratio, it is by definition not an integer, so you're looking to get rid of the fractional part, which calls for a unary division operator of some sort, be it FLOOR, CEILING, TRUNC, or ROUND. 2014-09-27T02:52:03Z nyef: If you'd rather have a floaty number of some sort, then you're looking for COERCE or FLOAT. 2014-09-27T02:53:16Z ryankarason is now known as rk[zzz] 2014-09-27T02:53:30Z resttime quit (Quit: resttime) 2014-09-27T02:54:07Z work_op: i am working with pi, if that makes the situation clearer 2014-09-27T02:54:37Z nyef: It really doesn't. 2014-09-27T02:55:03Z nyef: It's like "working with three". It's nowhere near enough context to be meaningful. 2014-09-27T02:57:21Z White_Flame: Bignums are integers. There isn't a representation for variable-digit real numbers. 2014-09-27T02:57:22Z zRecursive: indeed 2014-09-27T02:57:30Z work_op: i have ratios like 40413742330349316707/12864093722915635200 that i need to convert so that i can reference particular digits 2014-09-27T02:57:35Z work_op: of pi 2014-09-27T02:57:55Z nyef: Digits in what base? 2014-09-27T02:57:58Z White_Flame: ...variable-length... 2014-09-27T02:58:10Z work_op: 10 ideally 2014-09-27T02:58:26Z nyef: (At which point you're looking for exponentiation, division, and modulus operations.) 2014-09-27T02:59:01Z White_Flame: multiply your digit by 10^n and truncate to an integer 2014-09-27T02:59:08Z White_Flame: s/digit/ratio/ too tired today 2014-09-27T02:59:59Z zeebrah joined #lisp 2014-09-27T03:00:05Z nyef: Not merely to an integer, you need to truncate to integer and then take the result mod 10 (that is, the remainder from division by 10). 2014-09-27T03:00:29Z White_Flame: right, though an integer, then printed base 10, gives you an easy path to a list of digits 2014-09-27T03:01:06Z nyef: It's too bad that this is more output side than input side, otherwise we'd have an excuse to mention that odd quirk of DIGIT-CHAR-P. (-: 2014-09-27T03:01:17Z lowfyr joined #lisp 2014-09-27T03:01:22Z lowfyr: Hello everyone 2014-09-27T03:03:20Z White_Flame: speaking of pi, it's amazing how wrong about.com can be: "An example of a well known irrational number is pi which as we all know is 3.14 but if we look deeper at it, it is actually 3.14159265358979323846264338327950288419.....and this goes on for somewhere around 5 trillion digits! " 2014-09-27T03:03:47Z nyef: ... Eesh. 2014-09-27T03:04:26Z work_op: https://github.com/philipl/pifs 2014-09-27T03:04:58Z nug700 joined #lisp 2014-09-27T03:05:00Z nyef: Ignoring the given figure, for which I'm not even going to consider checking the accuracy of the quoted portion, the entire point of an irrational number is that it goes on forever... Unless you're in a compatible base, in which case it can terminate quite quickly (pi, in base pi, is 1). 2014-09-27T03:05:02Z work_op: i have been fooling around with pi and lisp, but as u might tell, im handy with neither 2014-09-27T03:05:15Z zRecursive: billion = 10^8, how about trillion ? 2014-09-27T03:05:53Z nyef: Umm... 10^8 is one hundred million, not one billion. 2014-09-27T03:06:03Z nug700_ joined #lisp 2014-09-27T03:06:15Z nyef: (and 10^9 is only one billion if you're using "short" numbers.) 2014-09-27T03:06:27Z zRecursive: oh 2014-09-27T03:06:35Z White_Flame: work_op: why not use base 256 instead of base 16? 2014-09-27T03:07:09Z zRecursive: nyef: how about trillion ? 2014-09-27T03:07:27Z MrWoohoo quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-27T03:07:28Z work_op: ! 2014-09-27T03:07:43Z nyef: Short numbers are named every three powers of ten. 2014-09-27T03:08:40Z nyef: Thousand (expt 10 3), million (expt 10 6), billion (expt 10 9), trillion (I think there's a pattern here), quadrillion (expt 10 15)... 2014-09-27T03:09:28Z zRecursive: (* 10^3 ...) 2014-09-27T03:10:15Z zRecursive: then it shpuld be 10^12 :) 2014-09-27T03:10:19Z White_Flame: it's always bugged me that the exponents of BIllion, TRIllion, etc are not 2x, 3x, that of million 2014-09-27T03:12:32Z nyef: White_Flame: A million is one multiply of 1,000 by 1,000. A BIllion is two multiplies, 1,000 times 1,000 times 1,000. A TRIllion... Well, you probably see the pattern by now. (-: 2014-09-27T03:13:22Z White_Flame: yes, but still too fenceposty for my liking :) 2014-09-27T03:13:53Z White_Flame: sine the counts of "1,000" don't match the word prefixes 2014-09-27T03:14:06Z nyef: Yeah, it feels just that touch of off-by-one in a direction that can't easily be finessed. 2014-09-27T03:14:14Z White_Flame: but yes, technically the counts of "times" do 2014-09-27T03:16:57Z zeebrah quit (Ping timeout: 260 seconds) 2014-09-27T03:17:51Z davazp quit (Remote host closed the connection) 2014-09-27T03:19:54Z zRecursive quit (Remote host closed the connection) 2014-09-27T03:21:13Z marsbot is now known as marsam 2014-09-27T03:24:38Z stacksmith: The suffix -lion indicates 1000. 2014-09-27T03:25:17Z nyef: Does the infix -r- indicate "Y to the power of X"? 2014-09-27T03:25:32Z nyef: Sorry, "to the power of X+1"? 2014-09-27T03:27:10Z White_Flame: If lion = 1,000, then billion = 2,000, or 1,000,000 2014-09-27T03:27:51Z nyef: And where does the "mi-" come from? 2014-09-27T03:27:54Z White_Flame gets into the time machine and sets everybody straight 2014-09-27T03:27:58Z EvW joined #lisp 2014-09-27T03:28:14Z nyef: And then there's the word "mille", also meaning 1,000. 2014-09-27T03:28:15Z stacksmith: You probably don't know about the -tiger notation. 2014-09-27T03:28:27Z nyef: -tiger-tiger-burning-bright ? 2014-09-27T03:28:43Z stacksmith: that is the number 3! 2014-09-27T03:29:07Z nyef: So... 6 ? (* 3 2 1) 2014-09-27T03:33:14Z clop2 joined #lisp 2014-09-27T03:34:49Z bgs101 joined #lisp 2014-09-27T03:35:03Z drmeiste_: in the forest of the night 2014-09-27T03:35:12Z drmeiste_: jasom: Are you still online? 2014-09-27T03:35:27Z nyef: What immortal hand or eye? 2014-09-27T03:35:52Z nyef: Hello drmeiste_. 2014-09-27T03:35:57Z bgs100 quit (Disconnected by services) 2014-09-27T03:36:01Z bgs101 is now known as bgs100 2014-09-27T03:36:06Z drmeiste_: Hello 2014-09-27T03:36:17Z drmeiste_ is now known as drmeister__ 2014-09-27T03:36:30Z nyef: I... might-or-might-not have time during the upcoming week to take a look at your little project. 2014-09-27T03:37:45Z drmeister__: nyef: Are you on linux or OS X? 2014-09-27T03:38:03Z nyef: My "work" system is a Linux VM running in VirtualBox on OSX. 2014-09-27T03:38:22Z nyef: So... "yes, both". 2014-09-27T03:39:11Z drmeister__: That would be great. I'm either there or pretty close to getting it to work. 2014-09-27T03:39:46Z drmeister__: The build process was a bit confusing the first time and I messed up the git fetch of llvm/clang 2014-09-27T03:40:49Z drmeister__: I've fixed both problems. I think it's pretty much there. j`ey on #llvm built and ran the Boehm version on OS X 2014-09-27T03:41:23Z drmeister__: I don't know how faheem or jasom fared on linux yet. 2014-09-27T03:41:31Z nyef: That's good to hear, at least. 2014-09-27T03:42:08Z drmeister__: I think I have food poisoning - so I expect to be out of commission for 12 hours or so. 2014-09-27T03:42:11Z nyef: Of course, one of the first things that I expect to try once I get it running is loading something through quicklisp. 2014-09-27T03:42:14Z phao quit (Quit: Leaving) 2014-09-27T03:42:38Z nyef: Oh, that sucks. I hope that you feel better soon, and that it isn't anything worse. 2014-09-27T03:43:06Z drmeister__: Either a food truck chicken gyro at lunch or one of half a dozen kinds of oktoberfest sausages a few hours ago. Avoid both if you can. 2014-09-27T03:43:08Z nyef: If I drag a PPC Linux box along with me next week, is it likely to be able to run your little toy? 2014-09-27T03:43:29Z drmeister__: PPC = PowerPC? 2014-09-27T03:43:34Z nyef: Yeah. 2014-09-27T03:44:01Z nyef: I hesitate to suggest a MIPS IRIX box... (-: 2014-09-27T03:44:23Z nyef: (Not least of which because I'm reasonably confident that the compiler would be badly out of date.) 2014-09-27T03:44:24Z viaken feels boring with his little i686 and armv6h systems. 2014-09-27T03:44:25Z drmeister__: Do you have an z80's or a 6502? 2014-09-27T03:44:42Z drmeister__: any 2014-09-27T03:44:54Z gravicappa joined #lisp 2014-09-27T03:45:24Z nyef: I have a z80 floating about, but as a bare chip. I have some 6502 and 65816 chips floating around as well, a couple in breadboards, and I have a c64 and vic-20 in storage. 2014-09-27T03:45:28Z drmeister__: Or we can compile it down to Conway's life. 2014-09-27T03:45:37Z Fare: 65816? wow. 2014-09-27T03:46:27Z holycow_: drmeister__: that is an awfully precise estimate of your illness 2014-09-27T03:46:27Z nyef: Fare: An '816 is not particularly expensive via... it was either mouser or digikey, probably mouser. 2014-09-27T03:46:32Z holycow_: you wouldn't happen to be german? 2014-09-27T03:46:32Z holycow_: hehe 2014-09-27T03:46:38Z kuanyui joined #lisp 2014-09-27T03:46:40Z TDog joined #lisp 2014-09-27T03:46:52Z drmeister__: holycow_: I'm an awfully precise kind of person. 2014-09-27T03:47:22Z Fare: well, back in the days, I would have preferred a 65816 to a 8088. But the 8088 came earlier and won the market. 2014-09-27T03:47:39Z stacksmith: I have one of these http://apple2.x10.mx/CHOCHI/ 2014-09-27T03:47:40Z innertracks quit (Quit: innertracks) 2014-09-27T03:48:56Z nyef: stacksmith: Oh, neat. Are you involved in the 6502.org forums as well? 2014-09-27T03:49:18Z stacksmith: mostly a lurker these days. 2014-09-27T03:49:25Z nyef: Mmm. Same here, really. 2014-09-27T03:50:31Z nyef: Too many other demands on my time, so there's a pile of stuff on top of my electronics workspace, and I keep working on other stuff, not getting a basic system up and running. /-: 2014-09-27T03:50:56Z stacksmith: Yup. 2014-09-27T03:52:39Z stacksmith: Anyone have any experiences with shelly? 2014-09-27T03:53:05Z nyef: ... Mary Shelly? 2014-09-27T03:53:25Z nyef: (Only shelly that comes to mind for me, unfortunately.) 2014-09-27T03:53:55Z stacksmith: Hardly. http://shlyfile.org/ 2014-09-27T03:53:57Z nyef: There's another shelly that I've heard of, but the name escapes me. 2014-09-27T03:54:55Z stacksmith: Shelly Long, Duval, Winters 2014-09-27T03:56:34Z stacksmith: I mean (Long Duvall Winters) 2014-09-27T03:56:58Z nyef: Hrm... I'm honestly not seeing the point, but that might be me being set in my ways when it comes to writing shell scripts to kick off Lisp processes. 2014-09-27T03:57:15Z normanrichards joined #lisp 2014-09-27T03:57:36Z stacksmith: Well, you can pretend you have a Lisp Machine. 2014-09-27T03:57:57Z White_Flame: drmeister__: I've got a single machine with 6502, z80 and 65816 2014-09-27T03:58:21Z stacksmith: But does it run CL? 2014-09-27T03:58:36Z White_Flame: that's drmeister__'s problem ;) 2014-09-27T03:59:02Z nyef: If I wanted to pretend that I had lisp machine, I'd dig out the ROM and hard drive images in my collection, blow the dust off of the nevermore codebase, and fit up keyboard and mouse emulation to it. 2014-09-27T03:59:13Z xristos quit (Quit: none) 2014-09-27T03:59:23Z stacksmith: I take it you don't, then. 2014-09-27T03:59:43Z nyef: Not anymore. 2014-09-27T04:00:09Z nyef: It took me a few years to get that desire out of my system, though. (-: 2014-09-27T04:00:12Z White_Flame: What was garbage collection like on lisp machines? Did it pause the entire system to do GC? 2014-09-27T04:00:48Z nyef: White_Flame: The old ones, yes. Then they invented incremental GC and then "ephemeral" (incremental generational) GC. 2014-09-27T04:01:35Z White_Flame: I presume the entire machine used a single GC'able heap space, though 2014-09-27T04:01:39Z KCL joined #lisp 2014-09-27T04:01:48Z stacksmith: Of course, since we are pretending, we don't need shelly or ROMs. We can just sit on the toilet and pretend to write code, much like like drmeister__ is probably doing now. 2014-09-27T04:02:22Z nyef: Yes, but there were a number of games that you could play to carve out chunks of heap space and manage the memory more explicitly. 2014-09-27T04:03:30Z vinleod joined #lisp 2014-09-27T04:04:03Z leo2007: is there something like subst-if but allow the replacement to be a function? 2014-09-27T04:04:28Z KCL_ quit (Ping timeout: 260 seconds) 2014-09-27T04:05:30Z nyef: leo2007: (mapcar (lambda (x) (if ( x) (... x) x)) some-list) ? 2014-09-27T04:06:34Z Fare: A variant of Genera, Minima, had a real-time GC 2014-09-27T04:06:35Z leo2007: nyef: must recurse into sublists 2014-09-27T04:06:52Z leo2007: looks like I have to write my own. 2014-09-27T04:06:59Z Fare: so it could be used for real-time control. 2014-09-27T04:07:07Z nyef: ... I was unaware that subst-if recursed in such a fashion. 2014-09-27T04:08:06Z nyef: Fare: So, if there were a real-time computer algebra system written in lisp, it might be minmaxima? 2014-09-27T04:08:17Z Fare: :-) 2014-09-27T04:11:02Z drmeister__: I don't really care about pausing in GC's. I just want a GC that guarantees that it won't exceed a certain amount of memory if the program doesn't allocate more than a certain amount of memory. 2014-09-27T04:11:32Z clop2: the null garbage collector fits the bill perfectly 2014-09-27T04:11:59Z Neet joined #lisp 2014-09-27T04:12:15Z drmeister__: Scientific programming that solves design problems by searching chemical space needs to run on hundreds of thousands of processor supercomputers. If one processor exceeds its memory because the GC fragments memory and runs out then the whole system can die. 2014-09-27T04:12:26Z beach joined #lisp 2014-09-27T04:12:33Z beach: Good morning everyone! 2014-09-27T04:12:39Z drmeister__: Hello beach! 2014-09-27T04:12:42Z nyef: Good morning beach. 2014-09-27T04:12:58Z drmeister__: Did you see the announcement on Clasp by any chance? 2014-09-27T04:13:15Z beach: drmeister__: I read about it in the #lisp logs. Congratulations! 2014-09-27T04:13:43Z drmeister__: I'm being cagey about the new compiler - I don't want to set you up or anything - that's why I don't go into detail. 2014-09-27T04:13:58Z beach: Oh, I see. Thanks! 2014-09-27T04:14:40Z drmeister__: I think I figured out what SICL stands for as well. Although I may be the last person to figure it out. Sufficiently Intelligent Common Lisp? 2014-09-27T04:15:25Z beach: drmeister__: You should have listened to my talk at ILC, where i said "it doesn't mean anything; it is just nice to pronounce". 2014-09-27T04:15:45Z nyef: Sounds like money to me! 2014-09-27T04:15:47Z gregburd joined #lisp 2014-09-27T04:15:51Z drmeister__: But Sufficiently Intelligent Common Lisp is brilliant! 2014-09-27T04:16:10Z beach: drmeister__: Sure, you can call it whatever you like. 2014-09-27T04:16:27Z drmeister__ wishes he'd thought of it. 2014-09-27T04:16:52Z drmeister__: Anyway, on to serious matters - how are things going? 2014-09-27T04:17:03Z beach: drmeister__: I am currently writing tests for the conversion of forms to ASTs. 2014-09-27T04:17:52Z beach: So I consider minimal compilation done, which was a necessity in order to get MACROLET to work correctly when converted to AST. 2014-09-27T04:17:56Z drmeister__: Excellent 2014-09-27T04:18:17Z drmeister__: Yup. 2014-09-27T04:18:25Z beach: So I am working in a sort of XP style. Write a test, it fails, figure out why, fix the code, iterate. 2014-09-27T04:18:59Z beach: In a few days, AST generation should be working. 2014-09-27T04:19:34Z EvW quit (Ping timeout: 272 seconds) 2014-09-27T04:19:42Z d4gg4d____ joined #lisp 2014-09-27T04:19:43Z beach: Converting AST to MIR is already written, but needs to be updated according to the way I generate ASTs now. But I have no idea how to test MIR generation (yet). 2014-09-27T04:19:59Z drmeister__: That's very different from how I code. Write some code, it segfaults, figure out why, fix the code, iterate. 2014-09-27T04:20:26Z beach: Yeah, well, pure CL code doesn't segfault. 2014-09-27T04:20:43Z drmeister__: In your world maybe. 2014-09-27T04:21:07Z beach: I have made important choices to be in that world. 2014-09-27T04:22:10Z beach: I guess I'll see segfaults when I start generating native code. 2014-09-27T04:22:56Z drmeister__: The Ravenbrook people were telling me how they write and modify MPS. They have to move very carefully and double/triple check everything before they incorporate it into MPS. 2014-09-27T04:23:24Z nyef: beach: Two approaches come to mind for validating MIR generation. One is using something like ACL2 to prove that the transforms are correct. And another is to use abstract interpretation on both the input and output from the converter and show that they generate the same overall effects. 2014-09-27T04:24:07Z drmeister__: Highly reliable software. I appreciate the unit tests for S-expressions to AST, but yeah the MIR is going to be different. There it's almost like solving the halting problem to validate MIR isn't it? 2014-09-27T04:24:26Z drmeister__: I mean those are real programs. 2014-09-27T04:24:27Z beach: nyef: The former seems daunting. The latter might be doable. 2014-09-27T04:24:33Z beach: nyef: I'll give it some thought. 2014-09-27T04:24:47Z clop2: no way, the former sounds AWESOME 2014-09-27T04:25:01Z drmeister__: What is ACL2? 2014-09-27T04:25:09Z clop2: http://xxx.tau.ac.il/abs/1406.1566 2014-09-27T04:25:10Z beach: clop2: Great! I'll wait for you to try it. 2014-09-27T04:25:12Z nyef: clop2: It's AWSOME, yes. In the "I can't believe you went to all that trouble" kind of way. 2014-09-27T04:25:30Z beach: drmeister__: A theorem proving system written by J Moore in Austin. 2014-09-27T04:25:37Z aksatac___ joined #lisp 2014-09-27T04:25:40Z nyef: drmeister__: "A Computational Logic for Applicable Common Lisp" or something like that. What beach said. 2014-09-27T04:26:51Z drmeister__: beach: You can turn MIR optimizations off and on - correct? 2014-09-27T04:27:06Z zeebrah joined #lisp 2014-09-27T04:27:34Z beach: drmeister__: Well, since I am making this implementation-independent now, I will need to figure out how to let the implementation choose the optimization. 2014-09-27T04:27:55Z beach: I think I will start with the ones that are certain to improve the code. 2014-09-27T04:28:10Z drmeister__: In LLVM you set up function pass managers and module pass managers that you pipe the LLVM-IR through. 2014-09-27T04:28:38Z beach: I see. 2014-09-27T04:29:05Z bgs100 quit (Quit: bgs100) 2014-09-27T04:29:49Z drmeister__: You create a pass manager and then add passes to it in the order they should be applied. 2014-09-27T04:30:36Z kuanyui quit (Quit: Leaving.) 2014-09-27T04:30:40Z drmeister__: I think it would be great to organize Cleavir like that - also on the AST side to set up functions to walk the AST and do pattern recognition for Common Lisp refactoring. 2014-09-27T04:30:53Z beach: Yeah, well, that's sort of the American-sandwich method. Let the customer choose. The result will be disgusting of course. So un-French. 2014-09-27T04:31:49Z drmeister__: The Canadian in me agrees. The newly minted American thinks "did someone mention sandwiches"? 2014-09-27T04:32:27Z beach: drmeister__: Pattern recognition in ASTs sounds like a good idea. 2014-09-27T04:32:32Z rvirding_ joined #lisp 2014-09-27T04:33:02Z drmeister__: If we tie source locations to everything then we could write Common Lisp programs that analyze and rewrite Common Lisp programs. 2014-09-27T04:33:09Z Fare: will cleavir produce code for the jvm target? 2014-09-27T04:33:21Z White_Flame: pattern recognition plus a query language to me is important to deal with any heirarchical structure 2014-09-27T04:33:35Z beach: Fare: Not if I am expected to write it. 2014-09-27T04:33:37Z White_Flame does that with generic binary file format specifications 2014-09-27T04:34:20Z ilhami joined #lisp 2014-09-27T04:34:32Z beach: drmeister__: I need such a thing for the "sequences" module. 2014-09-27T04:35:03Z ggherdov___ joined #lisp 2014-09-27T04:35:10Z beach: There are so many "versions" of a particular function that it is unmaintainable if written by hand. 2014-09-27T04:35:29Z drmeister__: "You don't like that generic function name that you choose? Or you want that keyword argument to be a required argument - you write a program to identify those features and change the source". 2014-09-27T04:36:25Z drmeister__: beach: So you want to automatically generate code with many variations? 2014-09-27T04:36:54Z beach: For the sequences library, I need it for things like "Replace (funcall test (funcall key element) item) by (eq element item)" 2014-09-27T04:37:31Z beach: drmeister__: Yeah, I need to specialize some general code. Or at least that is my current thinking. 2014-09-27T04:38:07Z drmeister__: Yes, that is exactly what I can do with the Clang AST/ASTMatcher/Replacement library. The CL AST is so much more elegant and concise than the beast that is the C++ AST. 2014-09-27T04:38:49Z nyef: beach: That looks like converting (funcall #'identity x) => x, followed by (funcall #'some-known-function x) => (some-known-function x), the latter of which should be basically a no-op anyway. 2014-09-27T04:39:08Z jkaye joined #lisp 2014-09-27T04:39:25Z Fare: ACL2 is the successor to the Boyer-Moore NQTHM, that only had implicit universal quantification via Skolemization. 2014-09-27T04:39:49Z nyef: Essentially, it should be covered by a specific transform for #'identity plus constant-propagation. 2014-09-27T04:40:09Z beach: nyef: The idea here is that I want to make it implementation-independent. For that reason, I don't want to make too many assumptions about the capabilities of the compiler of a particular implementation. 2014-09-27T04:40:23Z beach: nyef: Yeah, that sounds good. 2014-09-27T04:40:37Z nyef: I thought that the point was that you were writing the compiler? 2014-09-27T04:40:47Z Fare: that makes it extremely simple and robust on the one hand, but so overly simple it's not quite as expressive as you'd like in most situations, on the other hand, and thus tedious. 2014-09-27T04:41:00Z beach: nyef: Some people might choose to use the sequences library, but not the compiler. 2014-09-27T04:41:33Z drmeister__: I better get to sleep and sleep off this tummy bug. 2014-09-27T04:41:39Z drmeister__: Good night all. 2014-09-27T04:41:47Z beach: 'night drmeister__. 2014-09-27T04:41:52Z nyef: drmeister__: Sleep well, and may you feel better in the morning. 2014-09-27T04:42:01Z drmeister__ quit (Remote host closed the connection) 2014-09-27T04:42:15Z Fare: ACL2 was used to derive proven-correct CPU cores, though, so it's been used for real important stuff. 2014-09-27T04:42:34Z White_Flame: beach: so you want the library to generate a ton of variations, and then the runtime calls have a suite to dispatch to? 2014-09-27T04:43:17Z beach: nyef: Say, for instance, that I manage to write sequence functions that are faster than those of SBCL. I am pretty sure SBCL maintainers would not want to ditch Python in favor of the Cleavir compiler. But they might be interested in replacing the sequence library. 2014-09-27T04:43:35Z beach: White_Flame: Yes, pretty much. 2014-09-27T04:43:40Z jkaye quit (Ping timeout: 260 seconds) 2014-09-27T04:43:59Z Fare: beach: if you control the VM, delimited control would be VERY nice — you can implement monads in direct style on top of that. 2014-09-27T04:44:01Z beach: White_Flame: I want to use compiler macros to get rid of most argument parsing. 2014-09-27T04:44:23Z beach: Fare: What is that character you often type: —? 2014-09-27T04:44:23Z nyef: Sure, but we'd want to know which relevant optimizations Cleavir performed that Python didn't, so that we could implement them ourselves to benefit all use-cases, not just the sequence functions. 2014-09-27T04:44:33Z beach: Fare: Not Unicode, I believe. 2014-09-27T04:44:39Z Fare: — ? the emdash? 2014-09-27T04:45:03Z beach: Fare: I don't know, but it creates problems in ERC because it is not a Unicode character. 2014-09-27T04:45:38Z nyef: Looks fine to me in XChat. 2014-09-27T04:45:46Z beach: Hmm. 2014-09-27T04:45:55Z Fare: U+2014 2014-09-27T04:46:07Z nyef: Of course, XChat could be doing something in the way of clever format guessing. 2014-09-27T04:46:16Z beach: nyef: You (SBCL maintainers) might do that. But I am not thinking of a particular target. 2014-09-27T04:46:39Z beach: Fare: Hmm, strange. 2014-09-27T04:46:57Z clop2: fwiw, practically all ACL2 proofs can be viewed as proofs about how certain lisp functions manipulate certain lisp structures... of course proving your compiler correct is likely a huge digression you don't want to take 2014-09-27T04:47:01Z beach: Fare: Only you and a few other people generate that problem. 2014-09-27T04:47:07Z beach: Fare: Not important. 2014-09-27T04:48:31Z beach: Yesterday I was thinking about elimination of redundant conditional branches. I found very little material in the literature. 2014-09-27T04:49:18Z beach: It's a (strange) variation on various redundancy eliminations. 2014-09-27T04:49:23Z gingerale joined #lisp 2014-09-27T04:49:35Z faheem_ joined #lisp 2014-09-27T04:50:32Z Fare: clop2: the way ACL2 works, with a builtin strategy that does all the proving, except that you must then contrive intermediate lemma to bridge between what it can prove and what you mean... is painful, yet not as satisfying as the proof objects of Coq (that you can still abstract away when needed) 2014-09-27T04:51:05Z beach: The typical use case is this: (let ((a (car x)) (b (cdr x))) ...) where CAR is defined as (defun car (x) (cond ((consp x) (cons-car x)) ((null x) nil) (t (error...)))) and CDR is defined in a similar way. 2014-09-27T04:51:40Z madrik joined #lisp 2014-09-27T04:51:50Z nyef: Fare: Sounds like there might be some interest in a more Coq-style proof system that still operates in terms of CL, then. 2014-09-27T04:52:30Z clop2: Fare, actually ACL2's proof strategy can be configured and extended in numerous ways (including, e.g., entirely custom proof procedures), and fwiw, I find Coq's type system to be pretty complex... of course, tastes may vary 2014-09-27T04:58:41Z marsam is now known as marsbot 2014-09-27T05:01:38Z jleija joined #lisp 2014-09-27T05:06:09Z TDog quit (Ping timeout: 260 seconds) 2014-09-27T05:09:27Z d11wtq_ios joined #lisp 2014-09-27T05:13:28Z d11wtq_ios quit (Remote host closed the connection) 2014-09-27T05:14:28Z anannie quit (Ping timeout: 260 seconds) 2014-09-27T05:16:16Z KCL_ joined #lisp 2014-09-27T05:19:08Z KCL quit (Ping timeout: 260 seconds) 2014-09-27T05:20:09Z ilhami quit (Quit: Nettalk6 - www.ntalk.de) 2014-09-27T05:20:10Z Guest13405 joined #lisp 2014-09-27T05:21:34Z KCL_ quit (Ping timeout: 258 seconds) 2014-09-27T05:21:45Z KCL_ joined #lisp 2014-09-27T05:24:49Z Guest13405 quit (Ping timeout: 260 seconds) 2014-09-27T05:27:46Z lowfyr quit (Remote host closed the connection) 2014-09-27T05:28:03Z drmeiste_ joined #lisp 2014-09-27T05:32:18Z drmeiste_ quit (Ping timeout: 258 seconds) 2014-09-27T05:32:42Z beach: nyef: OK, so it appears that I need an AST interpreter. 2014-09-27T05:32:46Z marsbot is now known as marsam 2014-09-27T05:33:34Z nyef: beach: A "real" interpreter, or an "abstract" interpreter? 2014-09-27T05:33:59Z beach: nyef: Good question. A real one sounds easier. 2014-09-27T05:34:39Z beach: It ought to be possible to devise enough unit tests to be convinced that the AST is correct that way. 2014-09-27T05:35:03Z nyef: ... I was going to suggest using real programs and the random tester. 2014-09-27T05:35:03Z beach: In fact, I should probably test minimal compilation the same way, i.e., just check that using EVAL on the resulting form gives the expected result. That way I do not depend on the exact shape of the minimally-compiled form. 2014-09-27T05:35:15Z beach: That might work. 2014-09-27T05:35:22Z nyef: The problem with "just using EVAL" is that it has side effects. 2014-09-27T05:35:57Z beach: I might be able to control them in the test cases. That won't work on random tests though. 2014-09-27T05:36:27Z nyef: Whereas the abstract thing would say "here are what the side effects would be", and you should be able to compare the outputs from abstract interpreters at the various representation levels in the compiler. 2014-09-27T05:36:37Z beach: Or, I could start a new Common Lisp invocation for each test. 2014-09-27T05:36:43Z nyef: The random tester supposedly generates side-effect-free code. 2014-09-27T05:36:54Z beach: Yeah, OK. 2014-09-27T05:37:57Z beach: Another possibility is to use a special global runtime environment, rather than the one of the host system. 2014-09-27T05:38:13Z beach: Then, one could re-initialize that environment before each test. 2014-09-27T05:39:20Z beach: OK, I have several options. I need to think about them some more. 2014-09-27T05:41:44Z DGASAU quit (Remote host closed the connection) 2014-09-27T05:42:57Z erikc quit (Quit: erikc) 2014-09-27T05:43:24Z nyef: And I need to get some sleep, but now you've got me thinking about test strategies for compilers... And possible test strategies for application systems as well. 2014-09-27T05:43:35Z beach: Good! :) 2014-09-27T05:46:36Z nyef: Enjoy your day, I should be back in a few hours, say six or eight. 2014-09-27T05:46:42Z nyef quit (Quit: G'night all.) 2014-09-27T05:49:52Z jleija quit (Quit: leaving) 2014-09-27T05:53:47Z kuanyui joined #lisp 2014-09-27T05:54:21Z c107 joined #lisp 2014-09-27T05:55:33Z c107 quit (Remote host closed the connection) 2014-09-27T05:58:06Z eazar001 quit (Remote host closed the connection) 2014-09-27T05:59:25Z ananna joined #lisp 2014-09-27T06:00:01Z eazar001 joined #lisp 2014-09-27T06:00:26Z gravicappa quit (Ping timeout: 250 seconds) 2014-09-27T06:02:11Z DGASAU joined #lisp 2014-09-27T06:03:22Z kuanyui quit (Ping timeout: 240 seconds) 2014-09-27T06:05:58Z kcj quit (Read error: No route to host) 2014-09-27T06:06:54Z ehu joined #lisp 2014-09-27T06:15:52Z eazar001 quit (Quit: WeeChat 1.0) 2014-09-27T06:16:06Z eazar001 joined #lisp 2014-09-27T06:16:14Z gravicappa joined #lisp 2014-09-27T06:16:46Z emma quit (Ping timeout: 258 seconds) 2014-09-27T06:18:54Z kuanyui joined #lisp 2014-09-27T06:19:21Z Mon_Ouie joined #lisp 2014-09-27T06:19:21Z Mon_Ouie quit (Changing host) 2014-09-27T06:19:21Z Mon_Ouie joined #lisp 2014-09-27T06:23:57Z MrWoohoo joined #lisp 2014-09-27T06:29:21Z emma joined #lisp 2014-09-27T06:30:05Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-27T06:38:20Z kuanyui: Any one understand Quicklisp? I'm trying to install and use CL-PPCRE within SBCL's REPL with (ql:quickload :cl-ppcre) then (import 'cl-ppcre), but when I tried (scan "b+" "aaabbcc") It says "undefined function" 2014-09-27T06:38:46Z beach: kuanyui: IMPORT is not what you want. 2014-09-27T06:38:56Z beach: kuanyui: Try REQUIRE. 2014-09-27T06:39:10Z baotiao joined #lisp 2014-09-27T06:39:45Z beach: kuanyui: Furthermore, SCAN is probably not a symbol in the current package (which is typically COMMON-LISP-USER. 2014-09-27T06:39:47Z jkaye joined #lisp 2014-09-27T06:39:47Z Grue`: you also need either use-package or call cl-ppcre:scan 2014-09-27T06:40:13Z kuanyui: I need a simple example of usage... 2014-09-27T06:40:33Z Grue`: after ql:quickload you should be able to cl-ppcre:scan 2014-09-27T06:41:01Z zeebrah quit (Ping timeout: 272 seconds) 2014-09-27T06:41:32Z Grue`: ppcre:scan will also work 2014-09-27T06:41:45Z H4ns: kuanyui: instead of (import 'cl-ppcre), you may want to try (use-package :cl-ppcre) 2014-09-27T06:41:58Z H4ns: kuanyui: where did you see "import" be mentioned? 2014-09-27T06:42:56Z Grue`: IMPORT imports _symbols_ not packages 2014-09-27T06:43:03Z kuanyui: Thank you very much, it works. 2014-09-27T06:43:23Z kuanyui: Sorry, import's my mistake. 2014-09-27T06:44:17Z jkaye quit (Ping timeout: 244 seconds) 2014-09-27T06:46:10Z kuanyui: I still have some question: 1.In my program, what do I have to insert to load external lib? 2. If I want to make my program running on the other system, h\ow about the external libs installed via Quicklisp? 2014-09-27T06:46:35Z pjb: kuanyui: you have to insert an ASD file. 2014-09-27T06:47:02Z pjb: kuanyui: quicklisp works automatically, once you've specified the external library dependency in your ASD file. 2014-09-27T06:48:23Z baotiao quit (Quit: baotiao) 2014-09-27T06:48:44Z baotiao joined #lisp 2014-09-27T06:51:28Z nug700 quit (Quit: bye) 2014-09-27T06:51:29Z nug700_ quit (Quit: bye) 2014-09-27T06:52:05Z nug700 joined #lisp 2014-09-27T06:55:05Z beach: I am definitely going to switch to a different testing strategy for minimal compilation, thanks to nyef's ideas. Instead of checking the exact resulting form of minimal compilation, I will check the result of evaluating the resulting form. 2014-09-27T06:55:56Z beach: That way, I don't depend on the exact forms generated by the minimal compiler; only that it generates something that will work. 2014-09-27T06:55:56Z pjb: That's strange, because given a macro, the result of minimal compilation is determined. 2014-09-27T06:56:16Z beach: pjb: Not really. 2014-09-27T06:56:51Z beach: pjb: I think I have the right to turn (declare (integer x)) into (declare (type integer x)). 2014-09-27T06:56:56Z pjb: Even for stochastic macros, you can play with random states to get derministics expansions. 2014-09-27T06:57:15Z beach: Oh, my expansion is deterministic. 2014-09-27T06:57:23Z beach: I just don't want the test to depend on the details of it. 2014-09-27T06:57:53Z pjb: You might have a wider view of minimal compilation than I have. 2014-09-27T06:58:25Z pjb: For me, minimal compilation only expands macros, giving a form containing only special operators and function calls. 2014-09-27T06:58:25Z Shinmera joined #lisp 2014-09-27T06:58:36Z beach: pjb: the Common Lisp HyperSpec doesn't say ONLY. 2014-09-27T06:58:37Z pjb: You are essentially testing the macro expansion code. 2014-09-27T07:00:00Z beach: For instance, it doesn't say I can't canonicalize the declarations. 2014-09-27T07:00:09Z sdemarre joined #lisp 2014-09-27T07:01:04Z beach: ... or turn "&key x" into "key (:x x) nil" 2014-09-27T07:01:37Z beach: Oops: &key ((:x x) nil) 2014-09-27T07:02:12Z beach: So the new strategy would be independent of whether such transformations are made. 2014-09-27T07:02:49Z ehu quit (Ping timeout: 260 seconds) 2014-09-27T07:03:49Z pjb: But my point is that those transformations are dependent on the macro functions of defun/defmethod and let's say the lambda macro. The question is what will you allow for (function (lambda (x) (declare (integer x)) (cond ((zerop x) -1) (t (* 2 x)))))? 2014-09-27T07:03:50Z hiyosi_ quit (Quit: WeeChat 1.0) 2014-09-27T07:04:05Z beach: kuanyui: As pjb says, if you write your own software, you supply a system definition in an ASDF file. Then everything works "automatically". 2014-09-27T07:04:20Z pjb: when testing the minimal compiler, if you want to test it with a defun form, you have to provide a deterministic defun macro. 2014-09-27T07:05:02Z pjb: On the other hand, while function is a special operator, we still have to expand macros in the body of the lambda form. 2014-09-27T07:05:04Z hiyosi joined #lisp 2014-09-27T07:05:06Z beach: pjb: I see your point, but my minimal compiler also canonicalizes the lambda list, so it doesn't look the same after minimal compilation. 2014-09-27T07:05:17Z kuanyui: beach: I'm reading the info about ASDF. ASD file looks like Makefile? 2014-09-27T07:05:29Z beach: kuanyui: The idea is similar, yes. 2014-09-27T07:06:03Z pjb: I think you are allowed to do that, given that CLHS doesn't seem to say anything about the minimal compilation of (function (lambda …)). And this applies to the expansion of defun/defmethod since they may expand to such (function (lambda …)) forms. 2014-09-27T07:06:45Z beach: pjb: Yes, and I take advantage of that to simplify the minimal compiler by using existing lambda-list utilities. 2014-09-27T07:06:55Z hiyosi quit (Client Quit) 2014-09-27T07:07:09Z pjb: Wouldn't it be a problem to include this processing in the minimal compiler? Perhaps not canonicalization of lambda lists, but processing of declarations? Other compilers may want to do different processing of declarations. 2014-09-27T07:07:28Z Grue`: kuanyui: try quickproject, it will create .asd file for you 2014-09-27T07:07:32Z hiyosi joined #lisp 2014-09-27T07:08:11Z beach: pjb: I don't know. I'll think about it. 2014-09-27T07:08:46Z pjb: declarations occur only in special operators (ultimately). Therefore their processing should be left to the implementation of special operators (the compiler) rather than the minimal compiler, I'd say. 2014-09-27T07:08:48Z beach: pjb: Right now, it seems unnecessary to preserve the exact structure of the form. But I might change my mind some day. 2014-09-27T07:08:55Z mishoo joined #lisp 2014-09-27T07:09:25Z beach: pjb: In fact, the current minimal compiler does not alter the declarations. 2014-09-27T07:09:35Z pjb: :-) 2014-09-27T07:09:48Z beach: It only scans them to determine whether a variable is special or not. 2014-09-27T07:10:11Z pjb: Is it necessary during minimal compilation? 2014-09-27T07:10:27Z beach: pjb: Actually, no! I cheat. 2014-09-27T07:10:34Z beach: I treat all variables as lexical. 2014-09-27T07:10:36Z beach: That works. 2014-09-27T07:10:39Z beach: [I think] 2014-09-27T07:11:14Z gravicappa quit (Remote host closed the connection) 2014-09-27T07:11:19Z beach: But I was going to change that, because it is unaesthetic. 2014-09-27T07:11:29Z pjb: IIRC, the constrains on local macros (macrolet) are such that they cannot use the variables in their surrounding form, so it should not matter whether they're special or lexical. 2014-09-27T07:11:40Z ehu joined #lisp 2014-09-27T07:12:15Z beach: Right. 2014-09-27T07:12:31Z beach: All I need to do is check that global symbol macros are properly shadowed. 2014-09-27T07:12:46Z pjb: Right. 2014-09-27T07:13:54Z beach: pjb: Thanks for the feedback. I appreciate it. 2014-09-27T07:14:13Z beach vanishes for a while. 2014-09-27T07:14:14Z pjb: You're welcome (I've written half a MC myself, and used it in my stepper). 2014-09-27T07:14:48Z bddy joined #lisp 2014-09-27T07:14:49Z beach: Ah, OK. So you know what you are talking about. Good! 2014-09-27T07:16:05Z drmeiste_ joined #lisp 2014-09-27T07:16:07Z pjb: My next task on it will be to make it parameterizable for various usages, so I'll be interested seeing how you do it. 2014-09-27T07:16:15Z bddy: Hello. I remember reading about some stuff in LISP that it's possible, if we say have a list (1 2), then we doo something like (foo (cadr lst)) and it modifies lst so that now list is (1 (foo 2)). How is this thing called or how to find it? 2014-09-27T07:17:05Z pjb: bddy: in LISP, you'd use RPLACA and RPLACD. But in Common Lisp, you'd rather use (setf car) (setf cdr) or (setf second). 2014-09-27T07:17:22Z pjb: (let ((list (list 1 2))) (print list) (setf (second list) '(foo 2)) list) 2014-09-27T07:20:17Z sdemarre quit (Ping timeout: 245 seconds) 2014-09-27T07:20:30Z drmeiste_ quit (Ping timeout: 246 seconds) 2014-09-27T07:21:42Z vaporatorius joined #lisp 2014-09-27T07:21:52Z H4ns: bddy: you're probably talking about places 2014-09-27T07:22:21Z H4ns: bddy: http://www.lispworks.com/documentation/HyperSpec/Body/26_glo_p.htm#place 2014-09-27T07:22:31Z vinleod quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-27T07:22:43Z H4ns: bddy: see also http://www.lispworks.com/documentation/HyperSpec/Body/m_setf_.htm 2014-09-27T07:22:47Z baotiao quit (Quit: baotiao) 2014-09-27T07:25:44Z drmeister_ quit (K-Lined) 2014-09-27T07:25:44Z Amaan quit (K-Lined) 2014-09-27T07:25:45Z _tca quit (K-Lined) 2014-09-27T07:25:45Z splittist_ quit (K-Lined) 2014-09-27T07:25:45Z ggherdov___ quit (K-Lined) 2014-09-27T07:25:45Z gregburd quit (K-Lined) 2014-09-27T07:25:45Z madmalik quit (K-Lined) 2014-09-27T07:25:45Z drdanmaku quit (K-Lined) 2014-09-27T07:25:45Z aksatac___ quit (K-Lined) 2014-09-27T07:25:45Z d4gg4d____ quit (K-Lined) 2014-09-27T07:25:45Z Neet quit (K-Lined) 2014-09-27T07:25:45Z victor_lowther__ quit (K-Lined) 2014-09-27T07:25:45Z gluegadget quit (K-Lined) 2014-09-27T07:25:45Z endou_____ quit (K-Lined) 2014-09-27T07:25:45Z gz quit (K-Lined) 2014-09-27T07:25:45Z faheem_ quit (K-Lined) 2014-09-27T07:25:46Z rvirding_ quit (K-Lined) 2014-09-27T07:25:48Z superjudge____ quit (K-Lined) 2014-09-27T07:30:54Z superjudge____ joined #lisp 2014-09-27T07:30:58Z superjudge____ quit (K-Lined) 2014-09-27T07:31:07Z MutSbeta joined #lisp 2014-09-27T07:33:48Z bddy: aha, thanks, that's exactly what I've been looking for 2014-09-27T07:34:43Z svetlyak40wt joined #lisp 2014-09-27T07:35:49Z angavrilov joined #lisp 2014-09-27T07:35:51Z drdanmaku joined #lisp 2014-09-27T07:36:55Z beach: pjb: OK, we'll compare notes. 2014-09-27T07:37:31Z sdemarre joined #lisp 2014-09-27T07:40:48Z beaumonta joined #lisp 2014-09-27T07:40:59Z meiji11 quit (Remote host closed the connection) 2014-09-27T07:44:50Z marsam is now known as marsbot 2014-09-27T07:49:07Z beaumonta quit (Remote host closed the connection) 2014-09-27T07:49:38Z beaumonta joined #lisp 2014-09-27T07:50:11Z beaumonta is now known as abeaumont_ 2014-09-27T07:52:34Z bddy quit (Remote host closed the connection) 2014-09-27T07:54:59Z faheem: drmeister: another build failure. this time looks like a linker failure 2014-09-27T07:55:35Z faheem: for boehm. https://gist.github.com/066d92566393b033b2a5 2014-09-27T07:58:41Z pt1 joined #lisp 2014-09-27T07:59:14Z stassats joined #lisp 2014-09-27T08:02:59Z Davidbrcz joined #lisp 2014-09-27T08:08:12Z Amaan joined #lisp 2014-09-27T08:08:39Z varjag_ joined #lisp 2014-09-27T08:11:43Z pt1 quit (Remote host closed the connection) 2014-09-27T08:16:07Z pt1 joined #lisp 2014-09-27T08:21:10Z vinleod joined #lisp 2014-09-27T08:21:49Z harish joined #lisp 2014-09-27T08:21:58Z oleo is now known as Guest24335 2014-09-27T08:22:15Z ndrei quit (Remote host closed the connection) 2014-09-27T08:22:27Z joneshf-laptop_ quit (Read error: Connection reset by peer) 2014-09-27T08:22:45Z joneshf-laptop joined #lisp 2014-09-27T08:23:43Z oleo__ joined #lisp 2014-09-27T08:25:02Z Guest24335 quit (Ping timeout: 244 seconds) 2014-09-27T08:25:27Z ndrei joined #lisp 2014-09-27T08:25:36Z zophy quit (Ping timeout: 250 seconds) 2014-09-27T08:25:48Z malbertife joined #lisp 2014-09-27T08:32:15Z pt1 quit (Remote host closed the connection) 2014-09-27T08:32:42Z svetlyak40wt quit (Remote host closed the connection) 2014-09-27T08:34:41Z stassats quit (Ping timeout: 260 seconds) 2014-09-27T08:38:03Z freaksken joined #lisp 2014-09-27T08:38:36Z DGASAU quit (Ping timeout: 258 seconds) 2014-09-27T08:38:59Z _d3f joined #lisp 2014-09-27T08:39:16Z Harag joined #lisp 2014-09-27T08:40:17Z MrWoohoo quit (Ping timeout: 245 seconds) 2014-09-27T08:40:17Z BlastHardcheese quit (Ping timeout: 245 seconds) 2014-09-27T08:40:38Z jkaye joined #lisp 2014-09-27T08:43:53Z BlastHardcheese joined #lisp 2014-09-27T08:44:12Z stepnem joined #lisp 2014-09-27T08:44:41Z MrWoohoo joined #lisp 2014-09-27T08:45:07Z jkaye quit (Ping timeout: 258 seconds) 2014-09-27T08:48:51Z urandom__ joined #lisp 2014-09-27T08:54:30Z malbertife quit (Read error: Connection reset by peer) 2014-09-27T08:54:59Z malbertife joined #lisp 2014-09-27T08:56:43Z yacks quit (Ping timeout: 272 seconds) 2014-09-27T08:59:56Z zacharias joined #lisp 2014-09-27T09:01:37Z Harag quit (Ping timeout: 272 seconds) 2014-09-27T09:09:35Z Harag joined #lisp 2014-09-27T09:12:22Z defaultxr quit (Quit: gnight) 2014-09-27T09:14:03Z Harag quit (Ping timeout: 272 seconds) 2014-09-27T09:14:17Z madrik quit (Ping timeout: 272 seconds) 2014-09-27T09:14:20Z hitecnologys joined #lisp 2014-09-27T09:14:21Z ehu_ joined #lisp 2014-09-27T09:15:33Z ehu quit (Ping timeout: 272 seconds) 2014-09-27T09:18:35Z theos quit (Disconnected by services) 2014-09-27T09:19:01Z theos joined #lisp 2014-09-27T09:26:13Z zacharias quit (Quit: Bye!) 2014-09-27T09:29:12Z ehu_ quit (Ping timeout: 258 seconds) 2014-09-27T09:31:02Z svetlyak40wt joined #lisp 2014-09-27T09:34:01Z zeebrah joined #lisp 2014-09-27T09:39:51Z nug700 quit (Quit: bye) 2014-09-27T09:41:24Z kuanyui: (Common Lisp)How to get divide reminder? 2014-09-27T09:41:56Z jdz: kuanyui: rem, or the second value of truncate 2014-09-27T09:42:08Z jdz: clhs truncate 2014-09-27T09:42:08Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_floorc.htm 2014-09-27T09:42:30Z kuanyui: Thanks! 2014-09-27T09:43:57Z pnpuff joined #lisp 2014-09-27T09:44:07Z beach: kuanyui: This channel is about Common Lisp, so you don't have to mention that explicitly. 2014-09-27T09:44:26Z kuanyui: Oops, ok XD 2014-09-27T09:49:57Z Karl_Dscc joined #lisp 2014-09-27T09:50:13Z jusss joined #lisp 2014-09-27T09:50:36Z svetlyak40wt quit (Remote host closed the connection) 2014-09-27T09:51:08Z Grue`: i'm pretty sure floor is the function that produces mathematically correct remainder, not truncate 2014-09-27T09:51:40Z jdz: Grue`: what is a "mathematically correct remainder"? 2014-09-27T09:51:46Z pnpuff quit (Quit: leaving) 2014-09-27T09:51:51Z Grue`: between 0 and abs(divisor) 2014-09-27T09:53:23Z _death: floor gives mod, truncate gives rem 2014-09-27T09:53:24Z jdz: Grue`: so what's the rmainder of -10 / 4? 2014-09-27T09:53:24Z pnpuff joined #lisp 2014-09-27T09:53:38Z jdz: _death: no, mod gives mod 2014-09-27T09:54:01Z jdz: and in CL, TRUNCATE gives MOD and REM 2014-09-27T09:54:02Z Grue`: 2? 2014-09-27T09:54:38Z jdz: Grue`: so -2 * 4 + 2 is? 2014-09-27T09:54:57Z Karl_Dscc left #lisp 2014-09-27T09:55:07Z _death: jdz: rethink 2014-09-27T09:55:10Z Karl_Dscc joined #lisp 2014-09-27T09:55:33Z Grue`: -3 * 4 + 2 = -10 2014-09-27T09:55:34Z Karl_Dscc is now known as Guest13876 2014-09-27T09:55:58Z jdz: Grue`: what's -3? 2014-09-27T09:56:14Z Grue`: floor of -10/4 2014-09-27T09:56:31Z jdz: Grue`: ok, what's modulus of -10 and 4? 2014-09-27T09:56:51Z Grue`: same 2014-09-27T09:56:59Z Guest13876 quit (Client Quit) 2014-09-27T09:57:07Z jdz: i'll probably have to look up the "mathematical definition" of modulus 2014-09-27T09:57:09Z KarlDscc joined #lisp 2014-09-27T09:57:13Z jdz: but this is not how they work in CL 2014-09-27T09:57:33Z KarlDscc is now known as Guest58303 2014-09-27T09:57:39Z Grue`: modulus is a mapping Z -> Z/Zn 2014-09-27T09:57:49Z kuanyui quit (Ping timeout: 260 seconds) 2014-09-27T09:57:55Z Guest58303 quit (Client Quit) 2014-09-27T09:57:59Z Grue`: so it's the same thing, but for integers only 2014-09-27T09:58:45Z Grue`: I guess lisp's REM doesnt behave in this manner 2014-09-27T09:58:49Z jdz: well, anyway, if you need FLOOR, then it's there for you 2014-09-27T09:59:11Z _death: clhs mod 2014-09-27T09:59:11Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/a_mod.htm 2014-09-27T10:01:51Z kcj joined #lisp 2014-09-27T10:03:52Z yacks joined #lisp 2014-09-27T10:05:36Z robot-beethoven quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-27T10:06:49Z kami joined #lisp 2014-09-27T10:08:25Z kami: Hello #lisp 2014-09-27T10:08:36Z pnpuff: hi kami! 2014-09-27T10:09:16Z jeremyheiler joined #lisp 2014-09-27T10:10:57Z schaueho joined #lisp 2014-09-27T10:13:07Z bit` quit (Quit: Leaving.) 2014-09-27T10:14:07Z kuzy000_ joined #lisp 2014-09-27T10:28:11Z pnpuff left #lisp 2014-09-27T10:33:07Z Mon_Ouie quit (Ping timeout: 245 seconds) 2014-09-27T10:33:24Z MouldyOldBones joined #lisp 2014-09-27T10:34:34Z kcj quit (Quit: kcj) 2014-09-27T10:34:44Z kuanyui joined #lisp 2014-09-27T10:36:25Z svetlyak40wt joined #lisp 2014-09-27T10:37:06Z arenz joined #lisp 2014-09-27T10:38:30Z Kenjin joined #lisp 2014-09-27T10:42:31Z francogrex joined #lisp 2014-09-27T10:44:57Z vhost- quit (Ping timeout: 260 seconds) 2014-09-27T10:45:27Z vaporatorius quit (Quit: Leaving) 2014-09-27T10:46:08Z jeremyheiler quit (Quit: Computer has gone to sleep.) 2014-09-27T10:46:53Z edgar-rft quit (Quit: memory access interrupted by nuclear burnout) 2014-09-27T10:49:49Z vhost- joined #lisp 2014-09-27T10:52:21Z drmeiste_ joined #lisp 2014-09-27T10:52:50Z jeremyheiler joined #lisp 2014-09-27T10:55:24Z Mon_Ouie joined #lisp 2014-09-27T10:57:17Z drmeiste_ quit (Ping timeout: 272 seconds) 2014-09-27T11:06:00Z _tca joined #lisp 2014-09-27T11:07:43Z zophy joined #lisp 2014-09-27T11:10:04Z jusss quit (Ping timeout: 260 seconds) 2014-09-27T11:11:42Z aksatac___ joined #lisp 2014-09-27T11:13:41Z marvin-hh joined #lisp 2014-09-27T11:14:17Z vinleod quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-27T11:15:31Z francogrex quit (Remote host closed the connection) 2014-09-27T11:18:00Z ehu joined #lisp 2014-09-27T11:27:18Z Beetny quit (Ping timeout: 272 seconds) 2014-09-27T11:32:22Z baotiao joined #lisp 2014-09-27T11:37:08Z Davidbrcz quit (Ping timeout: 260 seconds) 2014-09-27T11:37:20Z hardenedapple joined #lisp 2014-09-27T11:38:18Z DGASAU joined #lisp 2014-09-27T11:38:20Z xyjprc joined #lisp 2014-09-27T11:39:58Z mishoo quit (Ping timeout: 272 seconds) 2014-09-27T11:47:29Z ggole joined #lisp 2014-09-27T11:49:10Z mishoo joined #lisp 2014-09-27T11:53:31Z pt1 joined #lisp 2014-09-27T11:54:03Z ehu quit (Ping timeout: 272 seconds) 2014-09-27T11:54:41Z pt1 quit (Remote host closed the connection) 2014-09-27T12:00:15Z hugod quit (Remote host closed the connection) 2014-09-27T12:01:00Z zophy quit (Ping timeout: 244 seconds) 2014-09-27T12:01:38Z drdanmaku quit (Quit: Connection closed for inactivity) 2014-09-27T12:02:05Z hugod joined #lisp 2014-09-27T12:05:25Z stassats joined #lisp 2014-09-27T12:07:29Z posterdati300 joined #lisp 2014-09-27T12:18:17Z Kabaka quit (Ping timeout: 260 seconds) 2014-09-27T12:19:40Z tomaw- quit (Quit: Quitting) 2014-09-27T12:24:17Z Kabaka joined #lisp 2014-09-27T12:24:56Z ndrei quit (Ping timeout: 272 seconds) 2014-09-27T12:40:31Z drmeiste_ joined #lisp 2014-09-27T12:43:31Z sz0 joined #lisp 2014-09-27T12:44:04Z Xach joined #lisp 2014-09-27T12:45:17Z drmeiste_ quit (Ping timeout: 260 seconds) 2014-09-27T12:47:47Z zophy joined #lisp 2014-09-27T12:48:26Z xristos joined #lisp 2014-09-27T12:48:56Z vinleod joined #lisp 2014-09-27T12:52:11Z Nizumzen joined #lisp 2014-09-27T12:57:31Z EvW joined #lisp 2014-09-27T12:57:47Z Moogly2012 joined #lisp 2014-09-27T12:59:57Z TDog joined #lisp 2014-09-27T13:00:18Z Fare quit (Quit: Leaving) 2014-09-27T13:05:10Z kami` joined #lisp 2014-09-27T13:05:29Z ilhami joined #lisp 2014-09-27T13:06:17Z klltkr joined #lisp 2014-09-27T13:07:29Z ilhami quit (Client Quit) 2014-09-27T13:08:22Z kami quit (Ping timeout: 240 seconds) 2014-09-27T13:09:25Z drmeiste_ joined #lisp 2014-09-27T13:12:07Z drmeiste_: faheem, jasom: Anybody online? 2014-09-27T13:12:12Z drmeiste_ is now known as drmeister_ 2014-09-27T13:18:23Z svetlyak40wt quit (Remote host closed the connection) 2014-09-27T13:18:56Z svetlyak40wt joined #lisp 2014-09-27T13:19:08Z svetlyak40wt quit (Remote host closed the connection) 2014-09-27T13:19:40Z svetlyak40wt joined #lisp 2014-09-27T13:19:53Z svetlyak40wt quit (Remote host closed the connection) 2014-09-27T13:20:38Z marsbot is now known as marsam 2014-09-27T13:21:16Z vinleod quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-27T13:26:25Z Davidbrcz joined #lisp 2014-09-27T13:27:05Z marsam left #lisp 2014-09-27T13:28:01Z TDog quit (Ping timeout: 258 seconds) 2014-09-27T13:28:48Z drmeister_: Is anyone familar with boost build? 2014-09-27T13:30:48Z kanru` joined #lisp 2014-09-27T13:33:37Z Alfr joined #lisp 2014-09-27T13:33:52Z Davidbrcz quit (Ping timeout: 240 seconds) 2014-09-27T13:38:32Z arenz quit (Ping timeout: 245 seconds) 2014-09-27T13:38:57Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-27T13:41:31Z normanrichards quit 2014-09-27T13:47:46Z arenz joined #lisp 2014-09-27T13:55:01Z ndrei joined #lisp 2014-09-27T13:55:46Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-27T13:55:57Z jusss` joined #lisp 2014-09-27T13:56:27Z arenz quit (Ping timeout: 245 seconds) 2014-09-27T14:00:32Z xyjprc quit (Remote host closed the connection) 2014-09-27T14:05:25Z bgs100 joined #lisp 2014-09-27T14:06:10Z mishoo quit (Quit: (save-lisp-and-die)) 2014-09-27T14:07:33Z mishoo joined #lisp 2014-09-27T14:13:57Z cmack`` quit (Read error: Connection reset by peer) 2014-09-27T14:14:17Z cmack`` joined #lisp 2014-09-27T14:17:24Z drdanmaku joined #lisp 2014-09-27T14:21:45Z alchemis7 left #lisp 2014-09-27T14:21:46Z alchemis7 joined #lisp 2014-09-27T14:25:47Z Alfr_ joined #lisp 2014-09-27T14:26:37Z Alfr_ quit (Client Quit) 2014-09-27T14:29:52Z rtoym quit (Remote host closed the connection) 2014-09-27T14:31:18Z resttime joined #lisp 2014-09-27T14:31:41Z stassats changed the topic of #lisp to: Common Lisp, the #1=(programmable . #1#) programming language logs:|contact op if muted|common-lisp.net migration 2014-09-22@09:00UTC (http://bit.ly/1mmCw6o)|SBCL 1.2.4, yason 0.6.7, Drakma 1.3.10, cl-launch 4.1 2014-09-27T14:31:55Z loke_ joined #lisp 2014-09-27T14:32:33Z kuzary joined #lisp 2014-09-27T14:34:42Z faheem: drmeister_: hey. were you sick? 2014-09-27T14:35:17Z mac_ified joined #lisp 2014-09-27T14:37:18Z mac_ified quit (Remote host closed the connection) 2014-09-27T14:37:31Z rtoym joined #lisp 2014-09-27T14:39:36Z drmeister_: Yeah. I'm better now. 2014-09-27T14:39:40Z drmeister_: Working on the build system. 2014-09-27T14:40:10Z drmeister_: I found a dash "-" where there should have been an underscore "_" in the makefile of externals-clasp 2014-09-27T14:40:19Z drmeister_: How are you getting along? 2014-09-27T14:40:40Z pt1 joined #lisp 2014-09-27T14:41:53Z njsg: out of curiosity, are there ways to do IMAP from lisp? 2014-09-27T14:42:00Z Nizumzen joined #lisp 2014-09-27T14:42:44Z njsg: I'm trying to make a script that will monitor a mailbox using IMAP IDLE, and then I realized that I may be better off implementing something or at least doing the application from scratch using an IMAP library, and, if so, why not in LISP 2014-09-27T14:43:47Z work_op quit (Ping timeout: 272 seconds) 2014-09-27T14:44:10Z pt1 quit (Remote host closed the connection) 2014-09-27T14:44:20Z stacksmith: https://github.com/franzinc/imap 2014-09-27T14:44:27Z drmeister_: njsg: I found this: http://lisp-search.acceleration.net/html/bknr.mail.imap.html 2014-09-27T14:44:46Z drmeister_: But I have never used it. 2014-09-27T14:44:50Z stacksmith: http://common-lisp.net/project/clonsigna/ 2014-09-27T14:46:00Z hitecnologys: njsg: if memory serves, IMAP is text protocol. It shouldn't be too hard to write your own simple implementation of it in case none of the above work properly. 2014-09-27T14:46:22Z stacksmith: The Franz library looks pretty good... 2014-09-27T14:47:09Z njsg: IMAP and "shouoldn't be too hard" shouldn't probably be mixed in the same sentence, I know from personal experience that IMAP is where non-standard-compliancy lies 2014-09-27T14:47:32Z faheem: Informal survey - how many people here have read The Phantom Tollbooth? 2014-09-27T14:47:34Z faheem: I read this as a child (of course). I was just thinking about it. 2014-09-27T14:47:56Z faheem: drmeister_: doing ok, thanks. did you see my paste? 2014-09-27T14:48:55Z drmeister_: faheem: It's been very chaotic for me the past day - I don't think I did - or I didn't process it. It's quiet now and I have some tea and I'm slowly going through the build system to identify problems. 2014-09-27T14:48:57Z kuzary left #lisp 2014-09-27T14:49:01Z drmeister_: Could you post it again? 2014-09-27T14:49:09Z isoraqathedh quit (Remote host closed the connection) 2014-09-27T14:49:30Z wglb considers going more with inferior-shell over bash. 2014-09-27T14:49:47Z eudoxia joined #lisp 2014-09-27T14:49:50Z isoraqathedh joined #lisp 2014-09-27T14:50:14Z njsg: drmeister_: that seems to be empty, how do I get the content? 2014-09-27T14:50:14Z yeticry quit (Read error: Connection reset by peer) 2014-09-27T14:50:16Z eudoxia: njsg: coincidence, i was just looking into CL email libraries. anyways, let me give you the summary of what i've gathered 2014-09-27T14:50:23Z njsg: oh wait, is it just a package db? 2014-09-27T14:50:26Z stacksmith: stacksmith tried shelly, and considers inferior-shell as well 2014-09-27T14:51:15Z wglb: I have an ungodly number of shell script glue in my production system. 2014-09-27T14:51:22Z eudoxia: njsg: postoffice is incomplete. franz's imap does not build and won't for a looong time. clonsigna works fine, but is not portable (depends on iolib). i've only just begun to test mel-base, and it's complicated because it's imap functions are not exported, but at the very least it connects to my gmail account, which is more than what i can say for most libraries 2014-09-27T14:51:35Z eudoxia: tldr use mel-base or clonsigna 2014-09-27T14:51:40Z drmeister_: njsg: Ah, sorry, I didn't probe deeper - there may not be any and I led you to a dead link. 2014-09-27T14:51:52Z hitecnologys: njsg: indeed. But it's not like you need to fully implement protocol. Since you need only to get mail, it's just a few commands. Besides, IMAP returns data in a form of S-expressions which is quite convinient. 2014-09-27T14:53:11Z stacksmith: franz's imap does a fair amount of parsing, with test cases it looks like. You could probably snag some code. 2014-09-27T14:53:54Z eudoxia: stacksmith: the problem is that the github version is written for ACL 2014-09-27T14:54:17Z eudoxia: stacksmith: i managed to get imap.lisp to build on SBCL, but it failed when trying to connect to gmail 2014-09-27T14:54:48Z ndrei quit (Ping timeout: 272 seconds) 2014-09-27T14:54:48Z eudoxia: clonsigna is also fairly complete, but again: not portable 2014-09-27T14:55:57Z faheem: drmeister_: https://gist.github.com/d5932dc3cdc8c97c6301 2014-09-27T14:56:22Z yeticry joined #lisp 2014-09-27T14:57:07Z Ven joined #lisp 2014-09-27T14:57:15Z drmeister_: faheem: That's a new one. 2014-09-27T14:57:46Z drmeister_: faheem: It's compiling everything (I must suppress those warnings) but it's not linking to any of the dlopen/dlsym/dladdr stuff. 2014-09-27T14:58:40Z fe[nl]ix: eudoxia: what's your operating system ? 2014-09-27T14:58:43Z dan64 quit (Quit: ZNC - http://znc.in) 2014-09-27T14:58:46Z drmeister_: faheem: What is your operating system again? Debian wheezy? 2014-09-27T14:58:57Z eudoxia: operating systemmind 2014-09-27T14:59:03Z eudoxia: fe[nl]ix: i'm on arch linux 2014-09-27T14:59:18Z LiamH joined #lisp 2014-09-27T14:59:26Z dan64 joined #lisp 2014-09-27T14:59:37Z madmalik joined #lisp 2014-09-27T14:59:53Z drmeister_: faheem: We need a "-ldl" in the link command. 2014-09-27T15:00:01Z fe[nl]ix: eudoxia: so why do you care that clonsigna is not "portable" ? 2014-09-27T15:00:31Z eudoxia: fe[nl]ix: well maybe i want to write a CL email client that runs on all platforms, windows included 2014-09-27T15:00:51Z jusss` quit (Quit: ERC Version 5.2 (IRC client for Emacs)) 2014-09-27T15:00:51Z d4gg4d____ joined #lisp 2014-09-27T15:04:33Z drmeister_: faheem: I added "-ldl" to linker flags on linux systems into the Jamroot.jam file. 2014-09-27T15:05:04Z drmeister_: faheem: Could you pull and in clasp/ type "make" again? It will pick up where it left off. 2014-09-27T15:05:05Z Shinmera: eudoxia: I'd rather just wait for Zawinski's law to take effect. 2014-09-27T15:05:30Z drmeister_: faheem: "git pull origin master" within clasp/ 2014-09-27T15:06:53Z ndrei joined #lisp 2014-09-27T15:08:33Z baotiao quit (Quit: baotiao) 2014-09-27T15:09:36Z faheem: drmeister_: sorry, wandered off. yes, debian wheezy 2014-09-27T15:09:48Z drmeister_: No problem, hold up for just a sec 2014-09-27T15:09:56Z faheem: ok 2014-09-27T15:10:03Z faheem: back in 5 min 2014-09-27T15:10:04Z drmeister_: I'm making one more change that 2014-09-27T15:10:07Z faheem: ok 2014-09-27T15:10:09Z drmeister_: faheem: Great! 5 min. 2014-09-27T15:10:22Z zophy quit (Ping timeout: 258 seconds) 2014-09-27T15:10:24Z drmeister_: Wandering off occasionally is a good thing. 2014-09-27T15:13:16Z DTSCode joined #lisp 2014-09-27T15:15:54Z faheem: back now 2014-09-27T15:15:59Z eudoxia quit (Quit: Lost terminal) 2014-09-27T15:16:34Z ndrei quit (Ping timeout: 272 seconds) 2014-09-27T15:17:33Z drmeister_: faheem: Ok, in clasp/ do "git pull origin master" and then "make" 2014-09-27T15:17:46Z faheem: drmeister_: ok 2014-09-27T15:18:29Z faheem: drmeister_: no make clean? 2014-09-27T15:18:36Z drmeister_: I don't think you will need to. 2014-09-27T15:19:08Z faheem: drmeister_: ok 2014-09-27T15:20:44Z drmeister_: faheem: What do you see? 2014-09-27T15:24:04Z phao joined #lisp 2014-09-27T15:24:45Z TDog joined #lisp 2014-09-27T15:25:15Z faheem: drmeister_: still building. bugger, forgot to direct it to a file. 2014-09-27T15:25:19Z faheem: drmeister_: shall i restart? 2014-09-27T15:25:23Z stacksmith: faheem: drmeister: friendly suggestion - perhaps start a private chat? Your conversation is making less and less sense to us mortals... 2014-09-27T15:26:16Z drmeister_: stacksmith: No problem. 2014-09-27T15:27:02Z ndrei joined #lisp 2014-09-27T15:28:06Z drmeister_: faheem: Let's meetup in #clasp 2014-09-27T15:29:00Z jsnell: this kind of discussion been a core use case of #lisp as long as I've been here 2014-09-27T15:29:19Z drmeister_: faheem: No need to restart. If it's still running then I think it's building Common Lisp source at this point. What are you seeing at the bottom of the terminal? 2014-09-27T15:30:18Z drmeister_: Is it stuff like: ; defun MAKE-PREDICATE and ; defun DEFMACRO ? 2014-09-27T15:31:53Z husker joined #lisp 2014-09-27T15:32:22Z ndrei quit (Ping timeout: 245 seconds) 2014-09-27T15:33:29Z ndrei joined #lisp 2014-09-27T15:34:03Z stacksmith: jsnell: I've been spending a lot of time putting together readable logs (see https://github.com/stacksmith/irc-lisp-html ). Some discussions are extremely helpful. Others, like how to build an early version of something, are best conducted in private - since they will never be useful later... 2014-09-27T15:34:10Z oudeis joined #lisp 2014-09-27T15:35:41Z stacksmith: No disrespect intended. 2014-09-27T15:37:55Z drmeister_: stacksmith: None taken. We are building a Common Lisp implementation and it is the first time anyone has built this Common Lisp implementation on linux and others are interested in building it. So it's kind of a gray area. But I'm sensitive to that the discussion gets technical and boring to those not involved. 2014-09-27T15:38:09Z drmeister_: I'm just waiting for faheem to get back and we'll move it somewhere else. 2014-09-27T15:39:10Z drmeister_: faheem has been extremely patient and helpful. 2014-09-27T15:40:08Z stacksmith: By all means stay if you think the discussion is useful to others! Perhaps there is even historic value. I look at my ERC window every now and then, and noticed a lot of details that will probably be different in a few hours, no? 2014-09-27T15:41:12Z Grue`: damn, I shouldn't have tried to open that 21mb html file in Firefox 2014-09-27T15:41:19Z stanislav joined #lisp 2014-09-27T15:41:42Z stacksmith: Grue`: it takes about 20 seconds to load, but then scrolling and searching is fast in Firefox. 2014-09-27T15:43:31Z wglb: I am finding the discussion helpful--I would like to build it as well. 2014-09-27T15:43:32Z Grue`: you should still probably separate the logs at least per month 2014-09-27T15:43:51Z drmeister_: stacksmith: You are most gracious. I think/hope we might be up and running so perhaps the details won't be different in a few hours. But if it looks like it's going to go south on us we'll take it somewhere else. 2014-09-27T15:44:48Z stacksmith: Perhaps I was out of line... Grue`: separating by months makes searching painful. 2014-09-27T15:44:51Z drmeister_: I tend to get into the zone and forget where I am. 2014-09-27T15:45:39Z stacksmith: Grue`: updating with git pull only sucks in a few tens of kilobytes... 2014-09-27T15:46:32Z kobain joined #lisp 2014-09-27T15:47:54Z drmeister_: Adlai - and others - thank you for suggesting "git submodules" - I wasn't very receptive yesterday because nested submodules caused me some grief but I'm using them now for the MPS library and it is working great! 2014-09-27T15:48:55Z drmeister_: faheem: Are there any status updates? 2014-09-27T15:49:46Z drmeister_: faheem: I'm building on linux at the same time - we should be at pretty similar stages. Currently Clasp is compiling its compiler. ; defun CODEGEN-RTV 2014-09-27T15:51:08Z drmeister_: faheem: It takes about a half hour for Clasp to compile it's own source code. The interpreter is really slow but as it compiles each source file it loads the compiled FASL file and replaces the interpreted functions with compiled functions and get's faster and faster. I get a thrill every time I see it happen. 2014-09-27T15:51:56Z drmeister_: I wrote a stream-of-consciousness post on how Clasp compiles itself and posted it here: http://drmeister.wordpress.com/2014/09/26/how-clasp-compiles-itself/ 2014-09-27T15:52:52Z billstclair quit (Ping timeout: 240 seconds) 2014-09-27T15:53:35Z stacksmith is cowardly waiting for drmeister_ and faheem to do the hard work. Then he will compile Clasp with no problems and chuckle to himself. 2014-09-27T15:54:02Z drmeister_ grins 2014-09-27T15:54:22Z ndrei quit (Ping timeout: 245 seconds) 2014-09-27T15:55:36Z zeebrah quit (Ping timeout: 258 seconds) 2014-09-27T15:56:03Z Adlai quit (Ping timeout: 264 seconds) 2014-09-27T15:56:13Z ndrei joined #lisp 2014-09-27T15:57:33Z drmeister_: I was really surprised how the HN comments against Clasp's LGPL license were so negative. It wasn't my choice - I built on Embedded Common Lisp and it's LGPL. If I had my druthers it would be an MIT license. 2014-09-27T15:57:45Z oleo__ is now known as oleo 2014-09-27T15:58:12Z drmeister_: I'd like to replace all of the LGPL code in Clasp with unencumbered stuff and switch to an MIT license. You heard it here. 2014-09-27T15:58:53Z stassats: can you now? 2014-09-27T15:59:11Z stassats: you're to influenced by the LGPL code, you can't write really from scratch 2014-09-27T15:59:11Z drmeister_: stassats: I think so. Can't I? 2014-09-27T15:59:17Z faheem: drmeister_: errored out again. 2014-09-27T15:59:22Z MoALTz quit (Ping timeout: 240 seconds) 2014-09-27T15:59:34Z faheem: sorry, dozed off here 2014-09-27T15:59:46Z drmeister_: faheem: What time of the day is it for you? 2014-09-27T16:00:08Z faheem: make[1]: Entering directory `/usr/local/src/clasp/clasp' 2014-09-27T16:00:08Z faheem: (cd src/main; /usr/local/src/clasp/clasp-build/Contents/boost_build_v2/bin/bjam -j4 link=static bundle release boehm) 2014-09-27T16:00:11Z faheem: WARNING: Command ecl not found. 2014-09-27T16:00:14Z drmeister_: It's late isn't it? Get some sleep - we can pick this up later 2014-09-27T16:00:16Z faheem: i'm guessing this is not good 2014-09-27T16:00:24Z drmeister_: faheem: No, it's fine. 2014-09-27T16:00:31Z faheem: drmeister_: 9.30 pm. not that late. 2014-09-27T16:00:33Z stassats: sleep is for the weak 2014-09-27T16:00:39Z faheem: drmeister_: ok, i'll do a paste 2014-09-27T16:00:55Z zophy joined #lisp 2014-09-27T16:00:58Z drmeister_: I was drunk and panicking on the first day of release and I deleted ECL from the externals-clasp repository. 2014-09-27T16:01:02Z drmeister_: I put it back. 2014-09-27T16:02:20Z drmeister_: It does mean pulling the externals-clasp repo and building it again (sorry) but it should get ecl back in place for the build process. 2014-09-27T16:02:58Z stassats quit (Remote host closed the connection) 2014-09-27T16:03:08Z faheem: drmeister_: https://gist.github.com/d4a8ec0d5491b2ac3178 2014-09-27T16:03:20Z faheem: drmeister_: i really must remember to direct it to a file. 2014-09-27T16:03:28Z yukko left #lisp 2014-09-27T16:03:41Z faheem: drmeister_: is getting rid of that annoying warning an option? 2014-09-27T16:03:55Z drmeister_: faheem: I'm putting my best man on it now. 2014-09-27T16:04:06Z MoALTz joined #lisp 2014-09-27T16:04:36Z drmeister_: Yes, I'm looking at removing that warning right now. 2014-09-27T16:05:27Z faheem: drmeister_: that's good. i hate such warnings, they just add clutter 2014-09-27T16:05:45Z pt1 joined #lisp 2014-09-27T16:08:55Z faheem: drmeister_: i might fall asleep again. if I do, I'll be awake again in a few hours. unfortunately. 2014-09-27T16:09:41Z pt1 quit (Remote host closed the connection) 2014-09-27T16:09:54Z drmeister_: faheem: No problem. If you can wait just a minute more I'll make sure that externals-clasp repo is up to date and you could rebuild that while you sleep. 2014-09-27T16:10:10Z baotiao joined #lisp 2014-09-27T16:10:11Z drmeister_: faheem: Would that work? 2014-09-27T16:11:50Z drmeister_: faheem: ECL is back in externals-clasp. From externals-clasp/ can you: git pull origin master; make really-clean; make 2014-09-27T16:12:10Z faheem: drmeister_: sure thing. no immediate plans to fall asleep again. but it happens 2014-09-27T16:12:14Z faheem: drmeister_: ok 2014-09-27T16:13:06Z drmeister_: faheem: Thank you: When you sleep, may you will sleep the sleep of the just. 2014-09-27T16:13:13Z faheem: drmeister_: they were positive the last i looked. did it change? 2014-09-27T16:13:24Z drmeister_: which were positive? 2014-09-27T16:13:30Z faheem: sorry, referring to your comment above, about HN 2014-09-27T16:13:54Z drmeister_: Oh and I removed the -Wno-unused-local-typedef from clasp/Jamroot.jam that warning should be gone now. 2014-09-27T16:14:05Z Adlai joined #lisp 2014-09-27T16:14:20Z drmeister_: You can pull that in a minute or so. But you should wait to build clasp/ until externals-clasp/ is built. 2014-09-27T16:14:33Z kanru` quit (Remote host closed the connection) 2014-09-27T16:14:51Z faheem: drmeister_: you want to go to #clasp? I don't think we are going to be generating much traffic though. 2014-09-27T16:14:53Z hiroakip joined #lisp 2014-09-27T16:15:01Z faheem: did you get that gentoo fix? 2014-09-27T16:15:10Z drmeister_: faheem: I think our work is done here for now. 2014-09-27T16:15:57Z drmeister_: faheem: I can't see any pull?/push? requests for the drmeister/clasp repo on github. 2014-09-27T16:16:26Z faheem: drmeister_: maybe he didn't get around to it. now what was his nick? 2014-09-27T16:16:41Z drmeister_: faheem: It was jasom 2014-09-27T16:16:43Z faheem: drmeister_: so, i should rebuild external? 2014-09-27T16:16:50Z faheem: drmeister_: right 2014-09-27T16:18:33Z faheem: drmeister_: rebuild externals now. i assume you are not expecting failures 2014-09-27T16:18:42Z drmeister_: Yes, after pulling externals-clasp do you see an "ecl" directory in the top level? 2014-09-27T16:20:12Z faheem: stacksmith: actually, maybe one day people will be interviewing drmeister_ about how clasp started, and then he can refer to your irc logs. 2014-09-27T16:20:22Z drmeister_: I'm not expecting failures but I'm beyond hope now. I make changes carefully but I break things. As long as you have patience I will keep at it until we get it running for you. 2014-09-27T16:21:21Z drmeister_: faheem: Could you check, do you see the "ecl" directory in externals-clasp? "externals-clasp/ecl" 2014-09-27T16:21:52Z vlnx quit (Ping timeout: 245 seconds) 2014-09-27T16:22:04Z drmeister_: faheem: I ask because I thought we built ecl last night. I'm surprised that it wasn't found. 2014-09-27T16:22:26Z faheem: drmeister_: still building. one sec 2014-09-27T16:22:49Z drmeister_: faheem: That's why I want to build "externals-clasp" from scratch and then "clasp" from scratch to reset you to a state that I understand. 2014-09-27T16:22:54Z faheem: yes, the ecl directory is there. 2014-09-27T16:23:15Z faheem: but that might be a different issue from the clasp thing finding ecl 2014-09-27T16:23:47Z faheem: anyway, it's going to be a while. 2014-09-27T16:23:54Z vlnx joined #lisp 2014-09-27T16:24:15Z drmeister_: Good. Yeah, on my system "ecl" might be in my path and not yours. I have to make sure the makefiles find everything explicitly to avoid that kind of problem. 2014-09-27T16:24:15Z oudeis quit (Quit: This computer has gone to sleep) 2014-09-27T16:24:36Z drmeister_: Good point - I'll check the clasp build system to see where it's looking for "ecl". 2014-09-27T16:24:43Z normanrichards joined #lisp 2014-09-27T16:24:43Z normanrichards quit (Read error: Connection reset by peer) 2014-09-27T16:26:08Z jeremyheiler quit (Quit: Computer has gone to sleep.) 2014-09-27T16:26:46Z faheem: drmeister_: right. make sure you are using full pathnames 2014-09-27T16:27:00Z faheem: jasom: ping. gentoo bug fix? 2014-09-27T16:27:32Z klltkr joined #lisp 2014-09-27T16:28:23Z kuanyui quit (Read error: Connection reset by peer) 2014-09-27T16:28:48Z drmeister_: faheem: That might actually be the problem here - ecl is being invoked from boost-build. I need to figure out how it generates the path to find ecl or whether it relies on it being in your PATH. 2014-09-27T16:28:57Z innertracks joined #lisp 2014-09-27T16:29:41Z faheem: drmeister_: pretty please. don't ask people to modify their paths. i hate it when people do that. 2014-09-27T16:29:48Z ndrei quit (Ping timeout: 272 seconds) 2014-09-27T16:29:56Z drmeister_: I absolutely won't do that. 2014-09-27T16:30:06Z hiroakip quit (Ping timeout: 258 seconds) 2014-09-27T16:30:16Z drmeister_: I'm going for a "zero environmental impact" build. 2014-09-27T16:30:24Z faheem: i wrote a software review last weeks, and pointed out to the authors that was not a reaonable thing to do. 2014-09-27T16:30:26Z sdemarre quit (Ping timeout: 272 seconds) 2014-09-27T16:30:44Z faheem: they had a python library with no setup.py. 2014-09-27T16:31:13Z drmeister_: This is part of why it's been trouble to build Clasp. I have stuff in my environment that you don't have and I didn't realize it was being used. 2014-09-27T16:31:15Z faheem: drmeister_: that's good 2014-09-27T16:31:23Z ndrei joined #lisp 2014-09-27T16:31:47Z JokesOnYou77 joined #lisp 2014-09-27T16:32:09Z drmeister_: I'm glad you feel strongly about it. I do as well. 2014-09-27T16:34:01Z isoraqathedh quit (Remote host closed the connection) 2014-09-27T16:34:48Z nydel: tzag 2014-09-27T16:34:58Z normanrichards joined #lisp 2014-09-27T16:34:59Z normanrichards quit (Read error: Connection reset by peer) 2014-09-27T16:35:43Z faheem: drmeister_: when you are making your changes, keep one eye open for later externalization. 2014-09-27T16:35:57Z drmeister_: What is "later externalization"? 2014-09-27T16:36:07Z faheem: drmeister_: no linux distribution, for example, will accept a locally compliled set of libraries 2014-09-27T16:36:32Z faheem: drmeister_: sorry, i meant, clasp needs to eventually link (or call to) to external libraries 2014-09-27T16:36:52Z drmeister_: faheem: Right - I see. Yes, externals-clasp is a crutch. 2014-09-27T16:37:03Z faheem: so, i'd try to avoid hardwiring things in as far as possible 2014-09-27T16:37:48Z stassats joined #lisp 2014-09-27T16:38:06Z drmeister_: Right - I'm doing that. externals-clasp is a temporary measure to ease early adoption and so that I can move from machine to machine without working about external libraries. 2014-09-27T16:39:08Z oudeis joined #lisp 2014-09-27T16:39:35Z faheem: drmeister_: ok 2014-09-27T16:40:59Z drmeister_: So if build clasp requires ECL, how should it find the "ecl" executable? 2014-09-27T16:42:00Z Karl_Dscc joined #lisp 2014-09-27T16:42:13Z GGMethos quit (Ping timeout: 272 seconds) 2014-09-27T16:42:17Z drmeister_: This is a perfect case for what you were just saying. I was about to ensure that it found the one in externals-clasp. But really, it should be in the PATH for externalization - right? 2014-09-27T16:42:24Z Karl_Dscc is now known as Guest81775 2014-09-27T16:42:28Z Guest81775 quit (Client Quit) 2014-09-27T16:42:38Z jasom: faheem: pong 2014-09-27T16:42:38Z KarlDscc joined #lisp 2014-09-27T16:42:44Z drmeister_: jasom: Hello! 2014-09-27T16:42:59Z jasom: faheem: Adding the --ignore-local-whatever fixed externals-clasp, but not clasp 2014-09-27T16:44:01Z drmeister_: jasom: There have been some changes to the build process that you should download. I think we are pretty close. I think faheem's will build as soon as we resolve how clasp-build should find the "ecl" executable. 2014-09-27T16:44:29Z faheem: jasom: ok, well, worth adding to externals anyway. 2014-09-27T16:44:35Z drmeister_: jasom: Did you submit a pull request for that? 2014-09-27T16:44:45Z faheem: jasom: you mean you're seeing the same error on clasp too? 2014-09-27T16:44:51Z drmeister_: Maybe we should take this to #clasp 2014-09-27T16:44:58Z faheem: drmeister_: maybe 2014-09-27T16:44:58Z jasom: faheem: yeah, the Optimization can't be none thing 2014-09-27T16:45:05Z faheem: jasom: ok 2014-09-27T16:45:14Z faheem: ok, #clasp then 2014-09-27T16:45:20Z gregburd joined #lisp 2014-09-27T16:46:42Z cmack`` quit (Remote host closed the connection) 2014-09-27T16:50:58Z kami` quit (Read error: Connection reset by peer) 2014-09-27T16:51:09Z klltkr quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-27T16:51:14Z kami` joined #lisp 2014-09-27T16:52:20Z kanru` joined #lisp 2014-09-27T16:52:40Z Moogly2012 quit (Quit: Leaving) 2014-09-27T16:53:28Z ndrei quit (Ping timeout: 250 seconds) 2014-09-27T16:54:30Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-27T16:55:26Z nydel quit (Quit: WeeChat 0.4.2) 2014-09-27T16:56:59Z Kenjin quit (Remote host closed the connection) 2014-09-27T16:59:04Z jeremyheiler joined #lisp 2014-09-27T17:01:09Z AWizzArd joined #lisp 2014-09-27T17:09:27Z GGMethos joined #lisp 2014-09-27T17:17:37Z Ven joined #lisp 2014-09-27T17:20:10Z billstclair joined #lisp 2014-09-27T17:20:45Z kanru` quit (Remote host closed the connection) 2014-09-27T17:20:46Z KCL joined #lisp 2014-09-27T17:21:18Z gravicappa joined #lisp 2014-09-27T17:21:28Z kanru` joined #lisp 2014-09-27T17:21:44Z kobain quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-09-27T17:23:36Z normanrichards joined #lisp 2014-09-27T17:23:37Z normanrichards quit (Read error: Connection reset by peer) 2014-09-27T17:23:52Z KCL_ quit (Ping timeout: 260 seconds) 2014-09-27T17:24:40Z troydm quit (Ping timeout: 250 seconds) 2014-09-27T17:27:30Z Kenjin joined #lisp 2014-09-27T17:29:00Z MutSbeta quit (Quit: Leaving.) 2014-09-27T17:30:42Z jsnell quit (Ping timeout: 245 seconds) 2014-09-27T17:30:50Z jsnell joined #lisp 2014-09-27T17:31:06Z anannie joined #lisp 2014-09-27T17:31:07Z yauz_2 quit (Ping timeout: 245 seconds) 2014-09-27T17:31:08Z Anarch quit (Ping timeout: 245 seconds) 2014-09-27T17:31:42Z zbigniew_ joined #lisp 2014-09-27T17:33:05Z Anarch joined #lisp 2014-09-27T17:33:35Z shka joined #lisp 2014-09-27T17:33:42Z shka: ave tux all 2014-09-27T17:34:08Z shka: what exactly error "slot is unbound in object" means? 2014-09-27T17:35:37Z Kenjin quit (Ping timeout: 245 seconds) 2014-09-27T17:36:09Z Bike: you tried to access a slot of a CLOS object that doesn't have a value set yet. 2014-09-27T17:36:31Z oleo: omnibus! 2014-09-27T17:36:34Z oleo: lol 2014-09-27T17:36:53Z Moogly2012 joined #lisp 2014-09-27T17:37:40Z rtoym quit (*.net *.split) 2014-09-27T17:37:40Z mishoo quit (*.net *.split) 2014-09-27T17:37:40Z theos quit (*.net *.split) 2014-09-27T17:37:40Z abeaumont_ quit (*.net *.split) 2014-09-27T17:37:40Z Shinmera quit (*.net *.split) 2014-09-27T17:37:40Z ananna quit (*.net *.split) 2014-09-27T17:37:40Z beach quit (*.net *.split) 2014-09-27T17:37:40Z lifenoodles quit (*.net *.split) 2014-09-27T17:37:40Z gjvc quit (*.net *.split) 2014-09-27T17:37:40Z atgreen quit (*.net *.split) 2014-09-27T17:37:40Z Mandus quit (*.net *.split) 2014-09-27T17:37:40Z Svetlana quit (*.net *.split) 2014-09-27T17:37:40Z heddwch quit (*.net *.split) 2014-09-27T17:37:40Z drewc quit (*.net *.split) 2014-09-27T17:37:40Z aerique quit (*.net *.split) 2014-09-27T17:37:40Z eMBee quit (*.net *.split) 2014-09-27T17:37:40Z copec quit (*.net *.split) 2014-09-27T17:37:40Z backupthrick quit (*.net *.split) 2014-09-27T17:37:40Z farhaven quit (*.net *.split) 2014-09-27T17:37:40Z cmatei quit (*.net *.split) 2014-09-27T17:37:40Z karswell quit (*.net *.split) 2014-09-27T17:37:41Z Guest91815 quit (*.net *.split) 2014-09-27T17:37:41Z ski quit (*.net *.split) 2014-09-27T17:37:41Z clop quit (*.net *.split) 2014-09-27T17:37:41Z zmyrgel quit (*.net *.split) 2014-09-27T17:37:41Z stux|RC-only quit (*.net *.split) 2014-09-27T17:37:41Z gniourf quit (*.net *.split) 2014-09-27T17:37:41Z rk[zzz] quit (*.net *.split) 2014-09-27T17:37:41Z whartung quit (*.net *.split) 2014-09-27T17:37:41Z necronian quit (*.net *.split) 2014-09-27T17:37:41Z asedeno quit (*.net *.split) 2014-09-27T17:37:41Z les quit (*.net *.split) 2014-09-27T17:37:41Z edran quit (*.net *.split) 2014-09-27T17:37:41Z mindCrime quit (*.net *.split) 2014-09-27T17:37:41Z sellout quit (*.net *.split) 2014-09-27T17:37:41Z setheus quit (*.net *.split) 2014-09-27T17:37:41Z bambams quit (*.net *.split) 2014-09-27T17:37:41Z anunnaki quit (*.net *.split) 2014-09-27T17:37:41Z xebd` quit (*.net *.split) 2014-09-27T17:37:41Z leoc quit (*.net *.split) 2014-09-27T17:37:41Z john-mcaleely quit (*.net *.split) 2014-09-27T17:37:41Z ThePhoeron quit (*.net *.split) 2014-09-27T17:37:42Z mikaelj_ quit (*.net *.split) 2014-09-27T17:37:42Z zbigniew quit (*.net *.split) 2014-09-27T17:37:42Z sklr quit (*.net *.split) 2014-09-27T17:37:42Z ramus quit (*.net *.split) 2014-09-27T17:37:42Z enn quit (*.net *.split) 2014-09-27T17:37:42Z Colleen quit (*.net *.split) 2014-09-27T17:37:42Z dim quit (*.net *.split) 2014-09-27T17:37:42Z lberk quit (*.net *.split) 2014-09-27T17:37:42Z AWizzArd quit (*.net *.split) 2014-09-27T17:37:42Z fmu quit (*.net *.split) 2014-09-27T17:37:42Z viaken quit (*.net *.split) 2014-09-27T17:38:26Z hiroakip joined #lisp 2014-09-27T17:38:42Z Colleen__ joined #lisp 2014-09-27T17:38:56Z stassats: alternatively, somebody called SLOT-UNBOUND just for kicks 2014-09-27T17:39:33Z mindCrime joined #lisp 2014-09-27T17:41:15Z shka: ok 2014-09-27T17:41:24Z shka: it is a very nice feature 2014-09-27T17:41:43Z ndrei joined #lisp 2014-09-27T17:41:52Z stassats: you can actually handle it by define a method, but i've never seen a legitimate use case 2014-09-27T17:42:01Z stassats: i guess if you don't have access to MOP 2014-09-27T17:43:07Z hitecnologys quit (Quit: hitecnologys) 2014-09-27T17:45:55Z kami`` joined #lisp 2014-09-27T17:46:50Z yauz joined #lisp 2014-09-27T17:46:50Z AWizzArd joined #lisp 2014-09-27T17:46:50Z rtoym joined #lisp 2014-09-27T17:46:50Z mishoo joined #lisp 2014-09-27T17:46:50Z theos joined #lisp 2014-09-27T17:46:50Z abeaumont_ joined #lisp 2014-09-27T17:46:50Z Shinmera joined #lisp 2014-09-27T17:46:50Z beach joined #lisp 2014-09-27T17:46:50Z lifenoodles joined #lisp 2014-09-27T17:46:50Z gjvc joined #lisp 2014-09-27T17:46:50Z Mandus joined #lisp 2014-09-27T17:46:50Z Svetlana joined #lisp 2014-09-27T17:46:50Z heddwch joined #lisp 2014-09-27T17:46:50Z drewc joined #lisp 2014-09-27T17:46:50Z aerique joined #lisp 2014-09-27T17:46:50Z eMBee joined #lisp 2014-09-27T17:46:50Z copec joined #lisp 2014-09-27T17:46:50Z backupthrick joined #lisp 2014-09-27T17:46:50Z farhaven joined #lisp 2014-09-27T17:46:50Z cmatei joined #lisp 2014-09-27T17:46:50Z karswell joined #lisp 2014-09-27T17:46:50Z stux|RC-only joined #lisp 2014-09-27T17:46:50Z Guest91815 joined #lisp 2014-09-27T17:46:50Z ski joined #lisp 2014-09-27T17:46:50Z clop joined #lisp 2014-09-27T17:46:50Z zmyrgel joined #lisp 2014-09-27T17:46:50Z gniourf joined #lisp 2014-09-27T17:46:50Z rk[zzz] joined #lisp 2014-09-27T17:46:50Z whartung joined #lisp 2014-09-27T17:46:50Z lberk joined #lisp 2014-09-27T17:46:50Z necronian joined #lisp 2014-09-27T17:46:50Z asedeno joined #lisp 2014-09-27T17:46:50Z les joined #lisp 2014-09-27T17:46:50Z edran joined #lisp 2014-09-27T17:46:50Z sellout joined #lisp 2014-09-27T17:46:50Z setheus joined #lisp 2014-09-27T17:46:50Z bambams joined #lisp 2014-09-27T17:46:50Z anunnaki joined #lisp 2014-09-27T17:46:50Z xebd` joined #lisp 2014-09-27T17:46:50Z leoc joined #lisp 2014-09-27T17:46:50Z john-mcaleely joined #lisp 2014-09-27T17:46:50Z ThePhoeron joined #lisp 2014-09-27T17:46:50Z viaken joined #lisp 2014-09-27T17:46:50Z mikaelj_ joined #lisp 2014-09-27T17:46:50Z sklr joined #lisp 2014-09-27T17:46:50Z ramus joined #lisp 2014-09-27T17:46:50Z enn joined #lisp 2014-09-27T17:46:50Z dim joined #lisp 2014-09-27T17:46:50Z fmu joined #lisp 2014-09-27T17:47:32Z kami` quit (Ping timeout: 258 seconds) 2014-09-27T17:48:03Z ndrei quit (Ping timeout: 246 seconds) 2014-09-27T17:48:31Z slyrus joined #lisp 2014-09-27T17:48:52Z normanrichards joined #lisp 2014-09-27T17:48:52Z normanrichards quit (Read error: Connection reset by peer) 2014-09-27T17:49:48Z kanru` quit (Ping timeout: 246 seconds) 2014-09-27T17:50:17Z gendl left #lisp 2014-09-27T17:51:18Z srcerer quit (Ping timeout: 244 seconds) 2014-09-27T17:58:20Z kobain joined #lisp 2014-09-27T17:58:58Z defaultxr joined #lisp 2014-09-27T17:59:35Z kobain quit (Max SendQ exceeded) 2014-09-27T17:59:53Z kobain joined #lisp 2014-09-27T18:00:34Z hiyosi quit (Ping timeout: 258 seconds) 2014-09-27T18:04:06Z yeticry quit (Ping timeout: 250 seconds) 2014-09-27T18:05:10Z yeticry joined #lisp 2014-09-27T18:05:24Z hiroakip quit (Ping timeout: 260 seconds) 2014-09-27T18:06:38Z njsg: drmeister_ et al: I guess I'll start with mel-base 2014-09-27T18:07:09Z nydel joined #lisp 2014-09-27T18:07:19Z njsg: now just for a stupid question: I have emacs, sbcl and slime (when it works) -- what's the usual way to develop something? write the code in a .cl/.lisp/.whatever and evaluate the expressions, or load the entire file, or what? 2014-09-27T18:08:28Z drmeister_: Good luck. Note: I just release a new Common Lisp implementation that interoperates with C++. In the future (not to far I hope) you will have another option available to you. You could expose a C++ IMAP library to Clasp and use that. 2014-09-27T18:08:43Z wglb: Unless it is a very simple program, I usually start out using quickproject from quicklisp to set up all the elements. In particular, it will create an asd file for, and at the slime prompt, type ',' then the name of your project. 2014-09-27T18:08:44Z drmeister_: That may or may not be something you are interested it. 2014-09-27T18:08:53Z drmeister_: And it may or may not be a terrible idea. :-) 2014-09-27T18:09:10Z njsg: drmeister_: I'm not sure if interfacing C++ code is an improvement 2014-09-27T18:09:12Z njsg hides 2014-09-27T18:09:24Z njsg: beats java, though 2014-09-27T18:09:33Z drmeister_: njsg: For something like IMAP I agree. 2014-09-27T18:10:00Z njsg: wglb: quickproject? so, something that has a skeleton for ASDF? 2014-09-27T18:10:43Z wglb: njsg: Yes. You first need quicklisp. Before those two came along, i used Xach's "Making a small COmmon Lisp project" http://xach.livejournal.com/130040.html 2014-09-27T18:10:55Z gravicappa quit (Ping timeout: 258 seconds) 2014-09-27T18:11:28Z njsg checks whether SLIME is working 2014-09-27T18:11:44Z njsg: it isn't! 2014-09-27T18:13:06Z ltbarcly joined #lisp 2014-09-27T18:17:25Z shka: njsg: ouch 2014-09-27T18:17:36Z shka: maybe try to upgrade quicklisp? 2014-09-27T18:17:46Z shka: i had the same problem on arch today 2014-09-27T18:17:52Z njsg: I don't even think I have quicklisp installed 2014-09-27T18:17:54Z shka: but upgrade solved it 2014-09-27T18:18:06Z shka: no quicklisp? 2014-09-27T18:18:19Z shka is shocked 2014-09-27T18:19:41Z troydm joined #lisp 2014-09-27T18:19:42Z shka: njsg: i think that you really want to install quicklisp 2014-09-27T18:19:55Z shka: it is such a usefull piece of software 2014-09-27T18:21:20Z codeburg quit (Remote host closed the connection) 2014-09-27T18:21:58Z codeburg joined #lisp 2014-09-27T18:24:07Z njsg: why? 2014-09-27T18:24:11Z njsg: what does quicklisp do? 2014-09-27T18:24:24Z shka: it is a package manager 2014-09-27T18:24:39Z shka: makes installing libraries very quick and easy 2014-09-27T18:24:54Z shka: and it is usefull for managing local projects as well 2014-09-27T18:27:02Z rk[zzz] is now known as rk[1] 2014-09-27T18:27:10Z shka: njsg: and you can install slime with it 2014-09-27T18:27:23Z ltbarcly quit (Quit: Textual IRC Client: www.textualapp.com) 2014-09-27T18:27:31Z shka: the least painfull way to do this i guess 2014-09-27T18:27:59Z rk[1]: +1 for installing quicklisp 2014-09-27T18:28:41Z kpreid quit (Quit: kpreid) 2014-09-27T18:28:42Z rk[1]: a programming language without a package manager is like a boat without water 2014-09-27T18:28:45Z njsg: shka: like the package manager I already have on my system? 2014-09-27T18:28:48Z drmeister_: Hey everyone! At 14:22 EST Sept 27, 2014 faheem got Clasp to boot to a REPL and begin compiling its own source code. 2014-09-27T18:28:58Z njsg: shka: sounds like adding *another* package manager would make things harder, not easier 2014-09-27T18:29:16Z stassats: don't fret, it's actually a system manager 2014-09-27T18:29:19Z rk[1]: sure, it looks cool and probably goes fast- but on land, it is just a pretty pile of trash 2014-09-27T18:29:22Z drmeister_: As far as I know he's the first person from #lisp to get it running. I really, really appreciate his perseverance. 2014-09-27T18:29:50Z njsg: if you don't mind me asking, why should I need *another*, separate, possibly incompatible package manager? 2014-09-27T18:29:56Z rk[1]: njsg: it is a package manager for common lisp libraries. something that you can set up projects independently 2014-09-27T18:30:23Z rk[1]: so imagine that you have a project that requires version A of lib-1, version B of lib-2, and version C of lib-3 2014-09-27T18:30:40Z rk[1]: but for another project, you need version C of lib-1 -2 and -3 2014-09-27T18:30:47Z rk[1]: this helps you sort all that out 2014-09-27T18:30:52Z stassats: does quicklisp really mange versions? 2014-09-27T18:31:21Z stassats: because you can't load different versions of a library into the same image 2014-09-27T18:31:21Z baotiao quit (Quit: baotiao) 2014-09-27T18:31:23Z MrWoohoo quit (Quit: ["Textual IRC Client: www.textualapp.com"]) 2014-09-27T18:31:55Z shka: njsg: at least you should try it 2014-09-27T18:32:14Z stassats: njsg: your existing package manager is already incompatible with Common Lisp 2014-09-27T18:32:56Z rk[1]: stassats: i guess that was just speculation as i haven't actually tried. just thought quicklisp was similiar to ruby's package manager XD 2014-09-27T18:33:33Z Shinmera: stassats: QL holds different versions downloaded and you can depend on specific versions through ASDF 2014-09-27T18:33:43Z Shinmera: stassats: But obviously it won't help if there's a version conflict. 2014-09-27T18:34:01Z njsg: stassats: why? 2014-09-27T18:34:12Z ltbarcly joined #lisp 2014-09-27T18:34:15Z njsg: rk[1]: sounds like the same my current package manager does for the rest of the things :-| 2014-09-27T18:34:36Z stassats: njsg: well, don't use quicklisp then, your loss 2014-09-27T18:35:44Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-27T18:35:56Z stassats: Shinmera: does it hold? when i install it anew, there are only singular versions 2014-09-27T18:36:23Z Ven joined #lisp 2014-09-27T18:36:31Z Shinmera: stassats: It keeps previous versions when you update. I'm not sure if you can request it to download previous versions though. 2014-09-27T18:37:11Z stassats: i'm not sure how quicklisp solves the version problem if ASDF doesn't solve it 2014-09-27T18:37:20Z Grue`: i don't know any other package manager that interfaces with ASDF; well, ASDF-INSTALL maybe but that's really old 2014-09-27T18:37:44Z attila_lendvai joined #lisp 2014-09-27T18:38:47Z stassats: if somebody knows or uses the supposed quicklisp feature for multiple versions, i'm eager to hear about it 2014-09-27T18:40:40Z nand1 quit (Remote host closed the connection) 2014-09-27T18:40:59Z nand1 joined #lisp 2014-09-27T18:43:07Z nyef joined #lisp 2014-09-27T18:43:17Z nyef: Hello all. 2014-09-27T18:44:18Z TDog quit (Ping timeout: 272 seconds) 2014-09-27T18:44:28Z sz0 quit 2014-09-27T18:44:38Z drewc: nyef: g'morning (PST) 2014-09-27T18:44:46Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-27T18:45:02Z drewc: nyef: http://blogs.enterprisedb.com/2014/09/24/postgres-outperforms-mongodb-and-ushers-in-new-developer-reality/ <---- heh 2014-09-27T18:45:24Z nyef: Heh. 2014-09-27T18:45:48Z nyef: And I'm still working with someone who fondly imagines that PostgreSQL is a key-value store with indexes. 2014-09-27T18:46:11Z vaporatorius joined #lisp 2014-09-27T18:47:03Z drewc: And of course for newbs: "This is on topic 2014-09-27T18:47:05Z drewc: " 2014-09-27T18:47:08Z drewc: :) 2014-09-27T18:49:32Z Ven joined #lisp 2014-09-27T18:50:33Z drewc: I do like using it as a key-value store ... I like the SQL as well, and the hstore^Hjson things... just over 15 years I have been using postgresql professionally, and it is still both stable _and_ bleeding edge. 2014-09-27T18:50:50Z Grue`: damn, now i wish i redesigned some part of my project to use this json feature instead of doing stupid joins 2014-09-27T18:51:30Z nyef: For what it's worth, I've been finding my current experience with json columns to be underwhelming. 2014-09-27T18:51:34Z Grue`: though i dunno how this would work with postmodern 2014-09-27T18:51:46Z mrSpec joined #lisp 2014-09-27T18:51:50Z drewc: Grue`: the issue is design-time vs when was the feature released and stable etc 2014-09-27T18:52:03Z nyef: JSON columns with postmodern? They show up as strings, so you need a json library to go with that. 2014-09-27T18:52:33Z jamesf joined #lisp 2014-09-27T18:52:35Z Grue`: yeah but psql also has special queries that can filter on json keys/values 2014-09-27T18:52:48Z angavrilov quit (Remote host closed the connection) 2014-09-27T18:53:13Z wglb: njsg: other package managers don't know the particulars of lisp libraries and their interdependence. 2014-09-27T18:53:21Z drewc: I only use hstore^Hjson to store either random columns associated with the table row, or a history.hstore^history.json table 2014-09-27T18:53:51Z njsg: wglb: why not? if you put people working on keeping it up to date, can't they just to the same in the system package manager? 2014-09-27T18:53:55Z drewc: Grue`: and if speed does not at all matter for your dataset, then it is quite useful! :) 2014-09-27T18:54:11Z stassats: njsg: apparently, they can't 2014-09-27T18:54:17Z stassats: they don't care 2014-09-27T18:54:27Z cheryllium joined #lisp 2014-09-27T18:54:51Z drewc: njsg: "if you put people working on keeping it up to date" notice the starting word? Should be capitalized ... "IF" ;) 2014-09-27T18:55:03Z wasamasa: njsg: well, if you know about that topic, feel free to help me out with packaging lisp libraries properly on arch 2014-09-27T18:55:18Z wasamasa: njsg: would be a lot more useful than questioning the worth of quicklisp 2014-09-27T18:55:19Z wglb: njsg: There are different objectives, and different OSs involved. For example, OpenBSD, Linux, and Windows all have different ways to keep the components up to date. None of these package managers works across all of those OSs. quicklisp, however, does. 2014-09-27T18:55:45Z wasamasa: njsg: alternatively, help me making quicklisp interact better with system package managers 2014-09-27T18:56:18Z drewc: https://www.gnu.org/software/guix/ <--- the only package manger that matters ! What is the syntax!? :) 2014-09-27T18:56:18Z Grue`: yeah lisp is pretty OS-independent these days, you can't rely on how a specific OS handles updates 2014-09-27T18:56:26Z wglb: And quicklisp has different internal dependencies than host OS package managerrs do. 2014-09-27T18:56:45Z Soft quit (Ping timeout: 260 seconds) 2014-09-27T18:56:55Z Grue`: drewc: is that package manager of GNU Hurd? 2014-09-27T18:56:58Z drewc: Grue`: "these days" ... when exactly was it OS-dependant? ;) 2014-09-27T18:57:06Z wglb: Consider the fact that Perl, Ruby, Emacs, TeX all have their own package managers. 2014-09-27T18:57:08Z Grue`: lisp machines ;) 2014-09-27T18:57:24Z hiyosi joined #lisp 2014-09-27T18:57:28Z drewc: Grue`: sure. as is .debs and .rpm ... Hurd is a kernel. 2014-09-27T18:57:39Z drewc: Grue`: what is the package manger of Linux? 2014-09-27T18:57:58Z Bike: are there even hurd distros other than debian 2014-09-27T18:58:32Z husker quit (Quit: husker) 2014-09-27T18:59:02Z oudeis quit (Quit: This computer has gone to sleep) 2014-09-27T18:59:27Z drewc: Bike: I said RPM but that may have been totally false .... I only tried Hurd some 13+ years ago IIRC.... and that was debian based I think. 2014-09-27T18:59:56Z Bike: yeah, they had one when i tried it last year 2014-09-27T19:00:11Z Bike: huh, arch and nix have one too. weird. 2014-09-27T19:00:31Z wglb: njsg: So what would be the disadvantage of having multiple package managers? 2014-09-27T19:00:32Z Patzy quit (Ping timeout: 244 seconds) 2014-09-27T19:01:32Z Patzy joined #lisp 2014-09-27T19:01:37Z drewc: wglb: things might work without and interaction ... I bill per hour, so things not working is money in the bank... I want just one, with c-l-c! :D 2014-09-27T19:02:07Z drewc: s/and/any 2014-09-27T19:02:17Z hiyosi quit (Ping timeout: 258 seconds) 2014-09-27T19:02:33Z drewc is kidding.... hopes it is obvious. 2014-09-27T19:02:46Z wglb: drewc: Well I bill daily and quicklisp Just Works. 2014-09-27T19:02:48Z njsg: is common-lisp.net's cvs repository broken? 2014-09-27T19:03:00Z stassats: which one? 2014-09-27T19:03:19Z wglb: Besides, Quicklisp is not a package manager, it is a "library manager for Common Lisp". That should reduce any confusion. 2014-09-27T19:03:29Z njsg: https://bpaste.net/raw/19c713f0518e 2014-09-27T19:03:30Z Bike: wglb: generally the issue would be if they had to interact. like, say you wanted to install a debian program that depended on a lisp program. maybe you already have it installed via quicklisp, but apt might not notice and isntall it again. 2014-09-27T19:03:33Z drewc: wglb: way way better than asdf-install... which was worse than my 'darcs repo with all libs in it' 2014-09-27T19:03:36Z njsg: stassats: ^ 2014-09-27T19:04:01Z Bike: luckily for us, nothing depends on lisp, ha ha 2014-09-27T19:04:04Z stassats: njsg: slime doesn't use cvs 2014-09-27T19:04:22Z wglb: drewc: I remember the days not that long ago that we had to build and install at least three distinct source control programs to get all the needed lisp stuff. 2014-09-27T19:04:43Z kpreid joined #lisp 2014-09-27T19:06:07Z Vivitron quit (Ping timeout: 258 seconds) 2014-09-27T19:06:23Z stassats: njsg: and good luck on not using quicklisp, see how well it is working for you 2014-09-27T19:06:49Z drewc: wglb: define not that long ago... for three is/was minimal! hg/svn/cvs/darcs/git .... that is what I use now... plus quicklisp... but then, again, bleeding edge is where I cannot help but be... for others, quicklisp is everything, it is wonderful, and I thank Xach every day :) 2014-09-27T19:07:07Z njsg: stassats: I don't need fanboyism. I'm not using windows for a reason, and I'd rather not give up 2014-09-27T19:07:20Z stassats: njsg: what are you talking about? 2014-09-27T19:07:25Z njsg: stassats: if I'm going to give up on using the package manager I may as well as give up on LISP and go use java. 2014-09-27T19:07:26Z wglb: drewc: Ah yes--the memory is in a distant past. 2014-09-27T19:08:12Z drewc: njsg: are you purposefully acting clueless? 2014-09-27T19:08:26Z stassats: njsg: so, you don't want to be helped, got it 2014-09-27T19:08:26Z ltbarcly quit (Quit: Computer has gone to sleep.) 2014-09-27T19:08:45Z Grue`: who told you that you would be able to use your package manager with lisp? 2014-09-27T19:09:24Z sword`` quit (Ping timeout: 272 seconds) 2014-09-27T19:09:52Z stassats: i guess people just want to invent excuses not to learn lisp 2014-09-27T19:10:49Z drewc: stassats: I like that ... I would rather have them praising java for being a part of whatever linux package manger they use over chatting nonsense on #lisp. 2014-09-27T19:11:47Z drewc: (and as always, capitalizing all four letters of "Lisp" gives it all away... non?) :P 2014-09-27T19:11:53Z stassats: don't java people use maven or something? 2014-09-27T19:12:26Z nyef: So, so many language ecosystems these days have their own package managers, and manage packages on a per-project basis. 2014-09-27T19:13:17Z wglb: nyef: Ruby is the worst in that regard. 2014-09-27T19:13:44Z nyef: I was thinking javascript with its node.js stuff, or php, or... Yeah. 2014-09-27T19:13:57Z stassats: i guess only C uses apt or rpm 2014-09-27T19:13:59Z nyef: Perl packages are at least usually mirrored up to the OS package manager. 2014-09-27T19:14:26Z Soft joined #lisp 2014-09-27T19:14:39Z drewc: I have no idea ... never programming in java beyond hello world ... and did not like it then some 16 odd years ago. I guess I am old school and prefer '94 over '95 2014-09-27T19:15:45Z stassats: it's just a confirmation that people will always find things to complain 2014-09-27T19:15:54Z stassats: before, they said that it's hard to get all the lisp dependencies 2014-09-27T19:16:00Z stassats: and now they say that it's too easy 2014-09-27T19:16:02Z ltbarcly joined #lisp 2014-09-27T19:16:03Z Shinmera: I've never seen any java lib in any linux package manager 2014-09-27T19:16:14Z Shinmera: except JDK/JVM 2014-09-27T19:16:20Z stassats: Shinmera: debian has lots 2014-09-27T19:16:31Z Shinmera: stassats: Really? Huh, I never knew. 2014-09-27T19:17:23Z AWizzArd: Hmm, why would one want to have libs in the os package manager? 2014-09-27T19:17:30Z JuanDaugherty joined #lisp 2014-09-27T19:17:51Z drewc: stassats: well, complaint make sense .. after all, if you want to make a living as a programmer .. Java is way way way more code needed and therefore way more bugs... so therefore, more money! 2014-09-27T19:18:00Z shka: AWizzArd: depends on the programming language 2014-09-27T19:18:14Z drewc is laughing at himself now... sorry about that! 2014-09-27T19:19:01Z shka: drewc: java 2014-09-27T19:19:11Z shka: i really don't like java 2014-09-27T19:19:21Z shka: let's not talk about it 2014-09-27T19:19:27Z stassats: who does? 2014-09-27T19:19:38Z oudeis joined #lisp 2014-09-27T19:19:57Z shka: stassats: but i'm fine with C++ :P 2014-09-27T19:20:02Z stassats: ew 2014-09-27T19:20:10Z drewc: Shinmera: debian has perl/python/java/ruby/ocaml and other libs are in .deb as part of the release. Odd I know. 2014-09-27T19:20:11Z shka: so it is not like i have low pain tolerance 2014-09-27T19:20:13Z Shinmera: Luckily, this channel is about neither of those 2014-09-27T19:20:32Z shka: somehow java seems to be so horrible 2014-09-27T19:20:42Z shka: even worse than C++ 2014-09-27T19:20:44Z drewc: shka: are you telling not o participate in the conversation we are having because you do not like the topic? 2014-09-27T19:20:55Z drewc: s/ o / to / 2014-09-27T19:20:56Z shka: drewc: it is rethoric 2014-09-27T19:21:02Z stassats: no, because it's off-topic 2014-09-27T19:21:29Z shka: and that as well :D 2014-09-27T19:21:31Z drewc: stassats: that I agree with! 2014-09-27T19:21:33Z shka: lisp is more interesting 2014-09-27T19:21:39Z shka: and on topic 2014-09-27T19:22:20Z mrSpec quit (Quit: mrSpec) 2014-09-27T19:22:29Z sklr quit (Quit: leaving) 2014-09-27T19:22:39Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-27T19:22:48Z drewc: "Common Lisp" is on /topic. Lisp, per se, is not. 2014-09-27T19:22:59Z JuanDaugherty: wat 2014-09-27T19:23:36Z cyphase joined #lisp 2014-09-27T19:23:49Z drewc: วัด wat 2014-09-27T19:23:52Z cyphase is now known as Guest69235 2014-09-27T19:24:06Z JuanDaugherty: issat Angor in Thai? 2014-09-27T19:24:37Z Grue`: there are a lot of wats 2014-09-27T19:24:50Z drewc: vihara really, but yes, yes it is. 2014-09-27T19:24:53Z stassats: let's not enumerate them all, please 2014-09-27T19:25:10Z francogrex joined #lisp 2014-09-27T19:25:50Z AWizzArd left #lisp 2014-09-27T19:26:03Z Adlai quit (Ping timeout: 264 seconds) 2014-09-27T19:26:18Z francogrex: (excuse my ignorance on this) but what good is :reader in defclass if anyway you can modify a slot by (setf (slot-value ... ? 2014-09-27T19:26:48Z kpreid: abstraction 2014-09-27T19:27:01Z Bike: the point isn't to forbid actions, it's to make common ones easier. 2014-09-27T19:27:12Z kpreid: if you later decide you don't want a slot, or you want some transformation on the value, etc you can replace the reader with a custom function 2014-09-27T19:27:13Z drewc: francogrex: re-definition or to not redefine? 2014-09-27T19:27:16Z francogrex: but can one forbid? 2014-09-27T19:27:21Z kpreid: no 2014-09-27T19:27:25Z alexherbo2 joined #lisp 2014-09-27T19:27:28Z kpreid: CL doesn't do forbidding 2014-09-27T19:27:30Z drewc: francogrex: this is CL ... no 2014-09-27T19:27:33Z Bike: you could define a method on (setf slot-value). 2014-09-27T19:27:40Z Bike: not that you should, really. 2014-09-27T19:27:42Z nyef: You can forbid, but other people can ignore you when you do. 2014-09-27T19:28:01Z wasamasa: francogrex: we're all consenting adults 2014-09-27T19:28:03Z drewc: (defun cl:car (cons) 1) <----- not quite legal, but not quite not. 2014-09-27T19:28:09Z ltbarcly quit (Quit: Computer has gone to sleep.) 2014-09-27T19:28:11Z francogrex: i don't like to be ignored so then no 2014-09-27T19:28:32Z nyef: I tend to operate under an assumption of package-private symbols being package-private, so if I didn't want someone to use slot-value, I wouldn't export the slot name. 2014-09-27T19:29:25Z Grue`: except when the slot and the reader are named the same 2014-09-27T19:29:28Z stassats: it may not do a thing 2014-09-27T19:29:53Z drewc: nyef: precisely. That is how I feel about both side of that... If I use an unexported::symbol, then I deserve what's coming. 2014-09-27T19:30:22Z Vivitron joined #lisp 2014-09-27T19:30:59Z Adlai joined #lisp 2014-09-27T19:31:53Z drewc: and given that packages can be renamed (for upgrading while old code still using old package).... and EXPORT works ... 2014-09-27T19:32:08Z Grue`: if you want a really unwriteable slot, use a closure, like (let ((slot 'foo)) (defun set-slot ) (defun get-slot)) 2014-09-27T19:32:28Z stassats: i can access that too 2014-09-27T19:32:43Z drewc: c2mop? 2014-09-27T19:32:48Z nyef: Grue`: On a per-instance basis? I guess that might work... 2014-09-27T19:33:17Z jamesf quit (Quit: leaving) 2014-09-27T19:33:17Z drewc: (setf (slot-value-using-class ...) ...) 2014-09-27T19:33:49Z drewc: and yes, I can remove/redefine any methods on that. 2014-09-27T19:35:42Z drewc: you can make the slot name an uninterned symbol no? > (defclass foo () ((#:bar :reader bar))) 2014-09-27T19:36:13Z nyef: And can still recover the slot name by way of the MOP, surely? 2014-09-27T19:36:21Z drewc: yup 2014-09-27T19:37:29Z pjb: drewc: see if you can "improve" this: https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition (From a quick browsing, I can see at least two things to do: add an interpreter pattern, and use temp variables for results instead of multiple return per method). 2014-09-27T19:37:48Z stassats: you can always do (let () (sb-kernel:value-cell-set (car (sb-kernel:%closure-values #'set-slot)) 20)) for closures 2014-09-27T19:37:55Z stassats: no hiding 2014-09-27T19:37:57Z njsg: sb-kernel? 2014-09-27T19:38:04Z njsg: oh, steel bank? 2014-09-27T19:38:09Z drewc: > (progn (c2mop:finalize-inheritance (find-class 'foo)) (c2mop:class-slots (find-class 'foo))) => (#) 2014-09-27T19:38:17Z ndrei joined #lisp 2014-09-27T19:38:32Z Kenjin joined #lisp 2014-09-27T19:38:36Z nyef: There was one point where I had a string and wanted it as an array of octets arranged as 32-bit little-endian words for the code-points. Copy-string, suppress the GC, smash up the object type and length on the fresh copy, re-enable the GC, and done. Not very gentlemanly, but it got the job done. 2014-09-27T19:39:14Z stassats: nyef: you could use sb-kernel:%vector-raw-bits 2014-09-27T19:39:16Z nyef: There is quite literally NO protection against certain actions. But simply indicating that they are a bad idea usually does the trick. 2014-09-27T19:39:24Z nyef: stassats: That would get a SAP, not an array. 2014-09-27T19:39:31Z nyef: Err, not a vector. 2014-09-27T19:39:41Z stassats: it won't get a sap, it will get bits 2014-09-27T19:39:57Z nyef: Really? Hrm. 2014-09-27T19:40:08Z nyef: Even then, SB-KERNEL is a private package. 2014-09-27T19:40:12Z clapautius joined #lisp 2014-09-27T19:40:15Z stassats: if you have to copy, might as well do it using it 2014-09-27T19:40:28Z nyef: I've had code that relied on SB-KERNEL break on me over the course of an SBCL release. 2014-09-27T19:40:28Z francogrex: drewc: ok but that is already too much trouble, one must be really really motivated to use c2mop, I think your solution to "protect" a slot-value seems adequate to me 2014-09-27T19:40:29Z drewc: pjb: yikes! that is ... amusing. almost makes me want to learn more :) 2014-09-27T19:41:13Z drewc: francogrex: yes, after all, MOP is not part of the 20 year old standard ... why use something the standard was based on :) 2014-09-27T19:41:45Z stassats: nyef: now, not copying and modifying the widetag is more fun 2014-09-27T19:42:28Z nyef: You also need to twit the length if you're changing the element size of the vector, don't forget. 2014-09-27T19:42:32Z drewc will not mention that he is friends with the author of AMOP, and the author sails! 2014-09-27T19:43:05Z stassats: "have", the GC size is in words anyway 2014-09-27T19:43:54Z stassats: or is it? 2014-09-27T19:45:25Z innertracks quit (Quit: innertracks) 2014-09-27T19:45:36Z KarlDscc quit (Remote host closed the connection) 2014-09-27T19:45:36Z stassats: i guess it only allocates based on words 2014-09-27T19:47:25Z drewc: francogrex: FWIW, If I do not document the exported symbol as the name of a slot and suggest you use it as such, that is adequate protection. If you do not trust the programmers using your code, the symbol is the /least/ of your problems, imo. 2014-09-27T19:48:55Z drewc: (and on the other side, if you do not document it yet I use it that way (yay M-.), that is not your fault but mine, and anything that happens is my problem) 2014-09-27T19:49:17Z Shinmera quit (Quit: しつれいしなければならないんです。) 2014-09-27T19:49:29Z Shinmera joined #lisp 2014-09-27T19:52:34Z shka quit (Quit: WeeChat 1.0) 2014-09-27T19:54:01Z pjb: drewc: what's frightening, is that it is really not so far from what you can see in actual "professionnal" software. It just integrate almost all the tricks in their bag. 2014-09-27T19:54:07Z stassats: indeed, there are trans/size/scav function for each wide-tag which calculate the word size 2014-09-27T19:54:17Z drewc must note the the largest team of dev's he was a leader of was 3.... if it was 300 he might have something different to say about protection ... but at the same time, the biggest lisp project he worked on had very small 'teams' ... so no idea. 2014-09-27T19:54:27Z pjb: drewc: I don't remember having seen singletons. perhaps we should add some too. 2014-09-27T19:54:58Z drewc: pjb: That is extremely frightening ... and given that (in my head) one bug per 10 LoC ... then the more the merrier! 2014-09-27T19:55:15Z pjb: drewc: Bezo's rule is 2-pizzas team. Since I can easily eat one pizza alone, I'd say that teams of 3 is about the size. 2014-09-27T19:56:01Z drewc: pjb: makes sense ... now at least I have a metric to follow for team size :) 2014-09-27T19:56:33Z pjb: It makes sense for the communication complexity in bigger assemblies. 2014-09-27T19:57:48Z drewc: and although I live just off an island of around 3400 population .... the local pizza place has a woodburning brick oven .... so now I actually want to be a part of a team so I can order 2 at a time! 2014-09-27T19:57:51Z pjb: In the Mythical Man Month, the corresponding team analogy is that of the surgical team. You don't usually have 200 surgeons performing an operation. One surgeon, and half a dozen helpers. 2014-09-27T19:58:32Z hiyosi joined #lisp 2014-09-27T19:59:21Z stassats: probably because programming is nothing like surgery? 2014-09-27T19:59:24Z pjb: Bring two pizzas for your surgical operation. 2014-09-27T19:59:38Z pjb: stassats: not at all, the whole MMM argues that programming is just like surgery. 2014-09-27T19:59:38Z drewc: I have not read that in some 10+ years, but I know that I need to ... time to pir8 it for my nook/laser printer. 2014-09-27T19:59:56Z something_new joined #lisp 2014-09-27T20:00:13Z MrWoohoo joined #lisp 2014-09-27T20:00:24Z stassats: good thing that you specified that it's a laser one 2014-09-27T20:00:24Z pjb: stassats: you have a lead programmer, a few other programmers, a documentation writer, a couple of testers. and that's it. 2014-09-27T20:02:52Z hiyosi quit (Ping timeout: 240 seconds) 2014-09-27T20:03:07Z drewc: stassats: It is not a dot-matrix ... sorry about that. 2014-09-27T20:03:40Z MrWoohoo quit (Client Quit) 2014-09-27T20:04:15Z ehu joined #lisp 2014-09-27T20:05:20Z kami`` quit (Ping timeout: 260 seconds) 2014-09-27T20:05:46Z ltbarcly joined #lisp 2014-09-27T20:09:16Z hiroakip joined #lisp 2014-09-27T20:09:22Z TomRS joined #lisp 2014-09-27T20:10:30Z ndrei quit (Ping timeout: 246 seconds) 2014-09-27T20:12:45Z faheem: ;; def fact_h(n, acc): 2014-09-27T20:12:45Z faheem: ;; if n == 0: 2014-09-27T20:12:45Z faheem: ;; return acc 2014-09-27T20:12:45Z faheem: ;; return fact_h(n-1, acc*n) 2014-09-27T20:12:56Z stassats: faheem: wrong channel? 2014-09-27T20:18:51Z macdice joined #lisp 2014-09-27T20:20:41Z Paul_McFreely joined #lisp 2014-09-27T20:21:26Z drewc: faheem: The variable DEF is unbound. [Condition of type UNBOUND-VARIABLE] 2014-09-27T20:21:46Z wasamasa: stassats: nah, the comments are done right 2014-09-27T20:21:58Z Kenjin quit (Remote host closed the connection) 2014-09-27T20:22:36Z drewc: stassats: "That's a bad way to do your homework." <--- guess what I am reading :) 2014-09-27T20:23:04Z _death: reddit? 2014-09-27T20:23:05Z ltbarcly quit (Quit: Computer has gone to sleep.) 2014-09-27T20:23:18Z pnpuff joined #lisp 2014-09-27T20:23:39Z gz joined #lisp 2014-09-27T20:24:30Z yeticry quit (Ping timeout: 250 seconds) 2014-09-27T20:25:49Z francogrex: now I think I understand MOP slightly better (have read sample of AMOP). with MOP one can implement/extend a lisp OS right understanding? 2014-09-27T20:25:55Z drewc: _death: correct .... before reddit (which was written in CL to start with) it used to be c.l.l. where people asked assignments as questions... now reddit... I suppose stackoverflow as well, but I do not read that. 2014-09-27T20:25:58Z yeticry joined #lisp 2014-09-27T20:26:06Z stassats: OS == Object System? 2014-09-27T20:26:08Z drewc: francogrex: huh? 2014-09-27T20:26:13Z innertracks joined #lisp 2014-09-27T20:26:22Z hiyosi joined #lisp 2014-09-27T20:26:25Z francogrex: object system like clos/closette 2014-09-27T20:26:33Z drewc: ah ... Loops or Flavors! 2014-09-27T20:26:43Z francogrex: not operating system :) 2014-09-27T20:26:58Z drewc: define 'object system' please. 2014-09-27T20:27:13Z francogrex: (for thr latter I still intend to try movitz one day) 2014-09-27T20:27:31Z francogrex: drewc: like clos 2014-09-27T20:28:06Z drewc: francogrex: Ok, so common lisp is always there? OR: define CLOS, and is the MOP a part of CLOS? 2014-09-27T20:28:47Z francogrex: i was told MOP was how clos is implemented. 2014-09-27T20:29:02Z francogrex: yes CL OS 2014-09-27T20:29:29Z drewc: Ok, so portable common loops is not CLOS, but Closette is? 2014-09-27T20:31:08Z drewc: OR: define MOP, and when was it created and what is it for? ;) 2014-09-27T20:31:13Z sdemarre joined #lisp 2014-09-27T20:31:26Z stassats: MOP is a protocol 2014-09-27T20:31:37Z stassats: CLOS is an instance of the MOP protocol 2014-09-27T20:31:54Z DKordic`` joined #lisp 2014-09-27T20:32:14Z francogrex: I can talk of the example I saw: they have showed me how to add a new class option ... 2014-09-27T20:32:18Z paroneay` joined #lisp 2014-09-27T20:32:23Z DKordic` quit (Write error: Broken pipe) 2014-09-27T20:32:23Z paroneayea quit (Write error: Broken pipe) 2014-09-27T20:32:25Z Vivitron` quit (Write error: Broken pipe) 2014-09-27T20:32:25Z Krystof quit (Write error: Connection reset by peer) 2014-09-27T20:32:26Z drewc: CLOS /can be/ .... but yes, correct, and I am being a 'negative nancy' on purpose. 2014-09-27T20:32:51Z Odin- joined #lisp 2014-09-27T20:33:20Z francogrex: the book is from 1991 so long long time ago it was created I was ~ 17 years old 2014-09-27T20:33:56Z resttime_ joined #lisp 2014-09-27T20:34:00Z drewc: Only because I know the creator of such a thing, and he will disagree that ANSI CLOS is an instance of the AMOP MOP, but I digress. 2014-09-27T20:34:07Z Colleen___ joined #lisp 2014-09-27T20:34:22Z francogrex: yes you said you go sailing together 2014-09-27T20:34:56Z drewc: I think/thought that it was, so any argument I make is, well, relevant yet not my belief per se. 2014-09-27T20:35:22Z Krystof joined #lisp 2014-09-27T20:36:00Z francogrex: the point is when I read about MOP the concept was so foreign to me. now it is becoming less but still difficult to fully grasp 2014-09-27T20:36:03Z replcated_ joined #lisp 2014-09-27T20:36:16Z girrig_ joined #lisp 2014-09-27T20:36:41Z Shinmera- joined #lisp 2014-09-27T20:36:50Z drewc: francogrex: did I? I usually don't lie, and I have logs ... so do you lie or simply read what you want to interpret as true regardless of if it is there? :P 2014-09-27T20:36:52Z bege_ joined #lisp 2014-09-27T20:37:03Z eazar001_ joined #lisp 2014-09-27T20:37:11Z stassats: oh boy 2014-09-27T20:37:12Z Tuxedo_ joined #lisp 2014-09-27T20:37:29Z tokenrov1 joined #lisp 2014-09-27T20:38:19Z francogrex: which author you know, I see three on the cover? Gregor, Jim and Daniel 2014-09-27T20:38:27Z drewc: That is somewhat relevant... but I seem to have digressed beyond the point of no return. Back to CL'ing for me, enjoy the chat! 2014-09-27T20:38:36Z eee-blt_ joined #lisp 2014-09-27T20:38:44Z replcated quit (Ping timeout: 260 seconds) 2014-09-27T20:38:44Z girrig quit (Ping timeout: 260 seconds) 2014-09-27T20:38:44Z eazar001 quit (Ping timeout: 260 seconds) 2014-09-27T20:38:45Z blakbunnie27 quit (Ping timeout: 260 seconds) 2014-09-27T20:38:45Z bege quit (Ping timeout: 260 seconds) 2014-09-27T20:38:45Z resttime quit (Ping timeout: 260 seconds) 2014-09-27T20:38:45Z emma quit (Ping timeout: 260 seconds) 2014-09-27T20:38:45Z Tuxedo quit (Ping timeout: 260 seconds) 2014-09-27T20:38:46Z tokenrove quit (Ping timeout: 260 seconds) 2014-09-27T20:38:46Z eee-blt quit (Ping timeout: 260 seconds) 2014-09-27T20:38:46Z kuzy000_ quit (Ping timeout: 260 seconds) 2014-09-27T20:38:46Z __main__ quit (Ping timeout: 260 seconds) 2014-09-27T20:38:47Z Shinmera quit (Ping timeout: 260 seconds) 2014-09-27T20:38:47Z LiamH quit (Ping timeout: 260 seconds) 2014-09-27T20:38:47Z jlarocco quit (Ping timeout: 260 seconds) 2014-09-27T20:38:47Z rick-monster quit (Ping timeout: 260 seconds) 2014-09-27T20:38:47Z Colleen__ quit (Quit: See you, space cowboy...) 2014-09-27T20:38:53Z emma joined #lisp 2014-09-27T20:39:12Z rick-monster joined #lisp 2014-09-27T20:39:23Z jlarocco joined #lisp 2014-09-27T20:39:31Z francogrex: ok 2014-09-27T20:39:49Z kuzy000_ joined #lisp 2014-09-27T20:39:53Z Paul_McFreely_ joined #lisp 2014-09-27T20:40:21Z __main__ joined #lisp 2014-09-27T20:40:23Z LiamH joined #lisp 2014-09-27T20:40:24Z francogrex: it certainly isn't the easiest book to read (AMOP) 2014-09-27T20:40:58Z stacksmith: The html logs at https://github.com/stacksmith/irc-lisp-html are getting much more readable... 2014-09-27T20:41:16Z varjag__ joined #lisp 2014-09-27T20:41:31Z Riviera_ joined #lisp 2014-09-27T20:41:34Z MightyJoe quit (Remote host closed the connection) 2014-09-27T20:41:50Z stanislav_ joined #lisp 2014-09-27T20:42:11Z stacksmith: Although the 20Mb file is getting annoying. I am probably going to turn it into a web app (yuck, even locally). 2014-09-27T20:42:28Z hardenedapple quit (Quit: WeeChat 1.0) 2014-09-27T20:42:30Z francogrex: it's a huge file 2014-09-27T20:42:52Z paroneay` is now known as paroneayea 2014-09-27T20:42:55Z francogrex: but logs are available elsewhere why duplicate? 2014-09-27T20:42:57Z drewc: francogrex: if you want, do a /whois drewc, see where my IP address points, see where the authors live via a google search, click on the first link you see for the author I am talking about, and look at the sailboat. :) 2014-09-27T20:43:12Z eak joined #lisp 2014-09-27T20:43:13Z stacksmith: Sadly, yes. It takes about 20s to load into Firefox, but then it scrolls and searches ok. 2014-09-27T20:43:17Z gz_ joined #lisp 2014-09-27T20:43:34Z Riviera quit (Disconnected by services) 2014-09-27T20:43:36Z ozzloy_ joined #lisp 2014-09-27T20:43:38Z drewc: stacksmith: why bother? why one file? why not http://ircbrowse.net/lisp or another log collecting site? 2014-09-27T20:43:38Z Xach_ joined #lisp 2014-09-27T20:43:39Z j_king_ joined #lisp 2014-09-27T20:43:40Z teiresia1 joined #lisp 2014-09-27T20:43:40Z stacksmith: francogrex: I want a global search. 2014-09-27T20:43:42Z innertracks1 joined #lisp 2014-09-27T20:43:44Z otwierac1 joined #lisp 2014-09-27T20:43:46Z phadthai_ joined #lisp 2014-09-27T20:43:48Z kbtr_ joined #lisp 2014-09-27T20:43:51Z stacksmith: in context. 2014-09-27T20:43:54Z zacts_ joined #lisp 2014-09-27T20:43:54Z francogrex: well just for fun drewc I don't really care. One author from name seems polish, the other french or canadian ... 2014-09-27T20:44:07Z kbtr quit (Remote host closed the connection) 2014-09-27T20:44:18Z francogrex: but these days especially family names =/ location 2014-09-27T20:44:19Z blakbunnie27 joined #lisp 2014-09-27T20:44:19Z MightyJoe joined #lisp 2014-09-27T20:44:28Z zacts quit (Remote host closed the connection) 2014-09-27T20:44:28Z BlastHardcheese quit (Remote host closed the connection) 2014-09-27T20:44:30Z Xach quit (Write error: Connection reset by peer) 2014-09-27T20:44:30Z stanislav quit (Write error: Connection reset by peer) 2014-09-27T20:44:30Z eak_ quit (Write error: Connection reset by peer) 2014-09-27T20:44:31Z j_king quit (Write error: Connection reset by peer) 2014-09-27T20:44:31Z ozzloy quit (Write error: Broken pipe) 2014-09-27T20:44:31Z teiresias quit (Read error: Connection reset by peer) 2014-09-27T20:44:31Z phadthai quit (Read error: Connection reset by peer) 2014-09-27T20:45:13Z Riviera_ is now known as Riviera 2014-09-27T20:46:23Z anunnaki quit (Ping timeout: 240 seconds) 2014-09-27T20:46:27Z jackdaniel quit (Ping timeout: 245 seconds) 2014-09-27T20:46:56Z innertracks quit (Ping timeout: 268 seconds) 2014-09-27T20:46:56Z gz quit (Ping timeout: 268 seconds) 2014-09-27T20:46:56Z Paul_McFreely quit (Ping timeout: 268 seconds) 2014-09-27T20:46:57Z varjag_ quit (Ping timeout: 268 seconds) 2014-09-27T20:46:58Z gz_ is now known as gz 2014-09-27T20:46:58Z stacksmith: Sadly, ircbrowse looks like dogshit. I can't read it with all that visual noise 2014-09-27T20:46:59Z varjag__ is now known as varjag_ 2014-09-27T20:47:01Z BlastHardcheese joined #lisp 2014-09-27T20:47:03Z BlastHardcheese quit (Changing host) 2014-09-27T20:47:03Z BlastHardcheese joined #lisp 2014-09-27T20:47:24Z sz0 joined #lisp 2014-09-27T20:47:52Z phao: Hi. CLISP and SBCL accepts this: (remove-if-not (lambda (x) (= x 1)) '(1 2 3 4)) 2014-09-27T20:48:09Z phao: But is this valid common lisp? I'm talking about the lack of #' before that lambda expression. 2014-09-27T20:48:16Z drewc: francogrex: OK then. https://web.archive.org/web/20120805071703/http://bc.tech.coop/blog/060621.html 2014-09-27T20:48:30Z nyef: It's valid, because the form is evaluated, and there is a macro named LAMBDA that inserts the #'. 2014-09-27T20:48:40Z drewc: phao: read the CLHS for LAMBDA and fine out what it is :) 2014-09-27T20:48:41Z francogrex happy to see his name in the cloud on http://ircbrowse.net/lisp 2014-09-27T20:48:50Z otwieracz quit (Ping timeout: 272 seconds) 2014-09-27T20:48:50Z otwierac1 is now known as otwieracz 2014-09-27T20:49:02Z drewc: s/fine/find ... 2014-09-27T20:49:05Z zacts_ quit (Ping timeout: 272 seconds) 2014-09-27T20:49:16Z drewc does not like the T510 keyboard at all 2014-09-27T20:49:24Z stanislav_ left #lisp 2014-09-27T20:49:25Z ndrei joined #lisp 2014-09-27T20:49:27Z nyef: phao: There are something like two cases where a #' is-or-is-not valid. And they are fairly rare cases. 2014-09-27T20:49:42Z zacts joined #lisp 2014-09-27T20:49:54Z Alfr_ joined #lisp 2014-09-27T20:50:09Z francogrex: drewc: ok 2014-09-27T20:50:27Z drewc: nyef: like conditions? that seems to be the only one that pops out the top-o-me head 2014-09-27T20:50:31Z Bike: phao: (remove 1 '(1 2 3 4) :test #'=), by the way. 2014-09-27T20:50:47Z francogrex: how long in the programming business? 2014-09-27T20:51:11Z phao: Bike, right... I was just trying to come up with a "silly" function to ask the question in here. 2014-09-27T20:51:18Z phao: I'm not actually trying to remove elements from lists. 2014-09-27T20:51:27Z francogrex: let's leave these topics for #lisp-cafe 2014-09-27T20:51:27Z Bike: figured. thought i'd mention just in case. 2014-09-27T20:51:52Z nyef: drewc: That, and I think that (#'(lambda (x y) (+ x y)) 3 4) might not be valid. 2014-09-27T20:52:09Z francogrex: phao: I think very valid 2014-09-27T20:52:09Z drewc: nyef: ah yes, very true IIRC 2014-09-27T20:52:56Z drewc: nyef: the ((LAMBDA ...) ...) always amuses me, yet I always seem to forget about it when it matters. 2014-09-27T20:53:24Z drewc: I guess because at some point we invented LET. 2014-09-27T20:53:45Z drewc: s/we/they. 2014-09-27T20:53:47Z francogrex: (remove-if-not (lambda (x) (= x 1)) ... <- this seems more correct than (remove-if-not #'(lambda (x) (= x 1)) ... 2014-09-27T20:53:49Z jackdaniel joined #lisp 2014-09-27T20:53:54Z Alfr quit (Ping timeout: 272 seconds) 2014-09-27T20:54:00Z anunnaki joined #lisp 2014-09-27T20:55:09Z stassats: how can an equivalent thing be more or less correct? 2014-09-27T20:55:25Z drewc: I used to always use the #' prefix. Now I don't, because it is not needed and in some cases an error... but whatever works. 2014-09-27T20:56:27Z eazar001_ quit (Quit: WeeChat 1.0) 2014-09-27T20:56:44Z eazar001 joined #lisp 2014-09-27T20:57:13Z fortitude joined #lisp 2014-09-27T20:59:43Z drewc: stassats: and for that matter, I used to think the exact opposite, simply because it /is/ a FUNCTION, so wrapping it in (FUNCTION ...) made sense to me. 2014-09-27T20:59:52Z beach quit (Ping timeout: 240 seconds) 2014-09-27T21:00:25Z drewc: So I am incorrect now, at least for my old version of 'what it correct'. Compiler does not care. 2014-09-27T21:00:39Z sdemarre quit (Read error: Connection reset by peer) 2014-09-27T21:00:57Z drewc: and when it does, my version of what was correct is incorrect... so yeah, compiler does care. 2014-09-27T21:01:15Z oleo quit (Ping timeout: 272 seconds) 2014-09-27T21:01:51Z oleo joined #lisp 2014-09-27T21:01:56Z clapautius left #lisp 2014-09-27T21:07:47Z ehu quit (Ping timeout: 245 seconds) 2014-09-27T21:12:06Z urandom__ is now known as OmegaPlayer1 2014-09-27T21:12:30Z nug700 joined #lisp 2014-09-27T21:16:16Z drmeister_: Dear "git submodule" experts who I didn't listen too yesterday: is there any danger to repeatedly using "git submodule init" and "git submodule update"? I'd like to put it in my make file to automatically do this when people build. 2014-09-27T21:18:02Z Xach_ is now known as Xach 2014-09-27T21:18:08Z Xach quit (Changing host) 2014-09-27T21:18:08Z Xach joined #lisp 2014-09-27T21:18:30Z drmeister_: I also discovered half a dozen submodules stuck in my system that I cleaned out with "git rm --cached xxx". git submodule and I have had a rocky relationship. 2014-09-27T21:19:19Z teiresia1 quit (Changing host) 2014-09-27T21:19:19Z teiresia1 joined #lisp 2014-09-27T21:22:03Z dim: sorry, I only had problems with git submodules 2014-09-27T21:22:23Z drmeister_: dim: We should start a club 2014-09-27T21:22:43Z dim: it would be quite popular, IIUC 2014-09-27T21:23:10Z drewc: I tried submodules.... before I realized that, well .... I am a dom ... 2014-09-27T21:23:15Z drmeister_: We could call it G.R.O.S.S. - Get Rid Of Slimy Submodules 2014-09-27T21:23:35Z dim: we had to add support for it to el-get, tho, and I don't think there's any drawback to doing the git submodule update --init often; apart from changing APIs and ABI obviously 2014-09-27T21:24:10Z dim: or is it git submodule init --update? I can't remember 2014-09-27T21:24:24Z drmeister_: "git submodule update --init" is equivalent to "git submodule init" "git submodule update" ? 2014-09-27T21:24:32Z dim: anyway I'd better say good night here and see you sometime later! 2014-09-27T21:24:33Z dim: gn 2014-09-27T21:24:34Z drmeister_: Never mind. 2014-09-27T21:24:42Z dim: yeah, 1 command is enough 2014-09-27T21:24:50Z drmeister_: I'll look it up. 2014-09-27T21:24:59Z drmeister_: Thanks - good night. 2014-09-27T21:25:12Z jegaxd26 quit (Ping timeout: 244 seconds) 2014-09-27T21:27:01Z francogrex quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-09-27T21:27:16Z ndrei quit (Ping timeout: 244 seconds) 2014-09-27T21:28:51Z pnpuff quit (Quit: stoobeedooobedoo) 2014-09-27T21:33:46Z normanrichards joined #lisp 2014-09-27T21:33:46Z normanrichards quit (Read error: Connection reset by peer) 2014-09-27T21:40:50Z Beetny joined #lisp 2014-09-27T21:46:51Z Guest69235 left #lisp 2014-09-27T21:48:46Z malbertife_ joined #lisp 2014-09-27T21:49:00Z schaueho quit (Ping timeout: 272 seconds) 2014-09-27T21:49:49Z something_new quit (Remote host closed the connection) 2014-09-27T21:50:16Z cyphase_ joined #lisp 2014-09-27T21:50:36Z malbertife quit (Ping timeout: 246 seconds) 2014-09-27T21:51:05Z DrCode quit (Remote host closed the connection) 2014-09-27T21:51:51Z Alfr__ joined #lisp 2014-09-27T21:53:03Z cyphase_ quit (Changing host) 2014-09-27T21:53:03Z cyphase_ joined #lisp 2014-09-27T21:53:08Z EvW quit (Ping timeout: 260 seconds) 2014-09-27T21:53:45Z DrCode joined #lisp 2014-09-27T21:54:48Z Alfr_ quit (Ping timeout: 246 seconds) 2014-09-27T21:59:00Z ilhami joined #lisp 2014-09-27T21:59:05Z ggole quit 2014-09-27T22:00:29Z edgar-rft joined #lisp 2014-09-27T22:04:06Z ilhami quit (Quit: Nettalk6 - www.ntalk.de) 2014-09-27T22:07:00Z JokesOnYou77: Hi all. I 2014-09-27T22:07:52Z JokesOnYou77: I'm trying to install sbcl 1.2.4 and the install.sh is asking for a file that's not there. output/prefix.def 2014-09-27T22:08:10Z stassats: probably because you forgot to build it 2014-09-27T22:08:41Z JokesOnYou77: stassats, The readme and installation instructions jsut say run install.sh 2014-09-27T22:10:00Z stassats: so, you don't believe me? 2014-09-27T22:10:32Z nyef: Are you installing from source or binary? 2014-09-27T22:10:41Z JokesOnYou77: Binary 2014-09-27T22:10:48Z nyef: Hrm. 2014-09-27T22:11:40Z drewc: are you in the directory ? I remember something odd where cd ~/sbcl-foo ; sh install.sh was needed ... 2014-09-27T22:12:03Z stassats: JokesOnYou77: is it binary, though? 2014-09-27T22:12:54Z drewc: then again, I build from source ... and I think that JokesOnYou77 has source and not binary, because that is an error that I have seen .... 2014-09-27T22:13:07Z drewc: but meh, no idea otherwise. 2014-09-27T22:13:22Z mishoo quit (Ping timeout: 240 seconds) 2014-09-27T22:13:30Z JokesOnYou77: Hmmm...let me look again. I may indeed have forgotten to build something. I wanted the binary but if I have source can I build it with lispworks lisp? 2014-09-27T22:14:06Z PuercoPop: any idea why would quickloading work but not (asdf:oss 'asdf:load-op :...) work? The system is in my local-projects so it is not related to the fetching from the internet part 2014-09-27T22:14:10Z stassats: JokesOnYou77: just get a binary 2014-09-27T22:14:15Z davazp joined #lisp 2014-09-27T22:14:21Z stassats: it'd be better to use that binary to build from source, too 2014-09-27T22:14:22Z JokesOnYou77: you're right. On both counts :P 2014-09-27T22:14:46Z stassats: PuercoPop: because quicklisp uses a different source registry set up 2014-09-27T22:15:16Z PuercoPop: ah I thought it configured asdf for you, thanks 2014-09-27T22:15:31Z drewc: and for that matter a different ASDF really. 2014-09-27T22:15:40Z Nizumzen joined #lisp 2014-09-27T22:16:01Z stassats: PuercoPop: it does, but you need to run it with quicklisp 2014-09-27T22:16:15Z JokesOnYou77: Thank you all. Should have looked a little harder at what I had before running to IRC 2014-09-27T22:16:51Z Alfr__ is now known as Alfr 2014-09-27T22:19:39Z hiroakip quit (Ping timeout: 272 seconds) 2014-09-27T22:21:27Z drmeister_: I just discovered a really good development trick. 2014-09-27T22:21:53Z drmeister_: I put a shell: ^M bash target in my makefile. 2014-09-27T22:22:16Z drmeister_: Now I say "make shell" and I have a shell where all of the makefile variables are environment variables. 2014-09-27T22:22:35Z stassats: can you make print_env: RET env 2014-09-27T22:22:36Z stassats: ? 2014-09-27T22:23:44Z drmeister_: Yeah - but now I can execute commands interactively and test things and then "exit" and poof - I'm back in my original environment. 2014-09-27T22:27:34Z Adlai: just keep your environment functions sanitized 2014-09-27T22:27:43Z Adlai: glad to hear that submodules worked out btw :) 2014-09-27T22:28:07Z Shinmera- quit (Quit: しつれいしなければならないんです。) 2014-09-27T22:28:29Z drmeister_: Adlai: Yeah - it works great for the mps library. 2014-09-27T22:29:09Z drmeister_: That thing about "poorly named snapshot of one branch of one repository" sunk in and was very helpful - thanks again. 2014-09-27T22:29:10Z Adlai: "submodule" is just a terrible name for what that feature actually does 2014-09-27T22:29:31Z Adlai: it doesn't even have to be a branch 2014-09-27T22:29:38Z drmeister_: What do you mean by "keep your environment variables sanitized"? 2014-09-27T22:30:10Z Adlai: a joke... https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6271 2014-09-27T22:30:30Z Adlai: although the real joke would be https://twitter.com/GoDaddyHelp/status/514951676353339392 2014-09-27T22:33:26Z drewc is not clicking, but he is bash'ing the environment variables! 2014-09-27T22:35:06Z nug700_ joined #lisp 2014-09-27T22:36:19Z Alfr quit (Quit: Leaving) 2014-09-27T22:36:22Z malice joined #lisp 2014-09-27T22:38:01Z nug700 quit (Ping timeout: 260 seconds) 2014-09-27T22:38:56Z rtra joined #lisp 2014-09-27T22:39:02Z mutley89 quit (Ping timeout: 245 seconds) 2014-09-27T22:42:45Z gingerale quit (Ping timeout: 246 seconds) 2014-09-27T22:44:09Z malbertife_ quit (Ping timeout: 246 seconds) 2014-09-27T22:45:29Z malice: Hello, I'd like to write macro make-keyword that with given X will make list (:X X). How can I do that? I tried http://paste.lisp.org/+330H but it's illegal 2014-09-27T22:46:57Z drewc: malice: why a macro? 2014-09-27T22:46:59Z Bike: X is a symbol in an arbitrary package? 2014-09-27T22:47:21Z malice: drewc, I can do it with function? 2014-09-27T22:47:41Z Bike: sure 2014-09-27T22:47:43Z Bike: just quote the symbol 2014-09-27T22:48:16Z malice: oh, also macro because i'd like to avoid quoting 2014-09-27T22:48:29Z malice: Anyway, how c do that :)an I 2014-09-27T22:48:55Z Bike: why would you like to avoid quoting 2014-09-27T22:48:58Z drewc: malice: you do not understand syntax it seems... so when you do it is a trivial macro ;) 2014-09-27T22:49:14Z stassats: malice: that's not what macros are for 2014-09-27T22:49:46Z drewc: which I would avoid, because while trying to avoid quoting you are having two quotes where one would do. 2014-09-27T22:51:00Z kuzy000_ quit (Ping timeout: 260 seconds) 2014-09-27T22:51:01Z malice: I want to define class, but it will require much of typing(and I want to follow some scheme), so instead I want to define macro for that, so simply when I have to change something in class, I just change one line instead of 4 2014-09-27T22:51:38Z malice: That's one of reasons to use macro and avoid quoting. Example was just to know how to make the list like that because I'd like to use it 2014-09-27T22:51:53Z malice: in defclass I have to pass keyword arg to :initarg 2014-09-27T22:52:05Z malice: so if I define slot X, I'd like its initarg to be :x 2014-09-27T22:52:35Z malice: So how can I achieve this? 2014-09-27T22:52:53Z Bike: (defun keywordify (symbol) (intern (symbol-name symbol) :keyword)), call from within macro 2014-09-27T22:53:21Z rvirding_ joined #lisp 2014-09-27T22:55:20Z malice: Nice. I didn't know these functions. Thanks, Bike! 2014-09-27T22:55:59Z Adlai: malice: you could also pass non-keyword symbols symbols to :initarg, but only in anger 2014-09-27T22:56:00Z drewc: no macro needed! : #.(flet ((silly-thing (slot) (list slot :initarg (intern (string slot) :keyword)))) `(defclass foo () (,(silly-thing 's) ,(silly-thing 'y)))) 2014-09-27T22:57:07Z Adlai: drewc: i'd say that you've got a pattern there and it should be abstracted with a macro, but can't because it's in the reader... 2014-09-27T22:57:27Z drewc: Adlai: yes, hence the name ;) 2014-09-27T22:57:47Z Adlai will probably pick a defclass wrapper out of a hat sometime soon 2014-09-27T22:58:00Z Adlai: or write my own, in anger and delicious expectation of the joy that follows 2014-09-27T22:58:34Z malice: umm, I prefer macro :) 2014-09-27T22:58:46Z drewc: as it turns out, defclass is actually great and I do not like macros that are convenient for the writer, as I read more code than I write and actually like knowing what is going on :) 2014-09-27T22:58:58Z InvalidCo: jesus 2014-09-27T22:59:15Z drewc: but, def-my-thingie is different, 2014-09-27T22:59:22Z InvalidCo: I don't really know how qt manages to break so quickly 2014-09-27T22:59:28Z drewc: as my-thingie can be a class. or not 2014-09-27T22:59:38Z InvalidCo: trying to open the main window does nothing but returns -1 2014-09-27T22:59:52Z InvalidCo: then I looked at GetLastError 2014-09-27T22:59:59Z OmegaPlayer1 is now known as urandom__ 2014-09-27T23:00:01Z InvalidCo: luckily describe knows what it does 2014-09-27T23:00:08Z robot-beethoven joined #lisp 2014-09-27T23:00:14Z InvalidCo: Source form: 2014-09-27T23:00:14Z InvalidCo: (LAMBDA () 2014-09-27T23:00:14Z InvalidCo: (ERROR "Invalid number of arguments for #_~a: 0." "GetLastError")) 2014-09-27T23:00:26Z InvalidCo: it's a function, not a method 2014-09-27T23:00:27Z vaporatorius quit (Remote host closed the connection) 2014-09-27T23:00:38Z InvalidCo: so I don't know if there's some weird argument overloading going on 2014-09-27T23:00:46Z InvalidCo: does anybody have any experience with commonqt? 2014-09-27T23:00:55Z Adlai: defclass is quite low-level. i've got classes for data and classes for actors, and actor classes have data slots and communication channels (in other slots), and ideally that's what my code would say, rather than having to repeatedly express the implementation of this abstraction 2014-09-27T23:02:27Z drewc: Adlai: very true, and even better with a macro (a tiny tiny macro over a GENERATE-DEFINE-ACTION fn) is that you can change the low-level definition yet still use the same code. 2014-09-27T23:03:00Z Adlai: what do you mean by a G-D-A fn? 2014-09-27T23:03:03Z drewc: that said, actors are functions! Isn't that what created SCHEMER? :) 2014-09-27T23:03:07Z Adlai: something like ensure-class ? 2014-09-27T23:03:31Z Adlai: and my actors are a little messed up 2014-09-27T23:03:47Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-27T23:04:49Z Adlai: the simplest one is https://github.com/adlai/scalpl/blob/master/exchange.lisp#L120-L143 2014-09-27T23:05:00Z drewc: I mean that macros which have a lot of code it their definition are not-so-great. A function that does everything save for pass it to the compiler is a good thing because you can change the definition without to many problems/recompilation 2014-09-27T23:06:02Z Adlai: ah, you mean having the macroexpansion handled by functions rather than code in the defmacro form 2014-09-27T23:07:04Z JokesOnYou77 quit (Quit: Ex-Chat) 2014-09-27T23:08:09Z malice quit (Quit: Leaving) 2014-09-27T23:09:40Z drewc: exactly, and most of the work being done with functions that the function references, not in the expansion itself. (defun gen-foo (bar) `(baz ,bar)) <--- that way it simply expands to BAR, and not what BAR does. 2014-09-27T23:10:33Z drewc: (defun BAR ...) as well of course. 2014-09-27T23:10:34Z Nizumzen joined #lisp 2014-09-27T23:11:10Z drewc: anywhoo, football time... go whitecaps! ttyl 2014-09-27T23:12:28Z White_Flame: I remember a while back, one of my macroexpansions was taking SBCL over a minute to compile 2014-09-27T23:12:42Z White_Flame: the expansion was something like 13k lines long 2014-09-27T23:12:57Z White_Flame: yeah, that was a beneficial refactoring session even beyond the speed issues 2014-09-27T23:13:15Z White_Flame: (compilation speed issues in SBCL have been fixed since that, too) 2014-09-27T23:22:29Z WeirdEnthusiast quit (Ping timeout: 272 seconds) 2014-09-27T23:26:58Z innertracks1 quit (Quit: innertracks1) 2014-09-27T23:27:27Z innertracks joined #lisp 2014-09-27T23:31:29Z drewc: errrr. defun BAZ is what I meant .. see, football has my attention... 2014-09-27T23:33:47Z WeirdEnthusiast joined #lisp 2014-09-27T23:35:16Z Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2014-09-27T23:36:16Z attila_lendvai quit (Quit: Leaving.) 2014-09-27T23:37:22Z drmeister_: Does anyone know anything about this "-Wunused-local-typedef" warning in Clang? 2014-09-27T23:37:47Z drmeister_: Clang generates a tremendous number of warnings on Boost code. 2014-09-27T23:39:55Z phf left #lisp 2014-09-27T23:40:14Z nyef: ... maybe it's a sign that you shouldn't be using Boost? 2014-09-27T23:40:44Z drmeister_: Whoops, wrong group - sorry 2014-09-27T23:43:31Z drmeister_: Because there's no way anyone in #llvm would say something like that. :-) 2014-09-27T23:44:40Z nyef: Heh. (-: 2014-09-27T23:47:13Z Nizumzen quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2014-09-27T23:47:33Z stepnem quit (Ping timeout: 260 seconds) 2014-09-27T23:53:43Z ilhami joined #lisp 2014-09-27T23:54:46Z innertracks quit (Quit: innertracks) 2014-09-27T23:57:45Z kcj joined #lisp