00:00:30 -!- realitygrill [~realitygr@adsl-76-226-104-67.dsl.sfldmi.sbcglobal.net] has quit [Ping timeout: 244 seconds] 00:02:17 realitygrill [~realitygr@adsl-76-226-108-201.dsl.sfldmi.sbcglobal.net] has joined #scheme 00:05:48 soveran [~soveran@186.19.214.247] has joined #scheme 00:09:18 arcfide [~arcfide@c-98-223-204-153.hsd1.in.comcast.net] has joined #scheme 00:12:35 -!- tomobrien [~tomobrien@host-92-2-79-163.as43234.net] has quit [Ping timeout: 272 seconds] 00:13:18 serhart1 [~serhart@65.35.253.91] has joined #scheme 00:15:00 I'm missing something somewhere :( http://pastie.org/private/xozrxax3rpktsudtzsn0ww -- getting a unbound variable for my define, past few times its been because i misformed my (if's but i cant find anything not matching :\ 00:15:25 tuubow_ [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has joined #scheme 00:16:01 namidark: (newline)() 00:16:11 namidark: this probably isn't what you mean 00:16:32 same here () ; do nothing 00:16:32 cky: why thanks. :) 00:16:35 hm nvm I think i see it now.... 33-41 00:16:44 i have 3 begins in my if 00:16:45 namidark: remove ()'s 00:16:48 namidark: first of all, all of the () things are incorrect 00:17:04 ? 00:17:13 I thought that was how you returned a empty result 00:17:36 namidark: what made you think so? 00:18:06 I thought i read somewhere that you can either do () or null ? 00:18:30 namidark: neither of them are valid in scheme 00:20:28 namidark: it's okay to leave out the 'else' expression from an 'if', so for example in (if (char-whitespace? (peek-char srcf)) (inc! wordcount) () ), you can just get rid of the () 00:21:00 -!- serhart1 is now known as sme 00:21:04 namidark: also, you cannot use 'eq?' to compare numbers. for numbers, use '=' 00:21:21 mark_weaver: k 00:21:26 & there is a (zero?) predicate ) 00:21:38 -!- soveran [~soveran@186.19.214.247] has quit [Remote host closed the connection] 00:21:38 namidark: and (WHEN and (UNLESS for one-branch if's 00:21:41 indeed. 00:22:03 -!- sme [~serhart@65.35.253.91] has left #scheme 00:22:08 qu1j0t3: those are not in standard scheme, but easily defined and available in some schemes by default 00:22:17 mark_weaver: chicken has spoiled me on that score. 00:22:57 personally, I find (cond ( ...)) to be nearly as convenient as (when ...) 00:23:23 namidark: () is valid only in some weird non-comformant Schemes. 00:23:38 asumu: using mit-scheme if thats relevant 00:23:44 namidark: also, that 'if' (where you used 'eq?' to compare with 0) has three other expressions within it, so there's some confusion there.. 00:23:58 mark_weaver: yeah thats what im fixing right now :) 00:24:18 tomodo [~tomodo@gateway/tor-sasl/tomodo] has joined #scheme 00:24:24 namidark: you probably read '(), which is a valid empty list. 00:24:53 namidark: also, what's the purpose of the global 'tmp' variable there? 00:25:00 -!- add`__ [~user@2001:16d8:cc2c:0:21a:4dff:fe5e:803a] has left #scheme 00:25:06 -!- dzhus [~sphinx@176.14.94.92] has quit [Remote host closed the connection] 00:25:22 mark_weaver: they are in r6rs 00:25:27 namidark: at the very least, you should move that within the lambda expression. 00:25:30 (FWIW) 00:25:48 mark_weaver: wanna get it back to working then i'll fix my bad-schemisms :) 00:25:56 hehe 00:26:14 well i fixed the unbound variable part but now it throws me into the repl with: (wc "aa") and then infinte loops 00:26:30 ijp: given how few schemes have adopted r6rs, I don't really consider it "standard", even though it claims to be such. 00:26:32 namidark: you probably need to pb again :) 00:26:41 where "few" is >8 00:26:52 http://pastie.org/private/e9jfz0ti8zjpjnslrg6ww 00:28:22 ijp: do you count guile in that list? 00:28:27 kind of 00:28:58 ijp: okay, so that count of >8 includes implementations that only support some of it. 00:29:39 ONLY jcowan CAN SETTLE THIS WAR 00:29:45 mark_weaver: fine, but then you have to discount implementations like MIT, kawa etc. 00:29:52 -!- confab [~confab@c-71-193-9-153.hsd1.ca.comcast.net] has quit [Quit: Lost terminal] 00:30:34 as I've said many times, most "schemes" aren't 00:31:07 ijp: true 00:32:40 confab [~confab@c-71-193-9-153.hsd1.ca.comcast.net] has joined #scheme 00:32:51 ijp: I don't mean to pass judgment on R6RS, but in practice, one who stays within R5RS will be fairly safe on most schemes that are used in practice, whereas the same cannot be said of R6RS. For example, namidark is using MIT scheme. 00:33:30 it's too new! 00:33:31 who stays within r5rs? 00:33:39 The Shock of the New® 00:33:45 ijp: Oleg mostly does :) 00:34:03 okay, so one person :) 00:34:21 ijp: but regardless, when I give advice here on #scheme, I generally try to stay within R5RS when I can, as a practical matter. 00:34:56 *offby1* is lazy and gives racket-flavored advice, and only makes it portable when it occurs to him 00:35:20 rudybot: you much prefer racket to those other lousy implementations, yes? 00:35:21 *offby1: Hmm, I've been making lousy observations. Any new file in the grep matches opens a new window. 00:39:15 namidark: is your code working now? 00:39:45 mark_weaver: nope :\ it pops me into the REPL and then infinite loops at 100% cpu 00:40:01 r6rs wasn't even given a chance; steering committee announced its replacement after two years 00:40:18 by the same standard, r5rs should have been scrapped 00:40:30 its not as if that was uncontroversial 00:41:14 -!- kk` [~kk@unaffiliated/kk/x-5380134] has quit [Quit: WeeChat 0.3.7] 00:43:03 R 00:44:08 -!- Aune [~Arne@h-152-28.a163.priv.bahnhof.se] has quit [Quit: Lämnar] 00:44:46 kk` [~kk@unaffiliated/kk/x-5380134] has joined #scheme 00:45:45 namidark: the last version you posted still has a bunch of ()'s 00:46:44 namidark: but I suspect the infinite loop is because there's at least one case where you don't 'read-char': if the char is whitespace and 'tmp' is empty. 00:47:09 namidark: are you checking for end-of-file. 00:47:17 namidark: that's a fertile cause of bad loops. 00:47:25 qu1j0t3: yes, he is 00:47:28 ok. 00:47:46 *qu1j0t3* goes back to dark machinations and malign plotting 00:48:38 seems OK once I fix the () problems. 00:49:15 kk`` [~kk@77.107.164.131] has joined #scheme 00:49:30 -!- kk`` [~kk@77.107.164.131] has quit [Client Quit] 00:49:55 It looks to me like if the file begins with whitespace, it will infinitely loop without consuming any chars. 00:49:57 -!- tuubow_ [~adityavit@c-69-136-105-164.hsd1.nj.comcast.net] has quit [Ping timeout: 272 seconds] 00:50:19 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Ping timeout: 276 seconds] 00:51:38 mark_weaver: is the non-readchar case the 34 do nothing one? 00:51:58 namidark: yes 00:52:29 -!- kk` [~kk@unaffiliated/kk/x-5380134] has quit [Ping timeout: 272 seconds] 00:53:01 mark_weaver: that was it :) 00:55:13 mark_weaver++ 00:55:53 namidark: it's probably better to start the loop body with (let ((c (read-char srcf))) ...) and then use 'c' within instead of 'peek-char' everywhere. 00:57:29 namidark: instead of (= (length tmp) 0), I recommend (null? tmp) 00:58:05 woonie [~woonie@nusnet-213-204.dynip.nus.edu.sg] has joined #scheme 00:59:04 :) 00:59:28 namidark: do you know why mark_weaver suggests that? 01:01:10 qu1j0t3: which? 01:01:22 namidark: https://gist.github.com/2340632 01:02:40 -!- woonie [~woonie@nusnet-213-204.dynip.nus.edu.sg] has quit [Ping timeout: 276 seconds] 01:05:19 namidark: re (null? foo) vs (= (length foo) 0) 01:15:25 ah I hadn't noticed that before... originally i had been doing vectors and (null? '#()) had returned false 01:15:25 offby1: namidark is using MIT/GNU scheme. It's probably not helpful to post him code that doesn't work there. 01:16:48 so i don't need the ()'s for elses in an if 01:16:53 kk` [~kk@unaffiliated/kk/x-5380134] has joined #scheme 01:16:56 namidark: right 01:17:57 namidark: one reason is (length lst) is O(n) in length of list while (null?) is O(1) 01:18:09 ah 01:30:11 -!- dous [~dous@unaffiliated/dous] has quit [Remote host closed the connection] 01:30:30 do you guys use scheme in production stuff or clojure or? 01:31:22 namidark: Common Lisp. 01:31:53 neither :-| 01:33:56 I've been spoiled by years of ruby :) 01:35:45 offby1: what, rudybot is totally production quality :) 01:36:01 rudybot: aren't you 01:36:01 ijp: There aren't enough n00bs for 1 ams to bait - what would happen if there were more than 1 01:36:15 what indeed 01:37:25 *qu1j0t3* turns to alcohol 01:37:35 Good idea, oh Lord! 01:37:45 *offby1* drinks qu1j0t3 with some tonic water 01:37:46 namidark: full disclosure i'd love to be paid to work in a functional language :| 01:37:51 offby1: LOL 01:38:01 offby1: you don't know where that's been 01:38:14 makes my head hurt :\ scala is at least readable to me 01:38:22 for all we know qu1j0t3 is laced with meth 01:38:25 namidark: i am using Scala but again, only in spare time. 01:38:37 namidark: parentheses become second nature surprisingly quickly. 01:38:42 i think that's what twitter's using right? 01:38:46 namidark: yes. 01:38:53 namidark: i am finding Scala quite impressive. 01:41:46 *qu1j0t3* runs perilously low on vodka 01:43:50 I don't get all the fuss with the parentheses. There's even ways to tame it (paredit/etc). 01:44:08 tuubow_ [~adityavit@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has joined #scheme 01:47:18 jake__ [~jake@63.249.57.43] has joined #scheme 01:50:42 different strokes for different folks, and all that 01:57:14 -!- CampinSam [~CampinSam@24-176-98-217.dhcp.jcsn.tn.charter.com] has quit [Ping timeout: 245 seconds] 02:02:37 woonie [~woonie@nusnet-248-87.dynip.nus.edu.sg] has joined #scheme 02:03:23 namidark: here's some portable scheme to do the job: http://www.netris.org/~mhw/wc.scm 02:08:19 CampinSam [~CampinSam@24-176-98-217.dhcp.jcsn.tn.charter.com] has joined #scheme 02:11:59 looks suspiciously familiar :) 02:13:46 :) 02:21:54 offby1: if you had posted code that he could actually use, I wouldn't have felt compelled to rewrite it :) 02:22:08 tokiya_ [~tokiya@210.24.42.190] has joined #scheme 02:22:56 -!- tokiya [~tokiya@210.24.42.190] has quit [Read error: Connection reset by peer] 02:24:37 *offby1* frets 02:25:38 lol 02:34:28 -!- realitygrill [~realitygr@adsl-76-226-108-201.dsl.sfldmi.sbcglobal.net] has quit [Ping timeout: 272 seconds] 02:34:52 The R6RS Schemes are Racket, Guile, Chez, Ikarus/Vicare, Larceny, Ypsilon, Mosh. 02:35:36 ironscheme? 02:35:36 and IronScheme 02:35:39 ~~ brainfart ~~ 02:35:46 But by no means as many as 8. 02:35:48 ISTR a js one 02:35:53 realitygrill [~realitygr@adsl-76-226-140-58.dsl.sfldmi.sbcglobal.net] has joined #scheme 02:35:54 Might be. 02:35:58 jcowan: that's exactly 8 02:36:07 *jcowan* laughs. 02:36:16 s/as many as/more than 02:37:02 *ijp* sets out for a counterexample :P 02:39:36 https://code.google.com/p/sagittarius-scheme/ might be 02:39:38 *jcowan* would rather have an R7RS-large Scheme 02:39:42 tupi [~david@189.119.11.82] has joined #scheme 02:39:43 -!- kk` [~kk@unaffiliated/kk/x-5380134] has quit [Quit: WeeChat 0.3.7] 02:40:19 I'd like scheme to be portable; I'll take the best there currently is 02:40:39 *jcowan* tries to build Sagittarius 02:40:40 if r7rs large does that, I'll switch 02:40:59 C compiler errors 02:42:00 /opt/sagittarius-scheme/src/transcoder.c:104:85: error: macro "getc" passed 4 arguments, but takes just 1 02:42:13 biwascheme is what I was thinking of 02:42:15 http://www.biwascheme.org/status.html 02:42:57 some of those omissions are pretty big 02:43:01 Yeah. 02:43:33 -!- woonie [~woonie@nusnet-248-87.dynip.nus.edu.sg] has quit [Ping timeout: 248 seconds] 02:43:35 That is IMHO the trouble with R6RS: it's hard to sustain the momentum to do it all. 02:44:38 -!- realitygrill [~realitygr@adsl-76-226-140-58.dsl.sfldmi.sbcglobal.net] has quit [Ping timeout: 245 seconds] 02:44:57 actually, the same goes for r5rs (how many schemes don't support continuations?) 02:45:49 but I agree 02:46:31 realitygrill [~realitygr@76.226.205.95] has joined #scheme 02:47:46 And it's really hard for existing implementations (which have momentum) to move to R6RS because it nails down so many things (notably exceptions) that they have done differently. 02:49:00 *jcowan* investigats 02:49:29 jcowan: sure, but that also explains why none of the exceptions srfis gain momentum 02:49:39 Up to a point. 02:49:48 Newer Schemes tend to use them natively, eventually. 02:50:15 One of the decisions we made was not to mandate specific continuation objects of any sort. 02:50:36 condition objects 02:53:07 right, but if I want to do any interesting portable error handling, I'm going to have to parse error strings 02:53:20 and that kinda sucks 02:55:26 (well, I can write an ad-hoc protocol using the irritants list) 02:58:32 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 02:59:12 http://nexj-scheme.org/ also mentions support for r6rs 03:00:05 actually, this ties into what you said about newer schemes 03:00:42 -!- realitygrill [~realitygr@76.226.205.95] has quit [Read error: Connection reset by peer] 03:03:01 -!- CampinSam [~CampinSam@24-176-98-217.dhcp.jcsn.tn.charter.com] has quit [Quit: leaving] 03:03:23 I wish it had a status page like biwascheme kindly provided 03:07:40 -!- brcrth [~user@unaffiliated/brcrth] has quit [Remote host closed the connection] 03:07:54 brcrth [~user@201-43-118-79.dsl.telesp.net.br] has joined #scheme 03:08:01 -!- brcrth [~user@201-43-118-79.dsl.telesp.net.br] has quit [Changing host] 03:08:02 brcrth [~user@unaffiliated/brcrth] has joined #scheme 03:08:23 ijp: Actually, you get very few guarantees in R5RS/R7RS anyway (only a few procedures are guaranteed to throw exceptions). 03:10:05 cdidd [~cdidd@128-72-20-190.broadband.corbina.ru] has joined #scheme 03:10:13 you don't provide 'error' if you don't expect people to use it 03:12:38 realitygrill [~realitygr@adsl-76-226-132-246.dsl.sfldmi.sbcglobal.net] has joined #scheme 03:13:54 The only Schemes that don't support full call-with-current-continuation are Kawa, IronScheme, SigScheme, TinyScheme, Scheme 9, BDC, Sizzle, Bus. 03:15:16 R5RS non-conformance tends to be in corner cases, not in broad-stroke features like call/cc. 03:16:19 I do expect users to use `error`. I don't necessarily expect implementations to use it. 03:17:40 For example, the effect of (car '()) may or may not be an error-object. It might raise some other object, or it might return (), or it might make demons fly out of your nose. 03:17:41 samth_ [~samth@c-66-31-201-165.hsd1.ma.comcast.net] has joined #scheme 03:17:47 jcowan: correction, the only schemes on your list 03:18:11 -!- araujo [~araujo@gentoo/developer/araujo] has quit [Quit: Leaving] 03:18:14 Eh? 03:18:14 (see also hygienic macros, and full tail calls) 03:18:37 jcowan: With Chicken with -O4 or above, the nasal demon case applies. :-) 03:18:44 Not surprising. 03:18:53 (In fact, the usual result there is a segfault.) 03:18:54 jcowan: besides, I'm not sure what you are arguing 03:19:05 I'm saying, portable error handling with r7rs devolves to string parsing 03:19:24 this is true whether or not implementations use error themselves 03:19:26 I'm saying there is no portable error decoding with R7RS, only portable error trapping. 03:19:41 that is also what I am saying 03:19:52 String parsing isn't necessarily relevant. 03:20:07 right, I also suggested an ad hoc protocol on irritants, or whatever 03:20:12 the point is, ad hoc, and it sucks 03:21:29 and that's why no-one writes portable error handling code 03:21:56 and a non-portable standard is IMO a standard in name only 03:21:57 And R7RS-small won't help. 03:22:03 yes, I said that 03:22:21 We agree completely except that you were saying string parsing would help, and I don't see how. 03:22:31 I said string parsing sucks 03:22:34 not that it helps 03:23:04 Then why mention it all? 03:23:04 -!- MrFahrenheit [~RageOfTho@users-55-233.vinet.ba] has quit [Ping timeout: 245 seconds] 03:23:42 because you mentioned the fact that r7rs isn't standardising an exception representation 03:23:53 and it sounded like you consider that an improvement 03:24:07 -!- dnolen [~user@p72-0-226-118-static.acedsl.com] has quit [Ping timeout: 252 seconds] 03:24:59 r7rs small, r7rs large is completely optional and therefor irrelevant 03:25:58 while I'm moaning, I also think it's disingenuous to call it "two languages" 03:26:03 madmuppet006 [~user@122-62-124-247.jetstream.xtra.co.nz] has joined #scheme 03:26:03 it's more of a spectrum 03:26:13 ijp: Not true. 03:26:17 explain 03:26:28 It's possible to make a R7RS-small implementation that is not in any way compatible with R7RS-large. 03:26:42 not true 03:26:55 it's a special case, - the case where you support none of them 03:27:04 r7rs large has N packages, each optional, therefore there are 2^N different schemes specified 03:27:15 Say I implement R7RS-small. 03:27:19 assuming they are independent 03:27:28 Then I add some libraries that have the same module names as the ones in R7RS-large, but not compatible. 03:27:38 then you are a very strange person 03:27:43 but fair point 03:28:03 It is a plausible course of action, even though I personally would do no such thing without a very compelling reason. 03:28:18 ...like say you didn't like package foo... 03:28:40 :-) 03:28:56 One example: suppose R7RS includes SRFI 41 streams under the name (scheme streams). 03:29:08 And some R7RS-small implementer implements SRFI 40 stream instead under the same module name. 03:29:18 There, that's automatically incompatible with R7RS-large. 03:29:47 Now, given that SRFI 40 is kind of flawed, I can't imagine someone wanting to do it, but still. ;-) 03:29:57 I'd also point out that at if you are just rebranding srfis, it would be nice to explain why you are rejecting srfi 97. 03:30:07 -!- tupi [~david@189.119.11.82] has quit [Ping timeout: 264 seconds] 03:30:09 "colons suck" is not a good reason 03:30:54 Okay. Choose between: (srfi 1) (srfi :1). 03:31:10 If you had to pick a standard module name representation to use for the SRFIs. 03:31:14 (srfi 1 lists) is the ideal 03:31:21 Sure. 03:31:30 but needless backwards incompatibility was one of the "huge problems" with r6rs 03:31:54 I want to know why we are choosing to apply a different standard this time around 03:32:14 oh right, because r6rs sucks, and everything it touches turns to lead 03:32:20 Lol. 03:32:29 I think a lot of ballot decisions did end up going the R6RS way. 03:32:34 So "R6RS sucks" is not part of it. 03:32:48 However, they do have explicit authority to not treat anything in R6RS as normative. 03:33:03 Well, maybe not in quite those words, but essentially pretty close. 03:33:47 Whereas things in R5RS are indeed normative and so a departure from R5RS must be much more carefully weighed. 03:34:02 on matters of libraries, that point is moot 03:34:18 Eh? 03:34:25 I'm not proposing a change to "load", I'm saying use the same freaking names 03:34:40 cky: what does r5rs say about srfi names? nothing 03:34:58 namely because it predates them 03:35:04 and it doesn't have a library system 03:37:11 Well, are people proposing to use different names from the SRFI 97 ones? 03:37:37 you just did, and that seemed to be the impression I got from one of jcowan's statements N days ago 03:37:49 soveran [~soveran@186.19.214.247] has joined #scheme 03:38:04 I did no such thing (other than using 1 instead of :1). 03:38:41 Remember that SRFI 97 chose :1 instead of 1 _solely_ for conformance with R6RS. 03:38:48 right, and I'm saying, why? we already have a (sub)standard, supported by existing schemes, went through the srfi process, and people use it 03:38:51 And given that the latter is not at consideration for R7RS.... 03:38:58 It's non-compliant to provide any library under a name whose car is scheme unless it is a standardized library. 03:39:11 jcowan: Oh, I see. 03:39:35 cky: and I want to know, why it's okay to ignore srfis for r7rs, but it was beyond evil for r6rs to do so 03:39:42 jcowan: Darn, that scuttled my point that people can make R7RS-small implementations that are gratuitously incompatible with R7RS-large. :-) 03:39:57 I consider not standardizing conditions to be good from the adoption point of view, not good from the user point of view. 03:40:11 Which SRFIs are we ignoring? 03:40:20 srfi 97 - srfi names 03:40:29 why are we just rebranding srfis? 03:40:39 given that r7rs is completely optional 03:40:43 No decisions have been made on the names of R7RS-large libraries. 03:40:44 r7rs-large 03:41:04 In addition, while it is *probable* that all r7rs-large features will be optional, that is not decided either. 03:41:51 If anything, r7rs-small is more SRFI-compatible than R6RS is. 03:42:18 And I agree that R7RS is a spectrum. 03:42:24 jiggliemon [~jiggliemo@pool-173-58-9-84.lsanca.fios.verizon.net] has joined #scheme 03:42:34 Well, with the stipulation you described, yes, indeed it's a spectrum. 03:42:35 ranging from just (scheme base) to all ~100 libraries. 03:43:00 Without that stipulation, it's not a spectrum, because people can make R7RS-small implementations that are incompatible with R7RS-large. 03:43:03 rudybot: eval (expt 2 100) 03:43:04 ijp: ; Value: 1267650600228229401496703205376 03:43:05 jeez 03:43:28 I was speculating that some SRFIs adopted in r7rs-large would be given (scheme foo) names as well as (srfi n) or (srfi n foo) names. 03:44:16 And we are rebranding SRFIs because we think the batteries-included version of Scheme should include them rather than an alternative. 03:44:32 Note however that we may wind up making changes to some of them, particularly in the direction of extensions. 03:45:36 In particular, (srfi :1) is illegal in r7rs-small-current. 03:45:47 primarily because names with : are a headache on Windows. 03:46:33 I'd point out that since r7rs doesn't specify a mapping to filenames, this is a nonissue 03:46:40 are you working on the language? 03:46:41 (in theory) 03:47:30 bfgun: jcowan is, I'm lamenting it :P 03:47:54 ijp: SRFI 97 should have just stipulated (srfi |1|) and been done with it. 03:48:27 why not (srfi ~1~) ? 03:48:40 bfgun: That doesn't map well to file names. 03:48:41 actually, r6rs should have just allowed numbers, but there we go 03:48:42 or (srfi <({1})>). looks *way* cooler 03:48:45 |1| is the symbol 1. 03:48:45 kilimanjaro [~kilimanja@ip70-162-88-143.ph.ph.cox.net] has joined #scheme 03:48:45 -!- kilimanjaro [~kilimanja@ip70-162-88-143.ph.ph.cox.net] has quit [Changing host] 03:48:46 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 03:48:51 -!- jiggliemon [~jiggliemo@pool-173-58-9-84.lsanca.fios.verizon.net] has left #scheme 03:49:03 ijp: Right, that too. 03:49:32 Though, of course, that means you can also access, say, SRFI 41 as (srfi #x29) ;-) 03:49:40 why are they renaming with this nonconventional syntax? 03:49:48 why not something like all other languages: (import x) 03:49:54 cky: No pipe-symbols in R6RS, alas. It would have to be (srfi \x30;). 03:49:55 or (use x y z...) 03:50:06 -!- MichaelRaskin [~MichaelRa@195.91.224.225] has left #scheme 03:50:08 jcowan: I see. 03:50:18 are they purposefully complicating the language without any objective? 03:50:19 bfgun: it's (import (srfi 29)) 03:50:30 Names are sequences of symbols. 03:50:36 why (srfi 29) ? 03:50:43 bfgun: that depends on your definitions of purposefully, complicating, and objective. 03:50:48 It refers to a pre-existing package with that name. 03:50:51 ie, who's benefiting from this? 03:51:03 bfgun: Many Schemers know SRFIs by number. 03:51:14 sure, the ones i know, i know them by number too 03:51:22 but why (srfi 29) instead of srfi-29 03:51:32 bfgun: They are always already lists. 03:51:37 e.g., (scheme base). 03:51:39 Why magic hyphens instead of lists? 03:51:49 (29 is a bad example) 03:52:01 localization, heh 03:52:03 jcowan, that's how chickend does it now... i don't know about other repls 03:52:13 *jcowan* nods. 03:52:24 I assume Chicken will map (foo bar baz) to foo-bar-baz 03:52:31 or something of the sort. 03:52:36 http://www.winestockwebdesign.com/Essays/Lisp_Curse.html <-- in full force 03:52:53 Bikeshedding on a language level. Woot! 03:53:18 *shrugs* the less you specify the more you bring politics into things 03:53:31 In Scheme you can change anything (except lexical syntax), so the only thing that is *not* bikeshedding is "What function shall be required?" 03:53:43 compile time politics vs run time politics, anyway 03:55:44 The more you specify, the more politics you bring into standardization. 03:55:50 Let a hundred Schemes bloom. 03:55:57 yes, I corrected it 03:56:14 compile time = making the standard, run-time = after standardisation 03:56:19 Oh, I see. 03:56:42 metaphors are hard... 03:56:50 ... let's go shopping. 03:58:30 anyway, I've bored you all long enough 03:58:37 ciao 03:58:41 -!- ijp [~user@host86-151-79-183.range86-151.btcentralplus.com] has quit [Quit: The garbage collector got me] 04:00:11 -!- homie [~levgue@xdsl-87-79-199-7.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 04:11:23 -!- madmuppet006 [~user@122-62-124-247.jetstream.xtra.co.nz] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 04:14:41 homie [~levgue@xdsl-87-79-199-7.netcologne.de] has joined #scheme 04:18:58 -!- samth_ [~samth@c-66-31-201-165.hsd1.ma.comcast.net] has quit [Ping timeout: 276 seconds] 04:21:17 -!- jcowan [~John@cpe-66-108-19-185.nyc.res.rr.com] has quit [Quit: Leaving] 04:23:00 kniu [~kniu@pool-74-98-44-132.pitbpa.east.verizon.net] has joined #scheme 04:26:39 dnolen [~user@cpe-98-14-92-234.nyc.res.rr.com] has joined #scheme 04:26:49 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 252 seconds] 04:28:52 MichaelRaskin [~MichaelRa@3ad50e34.broker.freenet6.net] has joined #scheme 04:40:30 -!- soveran [~soveran@186.19.214.247] has quit [Remote host closed the connection] 04:40:41 -!- forcer [~forcer@hmbg-5f773010.pool.mediaWays.net] has quit [Ping timeout: 246 seconds] 04:41:23 kilimanjaro [~kilimanja@ip70-162-88-143.ph.ph.cox.net] has joined #scheme 04:41:23 -!- kilimanjaro [~kilimanja@ip70-162-88-143.ph.ph.cox.net] has quit [Changing host] 04:41:23 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 04:42:53 wingo [~wingo@66-169-234-153.dhcp.snlo.ca.charter.com] has joined #scheme 04:46:13 -!- stlifey [~stlifey@116.26.27.25] has quit [Ping timeout: 244 seconds] 04:53:07 -!- arcfide [~arcfide@c-98-223-204-153.hsd1.in.comcast.net] has quit [Quit: Leaving] 04:58:20 -!- brcrth [~user@unaffiliated/brcrth] has left #scheme 04:59:00 -!- dnolen [~user@cpe-98-14-92-234.nyc.res.rr.com] has quit [Remote host closed the connection] 04:59:36 stlifey [~stlifey@116.26.26.112] has joined #scheme 05:02:25 -!- wingo [~wingo@66-169-234-153.dhcp.snlo.ca.charter.com] has quit [Ping timeout: 260 seconds] 05:13:37 bhrgunatha [~chatzilla@118-170-189-138.dynamic.hinet.net] has joined #scheme 05:22:14 tom_i [~thomasing@ingserv.demon.co.uk] has joined #scheme 05:26:21 antono [~antono@ec2-50-19-243-116.compute-1.amazonaws.com] has joined #scheme 05:34:35 -!- copumpkin [~copumpkin@unaffiliated/copumpkin] has quit [Ping timeout: 246 seconds] 05:35:12 copumpkin [~copumpkin@unaffiliated/copumpkin] has joined #scheme 05:36:09 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #scheme 05:38:39 homie` [~levgue@xdsl-78-35-151-115.netcologne.de] has joined #scheme 05:39:54 -!- realitygrill [~realitygr@adsl-76-226-132-246.dsl.sfldmi.sbcglobal.net] has quit [Quit: Computer has gone to sleep] 05:40:54 -!- homie [~levgue@xdsl-87-79-199-7.netcologne.de] has quit [Ping timeout: 260 seconds] 05:44:38 -!- tessier [~treed@kernel-panic/copilotco] has quit [Ping timeout: 240 seconds] 05:46:17 -!- bhrgunatha [~chatzilla@118-170-189-138.dynamic.hinet.net] has quit [Quit: ChatZilla 0.9.88.2 [Firefox 14.0a1/20120408031146]] 05:52:24 tessier [~treed@216.105.40.125] has joined #scheme 06:00:00 araujo [~araujo@190.38.61.1] has joined #scheme 06:00:00 -!- araujo [~araujo@190.38.61.1] has quit [Changing host] 06:00:00 araujo [~araujo@gentoo/developer/araujo] has joined #scheme 06:01:34 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Quit: Leaving] 06:18:56 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 06:30:18 attila_lendvai [~attila_le@87.247.12.130] has joined #scheme 06:30:19 -!- attila_lendvai [~attila_le@87.247.12.130] has quit [Changing host] 06:30:19 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #scheme 06:42:56 -!- kniu [~kniu@pool-74-98-44-132.pitbpa.east.verizon.net] has quit [Quit: Leaving] 06:44:38 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #scheme 06:47:36 kniu [~kniu@pool-74-98-44-132.pitbpa.east.verizon.net] has joined #scheme 06:51:44 -!- jake__ [~jake@63.249.57.43] has quit [Quit: leaving] 07:00:01 -!- mark_weaver [~user@209-6-91-212.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 07:00:03 -!- jonrafkind [~jon@jonr5.dsl.xmission.com] has quit [Ping timeout: 245 seconds] 07:07:27 mmc1 [~michal@178-85-63-71.dynamic.upc.nl] has joined #scheme 07:19:44 -!- tom_i [~thomasing@ingserv.demon.co.uk] has quit [Ping timeout: 245 seconds] 07:28:57 -!- tuubow_ [~adityavit@NYUFGA-WLESSAUTHCLIENTS-01.NATPOOL.NYU.EDU] has quit [Ping timeout: 272 seconds] 07:33:29 -!- copumpkin [~copumpkin@unaffiliated/copumpkin] has quit [Ping timeout: 245 seconds] 07:34:00 copumpkin [~copumpkin@unaffiliated/copumpkin] has joined #scheme 07:39:25 -!- mgodshall [~quassel@pool-108-36-207-226.phlapa.fios.verizon.net] has quit [Remote host closed the connection] 07:43:37 jewel [~jewel@196-209-224-252.dynamic.isadsl.co.za] has joined #scheme 07:45:12 -!- sporous [~sporous@antispammeta/bot/irssi/sporous] has quit [Disconnected by services] 07:45:23 sporous [~sporous@antispammeta/bot/irssi/sporous] has joined #scheme 07:46:51 -!- sporous [~sporous@antispammeta/bot/irssi/sporous] has quit [Max SendQ exceeded] 07:47:28 ThePawnBreak [Cristi@94.177.108.25] has joined #scheme 07:49:21 tom_i [~thomasing@ingserv.demon.co.uk] has joined #scheme 07:50:17 sporous [~sporous@antispammeta/bot/irssi/sporous] has joined #scheme 07:51:32 antithesis [~antithesi@81.71.110.7] has joined #scheme 08:02:17 ThePawnBreak121 [Cristi@94.177.108.25] has joined #scheme 08:03:52 -!- ThePawnBreak [Cristi@94.177.108.25] has quit [Ping timeout: 276 seconds] 08:05:23 jhemann_ [~Jason@adsl-99-14-210-20.dsl.bltnin.sbcglobal.net] has joined #scheme 08:05:23 -!- jhemann [~Jason@99.14.211.92] has quit [Read error: Connection reset by peer] 08:09:34 gravicappa [~gravicapp@ppp91-77-180-19.pppoe.mtu-net.ru] has joined #scheme 08:15:07 -!- tom_i [~thomasing@ingserv.demon.co.uk] has quit [Ping timeout: 264 seconds] 08:17:05 -!- acedia [~garland@unaffiliated/ffs] has quit [Ping timeout: 272 seconds] 08:19:11 tomobrien [~tomobrien@host-92-2-79-163.as43234.net] has joined #scheme 08:19:43 -!- copumpkin [~copumpkin@unaffiliated/copumpkin] has quit [Remote host closed the connection] 08:19:50 pumpkin [~copumpkin@unaffiliated/copumpkin] has joined #scheme 08:24:50 masm [~masm@bl18-40-195.dsl.telepac.pt] has joined #scheme 08:31:49 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Ping timeout: 276 seconds] 08:32:40 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 08:34:20 -!- antithesis [~antithesi@81.71.110.7] has quit [Remote host closed the connection] 08:35:42 antithesis [~antithesi@81.71.110.7] has joined #scheme 08:46:19 -!- tomobrien [~tomobrien@host-92-2-79-163.as43234.net] has quit [Ping timeout: 264 seconds] 08:47:40 -!- MichaelRaskin [~MichaelRa@3ad50e34.broker.freenet6.net] has left #scheme 09:07:16 -!- antithesis [~antithesi@81.71.110.7] has quit [Quit: yes leaving] 09:13:48 -!- gravicappa [~gravicapp@ppp91-77-180-19.pppoe.mtu-net.ru] has quit [Ping timeout: 252 seconds] 09:15:08 -!- bfgun [~b_fin_g@r186-53-151-112.dialup.adsl.anteldata.net.uy] has quit [Ping timeout: 240 seconds] 09:19:31 -!- FreeArtMan [~fam@93.177.213.54] has quit [Quit: Out of this 3D] 09:19:50 forcer [~forcer@hmbg-4d06e90a.pool.mediaWays.net] has joined #scheme 09:25:59 keenbug [~daniel@p4FE3ABE6.dip.t-dialin.net] has joined #scheme 09:27:46 bfgun [~b_fin_g@r186-53-151-112.dialup.adsl.anteldata.net.uy] has joined #scheme 09:30:17 gravicappa [~gravicapp@ppp91-77-183-6.pppoe.mtu-net.ru] has joined #scheme 09:32:57 tom_i [~thomasing@ingserv.demon.co.uk] has joined #scheme 09:43:29 -!- bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has quit [Ping timeout: 245 seconds] 09:48:50 -!- tomodo [~tomodo@gateway/tor-sasl/tomodo] has quit [Remote host closed the connection] 09:50:06 kuribas [~user@d54C43316.access.telenet.be] has joined #scheme 10:07:04 -!- pumpkin [~copumpkin@unaffiliated/copumpkin] has quit [Ping timeout: 246 seconds] 10:07:33 copumpkin [~copumpkin@unaffiliated/copumpkin] has joined #scheme 10:25:03 -!- tom_i [~thomasing@ingserv.demon.co.uk] has quit [Ping timeout: 252 seconds] 10:28:29 stis [~stis@1-1-1-39a.veo.vs.bostream.se] has joined #scheme 10:33:07 -!- Arafangion` [~Arafangio@220-244-108-23.static.tpgi.com.au] has quit [Ping timeout: 252 seconds] 10:38:38 tom_i [~thomasing@ingserv.demon.co.uk] has joined #scheme 10:45:28 mekeor [~user@dslb-092-075-226-158.pools.arcor-ip.net] has joined #scheme 10:45:46 Just in case: . 11:02:37 -!- ThePawnBreak121 [Cristi@94.177.108.25] has quit [Ping timeout: 276 seconds] 11:04:00 -!- jhemann_ [~Jason@adsl-99-14-210-20.dsl.bltnin.sbcglobal.net] has quit [Ping timeout: 260 seconds] 11:04:28 -!- tom_i [~thomasing@ingserv.demon.co.uk] has quit [Ping timeout: 246 seconds] 11:05:52 tomodo [~tomodo@gateway/tor-sasl/tomodo] has joined #scheme 11:08:00 simathur [~simathur@192.100.106.9] has joined #scheme 11:09:54 scratcher [~user@36.40.162.130] has joined #scheme 11:10:54 add`__ [~user@2001:16d8:cc2c:0:21a:4dff:fe5e:803a] has joined #scheme 11:15:48 dous [~dous@unaffiliated/dous] has joined #scheme 11:24:51 -!- keenbug [~daniel@p4FE3ABE6.dip.t-dialin.net] has quit [Quit: WeeChat 0.3.8-dev] 11:25:30 keenbug_ [~daniel@p4FE3ABE6.dip.t-dialin.net] has joined #scheme 11:25:32 -!- keenbug_ is now known as keenbug 11:39:04 -!- add`__ [~user@2001:16d8:cc2c:0:21a:4dff:fe5e:803a] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 11:39:05 samth_ [~samth@c-66-31-201-165.hsd1.ma.comcast.net] has joined #scheme 11:50:41 Skola [~bas@5352A3FB.cm-6-3c.dynamic.ziggo.nl] has joined #scheme 11:55:38 ThePawnBreak121 [Cristi@94.177.108.25] has joined #scheme 11:59:21 realitygrill [~realitygr@adsl-76-226-120-139.dsl.sfldmi.sbcglobal.net] has joined #scheme 12:04:09 -!- scratcher [~user@36.40.162.130] has quit [Remote host closed the connection] 12:05:00 dzhus [~sphinx@176.14.94.92] has joined #scheme 12:12:16 whitequark [~whitequar@2a00:ab00:1::4464:5550] has joined #scheme 12:16:10 SRFI-8 vs. SRFI-11? 12:16:37 I was partial to `let-values' for the longest time; even though my most common use case was one set of values. 12:16:50 `receive,' I think, is nicer for the one-set case. 12:18:41 let's say I have a directed acyclic graph like this: http://i.imgur.com/2pSNu.png and I want to infer `if'-like control structures from it. I'm pretty sure there is already an algorithm for this, but I don't know where to look. 12:19:25 I tried to invent my own by doing recursive search like this: for each branch, find a merge point of the two possible control flows, then repeat for each root, stopping at the merge point 12:19:51 but it fails for cases like one on the image (the merge point is the exit node), or `else if`-like ones: http://i.imgur.com/ON21w.png 12:19:57 klutometis: yeah, i didn't like it to have three opening parentheses, and i mostly just had one call to a multivalue function, so i also didn't need let-values 12:20:34 even worse, it won't work at all if I'd have some loops (if I only have natural loops in the CFG, then the inside of the loop besides the back edges are DAG, too) 12:22:29 keenbug: Nice; thanks for corroborating my change of heart. 12:23:56 klutometis: :) 12:24:01 ffs [~garland@unaffiliated/ffs] has joined #scheme 12:24:04 b4283 [~user@114-47-37-19.dynamic.hinet.net] has joined #scheme 12:24:26 hi 12:24:41 whitequark: Working on some sort of actionscript compiler? 12:24:51 b4283: What ho? 12:25:15 i wonder why some srfi's are already in the r5rs, is it because r5rs came out later and adopted it? 12:25:49 b4283: i think so 12:26:11 klutometis: other way around. that's a decompiler 12:26:13 b4283: instance? 12:26:42 like srfi-1, theres (length) and (length+) 12:26:42 whitequark: Cool; source? 12:26:46 klutometis: besides of which, it won't be actionscript limited, AS is just something I have a practical application now. mostly I'm working on my statical code analysis framework 12:27:23 klutometis: hm. http://github.com/whitequark/furnace-avm2.git for the decompiler, http://whitequark.org/blog/2011/12/21/statically-compiled-ruby/ for the general ideas about my framework 12:27:47 -!- Skola [~bas@5352A3FB.cm-6-3c.dynamic.ziggo.nl] has quit [Quit: Changing server] 12:28:12 mark_weaver [~user@209-6-91-212.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 12:28:18 CampinSam [~CampinSam@24-176-98-217.dhcp.jcsn.tn.charter.com] has joined #scheme 12:29:46 Arafangion [~Arafangio@220-244-108-23.static.tpgi.com.au] has joined #scheme 12:31:55 keenbug, b4283: no, R5RS pre-dates all of the SRFIs. What SRFI is already in R5RS? 12:32:33 mark_weaver: hi :) ah, okay ^^ 12:33:45 mark_weaver: i checked out the page http://srfi.schemers.org/srfi-1/srfi-1.html 12:34:11 ah, b4283 already gave an example: length. and the story there is that the SRFI-1 length has an additional feature that's not necessarily present in plain R5RS: it detects lists with cycles. 12:34:29 ah 12:34:36 mark_weaver: thx for the tip 12:34:42 The R5RS may go into an infinite loop when applied to a list with cycles, but SRFI-1 is required to detect this and return #f in that case. 12:34:52 indeed theres such remark in the spec 12:35:34 -!- ThePawnBreak121 [Cristi@94.177.108.25] has quit [Ping timeout: 276 seconds] 12:37:05 -!- DGASAU [~user@91.218.144.129] has quit [Read error: No route to host] 12:39:17 ijp [~user@host31-53-16-241.range31-53.btcentralplus.com] has joined #scheme 12:40:04 klutometis: for the one argument case, I've just taken to using call-with-values 12:40:05 DGASAU [~user@91.218.144.129] has joined #scheme 12:41:07 ijp: if i didn't have to wrap the call in a lambda that would also be my first choice 12:42:11 It isn't nearly as bothersome as it sounds 12:43:44 ijp: There's this quote from SRFI-8: "These embeddings are boilerplate, exposing the underlying binding mechanism but not revealing anything relevant to the particular program in which it occurs." 12:43:56 (`Embeddings' referring to lambdas, I suppose.) 12:44:00 What do you make of it? 12:44:08 whitequark: Fascinating read; thanks. 12:45:23 the same is arguably true of any of call-with-* or with-* 12:45:34 klutometis: I'm glad that this is interesting to someone else than me 12:46:16 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 272 seconds] 12:46:59 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 12:52:22 ijp: Possibly; but only half so: what may be semi-offensive about call-with-values is the dual-lambda. 12:53:51 I've also gotten to like plain call-with-values. I like the fact that if the first expression is long, the names of the variables in the second part is where it ought to be: between the two expressions instead of above the first one. 12:55:40 mark_weaver: Interesting; I confess that that bothered me, too: but only subconsciously. I've never heard it expressed before. 12:56:19 In my own code, I often use '' instead of 'lambda'. Using a short identifier makes extra lambdas much more palatable. 12:57:22 i think in racket there is the (thunk body ...) form for (lambda () body ...), isn't it? 12:57:26 Gauche recently added an interesting set of abbreviations. They make '^' an alias for 'lambda', and also '(^x ...)' is also a shorthand for (lambda (x) ...), where 'x' is any single letter. 12:57:33 keenbug: I also sometimes use that alias 12:57:53 The nice thing about their choices is that it's trivial to implement the same abbreviations in any scheme with macros. 12:57:59 I also have a "cut"-like reader macro 12:58:56 I often get annoyed with 'cut', because it falls apart if the arguments are not in the right order, or if any of the <>'s need to be within a nested expression.. A shorter symbol for 'lambda' solves so many of these problems. 12:59:08 ijp: oh, you're right, cut is even nicer :D 12:59:15 i sometimes used that 12:59:36 mark_weaver: yeah, the nested case bothers me too 12:59:38 mark_weaver: i wrote a cut which also works on nested expressions 13:00:02 keenbug: I presume you are relying on a particular implementations evaluation order? 13:00:19 actually, come to think of it, that shouldn't matter 13:00:59 i like (call-with-values (cut partition even? '(1 2 3 4 5)) (lambda (evens odds) (list evens odds)) 13:01:18 that's even better than thunk or receive :D 13:01:25 keenbug: presumably they are assigned using an in order traversal? 13:02:23 ijp: erm, i don't understand what you mean. the nested calls will be in the resulting lambda 13:02:41 ha, I never thought of using 'cut' without <> :) 13:03:11 keenbug: the ordering of the lambda list 13:03:46 just like you see the <> being in the cut expression 13:03:47 (foo (bar <> <>) (baz <> <>)) => (lambda (a b c d) (foo (bar a b) (baz c d))) ? 13:03:51 yup 13:04:22 keenbug: Source? 13:04:26 I assume there is a good reason why cut doesn't do this in the first place 13:05:10 hm, yeah, but sometime's it's very handy 13:05:14 apparently the macro is only on the first level 13:05:39 ie, cut ((...<>)) is invalid 13:05:40 it also disallows things like (cut if <> 0 1), which I thought was a cute usage of it 13:05:50 bfgun: yes, this is what we are discussing 13:06:38 klutometis: https://github.com/keenbug/imi-libs/blob/master/sugar/cut.ss and mostly https://github.com/keenbug/imi-libs/blob/master/sugar/cut-compat.ss 13:06:40 the problem with a nested cut is that it would either have to capture all the <> inside or have to ask for cut itself 13:06:55 how can you do that in a macro? 13:07:13 bfgun: yeah, that was also a problem i thought about 13:07:22 ie, as far as i understand macros are evaluated from outside to the inside, am i right? 13:07:31 i wanted to stop processing nested cuts 13:07:44 bfgun: difficult, a pain to write, but not impossible 13:08:18 but i don't know, i think something didn't work and i just ignored it 13:08:52 ah, i see the bug now 13:09:11 the cut is unbound in cut-compat.ss and so it differs from the right cut in the end 13:09:37 -!- homie` [~levgue@xdsl-78-35-151-115.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 13:09:39 so transform doesn't notice the cut 13:09:44 *the nested cut 13:09:44 ijp, can you tell me more or less the idea behind the macro? 13:09:54 you need to explicitly capture the cuts, right? 13:11:08 i see you need to do some totally ugly things by 'popping' the <>'s 13:11:14 just a simple tree traversal, maybe done in CPS 13:11:25 if you see 'cut' in the head of a subexpression. Stop 13:12:01 or error, or whatever 13:12:07 _danb_` [~user@124-168-46-173.dyn.iinet.net.au] has joined #scheme 13:12:07 mmm i hadn't thought about CPS 13:12:26 in any case it sounds like a painful thing to write 13:12:28 ijp: that's exactly what i tried to do, but i didn't use CPS macros, just did that in syntax-case 13:12:48 *bfgun* looks at keenbug's code out of curiosity 13:12:56 keenbug: I assumed we were talking about syntax-rules only 13:13:16 -!- ffs is now known as acedia 13:13:27 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 13:13:45 anyway, that way madness lies 13:14:32 is there a good place to learn about advanced macro usage? 13:15:11 -!- bfgun is now known as bfig 13:15:30 ijp: I always figured that's why Sebastian stopped at top-level cuts. 13:16:01 bfig: well, jrms syntax rules primer is a pretty good argument against complex syntax-rules macros, but it's the thing people always recommend... 13:16:08 klutometis: indeed 13:16:25 bfig: ; be careful, though: LoL may be a very sophisticated troll-work. The jury is still out. 13:17:14 on it's troll nature? or its sophistication? :P 13:18:11 ijp: Its troll-nature, I think; given the acronym and absurd (but beautiful) complexity. Or so I've heard: mine's collecting dust. 13:18:13 tupi [~david@139.82.89.24] has joined #scheme 13:18:20 -!- samth_ [~samth@c-66-31-201-165.hsd1.ma.comcast.net] has quit [Ping timeout: 246 seconds] 13:18:23 bfgun: yes, macros are expanded from outside to inside. If you think about it, there's no other way it could work. 13:18:36 -!- _danb_` [~user@124-168-46-173.dyn.iinet.net.au] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 13:19:19 mark_weaver, of course :p 13:19:25 klutometis, you bought but didn't read? 13:19:25 because until you expand the outer macros, there's no way to know which inner pieces will end up in expression position, and which will end up in some other position (e.g. lambda lists) where macro expansion should not even be attempted. 13:19:42 also, it seems to be about common lisp. i don't know how to program in that language, is that going to be a problem? 13:22:10 bfig: The introduction is sublime; that shouldn't be a problem: ideally, you'll learn what motivates Scheme-macros. 13:22:32 dnolen [~user@cpe-98-14-92-234.nyc.res.rr.com] has joined #scheme 13:24:18 klutometis: by the way, any ideas about the graph stuff? 13:28:30 klutometis: I suspect that any book about macros in common lisp will not be good for a scheme programmer. common lisp macros are much different than modern scheme macros, and imho much more primitive. 13:29:00 -!- copumpkin [~copumpkin@unaffiliated/copumpkin] has quit [Quit: Computer has gone to sleep.] 13:31:15 -!- _danb_ [~user@124-168-46-173.dyn.iinet.net.au] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 13:35:26 -!- mark_weaver [~user@209-6-91-212.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [Read error: No route to host] 13:35:50 -!- keenbug [~daniel@p4FE3ABE6.dip.t-dialin.net] has quit [Ping timeout: 246 seconds] 13:35:54 -!- mmc1 [~michal@178-85-63-71.dynamic.upc.nl] has quit [Remote host closed the connection] 13:37:01 MrFahrenheit [~RageOfTho@users-55-233.vinet.ba] has joined #scheme 13:37:34 mark_weaver [~user@209-6-91-212.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 13:39:26 mark_weaver: Indeed; thus, Scheme macros will seem much more motivated and less arbitrarily complex. 13:39:40 whitequark: Yes; I'm going to sleep on it. 13:40:20 -!- b4283 [~user@114-47-37-19.dynamic.hinet.net] has left #scheme 13:42:17 klutometis: thanks 13:42:21 kk` [~kk@unaffiliated/kk/x-5380134] has joined #scheme 13:46:51 mark_weaver: that abbreviation by Gauche is amusing given that lambda evolved from a ^ symbol way back in the day. 13:46:55 langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has joined #scheme 13:55:54 No, it's the other way. 13:56:07 Some languages use ^ because of . 13:56:25 But  has always been the greek letter. As in: -calculs. 13:56:29 -calculus. 13:57:17 pjb: that hasn't always been the case; see http://maths.swan.ac.uk/staff/jrh/papers/JRHHislamWeb.pdf 13:57:31 mmc1 [~michal@178-85-63-71.dynamic.upc.nl] has joined #scheme 13:58:27 (page 6) 13:58:39 Skola [~bas@5352A3FB.cm-6-3c.dynamic.ziggo.nl] has joined #scheme 13:58:44 -!- Skola [~bas@5352A3FB.cm-6-3c.dynamic.ziggo.nl] has quit [Client Quit] 13:58:57 tom_i [~thomasing@ingserv.demon.co.uk] has joined #scheme 13:59:51 *ijp* recommends that paper. it's very comprehensive 14:05:32 -!- evildaemon [~user@50-35-181-162.evrt.wa.frontiernet.net] has quit [Quit: Lost terminal] 14:05:55 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Ping timeout: 276 seconds] 14:08:32 FreeArtMan [~fam@93.177.213.54] has joined #scheme 14:08:56 -!- FreeArtMan [~fam@93.177.213.54] has quit [Remote host closed the connection] 14:13:13 interesting. you mean alonzo church chose the greek letter  because of ^ ? 14:15:37 sorry, it's in the paper as you said :) 14:19:39 actually, it's not a coincidence. apparently Shiro Kawai (author of Gauche, who chose the ^ syntax) had heard that  was chosen because of ^ :) 14:20:41 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 14:22:00 klutometis: while you're citing CL macro references, there is Paul Graham's 'On Lisp', a good read. bfg 14:25:52 soveran [~soveran@186.19.214.247] has joined #scheme 14:26:49 ijp` [~user@host86-173-112-187.range86-173.btcentralplus.com] has joined #scheme 14:29:58 -!- ijp [~user@host31-53-16-241.range31-53.btcentralplus.com] has quit [Ping timeout: 276 seconds] 14:33:11 copumpkin [~copumpkin@unaffiliated/copumpkin] has joined #scheme 14:34:30 homie [~levgue@xdsl-78-35-151-115.netcologne.de] has joined #scheme 14:35:33 -!- dnolen [~user@cpe-98-14-92-234.nyc.res.rr.com] has quit [Ping timeout: 248 seconds] 14:43:07 woonie [~woonie@nusnet-228-5.dynip.nus.edu.sg] has joined #scheme 14:49:41 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Remote host closed the connection] 14:50:04 bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has joined #scheme 14:51:07 jhemann_ [~Jason@adsl-99-14-210-20.dsl.bltnin.sbcglobal.net] has joined #scheme 14:51:54 antithesis [~antithesi@81.71.110.7] has joined #scheme 14:58:36 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #scheme 15:01:13 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 252 seconds] 15:12:18 -!- stlifey [~stlifey@116.26.26.112] has quit [Read error: Connection reset by peer] 15:13:58 estevocastro [estevocast@nat/hackerschool.com/x-waixarvklbjwvsxb] has joined #scheme 15:18:05 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 15:21:55 -!- woonie [~woonie@nusnet-228-5.dynip.nus.edu.sg] has quit [K-Lined] 15:28:04 arcfide [~arcfide@c-98-223-204-153.hsd1.in.comcast.net] has joined #scheme 15:32:00 -!- kk` [~kk@unaffiliated/kk/x-5380134] has quit [Quit: WeeChat 0.3.7] 15:34:45 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 265 seconds] 15:40:42 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 15:42:44 adu [~ajr@pool-71-241-252-15.washdc.fios.verizon.net] has joined #scheme 15:43:14 woonie [~woonie@137.132.254.15] has joined #scheme 15:45:59 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 245 seconds] 15:46:54 _schulte_ [~eschulte@c-174-56-50-60.hsd1.nm.comcast.net] has joined #scheme 15:46:56 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 15:51:23 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 252 seconds] 15:52:05 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 15:52:47 sstrickl [~sstrickl@dublin.ccs.neu.edu] has joined #scheme 15:59:49 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 252 seconds] 16:06:11 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 16:08:08 -!- langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has quit [Ping timeout: 252 seconds] 16:09:55 leo2007 [~leo@123.114.43.98] has joined #scheme 16:12:19 attila_lendvai1 [~attila_le@87.247.63.68] has joined #scheme 16:12:19 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Disconnected by services] 16:16:33 *offby1* is surprised that he never ran into Lisp_Curse.html before 16:17:35 keenbug_ [~daniel@p4FE3ABE6.dip.t-dialin.net] has joined #scheme 16:17:35 -!- keenbug_ is now known as keenbug 16:22:13 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 248 seconds] 16:24:01 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 16:26:55 -!- jrslepak [~jrslepak@c-71-233-148-123.hsd1.ma.comcast.net] has quit [Quit: This computer has gone to sleep] 16:27:08 add^_ [~add^_^@m90-141-49-231.cust.tele2.se] has joined #scheme 16:30:59 ijp`` [~user@host31-52-140-17.range31-52.btcentralplus.com] has joined #scheme 16:31:18 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 245 seconds] 16:32:19 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 16:32:35 -!- ijp` [~user@host86-173-112-187.range86-173.btcentralplus.com] has quit [Ping timeout: 246 seconds] 16:34:04 -!- ijp`` is now known as ipj 16:34:08 -!- ipj is now known as ijp 16:44:37 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 245 seconds] 16:55:42 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 17:02:13 MichaelRaskin [~MichaelRa@3ad50e34.broker.freenet6.net] has joined #scheme 17:04:25 tomobrien [~tomobrien@host-92-2-79-163.as43234.net] has joined #scheme 17:07:16 -!- acedia [~garland@unaffiliated/ffs] has quit [Quit: One likes to believe in the freedom of music] 17:26:31 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 264 seconds] 17:26:36 -!- tom_i [~thomasing@ingserv.demon.co.uk] has quit [Ping timeout: 252 seconds] 17:31:03 Radium [~carbon@117.203.11.193] has joined #scheme 17:34:18 klutometis: it just occured to me that I actually want to transform a DAG to a tree of a certain form, AST actually 17:35:33 and I'm not really sure if this can be solved in generic case. some variants where a certain node is shared across multiple conditionals may be not representable in AST 17:37:45 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 17:42:46 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Remote host closed the connection] 17:43:01 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 17:44:06 jonrafkind [~jon@crystalis.cs.utah.edu] has joined #scheme 17:51:12 homie` [~levgue@xdsl-84-44-155-112.netcologne.de] has joined #scheme 17:52:47 RomyRomy [~stickycak@207.239.107.3] has joined #scheme 17:52:58 turbofail [~user@c-24-5-89-172.hsd1.ca.comcast.net] has joined #scheme 17:53:34 -!- homie [~levgue@xdsl-78-35-151-115.netcologne.de] has quit [Ping timeout: 260 seconds] 17:55:32 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 246 seconds] 17:57:12 -!- attila_lendvai1 [~attila_le@87.247.63.68] has quit [Quit: Leaving.] 17:57:41 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 17:57:44 kk` [~kk@unaffiliated/kk/x-5380134] has joined #scheme 18:02:09 barryfm [~barryfm@fl-67-232-182-18.dhcp.embarqhsd.net] has joined #scheme 18:06:18 -!- jakky [~jokk@2001:470:33:2::1ce] has quit [Ping timeout: 245 seconds] 18:08:56 jakky [~jokk@2001:470:33:2::1ce] has joined #scheme 18:09:07 -!- CampinSam [~CampinSam@24-176-98-217.dhcp.jcsn.tn.charter.com] has quit [Quit: leaving] 18:09:32 -!- estevocastro [estevocast@nat/hackerschool.com/x-waixarvklbjwvsxb] has quit [Ping timeout: 246 seconds] 18:13:59 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 260 seconds] 18:14:56 -!- pygospa [~Pygosceli@kiel-5f76838a.pool.mediaWays.net] has quit [Disconnected by services] 18:15:06 pygospa [~Pygosceli@kiel-4d066484.pool.mediaWays.net] has joined #scheme 18:15:45 CampinSam [~CampinSam@24-176-98-217.dhcp.jcsn.tn.charter.com] has joined #scheme 18:17:19 klutometis: do you have any essays to cite here? http://www.quora.com/Computer-Programming/What-are-some-essays-all-programmers-should-read actually a lot of people here probably have things to cite 18:17:21 http://tinyurl.com/7u78aza 18:19:07 -!- m4burns [~m4burns@artificial-flavours.csclub.uwaterloo.ca] has quit [Quit: leaving] 18:20:58 noam_ [~noam@37.142.141.69] has joined #scheme 18:22:02 -!- em [~em@unaffiliated/emma] has quit [Ping timeout: 244 seconds] 18:22:14 -!- noam [~noam@37.142.141.69] has quit [Read error: Connection reset by peer] 18:25:03 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 18:26:04 soveran_ [~soveran@186.19.214.247] has joined #scheme 18:26:04 -!- soveran [~soveran@186.19.214.247] has quit [Read error: Connection reset by peer] 18:27:33 -!- soveran_ is now known as soveran 18:27:44 -!- homie` [~levgue@xdsl-84-44-155-112.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 18:29:51 -!- barryfm [~barryfm@fl-67-232-182-18.dhcp.embarqhsd.net] has left #scheme 18:29:57 -!- leo2007 [~leo@123.114.43.98] has quit [Quit: rcirc on GNU Emacs 24.0.95.1] 18:30:22 kudkudyak [~user@94.72.150.209] has joined #scheme 18:33:50 ssbr_ [~ssbr@python/site-packages/ssbr] has joined #scheme 18:34:11 leo2007 [~leo@123.114.43.98] has joined #scheme 18:41:26 homie [~levgue@xdsl-84-44-155-112.netcologne.de] has joined #scheme 18:43:29 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 246 seconds] 18:44:30 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 18:44:55 -!- homie [~levgue@xdsl-84-44-155-112.netcologne.de] has quit [Read error: Connection reset by peer] 18:45:22 -!- CampinSam [~CampinSam@24-176-98-217.dhcp.jcsn.tn.charter.com] has quit [Quit: leaving] 18:46:07 -!- mgsk [~mark@li357-97.members.linode.com] has quit [Quit: WeeChat 0.3.5] 18:46:33 homie [~levgue@xdsl-84-44-155-112.netcologne.de] has joined #scheme 18:46:50 FreeArtMan [~fam@93.177.213.54] has joined #scheme 18:47:49 wingo [~wingo@173-8-133-100-SFBA.hfc.comcastbusiness.net] has joined #scheme 18:48:51 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 252 seconds] 18:49:54 -!- homie [~levgue@xdsl-84-44-155-112.netcologne.de] has quit [Client Quit] 18:50:10 riverswain [~avery@24.49.129.66] has joined #scheme 18:52:14 CampinSam [~CampinSam@24-176-98-217.dhcp.jcsn.tn.charter.com] has joined #scheme 18:54:59 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 18:55:09 homie [~levgue@xdsl-84-44-155-112.netcologne.de] has joined #scheme 19:00:13 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 252 seconds] 19:01:21 -!- riverswain [~avery@24.49.129.66] has left #scheme 19:06:42 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 19:10:39 -!- FreeArtMan [~fam@93.177.213.54] has quit [Quit: Out of this 3D] 19:15:38 qu1j0t3: Cool; I'll try to add to that. Someone wrote recently that quora is a dead horse; there's life there yet? 19:18:29 whitequark: Hmm; it seems like a DAG would be unavoidable in that case. 19:19:26 spanner [~quassel@128.249.96.10] has joined #scheme 19:20:49 klutometis: who cares. i'll stop using it when i want to, not when some blogger tires of it. ;-) 19:21:06 qu1j0t3: Good call. 19:21:52 klutometis: :) 19:22:46 klutometis: well, I already have DAG 19:22:59 it's the part of CFG I'm working on 19:23:57 whitequark: Right; but you're trying to go from DAG to AST, right? 19:24:09 -!- tomodo [~tomodo@gateway/tor-sasl/tomodo] has quit [Remote host closed the connection] 19:24:34 chturne [~chturne@host86-136-158-113.range86-136.btcentralplus.com] has joined #scheme 19:25:29 klutometis: yeah. I assume that my CFG is reducible, i.e. only has natural loops. this statement is equivalent to the fact that its can be split to a fully connected DAG and several "back edges" when an edge goes from a basic block to its dominator 19:26:28 each back edge defines a loop (or a part of it). I take the part from a loop header until the back edge, which is a DAG, and then try to split it up to several `if'-like structures 19:26:58 -!- spanner [~quassel@128.249.96.10] has left #scheme 19:27:48 well, the fun part is that I can have several edges going outside of that sub-DAG 19:27:53 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 250 seconds] 19:28:01 they would be `break', `continue', `return' statements 19:28:26 -!- realitygrill [~realitygr@adsl-76-226-120-139.dsl.sfldmi.sbcglobal.net] has quit [Read error: Connection reset by peer] 19:29:16 and also I have some problems which involve sharing a particular base block between several conditionals. they arise when there's some interesting nesting where several if's return to one point, or when a particular combination of if-else if-else statements is present 19:30:35 jlongster [~user@pool-96-253-85-90.rcmdva.fios.verizon.net] has joined #scheme 19:31:58 klutometis: I had several ideas involving recursive parsing of the graph with "stoplists". that is, a parent conditional would list the parts it would like to consume by itself to the child parsers, and thus restrict them to a smaller sub-DAG 19:32:14 but this seems pretty much like a hack which would break on some funny layout I won't predict now 19:32:17 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 19:32:22 realitygrill [~realitygr@76.226.117.186] has joined #scheme 19:32:50 estevocastro [estevocast@nat/hackerschool.com/x-jltdrzyvugqnjlba] has joined #scheme 19:34:47 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Remote host closed the connection] 19:40:24 chrissbx [~chrissbx@nomad.ccs.neu.edu] has joined #scheme 19:40:39 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 19:43:46 tom_i [~thomasing@ingserv.demon.co.uk] has joined #scheme 19:45:33 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 260 seconds] 19:47:06 pdponze [~pierre@37.0.41.146] has joined #scheme 19:48:52 -!- _schulte_ [~eschulte@c-174-56-50-60.hsd1.nm.comcast.net] has quit [Ping timeout: 252 seconds] 19:50:16 -!- homie [~levgue@xdsl-84-44-155-112.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 19:51:32 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 19:52:24 homie [~levgue@xdsl-84-44-155-112.netcologne.de] has joined #scheme 19:54:23 brcrth [~user@unaffiliated/brcrth] has joined #scheme 19:55:10 emma_ [~em@unaffiliated/emma] has joined #scheme 19:57:00 -!- emma_ is now known as em 19:57:23 -!- em is now known as emma 19:57:30 -!- emma is now known as em 19:58:23 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 246 seconds] 19:59:11 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 20:01:21 tuubow_ [~adityavit@NYUFGA-WLESSAUTHCLIENTS-02.NATPOOL.NYU.EDU] has joined #scheme 20:02:13 -!- tuubow_ [~adityavit@NYUFGA-WLESSAUTHCLIENTS-02.NATPOOL.NYU.EDU] has quit [Remote host closed the connection] 20:02:14 -!- tom_i [~thomasing@ingserv.demon.co.uk] has quit [Ping timeout: 246 seconds] 20:02:50 -!- brcrth [~user@unaffiliated/brcrth] has left #scheme 20:05:49 -!- leo2007 [~leo@123.114.43.98] has quit [Quit: rcirc on GNU Emacs 24.0.95.1] 20:07:09 -!- estevocastro [estevocast@nat/hackerschool.com/x-jltdrzyvugqnjlba] has quit [Ping timeout: 246 seconds] 20:14:18 -!- gravicappa [~gravicapp@ppp91-77-183-6.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 20:15:26 -!- copumpkin is now known as BTC_Bull 20:15:30 es [estevocast@nat/hackerschool.com/x-thfxrmcdcmhrxrmv] has joined #scheme 20:15:35 -!- es [estevocast@nat/hackerschool.com/x-thfxrmcdcmhrxrmv] has quit [Remote host closed the connection] 20:15:59 estevocastro [estevocast@nat/hackerschool.com/x-akzrwdxbsgspxhkq] has joined #scheme 20:17:59 -!- jewel [~jewel@196-209-224-252.dynamic.isadsl.co.za] has quit [Ping timeout: 246 seconds] 20:18:02 -!- Radium [~carbon@117.203.11.193] has quit [] 20:18:24 -!- wingo [~wingo@173-8-133-100-SFBA.hfc.comcastbusiness.net] has quit [Ping timeout: 260 seconds] 20:19:44 -!- kudkudyak [~user@94.72.150.209] has quit [Ping timeout: 245 seconds] 20:20:29 Radium [~carbon@117.203.11.193] has joined #scheme 20:21:26 whitequark: out of curiosity, why do you need this? are you writing a decompiler? 20:22:00 langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has joined #scheme 20:23:56 -!- mmc1 [~michal@178-85-63-71.dynamic.upc.nl] has quit [Ping timeout: 246 seconds] 20:24:13 the reason I ask is that I wonder if there's another way to accomplish your goal without trying to convert the graph into a set of structures without gotos, which I'm not convinced is possible in the general case. 20:25:35 -!- Radium [~carbon@117.203.11.193] has quit [] 20:25:52 -!- BTC_Bull is now known as copumpkin 20:26:33 perhaps a better strategy is to generalize the next stage of your code, so that it accepts its input in a different form than nested-ifs. 20:27:44 -!- woonie [~woonie@137.132.254.15] has quit [Ping timeout: 252 seconds] 20:30:03 Radium [~carbon@117.203.11.193] has joined #scheme 20:30:04 -!- Radium [~carbon@117.203.11.193] has quit [Max SendQ exceeded] 20:30:12 -!- pdponze [~pierre@37.0.41.146] has left #scheme 20:30:21 Radium [~carbon@117.203.11.193] has joined #scheme 20:32:43 -!- pothos [~pothos@114-36-228-106.dynamic.hinet.net] has quit [Read error: Connection reset by peer] 20:32:58 -!- Radium [~carbon@117.203.11.193] has quit [Client Quit] 20:34:20 Radium [~carbon@117.203.11.193] has joined #scheme 20:34:20 -!- Radium [~carbon@117.203.11.193] has quit [Max SendQ exceeded] 20:36:15 pothos [~pothos@114-36-245-126.dynamic.hinet.net] has joined #scheme 20:38:45 _schulte_ [~eschulte@c-174-56-50-60.hsd1.nm.comcast.net] has joined #scheme 20:38:48 Radium [~carbon@117.203.11.193] has joined #scheme 20:38:48 -!- Radium [~carbon@117.203.11.193] has quit [Max SendQ exceeded] 20:39:05 normally it is not possible to convert a CFG to the restricted form you describe, and I wonder why you assume it is in your case. 20:39:07 Radium [~carbon@117.203.11.193] has joined #scheme 20:39:08 -!- Radium [~carbon@117.203.11.193] has quit [Max SendQ exceeded] 20:39:24 Radium [~carbon@117.203.11.193] has joined #scheme 20:39:25 -!- Radium [~carbon@117.203.11.193] has quit [Max SendQ exceeded] 20:39:42 Radium [~carbon@117.203.11.193] has joined #scheme 20:39:44 s/normally/in the general case/ 20:40:36 in scheme, lambda provides the full power of goto with arguments. 20:43:22 -!- Radium [~carbon@117.203.11.193] has quit [Client Quit] 20:44:33 Radium [~carbon@117.203.11.193] has joined #scheme 20:44:34 -!- Radium [~carbon@117.203.11.193] has quit [Max SendQ exceeded] 20:44:49 Radium [~carbon@117.203.11.193] has joined #scheme 20:44:50 -!- Radium [~carbon@117.203.11.193] has quit [Max SendQ exceeded] 20:45:01 djcb [~user@a88-114-95-13.elisa-laajakaista.fi] has joined #scheme 20:45:06 Radium [~carbon@117.203.11.193] has joined #scheme 20:45:06 -!- Radium [~carbon@117.203.11.193] has quit [Max SendQ exceeded] 20:45:25 Radium [~carbon@117.203.11.193] has joined #scheme 20:45:26 -!- Radium [~carbon@117.203.11.193] has quit [Max SendQ exceeded] 20:45:43 Radium [~carbon@117.203.11.193] has joined #scheme 20:45:44 -!- Radium [~carbon@117.203.11.193] has quit [Max SendQ exceeded] 20:46:01 Radium [~carbon@117.203.11.193] has joined #scheme 20:46:02 -!- Radium [~carbon@117.203.11.193] has quit [Max SendQ exceeded] 20:46:22 Radium [~carbon@117.203.11.193] has joined #scheme 20:46:23 -!- Radium [~carbon@117.203.11.193] has quit [Max SendQ exceeded] 20:46:41 Radium [~carbon@117.203.11.193] has joined #scheme 20:46:42 -!- Radium [~carbon@117.203.11.193] has quit [Max SendQ exceeded] 20:47:00 Radium [~carbon@117.203.11.193] has joined #scheme 20:47:28 -!- Radium [~carbon@117.203.11.193] has quit [Client Quit] 20:52:16 jao [~user@160.Red-81-39-169.dynamicIP.rima-tde.net] has joined #scheme 20:52:30 -!- jao [~user@160.Red-81-39-169.dynamicIP.rima-tde.net] has quit [Changing host] 20:52:30 jao [~user@pdpc/supporter/professional/jao] has joined #scheme 20:52:57 wingo [~wingo@173-8-133-100-SFBA.hfc.comcastbusiness.net] has joined #scheme 20:53:54 mark_weaver: As a proof-of-concept, he's writing an actionscript decompiler; apparently. 20:54:38 mark_weaver: for the general idea. 20:55:34 whitequark: Yeah; stoplists seems a little ad-hoc and fragile. 20:56:50 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 246 seconds] 20:57:45 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 20:58:07 Radium [~carbon@117.203.2.22] has joined #scheme 20:58:08 -!- Radium [~carbon@117.203.2.22] has quit [Max SendQ exceeded] 20:58:13 -!- MichaelRaskin [~MichaelRa@3ad50e34.broker.freenet6.net] has quit [Remote host closed the connection] 20:58:26 Radium [~carbon@117.203.2.22] has joined #scheme 20:58:27 -!- Radium [~carbon@117.203.2.22] has quit [Max SendQ exceeded] 20:58:30 MichaelRaskin [~MichaelRa@3ad50e34.broker.freenet6.net] has joined #scheme 20:58:42 Radium [~carbon@117.203.2.22] has joined #scheme 20:58:42 -!- Radium [~carbon@117.203.2.22] has quit [Max SendQ exceeded] 20:59:00 Radium [~carbon@117.203.2.22] has joined #scheme 20:59:01 -!- Radium [~carbon@117.203.2.22] has quit [Max SendQ exceeded] 20:59:17 Radium [~carbon@117.203.2.22] has joined #scheme 21:00:19 I've fallen into the habit of using `(or (and-let* ) )' instead of the classic `(if )'. 21:00:32 Is this pathological? It's an idiom I picked up from Oleg. 21:01:41 -!- arcfide [~arcfide@c-98-223-204-153.hsd1.in.comcast.net] has quit [Quit: Leaving] 21:02:48 klutometis: nooo, use (cond ( => ) (else )) 21:06:17 but i also sometimes almost wrote (or (and ) ) ^^ 21:08:49 I like arc:if 21:09:20 mark_weaver: yeah, I write a decompiler 21:09:20 -!- Radium [~carbon@117.203.2.22] has quit [K-Lined] 21:09:26 klutometis: I already invented a way 21:09:34 it's quite trivial actually 21:10:14 if one of the `if' branches has exactly one edge coming to it (not counting edges from nodes it dominates), then it's an `else'-branch 21:10:28 otherwise, I have a one-legged `if' 21:11:05 http://paste.lisp.org/display/128860 21:11:38 adu: O_O 21:12:02 that's how (if) works in arc 21:12:20 That sounds very magical. Like a hybrid between if and cond. 21:12:25 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 246 seconds] 21:12:27 *qu1j0t3* swoons 21:12:44 cky: it is cond without parens 21:13:06 Why does that somehow remind me of Clojure? 21:13:17 Oh, that's right. Clojure has let without the parens around the bindings. 21:13:26 bfgun [~b_fin_g@r186-53-166-46.dialup.adsl.anteldata.net.uy] has joined #scheme 21:13:53 Arc and Clojure have lots of orphans? 21:14:08 pdponze [~pierre@37.0.41.146] has joined #scheme 21:17:08 -!- bfig [~b_fin_g@r186-53-151-112.dialup.adsl.anteldata.net.uy] has quit [Ping timeout: 260 seconds] 21:17:24 klutometis: this way I also get rid of merge point searching, which was ad-hoc too and frequently failed when the "merge point" was actually the exit ndoe 21:17:27 *node 21:17:30 -!- antithesis [~antithesi@81.71.110.7] has quit [Remote host closed the connection] 21:17:32 -!- stis [~stis@1-1-1-39a.veo.vs.bostream.se] has left #scheme 21:18:29 -!- dzhus [~sphinx@176.14.94.92] has quit [Remote host closed the connection] 21:18:52 rudybot: is adu a bad person for writing that macro? 21:18:53 ijp: adu, I really don't care about the primitives of the universe 21:19:21 hmm 21:19:44 -!- keenbug [~daniel@p4FE3ABE6.dip.t-dialin.net] has quit [Ping timeout: 245 seconds] 21:20:11 pierreghz_ [~pierreghz@cust-62-30-111-94.dyn.as47377.net] has joined #scheme 21:20:13 klutometis: I've seen 'and' and 'or' used that way in python, but not in scheme 21:20:43 idiomatic scheme anyway 21:21:30 And Python even introduced syntax to avoid that use 21:21:52 iffsid [~user@pal-160-041.itap.purdue.edu] has joined #scheme 21:23:40 what's an orphan? 21:23:53 Something without parens :-( 21:24:11 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 21:24:49 *offby1* learned a new term recently from #clojure: "earmuffs". Those are the asterisks around a top-level variable name *like-this* 21:24:50 *offby1* nods gravely 21:25:02 >_< 21:25:16 no, those are Star Trek glasses. 21:25:49 phax [~phax@cpc14-haye17-2-0-cust110.haye.cable.virginmedia.com] has joined #scheme 21:25:49 -!- phax [~phax@cpc14-haye17-2-0-cust110.haye.cable.virginmedia.com] has quit [Changing host] 21:25:49 phax [~phax@unaffiliated/phax] has joined #scheme 21:26:23 *hat* <== so that's earmuffs and a hat? 21:27:46 *ō* <= giant ear muffs and a hat 21:28:08 -!- kuribas [~user@d54C43316.access.telenet.be] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 21:28:26 though I think offby1 is right, glasses is more appropriate 21:29:03 cky: actually clojure has many similar forms to arc 21:29:18 So I've noticed. 21:29:44 *ijp* is suprised arc is still alive 21:29:52 I don't think it is 21:29:58 but the website is up 21:30:15 adu: it feeds on attention; if we're still talking about it, it is alive :P 21:30:39 it doesn't look like it's changed much since 2008 21:31:46 anyways, any time anyone starts talking about axioms, beauty, elegance, and optimization of ideas, it's bound to attract someone 21:32:22 adu: Is that a comment about Haskell? 21:32:35 and conversely, pragmatists tend to shun such discussion 21:32:52 pragmatists also live happier lives 21:32:53 cky: I don't know, it might be 21:33:21 I'm still reading the curse of lisp 21:33:28 ijp: Not letting perfection being the enemy of good? :-) 21:33:43 Does "curse of lisp" say anything else than "worse is better" did? 21:33:44 no, they just get in less flame wars 21:34:05 forcer: I think I got the link from this channel, or #lisp or somewhere: http://www.winestockwebdesign.com/Essays/Lisp_Curse.html 21:34:44 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 245 seconds] 21:35:44 -!- pierreghz_ [~pierreghz@cust-62-30-111-94.dyn.as47377.net] has quit [Quit: Quitte] 21:39:13 jcowan [~John@mail.digitalkingdom.org] has joined #scheme 21:41:03 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 21:41:50 -!- phax [~phax@unaffiliated/phax] has quit [Quit: Leaving] 21:43:49 jhemann__ [~Jason@adsl-99-137-201-46.dsl.bltnin.sbcglobal.net] has joined #scheme 21:44:36 hoi 21:44:43 jrslepak [~jrslepak@c-71-233-148-123.hsd1.ma.comcast.net] has joined #scheme 21:47:33 -!- jhemann_ [~Jason@adsl-99-14-210-20.dsl.bltnin.sbcglobal.net] has quit [Ping timeout: 245 seconds] 21:47:41 -!- cdidd [~cdidd@128-72-20-190.broadband.corbina.ru] has quit [Remote host closed the connection] 21:48:40 hey 21:48:53 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 252 seconds] 21:49:42 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 21:50:17 -!- langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has quit [Ping timeout: 272 seconds] 21:50:54 -!- iffsid [~user@pal-160-041.itap.purdue.edu] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 21:53:29 -!- realitygrill [~realitygr@76.226.117.186] has quit [Quit: Computer has gone to sleep] 21:55:59 nowhere_man [~pierre@AStrasbourg-551-1-132-131.w90-26.abo.wanadoo.fr] has joined #scheme 21:57:10 -!- estevocastro [estevocast@nat/hackerschool.com/x-akzrwdxbsgspxhkq] has quit [Ping timeout: 276 seconds] 21:59:15 Radium [~carbon@117.203.2.33] has joined #scheme 22:00:47 klutometis: it's even simpler than that, actually. it was obvious. 22:01:21 if a branch target is dominated by block which contains the branch instruction, then it may be either `if's body or `else's body 22:01:55 if they're both dominated by the branch instruction, then it doesn't really matter which one will go to `if' and which one to `else', I just need to reverse the condition accordingly 22:02:13 if one of them is not dominated, then the conditional is one-legged 22:02:31 and if none of them is dominated, then something quite wrong is going on 22:03:20 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Quit: .] 22:07:15 -!- hiato [~nine@clam.leg.uct.ac.za] has quit [Ping timeout: 260 seconds] 22:09:28 hiato [~nine@clam.leg.uct.ac.za] has joined #scheme 22:13:19 -!- amoe [~amoe@host-78-147-156-35.as13285.net] has quit [Ping timeout: 264 seconds] 22:13:38 realitygrill [~realitygr@thewall.novi.lib.mi.us] has joined #scheme 22:14:42 amoe [~amoe@host-78-147-173-220.as13285.net] has joined #scheme 22:24:27 -!- adu [~ajr@pool-71-241-252-15.washdc.fios.verizon.net] has quit [Read error: Connection reset by peer] 22:25:07 adu [~ajr@pool-71-241-252-15.washdc.fios.verizon.net] has joined #scheme 22:25:27 -!- maahes [~maahes@cpe-98-148-196-131.socal.res.rr.com] has quit [Read error: Connection reset by peer] 22:26:33 -!- adu [~ajr@pool-71-241-252-15.washdc.fios.verizon.net] has quit [Read error: Connection reset by peer] 22:27:07 adu [~ajr@pool-71-241-252-15.washdc.fios.verizon.net] has joined #scheme 22:28:15 -!- adu [~ajr@pool-71-241-252-15.washdc.fios.verizon.net] has quit [Read error: Connection reset by peer] 22:28:17 -!- Radium [~carbon@117.203.2.33] has quit [] 22:28:42 adu [~ajr@pool-71-241-252-15.washdc.fios.verizon.net] has joined #scheme 22:35:19 -!- homie [~levgue@xdsl-84-44-155-112.netcologne.de] has quit [Read error: Connection reset by peer] 22:35:53 -!- RomyRomy [~stickycak@207.239.107.3] has quit [Quit: RomyRomy] 22:36:54 homie [~levgue@xdsl-84-44-155-112.netcologne.de] has joined #scheme 22:37:50 -!- copumpkin [~copumpkin@unaffiliated/copumpkin] has quit [Quit: Computer has gone to sleep.] 22:50:35 -!- jonrafkind [~jon@crystalis.cs.utah.edu] has quit [Ping timeout: 246 seconds] 22:55:29 -!- jcowan [~John@mail.digitalkingdom.org] has quit [Quit: Leaving] 23:00:05 copumpkin [~copumpkin@unaffiliated/copumpkin] has joined #scheme 23:01:09 -!- mekeor [~user@dslb-092-075-226-158.pools.arcor-ip.net] has quit [Quit: goodbye guys; keep it dependently-typed, purely-functional and lazily-evaluated!! ;)] 23:15:29 -!- soveran [~soveran@186.19.214.247] has quit [Remote host closed the connection] 23:18:14 klutometis, I have not tried ublog, twitel, or TwIt, no. I tried Blogmax way, way back in the day, but I hear that org-mode is the way to do that these days. 23:18:28 klutometis, I really do enjoy twittering-mode, though. It has consistently impressed me. 23:18:36 klutometis, I'm glad you like it too! 23:22:02 -!- realitygrill [~realitygr@thewall.novi.lib.mi.us] has quit [Quit: Get MacIrssi - http://www.sysctl.co.uk/projects/macirssi/] 23:22:19 -!- leppie [~lolcow@196-210-248-48.dynamic.isadsl.co.za] has quit [Ping timeout: 276 seconds] 23:24:50 soveran [~soveran@186.19.214.247] has joined #scheme 23:27:30 leppie [~lolcow@196-210-148-66.dynamic.isadsl.co.za] has joined #scheme 23:28:44 -!- chturne [~chturne@host86-136-158-113.range86-136.btcentralplus.com] has quit [Ping timeout: 246 seconds] 23:33:43 -!- adu [~ajr@pool-71-241-252-15.washdc.fios.verizon.net] has quit [Quit: adu] 23:33:55 klutometis: no, unfortunately I was wrong and this won't work. 23:34:44 adu [~ajr@pool-71-241-252-15.washdc.fios.verizon.net] has joined #scheme 23:34:58 -!- adu [~ajr@pool-71-241-252-15.washdc.fios.verizon.net] has quit [Client Quit] 23:36:10 -!- add^_ [~add^_^@m90-141-49-231.cust.tele2.se] has quit [Quit: add^_] 23:37:30 -!- chrissbx [~chrissbx@nomad.ccs.neu.edu] has quit [Read error: Operation timed out] 23:39:27 -!- aking [~aking@67.23.13.119] has quit [Quit: leaving] 23:43:19 -!- samth is now known as samth_away 23:48:34 -!- leppie [~lolcow@196-210-148-66.dynamic.isadsl.co.za] has quit [Ping timeout: 244 seconds] 23:48:43 kvda [~textual@202.58.240.18] has joined #scheme 23:50:33 -!- tomobrien [~tomobrien@host-92-2-79-163.as43234.net] has quit [Ping timeout: 260 seconds]