00:00:26 read the theory of java, but didn't like it so searched for other nice languages - ended up with scheme . 00:00:28 zacts [~blueberry@unaffiliated/zacts] has joined #scheme 00:00:41 I like the SICP videos at http://www.youtube.com/playlist?list=PLE18841CABEA24090 00:00:51 I also like The Little Schemer. 00:00:52 ok, sorry my questions i want to understand the background 00:01:09 so any thoughts on the code? 00:01:32 is too complex for the problem 00:02:03 you can use let for local variables, don't need define 00:02:28 each define can be distinct, like functions in c 00:03:15 this is more about style, keep it simple 00:05:18 try to use a recursive solution, is about traversing a structure 00:05:53 *aranhoide* seconds the "The Little Schemer" recommendation 00:07:46 I also like the little schemer 00:08:08 little schemer ftw 00:08:24 but that code used recursion 00:09:08 pumpkin360: why the ! in insert! ? it doesn't have side effects 00:10:24 You mean the inner one? That's true, originally it worked a bit diffrent. Thanks. 00:10:46 also, have you tested it to work? I mean, what type of advice are you looking for? 00:11:04 about coding style 00:11:33 checked in only one the tests on the bottom of the code. 00:11:43 and they seem to work 00:11:55 try a deeper structure 00:12:03 ? 00:12:19 ok. 00:12:27 is only one level, try something more complex 00:12:49 2 levels I guess 00:14:46 also, "rest" is perhaps not the most fortunate name for the first parameter of insert! 00:15:14 how should I name thing through which I iterate ? 00:16:47 carleastlund [~carleastl@209-6-40-238.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 00:16:56 concerning the correctness - checked some more test right now (created by hand), nevertheless it doesn't matter - if I wanted to check it I would created a 20 line python program generating manymany random trees, just want to learn how should programs look in scheme :) 00:17:26 *create 00:18:11 pumpkin360: there is a lot of variation in that. in most real world Schemes you would use tools that SICP doesn't introduce at all, like macros, records, (library-defined) sets and hashtables, etc 00:18:16 I wouldn't worry too much about that 00:19:03 yeah, I want to learn macros as they are known as the strength of lisp languages 00:19:12 a good book for that (in Common Lisp, alas, but it introduces enough of it that you can probably pick it up) is Paradigms of Artificial Intelligence Programming, by Peter Norvig 00:19:16 (for style, that is) 00:19:23 -!- jao [~jao@pdpc/supporter/professional/jao] has quit [Remote host closed the connection] 00:19:49 paul graham 'on lisp' too 00:19:51 heh. Was going to read it just after SICP. 00:20:06 for macros On Lisp by Paul Graham, and Let Over Lambda, by Doug Hoyte 00:20:19 oops, rszeno beat me to it 00:20:50 but not learn coding, it is more the AI which I wanted to learn from it. 00:21:11 it's a bit outdated on the AI. still superb on the coding :) 00:21:42 for the AI: Norvig and Russel's "Artificial Intelligence, A Modern Approach" 00:21:45 :), the avantage of paul graham book is that you see another way to look to the problems you solve then before 00:22:15 but I know just a little bit in AI and have no experience at all so it will most likely be enough for me. 00:22:33 jao [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has joined #scheme 00:22:36 -!- jao [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has quit [Changing host] 00:22:36 jao [~jao@pdpc/supporter/professional/jao] has joined #scheme 00:23:24 so there are to books from Norvig... I'm getting confussed right now. 00:24:24 what about practical common lisp - I heard that it is really good. 00:24:50 pumpkin360: yes, both are worth it. as I said, PAIP is more for the programming style and wisdom, and AIMA for the AI 00:25:18 a fun intro to AI, depending on your taste: https://www.udacity.com/course/cs271 00:25:52 pumpkin360: never read it, but you don't need a CL text unless you want to program in CL 00:26:39 if you want to learn style and macro usage, you should be good with your knowledge of Scheme and PAIP's intro to CL in chapter 3 00:27:13 I think that gives you enough CL so you can follow those books and then apply what you learn in Scheme, if that was your idea 00:28:05 (pick a scheme with unhygienic macros if you want to do use some of the tricks in CL books, though) 00:28:10 so I should just end reading SICP, read a little bit of PAIP and can finally start reading AIMA? 00:28:51 AIMA has no prerequisites. SICP is always a good idea, and PAIP is an excellent next step IMHO 00:29:36 whole PAIP or just the chapter 3? 00:29:37 you can have a taste of AIMA following the course I linked above, which uses it as reference (but is a non-exhaustive guided tour) 00:29:43 if i'm wrong is somewhere the code for both aima and paip in scheme 00:30:05 whole PAIP. chapter 3 is just a review of Common Lisp for people that come from other Lisps 00:31:07 -!- outxie [~outxie@86.Red-79-159-6.staticIP.rima-tde.net] has quit [Quit: outxie] 00:31:31 ahhh... wanted to get to AIMA. But would like to code in some language prior to reading it. 00:31:46 rszeno: probably, I don't know. I find it more convenient to just learn enough CL to follow the examples from the book 00:32:59 thanks for the help. 00:33:33 pumpkin360: any language is fine for AIMA. the book itself uses pseudocode, and there are translations to other programming languages in the book's website I think 00:33:36 i'm primary lisp oriented, but since pumpkin360 want to learn scheme, :) 00:34:09 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 00:35:00 pumpkin360: although you'll probably have a harder time than necessary if you pick a language that is too low level. Python or Scheme should be fine, though 00:35:39 but python is very limited and don't really like it since I'm using scheme. 00:36:17 it is faster to write short programs in python but after all AI programs aren't usually so short. 00:37:06 this is not realy true, :) 00:37:39 about the short programs ? 00:37:49 yes 00:38:08 see agents 00:38:45 by short programs I mean 3-10 line programs, most often counting something. 00:38:48 :) 00:38:57 pumpkin360: I don't find Python that limited, but I too prefer Scheme 00:38:59 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 256 seconds] 00:39:07 you can't go too wrong with either, for learning purposes 00:39:12 -!- acarrico1 [~acarrico@cable54-3-142.stoweaccess.com] has quit [Remote host closed the connection] 00:39:47 python isn't *that* limited, it is just very limited in comparison to scheme :) 00:40:56 things like lazy evaluation are a little bit limited in python 00:41:54 not arguing with that, but don't let it stop you from checking out some pretty good learning resources out there that use Python as a language for lessons and exercises 00:42:01 e.g. https://www.udacity.com/course/cs212 00:42:24 (and that's the last bit of Norvig fanboyism from me today ;) ) 00:42:51 or https://www.udacity.com/course/cs373 if you're into that 00:43:43 -!- alexei___ [~amgarchin@p4FD609E5.dip0.t-ipconnect.de] has quit [Ping timeout: 264 seconds] 00:44:05 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 256 seconds] 00:44:20 I don't know is it good or bad, but I felt disappointed when they changed from scheme to python on the MIT course from which SICP originated 00:45:22 worst is better 00:45:42 Python is not the worst. 00:45:44 yet it gets a lot worse than Python 00:45:48 heh 00:45:54 mmm ... wurst ... 00:46:59 -!- joneshf-laptop [~joneshf@mail.concordusapps.com] has quit [Remote host closed the connection] 00:47:07 *rszeno* i was thinking to html5 not python and today trend, :) 00:47:09 teaching SICP with python 00:47:13 *leku* shakes head 00:48:06 forgot to ask - earlier many people adviced little schemer for programming style, how does it compare to PAIP? 00:48:53 are different things, first is about scheme second about ai 00:49:06 how can be compared? 00:49:51 but from what aranhoide told, PAIP is every good for learning to make programs (and a bit outdated for AI) 00:50:24 yes but ai is not lisp, scheme or python or any other language 00:50:30 -!- pierpa [~user@host126-61-dynamic.41-79-r.retail.telecomitalia.it] has quit [Ping timeout: 256 seconds] 00:50:38 little schemer is not for programming style at all; it uses an even more restricted scheme than SICP 00:50:47 it's for concepts, like SICP 00:50:49 and as was said, you can write code in any language for ai 00:50:51 and it's a fun read 00:51:18 does it overlap very much with SICP ? 00:51:21 rszeno: any reasonably high level language. you can write AI in C but it's more painful 00:51:43 right tool for the right task, :) 00:51:45 -!- miql [~miql@ip68-98-19-126.ph.ph.cox.net] has quit [Ping timeout: 245 seconds] 00:52:23 pumpkin360: I'd actually get The Little Schemer right away. even if the topics overlap somewhat, the treatment is so different that it's worth reading both 00:52:45 before the language is the programmer 00:52:49 The Little Schemer is all questions and answers 00:52:58 writting AI in C is a very good idea. Why not, there were many very good programs written in C - Quake :). 00:53:33 for production code it may be. for learning you're just giving yourself a lot more work 00:53:50 who wrote the little schemer? 00:53:51 harvey? 00:54:17 pjb` [~t@AMontsouris-651-1-111-59.w83-202.abo.wanadoo.fr] has joined #scheme 00:54:18 even for production c need a lot of code 00:54:32 Friedman & Felleisen 00:54:52 -!- pjb [~user@AMontsouris-651-1-93-94.w82-123.abo.wanadoo.fr] has quit [Read error: Operation timed out] 00:55:47 leku ^ 00:55:51 AI in awk: http://www.wra1th.plus.com/awk/awkfri.txt (and also, http://www.gnu.org/software/gawk/manual/gawkinet/ ) 00:55:59 ty 00:56:59 miql [~miql@ip68-98-19-126.ph.ph.cox.net] has joined #scheme 00:57:04 why do you call that AI programming in AWK? 00:57:08 was just kidding - tried to write AI (the only one time I did) in C++ with little knowledge of AI and little knowedge of C++ - ended up ~800 from something like 4000 on google AI challenge, nevertheless I am definitelly not proud of the program I made and more less from that time I searched for a better language. 00:57:31 and why does gawk connect to the damn internet 00:57:32 wtf 00:57:36 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 00:58:59 pumpkin360: you don't need a visited set for depth first search 00:59:52 just catch the case that the car of the list you're visiting is itself a list, and recur into that 01:00:32 but lists can be cyclic :) 01:00:54 does the exercise demand you handle that case? 01:01:01 yes. 01:01:02 leku, because it is _hilarious_. 01:01:12 aranhoide, he need to count distinct elements 01:01:54 oh I see, sorry 01:03:51 pumpkin360: it is more idiomatic to keep the accumulator in a parameter to the recursive calls 01:04:03 rather than mutate an object in an outer scope 01:04:24 (that is, amount) 01:04:48 did You see the "count-pairs2" ? 01:04:57 there is a better version 01:05:46 pastebin.com/u0PQaPyxe 01:05:53 no 01:06:02 pastebin.com/u0QaPyxe 01:07:33 ya, much better :) 01:07:54 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 264 seconds] 01:07:56 still not used to functional programming but trying my best. 01:08:30 -!- kobain [~kobian@unaffiliated/kobain] has quit [Ping timeout: 264 seconds] 01:08:49 recursion is not realy iteration 01:09:15 kobain [~kobian@unaffiliated/kobain] has joined #scheme 01:09:36 and in lisp, scheme tail call optimisation is a usual 01:09:43 pumpkin360: you're doing good -- keep it on! 01:10:04 even the wierd (in my mind) set ? 01:10:17 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 01:10:25 but tail-recursion is very similar to iteration 01:10:59 in the real world you won't use that style much I think 01:11:03 true, in a way 01:11:11 it's done in SICP mostly to show you that you can do it 01:11:47 aranhoide, and why you would want to. 01:11:50 how should I separate the set as an object then > 01:11:51 ? 01:12:44 (want the methods to be internal) 01:13:32 most lisps/schemes have idiomatic shortcuts for those OO-like things 01:13:47 how does it look in scheme ? 01:13:58 in what scheme? ;) 01:14:13 assuming that you don't have a set structure in your scheme you can use a list and check if the element exists before inserting 01:14:34 one example: http://pagesperso-systeme.lip6.fr/Christian.Queinnec/WWW/Meroon.html 01:15:00 R6RS and R7RS define record types 01:15:19 I want to make portable code (for no reason at all, but don't want to be bend to one particular implementation of scheme) 01:15:40 R6RS and R7RS are not cool. At least in my mind. 01:17:32 well, you may want to check out the SRFIs for some more-or-less portable libraries/subsystems that will work in R(<6)RS 01:18:11 even if you end up rolling your own, you may want to conform to the interface of those SRFIs 01:18:44 is message parsing really so bad, it requires just a little bit more code, we can probably ommit most of the client one by using macros! 01:18:47 :) 01:19:26 "client" isn't a good word 01:19:36 macros are like regex, you want to avoid them 01:19:43 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 276 seconds] 01:20:25 except when you don't ;) 01:20:29 scheme macro are better but this is not a reason to think that are a kind of magic solution 01:20:35 Nah. I'm learning lisp mainly to become a bad person and use macros :) 01:21:18 IPmonger [~ipmonger@c-68-63-82-18.hsd1.pa.comcast.net] has joined #scheme 01:21:24 jcowan [~jcowan@mail.digitalkingdom.org] has joined #scheme 01:21:45 As I said before - I want to use scheme to make moderate long programs maintained only by me. 01:21:54 Macros will not solve a problem for you. They will take a solution you write, and reduce repetition in the code to make it easier to write. But the solution itself never comes from the macros, since they do nothing at runtime. 01:22:02 jcowan, Riastradh was asking after you and the rest of the R7RS Cowanjunta earler 01:22:03 I think that macros aren't that bad in this case. 01:22:18 Riastradh, are you still around? 01:22:35 -!- IPmonger [~ipmonger@c-68-63-82-18.hsd1.pa.comcast.net] has quit [Client Quit] 01:22:50 we started talking about macros and immediatelly everbody woke up 01:23:01 interesting coinsidence 01:23:27 is a concidence, :) 01:23:33 And if you're going to write lots of macros, Racket > Scheme > LISP in many practical ways. 01:23:34 Hi. 01:23:42 sorry for the spelling 01:24:04 np, :) 01:25:36 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 01:28:17 pumpkin360, if you try your solution with a deeper structure and it work you are done, you solved the problem 01:28:38 the style is something that usualy come in time 01:30:18 so don't worry too much about it, just try to improve the coding 01:30:34 s/just/but/ 01:30:39 jcowan, are you still here? 01:30:42 does it? I solved quite a few algorithmic problems in C++ and still don't know what style means in ++ 01:31:20 (like ~150-200) 01:31:35 *C++ 01:32:23 -!- jao [~jao@pdpc/supporter/professional/jao] has left #scheme 01:32:26 is more a problem of diversity then of number, and take time 01:33:35 acarrico [~acarrico@cable54-3-142.stoweaccess.com] has joined #scheme 01:34:34 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 252 seconds] 01:34:44 3:34 am, time to go to bed. 01:35:06 and have been speaking about learning instead of learning all the time.. 01:35:12 good night 01:35:24 'night 01:35:25 good night, :) 01:36:24 jao [~user@pdpc/supporter/professional/jao] has joined #scheme 01:37:21 Anyway, it's a foofjunta, really 01:37:32 Riastradh: I'm here. 01:38:19 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 01:39:30 You should add a procedure (decompose-ieee754 x base emax precision if-zero if-subnormal if-normal if-infinite if-nan), where (if-zero sign), (if-subnormal sign scaled-significand), (if-normal sign exponent scaled-significand), (if-infinite sign), and (if-nan sign descriptor). 01:40:35 annodomini [~lambda@wikipedia/lambda] has joined #scheme 01:40:53 To the comparator package? 01:40:58 Also, support for the -1.123defp+123 notation. 01:41:04 No, just somewhere in the whole R7RS thing. 01:41:21 If there's an IEEE 754 library, it should go in there, obviously. 01:42:15 And (compose-ieee754-zero sign base emax precision), (compose-ieee754-subnormal sign scaled-significand base emax precision), (compose-ieee754-normal sign exponent scaled-significand ...), (compose-ieee754-infinity sign ...), and (compose-ieee754-nan sign descriptor ...). 01:42:20 -!- jao [~user@pdpc/supporter/professional/jao] has left #scheme 01:43:33 Here `scaled significand' is 1.xyz * b^p for normals, or 0.xyz * p^b for subnormals. 01:43:37 b^p 01:43:45 Riastradh: http://trac.sacrideo.us/wg/wiki/NanMedernach 01:43:47 (In both cases, it is an exact integer.) 01:44:43 can I (or should I) relay on the order of checking the predicates in "or" and "and" special form ? 01:44:48 *forms 01:45:03 Yes. 01:45:07 pumpkin360: absolutely, they go left-to-right and shortcircuit. 01:45:27 "shortcircuit" ? what does that mean? 01:45:44 Once you get a true value, "or" stops; once you get a false value, "and" stops. 01:45:50 Means (or #f (launch-the-missiles)) doesn't destroy the world. 01:45:54 ...er. 01:45:54 :) 01:45:56 Rather than evaluating all of the arguments. 01:45:58 (or #t (launch-the-missiles)) 01:46:28 You are a bad person. The world would be destroyed. 01:46:43 fortunatelly you don't have the power. 01:47:27 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 256 seconds] 01:47:36 not sure if destroying the world would not make some things easier though.. 01:47:43 We said they short-circuit, we never said they perform security checks. :) 01:48:21 or do the world a better place, :) 01:49:09 Because all the plankton did so many useful things in the billions of years before we built a society. Clearly we'd want to go back to that. ;-p 01:49:14 Maybe the normal case should use a scaled fractional part, rather than a scaled significand, to save on a bit. 01:51:57 No, the normal case should still use a scaled significand because saving a bit works only for binary floating-point formats. 01:53:21 (And Scheme should support decimal floating-point formats.) 01:56:33 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 01:57:10 developernotes [~developer@173-18-189-145.client.mchsi.com] has joined #scheme 02:00:25 -!- pumpkin360 [~main@ageq252.neoplus.adsl.tpnet.pl] has quit [Ping timeout: 252 seconds] 02:00:56 Riastradh, I quite agree with Scheme including decimal floating-point formats, but I'm not sure how to build that into the numeric tower. Have you any ideas on that front? 02:01:20 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 256 seconds] 02:02:53 main [~main@ageq252.neoplus.adsl.tpnet.pl] has joined #scheme 02:03:48
is (begin ) the same as ((lambda () )) (with the only diffrence of name and 3 times less parenthesis) ? 02:04:00 No, main. 02:04:06 BEGIN splices definitions. 02:04:44 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 02:05:16 -!- main is now known as pumpkin360 02:05:36 gnomon, well, a given Scheme system could just provide decimal floating-point for inexact real arithmetic., 02:05:55 It was me (could not go to sleep not knowing..). However what does that mean> 02:05:56 ? 02:06:06 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 02:06:36 what does "splicing the definitions" mean ? 02:08:12 ok, found it. 02:11:12 I don't think there's anything special to do for decimal formats, except perhaps to define suitable exponent markers. In the Scheme perspective, they are just another inexact number format. 02:11:41 The only special rule about multiple formats is that a result that should be, but cannot be, exact must be in the most precise format available. 02:11:43 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 276 seconds] 02:12:55 *jcowan* has become a Scheme language lawyer. 02:14:04 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 02:14:12 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 256 seconds] 02:14:55 -!- developernotes [~developer@173-18-189-145.client.mchsi.com] has quit [Remote host closed the connection] 02:16:22 -!- pumpkin360 [~main@ageq252.neoplus.adsl.tpnet.pl] has quit [Ping timeout: 246 seconds] 02:16:44 jcowan, Riastradh, I suppose then the real question would be: is it more correct to define decimal arithmetic as an inexact format, or as a precise rational format where the denominator is guaranteed to be some power of 10? 02:17:15 I suppose an integer power of 10, to be specific. 02:17:38 It's inexact, because it is not able to represent exact results. 02:18:22 Are you talking about decimal floating-point arithmetic or arbitrary-precision rational arithmetic with a base-10 flavour to it? 02:19:10 Riastradh, for my specific $DAY_JOB purposes, I'm talking about the semantics of the former and the potential of providing those with the latter as an implementation detail. 02:19:14 I at least am talking about IEEE 754:2008 decimal arithmetic, which is floating-point with any of several precisions. 02:19:44 jcowan, ah, therein lies my fault. I'll read that in detail! Thank you. 02:20:11 Ah, okay, you were talking about the abstract notion and I about the concrete. 02:20:17 I generally do talk about the concrete. 02:20:38 And I generally about the more concrete! Pardon me, sir, I seem to be sitting in your chair. 02:20:52 -1s/concrete/abstract/ 02:20:55 derp 02:20:55 Feel free. 02:21:13 Uneasy lies the butt that holds the seat. 02:21:26 "Feel free", eh? Well, on your head be it... 02:21:28 *gnomon* de-pants 02:21:34 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 256 seconds] 02:21:39 *jcowan* debags gnomon in hindsight. 02:21:49 *@#$, you beat me to it. 02:22:15 So are you a Naturist or a Doukhobor? 02:22:54 *gnomon* furiously googles the latter 02:24:07 He's a bashi-bazouk, that's what he is! 02:24:58 Tonerre de brest! 02:26:09 Having no particularly strong religious affiliation (beyond a healthy fear of Cthulhu et al), I cannot claim to be a Doubhokor (and thank you for that fascinating historical aside!); and "Naturist" implies a greater commitment to that pursuit than suits me, so not that either. 02:26:19 Guest23100 [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has joined #scheme 02:26:22 -!- Guest23100 [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has quit [Changing host] 02:26:22 Guest23100 [~jao@pdpc/supporter/professional/jao] has joined #scheme 02:26:37 I think we are all bashi-bazouks on this bus. 02:26:58 Mille mille de sabords! 02:27:10 Nom d'un nom d'un nom! 02:27:35 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 02:27:47 Why does the porridge bird form a committee to standardize its egg in the air? 02:28:04 Odd thing that "Mon Dieu!" is very mild, whereas "Bon Dieu!" is a very bad expression indeed (as opposed to "le bon Dieu", which again is acceptable for anyone). 02:28:21 That's just what porridge birds do. 02:28:47 Riastradh, I haven't the foggiest idea about the source of that last; would you kindly enlighten me? 02:30:03 I suggest you take a bus ride to the Future Fair! The future is here! The future is now! (Paging Dr Memory, this is worker speaking, hello!) 02:30:18 Anyway, it all works out in the end. 02:30:19 -!- zacts [~blueberry@unaffiliated/zacts] has quit [Quit: leaving] 02:30:28 Bog Is Not Mocked, D00d, Bog Is Not Mocked 02:30:57 gnomon: I believe him to be mocking the R7RS effort on the grounds that it standardizes things without showing that they are actually useful. 02:31:20 I believe this is a result of his feelings of guilt for proposing SRFI 43 and not being a vector d00d. 02:31:29 Riastradh, I have never heard that album before, but I am tracking it down now! 02:31:56 That was only partially mockery. It also arose for the purpose of being referential word play. 02:33:41 *jcowan* nods. 02:33:50 Hmm. 02:33:52 *gnomon* frowns 02:33:56 I always assumed that "Don't crush that dwarf, hand me the pliers!" was sheer surrealism, but no. 02:34:17 My tonic is depressingly gin-free. 02:34:24 *jcowan* did not know what a dwarf was. 02:36:35 With all the keys and lids involved, there's only one sort of thing it could be... 02:38:46 -!- RageOfThou [~RageOfTho@77.221.25.95] has quit [Ping timeout: 246 seconds] 02:38:56 I once started to write a story in which "dwarf" was the standard word for "fever", and "astrology" for meteorology, and things like that. 02:39:27 "Please excuse Suzie-Q's absence from school yesterday. She had a dwarf, and I had to take her to the leech." 02:39:39 Sort of Semi-Ander-Saxon 02:52:06 *ski* . o O ( "The Age of Wire and String" ) 02:55:09 -!- Guest23100 [~jao@pdpc/supporter/professional/jao] has quit [Remote host closed the connection] 02:56:13 jao` [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has joined #scheme 02:56:16 -!- jao` [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has quit [Changing host] 02:56:16 jao` [~jao@pdpc/supporter/professional/jao] has joined #scheme 02:56:48 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 02:58:05 -!- jao` [~jao@pdpc/supporter/professional/jao] has quit [Remote host closed the connection] 03:01:28 jao` [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has joined #scheme 03:01:31 -!- jao` [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has quit [Changing host] 03:01:31 jao` [~jao@pdpc/supporter/professional/jao] has joined #scheme 03:04:24 -!- amoe [~amoe@host-92-24-171-207.ppp.as43234.net] has quit [Read error: Operation timed out] 03:04:48 amoe [~amoe@host-2-96-236-124.as13285.net] has joined #scheme 03:09:41 -!- jao` is now known as jao 03:16:48 gavilan2 [~Gavilan2@184.75.214.2] has joined #scheme 03:19:20 tenq [~tenqnewse@ip68-100-228-234.dc.dc.cox.net] has joined #scheme 03:19:45 -!- jao [~jao@pdpc/supporter/professional/jao] has quit [Remote host closed the connection] 03:21:13 -!- rszeno [~rszeno@79.114.98.87] has quit [Quit: Leaving.] 03:21:20 jao [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has joined #scheme 03:21:23 -!- jao [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has quit [Changing host] 03:21:23 jao [~jao@pdpc/supporter/professional/jao] has joined #scheme 03:21:32 preflex_ [~preflex@unaffiliated/mauke/bot/preflex] has joined #scheme 03:22:46 joneshf-laptop [~joneshf@c-98-208-36-36.hsd1.ca.comcast.net] has joined #scheme 03:22:54 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Ping timeout: 264 seconds] 03:22:56 -!- preflex_ is now known as preflex 03:24:44 crundar [~Jason@99-108-225-58.lightspeed.iplsin.sbcglobal.net] has joined #scheme 03:26:34 -!- _ffio_ [~fire@unaffiliated/security] has quit [Read error: Operation timed out] 03:26:44 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 256 seconds] 03:29:43 blz37 [~minsa@c-24-130-180-195.hsd1.ca.comcast.net] has joined #scheme 03:44:25 _ffio_ [~fire@unaffiliated/security] has joined #scheme 03:47:15 ehaliewicz [~user@50-0-51-11.dsl.static.sonic.net] has joined #scheme 03:50:21 What should (< 1 +inf.0) do? 03:52:14 The implementation is tricky, but it's clear the value should be #t. 03:52:33 What should (< (/ (expt 2 12345) 3) +inf.0) do? 03:52:52 (Assume IEEE 754 double floating-point for inexact arithmetic.) 03:53:11 Again, the answer should be #t. 03:53:27 So < should have various tests for infinities? 03:53:47 An alternative is to have two specialized objects which serve as exact infinities. 03:54:01 In Kawa these are actually exposed. 03:54:19 (notated 1/0 and -1/0) 03:55:19 In general, mixed exactness comparison has to be done in exact mode. 03:58:45 -!- evhan [evhan@206.125.172.107] has quit [Quit: leaving] 03:59:06 evhan [evhan@pdpc/supporter/active/evhan] has joined #scheme 04:05:16 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 256 seconds] 04:09:24 What should (max 0 +nan.0) yield? What about (max 0 -1.)? 04:12:49 (max 0 -inf.0)? 04:29:28 Chaos`Eternal [~chaos@199.231.215.178] has joined #scheme 04:35:25 Any max or min call involving NaN has unspecified results. 04:35:28 -!- jao [~jao@pdpc/supporter/professional/jao] has quit [Ping timeout: 256 seconds] 04:36:05 Your other two evaluate to 0.0. 04:39:01 trusktr [~trusktr@c-76-114-26-222.hsd1.ca.comcast.net] has joined #scheme 04:39:21 That's not what IEEE 754 prescribes! 04:39:22 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 04:39:56 `minNum(x, y) is the canonicalized number x if x < y, y if y < y, the canonicalized number if one operand is a number and the other a quiet NaN. Otherwise it is either x or y, canonicalized.' 04:40:05 So (min 0 +nan.0) ought to yield 0. 04:40:19 (Presumably `0.', too, not `0'.) 04:47:04 "y < y" ? 04:47:12 y < x, sorry. 04:48:44 IEEE 754 describes the behavior of non-floats? 04:49:05 Oh, you mean it should return 0.0. 04:49:17 Some Schemes return 0.0, others return +nan.0. Chibi has a bug: it returns 0. 04:50:37 FemtoLisp has the same bug, but it doesn't claim conformance to anything. 04:51:03 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 256 seconds] 04:51:43 jcowan, pray tell, what is FemtoLisp? 04:53:44 It's a tiny Scheme, used in particular for the parser of Julia, a very interesting scientific-programming language. 04:53:52 s/a tiny/yet another tiny 04:54:50 Got it, I'm reading now. At first I thought it made have had something to do with PicoLisp, and actually it looks like it might, but only in approach and due to convergent evolution rather than any particular conscious effort. 04:58:14 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 04:59:21 http://trac.sacrideo.us/wg/wiki/ImplementationContrasts is a good page if you are interested in different implementations of Scheme. It lists the ones I use, and links to the pages that explain various differences between them. 05:01:30 agumonkey [~agu@52.158.70.86.rev.sfr.net] has joined #scheme 05:03:48 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 256 seconds] 05:04:10 kvda [~kvda@unaffiliated/kvda] has joined #scheme 05:06:20 ThePawnBreak [~cristi@86.121.194.192] has joined #scheme 05:11:16 -!- Chaos`Eternal [~chaos@199.231.215.178] has quit [Ping timeout: 252 seconds] 05:15:15 purentity [~entity@c-50-136-180-20.hsd1.ca.comcast.net] has joined #scheme 05:15:47 Riastradh: http://trac.sacrideo.us/wg/wiki/MaxInfNan tells us how Schemes deal with (max +inf.0 +nan.0) and (max +nan.0 0). 05:16:45 -!- entitativity [~entity@c-50-136-180-20.hsd1.ca.comcast.net] has quit [Ping timeout: 245 seconds] 05:17:48 -!- purentity is now known as entitativity 05:18:01 -!- jcowan [~jcowan@mail.digitalkingdom.org] has quit [Quit: Leaving] 05:18:04 MIT Scheme is about to change its behaviour to conform to IEEE 754 for various floating-point stuff. 05:18:12 (and get some automatic tests to make sure nobody breaks this stuff (again)) 05:23:37 -!- crundar [~Jason@99-108-225-58.lightspeed.iplsin.sbcglobal.net] has quit [Ping timeout: 246 seconds] 05:24:29 -!- trusktr [~trusktr@c-76-114-26-222.hsd1.ca.comcast.net] has quit [Ping timeout: 256 seconds] 05:33:54 -!- kvda [~kvda@unaffiliated/kvda] has quit [Quit: z____z] 05:38:42 signup is open: http://lispinsummerprojects.org/ 05:41:44 jcowan, ooh, thanks for the contrasts link! 05:43:13 gravicappa [~gravicapp@ppp91-77-179-54.pppoe.mtu-net.ru] has joined #scheme 05:45:37 -!- cky [~cky@fsf/member/cky] has quit [Ping timeout: 248 seconds] 05:47:55 -!- yazdmich [~yazdmich@unaffiliated/yazdmich] has quit [Quit: Oh No] 05:48:38 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 05:49:05 OK, MIT Scheme now conforms a little better to IEEE 754. 05:51:00 great :) 06:03:37 -!- annodomini [~lambda@wikipedia/lambda] has quit [Quit: annodomini] 06:04:13 -!- miql [~miql@ip68-98-19-126.ph.ph.cox.net] has quit [Ping timeout: 246 seconds] 06:07:40 -!- ThePawnBreak [~cristi@86.121.194.192] has quit [Ping timeout: 256 seconds] 06:10:31 -!- agumonkey [~agu@52.158.70.86.rev.sfr.net] has quit [Ping timeout: 246 seconds] 06:10:47 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #scheme 06:13:58 -!- ASau [~user@p5797F121.dip0.t-ipconnect.de] has quit [Ping timeout: 252 seconds] 06:14:38 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 06:23:14 ThePawnBreak [~cristi@86.121.194.192] has joined #scheme 06:27:31 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Read error: Connection reset by peer] 06:29:08 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 06:30:05 hkBst [~marijn@80.120.175.18] has joined #scheme 06:30:06 -!- hkBst [~marijn@80.120.175.18] has quit [Changing host] 06:30:06 hkBst [~marijn@gentoo/developer/hkbst] has joined #scheme 06:33:46 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 252 seconds] 06:45:24 jewel [~jewel@105-237-24-43.access.mtnbusiness.co.za] has joined #scheme 06:47:47 -!- ehaliewicz [~user@50-0-51-11.dsl.static.sonic.net] has quit [Ping timeout: 256 seconds] 06:47:57 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 06:53:10 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Ping timeout: 256 seconds] 06:54:40 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 252 seconds] 06:57:42 -!- adiii [~adityavit@c-76-117-52-187.hsd1.nj.comcast.net] has quit [Ping timeout: 256 seconds] 07:03:21 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 07:07:38 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 245 seconds] 07:13:53 przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has joined #scheme 07:15:36 -!- cosmez [~cosmez@200.92.100.68] has quit [Remote host closed the connection] 07:18:13 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 07:24:22 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 276 seconds] 07:26:15 wingo [~wingo@79.Red-88-26-248.staticIP.rima-tde.net] has joined #scheme 07:28:03 ASau [~user@p5797EA1A.dip0.t-ipconnect.de] has joined #scheme 07:28:28 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 07:34:18 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 264 seconds] 07:41:10 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 07:47:13 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 245 seconds] 07:53:58 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 07:58:49 -!- przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has quit [Ping timeout: 276 seconds] 08:00:22 -!- carleastlund [~carleastl@209-6-40-238.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [Quit: carleastlund] 08:01:28 snowylike [~sn@91-67-171-156-dynip.superkabel.de] has joined #scheme 08:02:13 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 245 seconds] 08:15:43 -!- jewel [~jewel@105-237-24-43.access.mtnbusiness.co.za] has quit [Ping timeout: 276 seconds] 08:17:14 -!- kobain [~kobian@unaffiliated/kobain] has quit [Quit: l'unica verità.. è la morte stessa!] 08:17:42 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 08:22:52 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 276 seconds] 08:26:22 miql [~miql@ip68-98-19-126.ph.ph.cox.net] has joined #scheme 08:27:13 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 08:30:42 ogamita [~t@77.104.4.54] has joined #scheme 08:35:19 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 264 seconds] 08:37:02 civodul [~user@gateway/tor-sasl/civodul] has joined #scheme 08:42:52 przl [~przlrkt@62.217.45.197] has joined #scheme 08:47:03 -!- ThePawnBreak [~cristi@86.121.194.192] has quit [Quit: Leaving] 08:47:08 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 08:52:09 (eqv? +0. -0.) 08:53:55 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 264 seconds] 08:56:23 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 08:58:30 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Quit: Leaving] 08:58:40 -!- civodul [~user@gateway/tor-sasl/civodul] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 09:02:30 -!- hive-mind [pranq@unaffiliated/contempt] has quit [Ping timeout: 264 seconds] 09:02:46 -!- wingo [~wingo@79.Red-88-26-248.staticIP.rima-tde.net] has quit [Ping timeout: 256 seconds] 09:05:30 gambit says #f, chicken says #t 09:05:53 I think #f is a more sensible result. 09:05:54 -!- fizzie [fis@unaffiliated/fizzie] has quit [Read error: Operation timed out] 09:08:17 Isn't the ideal operational equivalence ? So it should obviously be #f ? 09:08:45 Chaos`Eternal [~chaos@199.231.215.178] has joined #scheme 09:09:36 Indeed that is from what I know the only case where = and eqv? disagree when both arguments are an inexact rational. Barring NaN issues .. 09:10:03 (eqv? 0 0.) yields false too. 09:10:16 (EQV? requires that its arguments share exactness before it will return true.) 09:10:39 That'd be part of the operational-equivalence requirement .. 09:12:25 Hrm, R7RS-small draft 9 doesn't use the term "operational equivalence" though. 09:12:59 Ah, it also says "Note that (eqv? 0.0 -0.0) will return #f if negative zero is distinguished, and #t if negative zero is not distinguished." 09:16:49 -!- jrapdx [~jrapdx@c-98-246-145-216.hsd1.or.comcast.net] has quit [Ping timeout: 276 seconds] 09:18:13 -!- karswell [~user@87.112.161.139] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 09:25:58 -!- tenq [~tenqnewse@ip68-100-228-234.dc.dc.cox.net] has quit [Quit: Leaving] 09:35:02 pierpa [~user@host126-61-dynamic.41-79-r.retail.telecomitalia.it] has joined #scheme 09:36:13 wingo [~wingo@79.Red-88-26-248.staticIP.rima-tde.net] has joined #scheme 09:39:46 alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has joined #scheme 09:41:26 civodul [~user@gateway/tor-sasl/civodul] has joined #scheme 09:43:43 -!- przl [~przlrkt@62.217.45.197] has quit [Ping timeout: 264 seconds] 09:48:14 przl [~przlrkt@62.217.45.197] has joined #scheme 09:55:28 -!- przl [~przlrkt@62.217.45.197] has quit [Ping timeout: 256 seconds] 10:05:12 samth [~samth@79.Red-88-26-248.staticIP.rima-tde.net] has joined #scheme 10:15:15 jewel [~jewel@105-237-24-43.access.mtnbusiness.co.za] has joined #scheme 10:21:23 -!- bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has quit [Ping timeout: 260 seconds] 10:27:46 -!- ogamita [~t@77.104.4.54] has quit [Ping timeout: 246 seconds] 10:32:40 -!- civodul [~user@gateway/tor-sasl/civodul] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 10:57:01 blade_ [~blade@115.113.8.36] has joined #scheme 10:58:19 Hi 10:58:43 Is define used solely for binding values to variables? 10:59:03 Yes. 10:59:12 Um, except your terminology being wrong. 10:59:32 Hrm, actually nevermind, I guess I'd be just pedantic there. 10:59:42 I'm having trouble understanding how the following code snippet works: http://paste.lisp.org/+2Y26 11:00:09 Won't "nth" be bound only once the value of the (lambda..) sexp has been calculated? 11:00:25 It binds `nth' to a lambda taking two arguments and using cond ... ... 11:00:35 Yeah, but it recurses with nth 11:00:55 Which I'm having trouble understand, because I expect nth to be bound only once that (lambda..) sexp has been evaluated 11:01:01 Oh, define somehow works like `letrec' .. 11:01:03 *trouble understanding 11:01:11 Ok, will look up letrec 11:01:30 My terminology is wrong because I'm just getting started with scheme, don't know the right terminology yet :) 11:01:58 Basically means, variable is first bound to some "dummy" value (or "created but left unbound"), then the lambda evaluated, then the variable bound to that. 11:02:19 So some form of late/lazy binding? 11:02:49 Or is that completely different? 11:03:00 Don't know of a canonical term to refer to what `letrec' and `define' do. 11:03:01 Sorry, it's completely different 11:03:11 blade_: DEFINE first binds the name to something unspecific, then evaluates the definition (which will see name already bound), then stores the result in the place where unspecific was 11:03:17 But it doesn't have anything to do with "lazy evaluation" in case that's what you meant. 11:03:46 taylanub: Yeah, that's what I meant, lazy evaluation 11:04:03 ecraven: Thanks, do you know what the canonical term for such a thing is? 11:04:08 It's simply like (bind nth *DUMMY*) (set! nth (lambda ...)). 11:04:24 (And referencing a variable that holds *DUMMY* is an error.) 11:04:34 I'm basically trying to figure out if clojure has something similar 11:04:44 taylanub: I.. don't know what bind and set! do yet 11:04:47 (I just made the *DUMMY* name up, but that's how I know at least Guile implements it on the C level.) 11:04:53 taylanub: Will look them up too 11:05:00 blade_: I made `bind' up .. think of it like the simple define you had in mind. 11:05:08 taylanub: ok 11:05:14 And set! just does assignment, changes the value of a variable. 11:05:50 (let ((x 0)) (let ((fn (lambda () x))) (set! x 1) (fn))) => 1 11:08:02 taylanub: thanks, got it 11:09:04 -!- wingo [~wingo@79.Red-88-26-248.staticIP.rima-tde.net] has quit [Ping timeout: 246 seconds] 11:12:38 -!- samth [~samth@79.Red-88-26-248.staticIP.rima-tde.net] has quit [Ping timeout: 245 seconds] 11:15:12 -!- hkBst [~marijn@gentoo/developer/hkbst] has quit [Remote host closed the connection] 11:15:38 hkBst [~marijn@80.120.175.18] has joined #scheme 11:15:38 -!- hkBst [~marijn@80.120.175.18] has quit [Changing host] 11:15:38 hkBst [~marijn@gentoo/developer/hkbst] has joined #scheme 11:16:52 blade_: personally, I'd say that DEFINE binds a value (the right side) to a name or binding (the left side, the "name") [in an environment, but that's inconsequential here] 11:18:30 ecraven: If I'm not mistaken, we're talking about the specific concept of first creating a variable bound to an unspecified value, then evaluating the value to be bound to that variable, then binding it. 11:18:53 -!- Chaos`Eternal [~chaos@199.231.215.178] has quit [Ping timeout: 245 seconds] 11:19:46 I.e. `letrec' style binding. If I'm not mistaken the "rec" part there comes from "recursive," but is that just because it happens to easily allow creating recursive lambdas, or is there more to it ? (I don't think it would be correct to call this "recursive binding" or so, for instance.) 11:22:10 cky [~cky@fsf/member/cky] has joined #scheme 11:28:18 -!- _ffio_ [~fire@unaffiliated/security] has quit [Ping timeout: 264 seconds] 11:28:29 -!- blade_ [~blade@115.113.8.36] has quit [Quit: thanks for the help] 11:28:35 ffio [~fire@unaffiliated/security] has joined #scheme 11:38:47 taylanub: you can also use it to define lazy streams, for example. the "rec" probably comes from functions, but that is not all it's used for 11:39:20 but you are right, I can't think of a better term than "recursive" for it myself :( 11:40:16 -!- aranhoide [~smuxi@123.Red-79-158-172.staticIP.rima-tde.net] has quit [Remote host closed the connection] 11:41:10 aranhoide [~smuxi@123.Red-79-158-172.staticIP.rima-tde.net] has joined #scheme 11:45:22 (fwiw, in OCaml it's `let rec' as well, and not only used for recursive functions) 11:48:37 ski: what else is it used for except recursive/lazy streams and recursive functions? 11:49:24 hive-mind [pranq@unaffiliated/contempt] has joined #scheme 11:49:44 i suppose other lazy stuff ? 11:50:16 (it can also be used to create cyclic data, a bit like Racket's `shared') 11:50:26 `fogus [~fogus@freedom.d-a-s.com] has joined #scheme 11:55:27 (define lst (cons 1 lst) :) 11:56:11 rudybot: eval (define lst (cons 1 lst) :) 11:56:12 ski: your sandbox is ready 11:56:12 ski: error: #:1:0: define: bad syntax (multiple expressions after identifier) in: (define lst (cons 1 lst) :) 11:57:37 The smiley broke it, first of all. :P 11:57:46 rudybot: eval (define lst (cons 1 lst)) 11:57:46 taylanub: your sandbox is ready 11:57:47 taylanub: error: lst: undefined; cannot reference an identifier before its definition in module: 'program 11:58:30 -!- BossKonaSegwaY [~Michael@72.49.0.102] has left #scheme 12:01:16 rudybot: eval (define-shared lst (cons 1 lst)) lst 12:01:16 ski: ; Value: #0='(1 . #0#) 12:18:47 rszeno [~rszeno@79.114.79.56] has joined #scheme 12:23:58 -!- SeySayux [SeySayux@libsylph/developer/seysayux] has quit [Ping timeout: 246 seconds] 12:31:25 annodomini [~lambda@c-76-23-156-75.hsd1.ma.comcast.net] has joined #scheme 12:31:25 -!- annodomini [~lambda@c-76-23-156-75.hsd1.ma.comcast.net] has quit [Changing host] 12:31:25 annodomini [~lambda@wikipedia/lambda] has joined #scheme 12:44:18 -!- annodomini [~lambda@wikipedia/lambda] has quit [Quit: annodomini] 12:47:29 przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has joined #scheme 12:49:36 -!- Shozan is now known as SHODAN 12:53:00 civodul [~user@gateway/tor-sasl/civodul] has joined #scheme 12:53:31 wingo [~wingo@79.Red-88-26-248.staticIP.rima-tde.net] has joined #scheme 12:56:30 pumpkin360 [~main@agit187.neoplus.adsl.tpnet.pl] has joined #scheme 12:57:46 hi, what up to date scheme implementations are R5RS compilant ? (don't want things from R6RS like case distinction ? 12:59:22 jao [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has joined #scheme 12:59:26 -!- jao [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has quit [Changing host] 12:59:26 jao [~jao@pdpc/supporter/professional/jao] has joined #scheme 13:01:13 pumpkin360: R6RS defines ways to say your code is case-ignorant or case-dependent. I think R7RS keeps that. 13:01:28 -!- jao [~jao@pdpc/supporter/professional/jao] has quit [Remote host closed the connection] 13:02:12 Guest78786 [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has joined #scheme 13:02:15 -!- Guest78786 [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has quit [Changing host] 13:02:15 Guest78786 [~jao@pdpc/supporter/professional/jao] has joined #scheme 13:02:59 -!- Guest78786 is now known as jao 13:04:52 annodomini [~lambda@wikipedia/lambda] has joined #scheme 13:04:56 ogamita [~t@77.104.4.54] has joined #scheme 13:05:12 crundar [~Jason@99-108-225-58.lightspeed.iplsin.sbcglobal.net] has joined #scheme 13:05:13 agumonkey [~agu@52.158.70.86.rev.sfr.net] has joined #scheme 13:05:46 pumpkin360: Racket, Chicken, Guile, Gambit, ..., http://wingolog.org/archives/2013/01/07/an-opinionated-guide-to-scheme-implementations 13:05:46 http://tinyurl.com/b3fjhzx 13:07:00 -!- wingo [~wingo@79.Red-88-26-248.staticIP.rima-tde.net] has quit [Ping timeout: 256 seconds] 13:10:15 -!- crundar [~Jason@99-108-225-58.lightspeed.iplsin.sbcglobal.net] has quit [Quit: Leaving] 13:17:09 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Ping timeout: 240 seconds] 13:19:27 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 13:21:49 -!- _if_ [~if@94-76-243-32.static.as29550.net] has quit [] 13:23:52 _if [~if@94-76-243-32.static.as29550.net] has joined #scheme 13:33:52 -!- _if [~if@94-76-243-32.static.as29550.net] has quit [] 13:34:13 wingo [~wingo@79.Red-88-26-248.staticIP.rima-tde.net] has joined #scheme 13:36:10 _if [~if@94-76-243-32.static.as29550.net] has joined #scheme 13:45:09 -!- _if [~if@94-76-243-32.static.as29550.net] has quit [Remote host closed the connection] 13:46:21 RageOfThou [~RageOfTho@77.221.25.95] has joined #scheme 13:57:07 nitrous_ [~nitrous_@176.25.206.177] has joined #scheme 14:00:32 hkBst_ [~marijn@gentoo/developer/hkbst] has joined #scheme 14:01:43 -!- hkBst [~marijn@gentoo/developer/hkbst] has quit [Ping timeout: 264 seconds] 14:02:22 -!- nitrous_ [~nitrous_@176.25.206.177] has left #scheme 14:07:13 -!- jao [~jao@pdpc/supporter/professional/jao] has quit [Ping timeout: 245 seconds] 14:08:14 jao [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has joined #scheme 14:08:17 -!- jao [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has quit [Changing host] 14:08:17 jao [~jao@pdpc/supporter/professional/jao] has joined #scheme 14:08:37 -!- civodul [~user@gateway/tor-sasl/civodul] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 14:10:45 spobat [~spobat@p5DC77137.dip0.t-ipconnect.de] has joined #scheme 14:12:38 -!- wingo [~wingo@79.Red-88-26-248.staticIP.rima-tde.net] has quit [Ping timeout: 245 seconds] 14:13:28 SeySayux [SeySayux@libsylph/developer/seysayux] has joined #scheme 14:20:13 wbooze [~wbooze@xdsl-78-35-182-60.netcologne.de] has joined #scheme 14:22:39 -!- taylanub [tub@p4FD924A7.dip0.t-ipconnect.de] has quit [Disconnected by services] 14:23:12 taylanub [tub@p4FD924A7.dip0.t-ipconnect.de] has joined #scheme 14:24:15 jcowan [c6b912cf@gateway/web/freenode/ip.198.185.18.207] has joined #scheme 14:24:51 *jcowan* is puzzelated 14:25:27 I'm trying to figure out how a chain of refining comparators should handle hash codes. Anyone want to play teddybot for this one? 14:26:58 The idea is that in a refinement chain, we have a sequence of comparators which accept the same types. A request to compare them for order is passed to the first; if it returns "equal", it goes to the next, and so on. 14:27:23 ah, I call this "lexical" :) 14:27:39 Okay. 14:27:41 you want to automatically calculate hash codes? 14:27:43 langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has joined #scheme 14:28:00 The question is, if they all provide hash functions, which one do we choose: the first, the last examined, something else? 14:28:15 Not automatically. 14:28:28 And note that this is not lexicographic ordering as such; the arguments are the same in every case. 14:30:09 Ah, ok. I misunderstood 14:31:30 If we are only interested in equivalence, not in order, then we can stop after the first, no? 14:31:32 bhrgunatha [~chatzilla@1-168-65-73.dynamic.hinet.net] has joined #scheme 14:31:36 And hash functions depend only on equivalence. 14:31:38 jcowan: this depends on whether the order of application is important 14:32:12 Sure the order is important: as I say, it's a refinement order. 14:32:13 jcowan: that's why 'and' and 'or' do have a defined order 14:32:24 The first comparator, if it returns < or >, that's taken to be definitive. 14:32:30 but you don't know after the first whether they are equal, only whether they are unequal ;) 14:32:30 Only if it is = do we go on. 14:32:36 An example is sorting i18n strings: 14:33:07 first you look at the base characters, then at diacritics, then at case, then at an arbitrary discriminator. 14:33:13 jcowan: by intuition I'd say go with the last matched one's return value 14:33:27 jcowan : are you thinking about something like `refine-compare' from , except with the two comparands passed implicitly to all comparators ? 14:33:30 -!- bhrgunatha [~chatzilla@1-168-65-73.dynamic.hinet.net] has quit [Client Quit] 14:33:35 -!- przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has quit [Ping timeout: 256 seconds] 14:33:57 -!- annodomini [~lambda@wikipedia/lambda] has quit [Quit: annodomini] 14:34:32 *ski* isn't sure where hashes enter, though 14:35:34 The idea is that if you are only comparing for equality or inequality, then it's useful to package up a hash function as well, since hashes must be equal if (not iff!) the objects are equal. 14:36:22 So unlike a compare procedure, which has only one interface, a comparator has four: order comparison, equality comparison, hashing, and type checking. 14:36:43 przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has joined #scheme 14:36:52 so you could ask a comparator here to only decide equality ? 14:37:10 Right. 14:38:20 So by that reasoning, on a refinement chain you should use the first available hash code, since mere equality comparison will never go down the chain. 14:38:46 hm, in the case of order and equality, the refinement is done by a monoid 14:39:07 jcowan: wouldn't it go down the chain in case of equality? (as that could result in non-equality further down?) 14:39:10 True, but what are the non-trivial consequences of that? 14:39:36 ecraven: No, that's implicit in the idea of refinement. If the first stage is able to discriminate, there's no need to refine further. 14:39:58 would date comparison be an example? years first, then months, ...? 14:40:19 Thus in the string-sorting case, we know that ( jcowan: but if the base characters are the same, you *still* need to look at diacritics to see that they are different 14:40:59 would the respective hashes only hash respective parts ? or would they perhaps give different hashes (perhaps with an implication going ?) on the whole ? 14:41:15 Yes, that's the refinement -- but it applies only if the first step returns =. 14:41:26 wingo [~wingo@79.Red-88-26-248.staticIP.rima-tde.net] has joined #scheme 14:41:36 jcowan: I don't understand how you can tell that these are sorted without looking at the diacritics 14:41:40 ski: I don't understand 14:41:48 Oops, sorry, typo 14:41:58 *ski* neither :/ 14:42:11 should have been ( ah, ok! that clears things up a lot ;D thanks 14:43:06 `text-comparator' is here meant to be built up compositionally from a couple of constituent comparators ? 14:43:08 I believe you always have to take the deepest-level hash 14:43:18 Unicode comes with a standard mapping from all characters to 4-tuples of 16-bit ints that DTRT 14:43:44 otherwise, how would you know which level your hash was taken on when comparing it later? 14:45:05 ecraven : hm, it might be possible to combine all the hashes in some way 14:45:38 Okay, so the deepest hash is the finest discriminator, is what you are saying? 14:45:51 ergo the set of equal pairs is the smallest. 14:46:40 *ski* would think it depends on how hashes here work 14:46:48 jcowan: if you take the first-level hash of "cãt", (say it is 3), then later take the first-level hash of "cat" (which is also 3 by definition), *should* these two be =? 14:47:16 I mean, how can you tell from outside the comparator on which level your hash was taken? 14:48:38 consider (naïvely) first sorting by length, then by lexicographic ordering -- so when comparing, we only lexicographically compare strings which are already known to have the same length 14:48:41 Right. 14:49:16 jcowan: I'm not sure this applies here, if you somehow were to compare only hashes taken for the same level, things would work out fine I believe. 14:49:27 Yes, you have to use the last hash, otherwise you violate the hash/equality invariant. 14:50:19 hopfrog [~quassel@pool-108-39-216-117.pitbpa.fios.verizon.net] has joined #scheme 14:50:34 so, it might perhaps make sense to only require the corresponding hash for the "lexicographic part" to "usually" generate distinct hashes for distinct hashee(?), *provided* that the "length-level" hash is already equal 14:50:58 -!- pumpkin360 [~main@agit187.neoplus.adsl.tpnet.pl] has quit [Ping timeout: 246 seconds] 14:51:25 i'm not sure how useful it would be to do this, but in such case, i think you'd want to combine all the hashes together (rather than just using the last one) 14:52:17 ski: I agree, the "deepest" level should probably take all "upper" levels into account when computing its hash 14:52:40 yes, either that, or the refinement operator should combine them 14:52:50 main [~main@agjt183.neoplus.adsl.tpnet.pl] has joined #scheme 15:03:21 I don't know any obvious way for the refinement operator to do so. 15:04:11 The case of dates is the tricky one especially, because using just the month comparator by itself won't satisfy the invariant. 15:05:07 I think the refinement for strings as you mentioned them is an entirely different thing than date "element" comparison 15:05:40 in the first case, you chain downwards with the same parameters, in the latter case you chain downwards with a different part of the parameters 15:06:16 the date comparison is more like a generalised IF3 with multiple successive accessor functions 15:07:11 All comparators get the whole parameters, they just choose to look at a different part in both cases: the diacritics or the months as the case may be. 15:07:39 If it's different I don't see how. 15:07:58 Hm.. you're probably right 15:09:01 I'm wrong to say you *have* to use the last hash function, though. 15:09:30 taylanub, http://wingolog.org/ is yours? 15:09:43 The invariant is preserved by any hash function that is not finer than the first equality function. If it puts all dates with the same year int he same bucket, that's still correct. 15:10:26 Indeed, if it puts all entries in bucket 0, that is still correct, if not very useful. 15:10:33 So correctness is not the issue, utility is. 15:10:34 rszeno: No, wingo's. :) 15:10:48 (Andy Wingo, one of the main Guile developers.) 15:10:55 And in the case of the dates, it's not clear that any hash function is better than any other. 15:11:20 -!- przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has quit [Ping timeout: 245 seconds] 15:11:39 Perhaps TRT is to xor all the hash functions together. That cannot break the invariant. 15:11:52 Anyway, gotta bolt, I have strict deadlines all day. 15:11:59 Thanks for the help. 15:12:19 taylanub, thank you for posting and info. I spend some time reading it, very interesting. 15:12:46 rszeno: You might also want to read the one it links, something with "choosing a Scheme is choosing a tribe" .. 15:13:00 adiii [~adityavit@c-76-117-52-187.hsd1.nj.comcast.net] has joined #scheme 15:13:03 i read it, :) 15:13:43 -!- gravicappa [~gravicapp@ppp91-77-179-54.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 15:13:44 i have my own opinion about this, probably weird, :) 15:13:46 *taylanub* is a young member of the GNU/Guile tribe. :) GNU is love! 15:14:03 gravicappa [~gravicapp@ppp91-77-179-54.pppoe.mtu-net.ru] has joined #scheme 15:14:08 *rszeno* in a way, me too, i use guile 15:14:51 przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has joined #scheme 15:18:39 -!- jcowan [c6b912cf@gateway/web/freenode/ip.198.185.18.207] has quit [Ping timeout: 250 seconds] 15:23:34 -!- wingo [~wingo@79.Red-88-26-248.staticIP.rima-tde.net] has quit [Ping timeout: 256 seconds] 15:27:42 -!- `fogus [~fogus@freedom.d-a-s.com] has quit [Quit: Leaving] 15:28:34 wingo [~wingo@195.Red-88-5-174.dynamicIP.rima-tde.net] has joined #scheme 15:34:35 bananagram [~bot@67.226.100.84] has joined #scheme 15:36:49 I need to take a string and refer to and refer to a variable with its name 15:36:56 anyone know how to do that? 15:37:16 why would you need to do that ? 15:37:18
how to scroll the chat up in irssi ? 15:37:47
nvm 15:38:12 well, I want to hook a command in weechat to set a variable 15:38:33 and the callback gets a string, you see 15:39:10 perhaps some kind of associative map, associating strings (or perhaps symbols ?) to current values, could be used instead ? 15:40:12 jrajav [~jrajav@198.179.137.210] has joined #scheme 15:40:45 -!- gavilan2 [~Gavilan2@184.75.214.2] has quit [Ping timeout: 256 seconds] 15:41:11 what do you mean? 15:42:22 bananagram, new to scheme? 15:42:59 kind of 15:43:31 a associative map is a list of key-values 15:43:32 I only learned enough to be able to write a script 15:43:57 oh, right 15:43:58 this is a basic structure 15:44:15 rudybot: eval (define *variables* '((a 0) (b 1) (c 2))) 15:44:15 ski: Done. 15:44:20 -!- hkBst_ [~marijn@gentoo/developer/hkbst] has quit [Quit: Konversation terminated!] 15:44:28 rudybot: eval (assv 'b *variables*) 15:44:28 ski: ; Value: '(b 1) 15:44:33 rudybot: eval (assv 'd *variables*) 15:44:33 ski: ; Value: #f 15:45:01 I guess that would work 15:46:00 it's usually a mistake to want strings (or symbols) to refer directly to variables in your program 15:46:39 but shouldn't it be possible? 15:46:57 (do you really want the external command to be able to inspect every variable in scope in the program at whatever point you wanted to access them from ?) 15:47:20 sure 15:47:34 it's only an IRC script, and only the one with access to the client will be able to use it 15:48:21 and of course you trust the user that will not do anything wrong, :) 15:48:48 there's a saying, roughly "You should only use `eval' if you know why you shouldn't use `eval'." 15:50:19 -!- agumonkey [~agu@52.158.70.86.rev.sfr.net] has quit [Ping timeout: 264 seconds] 15:50:50 well, I'm the only user 15:51:32 sure but, i don't trust my self enough to risk 15:52:28 I trust myself completely to abuse it correctly 15:52:39 then is ok 15:53:13 but can you do it? 15:53:56 do what? 15:54:07 and who? me? 15:54:13 use a string to access a variable 15:54:15 sure 15:54:50 i never used weechat, i have no idea how it work, sorry 15:55:27 plus when i risk something i doit with my own hands, :) 15:56:45 -!- langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has quit [Ping timeout: 245 seconds] 15:57:45 eval (define a 42) 15:57:51 ski also refered something else then risk, inspecting will consume resources 15:57:57 rudybot: eval (define a 42) 15:57:57 ski: Done. 15:58:16 rudybot: eval (define-namespace-anchor nsa) 15:58:16 ski: Done. 15:58:24 rudybot: eval (eval '(+ a 1) (namespace-anchor->namespace nsa)) 15:58:24 ski: ; Value: 43 15:59:25 (that's Racket, see and ) 16:00:26 rudybot: eval (eval '(set! a (* 2 a)) (namespace-anchor->namespace nsa)) 16:00:26 ski: Done. 16:00:33 rudybot: eval a 16:00:33 ski: ; Value: 84 16:00:39 bananagram : happy ? 16:01:14 not really, weechat uses guile 16:01:22 but thanks anyway 16:01:32 perhaps one can do something similar in Guile 16:01:34
can I easily make guile R5RS compilant (disabling the R6RS changes) ? 16:06:54 -!- microcode [~microcode@bas1-toronto04-1242322006.dsl.bell.ca] has quit [Changing host] 16:06:54 microcode [~microcode@unaffiliated/microcolonel] has joined #scheme 16:13:18 -!- bananagram [~bot@67.226.100.84] has quit [Ping timeout: 264 seconds] 16:15:52 samth [~samth@79.Red-88-26-248.staticIP.rima-tde.net] has joined #scheme 16:15:59 agumonkey [~agu@52.158.70.86.rev.sfr.net] has joined #scheme 16:20:37 -!- przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has quit [Ping timeout: 252 seconds] 16:29:31 main: No. Why do you want to do that? 16:29:53 main: Guile is Guile, there is no "R5RS-only subset" like you can do with Racket. 16:32:52 -!- offby1 [~offby1@ec2-54-215-10-197.us-west-1.compute.amazonaws.com] has quit [Changing host] 16:32:52 offby1 [~offby1@pdpc/supporter/monthlybyte/offby1] has joined #scheme 16:37:28 kobain [~kobian@unaffiliated/kobain] has joined #scheme 16:37:31 -!- alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has quit [Ping timeout: 276 seconds] 16:38:00 -!- wingo [~wingo@195.Red-88-5-174.dynamicIP.rima-tde.net] has quit [Ping timeout: 245 seconds] 16:47:04 UNIXgod [~v0id@funtoo/user/UNIXgod] has joined #scheme 16:47:05 przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has joined #scheme 16:49:10 -!- wbooze [~wbooze@xdsl-78-35-182-60.netcologne.de] has quit [Quit: none] 16:50:30 -!- ogamita [~t@77.104.4.54] has quit [Ping timeout: 264 seconds] 16:56:51 bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has joined #scheme 16:56:55 -!- rszeno [~rszeno@79.114.79.56] has quit [Ping timeout: 264 seconds] 16:57:13 -!- samth [~samth@79.Red-88-26-248.staticIP.rima-tde.net] has quit [Ping timeout: 245 seconds] 17:02:15 tenq [~tenqnewse@ip68-100-228-234.dc.dc.cox.net] has joined #scheme 17:02:23 -!- main [~main@agjt183.neoplus.adsl.tpnet.pl] has quit [Read error: Operation timed out] 17:03:09 -!- tenq [~tenqnewse@ip68-100-228-234.dc.dc.cox.net] has quit [Remote host closed the connection] 17:03:11 -!- aeth [~Michael@wesnoth/umc-dev/developer/aethaeryn] has quit [Ping timeout: 256 seconds] 17:03:48 aeth [~Michael@wesnoth/umc-dev/developer/aethaeryn] has joined #scheme 17:04:37 -!- jewel [~jewel@105-237-24-43.access.mtnbusiness.co.za] has quit [Ping timeout: 252 seconds] 17:06:25 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 17:10:57 rszeno [~rszeno@86.125.230.236] has joined #scheme 17:13:20 langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has joined #scheme 17:18:08 rndnick0affe [~user@stgt-5f719ac7.pool.mediaWays.net] has joined #scheme 17:25:00 alexei___ [~amgarchin@p4FD606EB.dip0.t-ipconnect.de] has joined #scheme 17:27:29 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Ping timeout: 240 seconds] 17:28:03 wbooze [~wbooze@xdsl-78-35-182-60.netcologne.de] has joined #scheme 17:28:10 -!- jrajav [~jrajav@198.179.137.210] has quit [Quit: phunq, sandwich store loop, WHAT NO UNIVERSE] 17:30:06 -!- joneshf-laptop [~joneshf@c-98-208-36-36.hsd1.ca.comcast.net] has quit [Ping timeout: 256 seconds] 17:36:13 -!- jao [~jao@pdpc/supporter/professional/jao] has quit [Remote host closed the connection] 17:38:43 jrapdx [~jrapdx@74-95-41-205-Oregon.hfc.comcastbusiness.net] has joined #scheme 17:40:09 amoe_ [~amoe@host-92-26-174-192.as13285.net] has joined #scheme 17:43:08 -!- amoe [~amoe@host-2-96-236-124.as13285.net] has quit [Ping timeout: 256 seconds] 17:44:35 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #scheme 17:46:49 jao [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has joined #scheme 17:46:52 -!- jao [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has quit [Changing host] 17:46:52 jao [~jao@pdpc/supporter/professional/jao] has joined #scheme 17:47:23 jrajav [~jrajav@198.179.137.210] has joined #scheme 17:48:05 -!- spobat [~spobat@p5DC77137.dip0.t-ipconnect.de] has quit [Quit: Leaving] 17:48:22 -!- aeth [~Michael@wesnoth/umc-dev/developer/aethaeryn] has quit [Quit: Lost terminal] 17:49:07 aeth [~Michael@wesnoth/umc-dev/developer/aethaeryn] has joined #scheme 17:54:40 -!- gravicappa [~gravicapp@ppp91-77-179-54.pppoe.mtu-net.ru] has quit [Ping timeout: 252 seconds] 17:55:15 klutomet1s [~klutometi@klutometis.wikitex.org] has joined #scheme 17:55:26 cky944 [~cky@car.spillville.com] has joined #scheme 17:56:17 -!- cky944 [~cky@car.spillville.com] has quit [Changing host] 17:56:17 cky944 [~cky@fsf/member/cky] has joined #scheme 17:56:33 tessier_ [~treed@kernel-panic/copilotco] has joined #scheme 17:56:49 cpach_ [~cpach@h125n2-veo-a11.ias.bredband.telia.com] has joined #scheme 17:57:33 -!- cky [~cky@fsf/member/cky] has quit [Disconnected by services] 17:57:51 -!- cky944 is now known as cky 17:58:15 InvalidC1 [~invalidco@dsl-lhtbrasgw2-54f826-232.dhcp.inet.fi] has joined #scheme 17:58:59 rudybot_ [~luser@ec2-54-215-10-197.us-west-1.compute.amazonaws.com] has joined #scheme 17:59:22 snarkyboojum_ [~snarkyboo@67-23-4-190.static.slicehost.net] has joined #scheme 17:59:30 -!- ggherdov [uid11402@gateway/web/irccloud.com/x-wngpofmpwlxgjtiy] has quit [Ping timeout: 264 seconds] 17:59:31 -!- cpach [~cpach@h125n2-veo-a11.ias.bredband.telia.com] has quit [Ping timeout: 264 seconds] 17:59:31 -!- klutometis [~klutometi@pdpc/supporter/professional/klutometis] has quit [Ping timeout: 264 seconds] 17:59:31 -!- tessier [~treed@kernel-panic/copilotco] has quit [Ping timeout: 264 seconds] 17:59:31 -!- asumu [~at@racket/asumu] has quit [Ping timeout: 264 seconds] 17:59:32 -!- microcode [~microcode@unaffiliated/microcolonel] has quit [Ping timeout: 264 seconds] 17:59:33 -!- snarkyboojum [~snarkyboo@67-23-4-190.static.slicehost.net] has quit [Ping timeout: 264 seconds] 17:59:33 -!- rudybot [~luser@ec2-54-215-10-197.us-west-1.compute.amazonaws.com] has quit [Ping timeout: 264 seconds] 17:59:33 -!- InvalidCo [~invalidco@dsl-lhtbrasgw2-54f826-232.dhcp.inet.fi] has quit [Ping timeout: 264 seconds] 17:59:33 -!- leku [~mjf@shell.dhp.com] has quit [Ping timeout: 264 seconds] 18:01:55 i'm confused 18:01:57 asumu [~at@2001:470:b:b7:1e6f:65ff:fe23:c3d4] has joined #scheme 18:02:44 microcode [~microcode@bas1-toronto04-1242322006.dsl.bell.ca] has joined #scheme 18:02:46 bananagram [~bot@c-76-30-158-226.hsd1.tx.comcast.net] has joined #scheme 18:03:21 langmart` [~user@host-68-169-175-226.WISOLT2.epbfi.com] has joined #scheme 18:05:14 sad0ur_ [~sad0ur@ip-89-102-144-158.net.upcbroadband.cz] has joined #scheme 18:05:26 why is that ? 18:05:26 ASau` [~user@p5797EA1A.dip0.t-ipconnect.de] has joined #scheme 18:05:48 let's say i have (define a '(1 2)) (define b (car a)) 18:06:02 rapacity1 [~rapacity@li128-246.members.linode.com] has joined #scheme 18:06:08 and then (set-car! a 0) 18:06:22 now a is (0 2) and b is 1 18:06:33 yes ? 18:06:34 but 18:06:57 let's say i have (define a '((1) 2)) 18:07:36 and then (set-car! (car a) 0) 18:07:40 evhan_ [evhan@foldling.org] has joined #scheme 18:07:49 then b is also changed to (0) 18:07:53 -!- jao [~jao@pdpc/supporter/professional/jao] has quit [Ping timeout: 252 seconds] 18:07:54 -!- eli [~eli@racket/eli] has quit [Ping timeout: 252 seconds] 18:07:54 -!- rszeno [~rszeno@86.125.230.236] has quit [Ping timeout: 252 seconds] 18:08:00 -!- joast [~rick@76.178.135.192] has quit [Ping timeout: 252 seconds] 18:08:00 -!- sad0ur [~sad0ur@ip-89-102-144-158.net.upcbroadband.cz] has quit [Ping timeout: 252 seconds] 18:08:00 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [Ping timeout: 252 seconds] 18:08:01 -!- jrajav [~jrajav@198.179.137.210] has quit [Ping timeout: 252 seconds] 18:08:02 -!- rapacity [~rapacity@unaffiliated/rapacity] has quit [Ping timeout: 252 seconds] 18:08:02 -!- langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has quit [Ping timeout: 252 seconds] 18:08:02 -!- ASau [~user@p5797EA1A.dip0.t-ipconnect.de] has quit [Ping timeout: 252 seconds] 18:08:02 -!- entitativity [~entity@c-50-136-180-20.hsd1.ca.comcast.net] has quit [Ping timeout: 252 seconds] 18:08:02 -!- copec [copec@schrodbox.unaen.org] has quit [Ping timeout: 252 seconds] 18:08:02 -!- mutley89 [~mutley89@host31-54-196-149.range31-54.btcentralplus.com] has quit [Ping timeout: 252 seconds] 18:08:02 -!- Khisanth [~Khisanth@50.14.244.111] has quit [Ping timeout: 252 seconds] 18:08:02 -!- cmatei [~cmatei@95.76.25.200] has quit [Ping timeout: 252 seconds] 18:08:03 -!- evhan [evhan@pdpc/supporter/active/evhan] has quit [Ping timeout: 252 seconds] 18:08:03 -!- Myk267 [~myk@unaffiliated/myk267] has quit [Ping timeout: 252 seconds] 18:08:03 -!- muep_ [twingo@otitsun.oulu.fi] has quit [Ping timeout: 252 seconds] 18:08:03 Myk267 [~myk@adsl-71-149-245-243.dsl.mtry01.sbcglobal.net] has joined #scheme 18:08:04 REPLeffect [~REPLeffec@69.54.115.254] has joined #scheme 18:08:04 -!- Myk267 [~myk@adsl-71-149-245-243.dsl.mtry01.sbcglobal.net] has quit [Changing host] 18:08:05 Myk267 [~myk@unaffiliated/myk267] has joined #scheme 18:08:09 copec_ [copec@schrodbox.unaen.org] has joined #scheme 18:08:12 muep [twingo@otitsun.oulu.fi] has joined #scheme 18:08:19 rszeno [~rszeno@86.125.230.236] has joined #scheme 18:08:38 pierpa` [~user@host126-61-dynamic.41-79-r.retail.telecomitalia.it] has joined #scheme 18:08:48 jrajav [~jrajav@198.179.137.210] has joined #scheme 18:09:06 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 264 seconds] 18:09:12 i'm confused about when b shares structure/data with a and when it doesn't 18:09:54 mutley89 [~mutley89@host31-54-196-149.range31-54.btcentralplus.com] has joined #scheme 18:09:54 htor_ : it is an error to alter a constant, e.g. using `set-car!',`set-cdr!' 18:09:59 try using instead 18:10:06 (define a (list 1 2)) 18:10:08 -!- rapacity1 is now known as rapacity 18:10:08 or 18:10:14 (define a (list (list 1) 2)) 18:10:17 dsp__ [~dsp@technoanimal.net] has joined #scheme 18:10:24 (or `cons' would also work) 18:10:30 -!- rapacity [~rapacity@li128-246.members.linode.com] has quit [Changing host] 18:10:30 rapacity [~rapacity@unaffiliated/rapacity] has joined #scheme 18:10:38 these will allocate fresh, mutable pairs 18:10:39 -!- aeth is now known as Aeth 18:10:54 -!- cross [cross@spitfire.i.gajendra.net] has quit [*.net *.split] 18:10:54 -!- araujo [~araujo@gentoo/developer/araujo] has quit [*.net *.split] 18:10:54 -!- permagreen [~donovan@204.195.27.175] has quit [*.net *.split] 18:10:54 -!- dsp_ [~dsp@technoanimal.net] has quit [*.net *.split] 18:10:54 -!- levi [~user@c-24-10-225-212.hsd1.ut.comcast.net] has quit [*.net *.split] 18:10:55 -!- mario-goulart [~user@email.parenteses.org] has quit [*.net *.split] 18:10:55 -!- em [~em@unaffiliated/emma] has quit [*.net *.split] 18:11:16 i see, well it works altering a "constant" 18:11:34 -!- copec_ [copec@schrodbox.unaen.org] has left #scheme 18:11:54 i tried with (list) and (cons) but it is the same behaviour 18:12:18 cmatei [~cmatei@95.76.25.200] has joined #scheme 18:12:18 rudybot_: (let* ((f (lambda () '(0 1 2))) (a (f)) (_ (set-cdr! a 3)) (b (f))) (values a b)) 18:12:19 ski: error: set-cdr!: undefined; cannot reference an identifier before its definition in module: 'program 18:12:25 -!- pierpa [~user@host126-61-dynamic.41-79-r.retail.telecomitalia.it] has quit [Ping timeout: 276 seconds] 18:12:31 rudybot_: init r5rs 18:12:31 ski: your r5rs sandbox is ready 18:12:34 rudybot_: (let* ((f (lambda () '(0 1 2))) (a (f)) (_ (set-cdr! a 3)) (b (f))) (values a b)) 18:12:34 ski: ; Value: (mcons 0 3) 18:12:35 ski: ; Value#2: (mcons 0 3) 18:13:01 when (car a) is a list then b reflects the change in a, but when (car a) is an atom then b doesn't 18:13:12 hm, for some reason it is displaying it as `(mcons 0 3)' rather than `(0 . 3)' (or `{0 . 3}') 18:13:16 em [~em@unaffiliated/emma] has joined #scheme 18:13:35 mario-goulart [~user@email.parenteses.org] has joined #scheme 18:13:41 levi [~user@c-24-10-225-212.hsd1.ut.comcast.net] has joined #scheme 18:13:44 permagreen [~donovan@204.195.27.175] has joined #scheme 18:13:54 ijp [~user@host109-157-170-160.range109-157.btcentralplus.com] has joined #scheme 18:14:20 joast [~rick@76.178.135.192] has joined #scheme 18:14:30 *htor_* might be missing out on a fundamental principle in scheme here, 18:14:45 btw, did you reelaborate `(define b (car a))' after the redefinition of `a' ? 18:14:51 ski: yes 18:15:01 -!- amoe_ [~amoe@host-92-26-174-192.as13285.net] has quit [Ping timeout: 276 seconds] 18:15:16 -!- langmart` is now known as langmartin 18:15:30 -!- Triclops256|away is now known as Triclops256 18:15:34 amoe [~amoe@host-92-26-174-192.as13285.net] has joined #scheme 18:15:43 hm, i think i misunderstood the main issue here 18:15:55 rszeno1 [~rszeno@86.125.230.236] has joined #scheme 18:16:15 cross [cross@spitfire.i.gajendra.net] has joined #scheme 18:16:15 araujo [~araujo@gentoo/developer/araujo] has joined #scheme 18:16:23 while you should not alter constants (so you should use `list' or `cons' or similar if you want to alter), this doesn't explain the behaviour you got 18:16:26 -!- rszeno1 [~rszeno@86.125.230.236] has quit [Client Quit] 18:16:37 you had 18:16:42 (define a '((1) 2)) 18:16:45 (define b (car a)) 18:16:52 (set-car! (car a) 0) 18:17:01 or, well, the first really being 18:17:07 (define a (list (list 1) 2)) 18:17:15 walter|r [~walter@c-24-218-217-69.hsd1.ma.comcast.net] has joined #scheme 18:17:27 `a' is bound to a location that contains a value 18:17:31 rszeno1 [~rszeno@86.125.230.236] has joined #scheme 18:17:35 -!- rszeno1 [~rszeno@86.125.230.236] has quit [Client Quit] 18:17:39 that value is a pair (it's a list here) 18:18:23 `(car a)' is the first part of that pair, and `b' (or the location it is bound to) is set to this first part 18:18:33 this first part is *also* a pair 18:18:56 ggherdov [uid11402@gateway/web/irccloud.com/x-avmepfguhnjevfsd] has joined #scheme 18:19:14 so, `b' refers to a pair `(1 . ())', with `car' part being `1' and `cdr` part being `()' (the empty list) 18:19:16 Khisanth [~Khisanth@50.14.244.111] has joined #scheme 18:19:29 and the `car' part of `a' refers to this *same* pair 18:19:39 -!- Triclops256 [~Triclops2@Powder/Developer/Triclops200] has quit [Excess Flood] 18:19:39 -!- walter [~walter@c-24-218-217-69.hsd1.ma.comcast.net] has quit [Read error: Connection reset by peer] 18:19:39 -!- ivan\ [~ivan@unaffiliated/ivan/x-000001] has quit [Ping timeout: 256 seconds] 18:19:40 Triclops256 [~Triclops2@199.19.116.207] has joined #scheme 18:19:40 -!- numeral [~numeral@198.23.228.15] has quit [Ping timeout: 256 seconds] 18:19:43 -!- Triclops256 [~Triclops2@199.19.116.207] has quit [Changing host] 18:19:43 Triclops256 [~Triclops2@Powder/Developer/Triclops200] has joined #scheme 18:19:46 *htor_* thinks of pointers 18:19:55 now `(set-car! (car a) 0)' extracts this pair value, and then `set-car!' alters the `car' part of it to refer to the value `0' 18:20:08 numeral [~numeral@198.23.228.15] has joined #scheme 18:20:37 since `b' refers to the identically same pair, when you access that pair via `b', you'll now get `(0 . ())' (which is usually printed as `(0)') 18:21:02 the pair value itself is mutable 18:21:28 you can think of the pair value as consisting of two locations (the location storing the current `car' value, and the one storing the current `cdr' value) 18:21:30 *htor_* beginning to grasp it 18:21:34 dsp_ [~dsp@technoanimal.net] has joined #scheme 18:21:47 so an atom would not be mutable? 18:21:59 atom ? 18:22:00 in the case of (define a (list 1 2)) 18:22:09 `1' is not mutable, yes 18:22:36 so (set-car! a 0) here would only change that one value in that one list 18:22:36 copec [copec@schrodbox.unaen.org] has joined #scheme 18:22:38 -!- dsp__ [~dsp@technoanimal.net] has quit [*.net *.split] 18:22:38 -!- jrajav [~jrajav@198.179.137.210] has quit [*.net *.split] 18:22:38 -!- rszeno [~rszeno@86.125.230.236] has quit [*.net *.split] 18:22:38 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [*.net *.split] 18:22:38 -!- Myk267 [~myk@unaffiliated/myk267] has quit [*.net *.split] 18:22:38 -!- blz37 [~minsa@c-24-130-180-195.hsd1.ca.comcast.net] has quit [*.net *.split] 18:22:45 ivan\ [~ivan@unaffiliated/ivan/x-000001] has joined #scheme 18:22:51 (though it's possible an implementation would always allocate these two locations in succeeding memory locations, so that you'd only need the pair value to actually store the first location, since the second could then be easily computed from it) 18:23:36 htor_ : yes, that would change the pair that `a' is bound to -- but the value which was previously in that location in the pair has already been fetched into `b', and isn't affected 18:23:40 also try 18:23:45 (define a (list (list 1) 2)) 18:23:49 (define b (car a)) 18:24:01 (set-car! a (list 0)) 18:24:37 yep, b doesn't change 18:25:03 this is similar to your first example, except that we have `(list (list 1) 2)' as in the second example -- however, the `car' of `a' itself (i.e. the pair currently in the location `a' is bound to) is altered here, not the `car' of the `car' of `a' 18:25:07 right 18:26:02 so it's somewhat of a red herring whether the `car' was a number or a pair -- what mattered was whether you altered the extracted value (onlly possible in case it was mutable) or not 18:26:04 rszeno [~rszeno@79.114.20.81] has joined #scheme 18:26:44 amgarchIn9 [~amgarchin@p4FD606EB.dip0.t-ipconnect.de] has joined #scheme 18:26:50 right 18:28:02 (define a 'foo) 18:28:05 (define b a) 18:28:15 (set! a 'faa) 18:28:28 b => 'foo 18:28:28 -!- gf3 [~gf3@aether.gf3.ca] has quit [Ping timeout: 245 seconds] 18:28:32 m4burns_ [m4burns@taurine.csclub.uwaterloo.ca] has joined #scheme 18:28:58 jrslepak_ [~jrslepak@punchout.ccs.neu.edu] has joined #scheme 18:29:34 -!- rndnick0affe [~user@stgt-5f719ac7.pool.mediaWays.net] has quit [Remote host closed the connection] 18:29:49 Myk267 [~myk@unaffiliated/myk267] has joined #scheme 18:29:54 blz37 [~minsa@c-24-130-180-195.hsd1.ca.comcast.net] has joined #scheme 18:30:03 `set!' only changes which value is currently stored in the location bound to the variable 18:30:33 -!- Guest22326 [~kniu@c-67-160-8-163.hsd1.wa.comcast.net] has quit [Ping timeout: 256 seconds] 18:30:33 -!- tizoc [~user@unaffiliated/tizoc] has quit [Ping timeout: 256 seconds] 18:30:33 -!- Triclops256 [~Triclops2@Powder/Developer/Triclops200] has quit [Ping timeout: 256 seconds] 18:30:34 -!- waxysubs` [hope3@world.peace.net] has quit [Ping timeout: 256 seconds] 18:30:34 Triclops256 [~Triclops2@199.19.116.207] has joined #scheme 18:30:38 `(define b a)' fetches the current value (an immutable symbol) from the location of `a' before changing the value in that location 18:30:44 -!- Triclops256 is now known as Triclops256|away 18:30:53 -!- Triclops256|away is now known as Triclops256 18:30:54 -!- Triclops256 [~Triclops2@199.19.116.207] has quit [Changing host] 18:30:54 Triclops256 [~Triclops2@Powder/Developer/Triclops200] has joined #scheme 18:31:11 gf3 [~gf3@aether.gf3.ca] has joined #scheme 18:31:19 Guest22326 [~kniu@c-67-160-8-163.hsd1.wa.comcast.net] has joined #scheme 18:31:45 tizoc [~user@unaffiliated/tizoc] has joined #scheme 18:33:24 -!- jrapdx [~jrapdx@74-95-41-205-Oregon.hfc.comcastbusiness.net] has quit [Ping timeout: 276 seconds] 18:33:52 jrapdx [~jrapdx@74-95-41-205-Oregon.hfc.comcastbusiness.net] has joined #scheme 18:33:53 lusory_ [~lusory@42.60.25.228] has joined #scheme 18:34:12 InvalidCo [~invalidco@dsl-lhtbrasgw2-54f826-232.dhcp.inet.fi] has joined #scheme 18:35:10 -!- Myk267 [~myk@unaffiliated/myk267] has quit [Ping timeout: 276 seconds] 18:35:13 -!- pjb` [~t@AMontsouris-651-1-111-59.w83-202.abo.wanadoo.fr] has quit [Ping timeout: 276 seconds] 18:35:26 pierpa`` [~user@host126-61-dynamic.41-79-r.retail.telecomitalia.it] has joined #scheme 18:35:32 xrq` [~user@unaffiliated/xrq] has joined #scheme 18:35:39 ijp` [~user@host109-157-170-160.range109-157.btcentralplus.com] has joined #scheme 18:35:41 ASau`` [~user@p5797EA1A.dip0.t-ipconnect.de] has joined #scheme 18:35:41 mario-go` [~user@email.parenteses.org] has joined #scheme 18:36:02 Natch_r [~Natch@c-10cfe155.25-4-64736c10.cust.bredbandsbolaget.se] has joined #scheme 18:36:08 joneshf-laptop [~joneshf@mail.concordusapps.com] has joined #scheme 18:36:21 levi` [~user@c-24-10-225-212.hsd1.ut.comcast.net] has joined #scheme 18:36:23 -!- SeySayux [SeySayux@libsylph/developer/seysayux] has quit [Ping timeout: 245 seconds] 18:37:08 alexei [~amgarchin@p4FD606EB.dip0.t-ipconnect.de] has joined #scheme 18:37:11 impaktor` [~user@b2.thep.lu.se] has joined #scheme 18:37:19 -!- danking [~danking@gorf.ccs.neu.edu] has quit [Ping timeout: 245 seconds] 18:37:31 -!- copec [copec@schrodbox.unaen.org] has quit [Write error: Broken pipe] 18:37:40 -!- ASau` [~user@p5797EA1A.dip0.t-ipconnect.de] has quit [Ping timeout: 245 seconds] 18:38:04 -!- ggherdov [uid11402@gateway/web/irccloud.com/x-avmepfguhnjevfsd] has quit [Ping timeout: 245 seconds] 18:38:05 -!- z0d [~z0d@unaffiliated/z0d] has quit [Ping timeout: 245 seconds] 18:38:08 -!- langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has quit [Read error: Connection reset by peer] 18:38:19 -!- InvalidC1 [~invalidco@dsl-lhtbrasgw2-54f826-232.dhcp.inet.fi] has quit [Write error: Broken pipe] 18:38:19 -!- jrslepak [~jrslepak@punchout.ccs.neu.edu] has quit [Write error: Broken pipe] 18:38:19 -!- stephe [~stephe@quux.ca] has quit [Write error: Broken pipe] 18:38:19 -!- lusory [~lusory@42.60.25.228] has quit [Write error: Broken pipe] 18:38:19 -!- alexei___ [~amgarchin@p4FD606EB.dip0.t-ipconnect.de] has quit [Write error: Broken pipe] 18:38:20 -!- przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has quit [Remote host closed the connection] 18:38:20 -!- m4burns [m4burns@taurine.csclub.uwaterloo.ca] has quit [Remote host closed the connection] 18:38:47 ineiros_ [~itniemin@bayesianconspiracy.org] has joined #scheme 18:38:49 danking [~danking@gorf.ccs.neu.edu] has joined #scheme 18:39:05 aking_ [~aking@li455-73.members.linode.com] has joined #scheme 18:39:10 -!- jaimef [jaimef@dns.mauthesis.com] has quit [Excess Flood] 18:39:20 ELLIOTTC1BLE [~me@ell.io] has joined #scheme 18:39:24 -!- mario-go` is now known as mario-goulart` 18:39:32 copec [copec@schrodbox.unaen.org] has joined #scheme 18:39:52 przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has joined #scheme 18:39:55 UNIXgod_ [~v0id@c-24-13-198-161.hsd1.il.comcast.net] has joined #scheme 18:40:00 rudybot__ [~luser@ec2-54-215-10-197.us-west-1.compute.amazonaws.com] has joined #scheme 18:40:08 -!- UNIXgod_ [~v0id@c-24-13-198-161.hsd1.il.comcast.net] has quit [Client Quit] 18:40:36 SeySayux [SeySayux@libsylph/developer/seysayux] has joined #scheme 18:40:37 sharkbir1 [~dingdong@sharkbird.com] has joined #scheme 18:40:37 -!- tali713 [~tali713@2001:0:53aa:64c:3c5c:7455:b3ee:137e] has quit [Ping timeout: 245 seconds] 18:40:37 -!- gnomon [~gnomon@CPE000e582ae076-CM000f9f776f96.cpe.net.cable.rogers.com] has quit [Ping timeout: 245 seconds] 18:40:37 -!- parenjit` [~user@adsl-184-42-4-7.dab.bellsouth.net] has quit [Ping timeout: 245 seconds] 18:40:52 SeanTAllen [uid4855@gateway/web/irccloud.com/x-njkqjansvoeporei] has joined #scheme 18:41:06 -!- m4burns_ [m4burns@taurine.csclub.uwaterloo.ca] has quit [Ping timeout: 251 seconds] 18:41:48 m4burns [m4burns@taurine.csclub.uwaterloo.ca] has joined #scheme 18:42:03 stephe [~stephe@quux.ca] has joined #scheme 18:42:11 numeral_ [~numeral@198.23.228.15] has joined #scheme 18:42:45 gnomon_ [~gnomon@CPE000e582ae076-CM000f9f776f96.cpe.net.cable.rogers.com] has joined #scheme 18:43:26 DeadZen_ [~deadzen@deadzen.com] has joined #scheme 18:43:38 muep_ [twingo@otitsun.oulu.fi] has joined #scheme 18:43:58 jaimef [jaimef@dns.mauthesis.com] has joined #scheme 18:44:04 z0d [~z0d@q.notresp.com] has joined #scheme 18:44:04 -!- z0d [~z0d@q.notresp.com] has quit [Changing host] 18:44:04 z0d [~z0d@unaffiliated/z0d] has joined #scheme 18:44:23 -!- wbooze [~wbooze@xdsl-78-35-182-60.netcologne.de] has quit [Ping timeout: 278 seconds] 18:44:24 gravicappa [~gravicapp@ppp91-77-190-75.pppoe.mtu-net.ru] has joined #scheme 18:44:30 yosafbridge` [~yosafbrid@li125-242.members.linode.com] has joined #scheme 18:44:35 -!- ohama [ohama@cicolina.org] has quit [Disconnected by services] 18:44:59 -!- ELLIOTTC1BLE [~me@ell.io] has quit [Ping timeout: 257 seconds] 18:45:00 -!- joneshf-laptop [~joneshf@mail.concordusapps.com] has quit [Ping timeout: 257 seconds] 18:45:00 -!- rapacity [~rapacity@unaffiliated/rapacity] has quit [Ping timeout: 257 seconds] 18:45:03 ohama [ohama@cicolina.org] has joined #scheme 18:45:57 tali713 [~tali713@2001:0:53aa:64c:3c5c:7455:b3ee:137e] has joined #scheme 18:46:08 rapacity [~rapacity@unaffiliated/rapacity] has joined #scheme 18:46:13 -!- lusory_ [~lusory@42.60.25.228] has quit [Ping timeout: 276 seconds] 18:46:16 ELLIOTTC1BLE [~me@ell.io] has joined #scheme 18:46:33 lusory [~lusory@42.60.25.228] has joined #scheme 18:46:37 -!- numeral_ [~numeral@198.23.228.15] has quit [Client Quit] 18:46:37 joneshf-laptop [~joneshf@mail.concordusapps.com] has joined #scheme 18:47:11 numeral_ [~numeral@198.23.228.15] has joined #scheme 18:47:20 Aeth_ [~Michael@c-69-243-41-48.hsd1.md.comcast.net] has joined #scheme 18:47:40 ivan\_ [~ivan@108-213-76-179.lightspeed.frokca.sbcglobal.net] has joined #scheme 18:47:45 -!- ELLIOTTCABLE [~me@ell.io] has quit [Disconnected by services] 18:47:45 -!- Aeth_ [~Michael@c-69-243-41-48.hsd1.md.comcast.net] has quit [Changing host] 18:47:45 Aeth_ [~Michael@wesnoth/umc-dev/developer/aethaeryn] has joined #scheme 18:47:48 -!- Aeth [~Michael@wesnoth/umc-dev/developer/aethaeryn] has quit [Disconnected by services] 18:47:52 mutley89_ [~mutley89@host31-54-196-149.range31-54.btcentralplus.com] has joined #scheme 18:48:00 -!- ELLIOTTC1BLE [~me@ell.io] has quit [Client Quit] 18:48:20 elliottcable [~me@ell.io] has joined #scheme 18:48:41 -!- Aeth_ is now known as aeth 18:48:51 sad0ur [~sad0ur@ip-89-102-144-158.net.upcbroadband.cz] has joined #scheme 18:48:52 -!- amgarchIn9 [~amgarchin@p4FD606EB.dip0.t-ipconnect.de] has quit [*.net *.split] 18:48:52 -!- ivan\ [~ivan@unaffiliated/ivan/x-000001] has quit [*.net *.split] 18:48:52 -!- numeral [~numeral@198.23.228.15] has quit [*.net *.split] 18:48:52 -!- Khisanth [~Khisanth@50.14.244.111] has quit [*.net *.split] 18:48:52 -!- ijp [~user@host109-157-170-160.range109-157.btcentralplus.com] has quit [*.net *.split] 18:48:52 -!- levi [~user@c-24-10-225-212.hsd1.ut.comcast.net] has quit [*.net *.split] 18:48:52 -!- mario-goulart [~user@email.parenteses.org] has quit [*.net *.split] 18:48:52 -!- mutley89 [~mutley89@host31-54-196-149.range31-54.btcentralplus.com] has quit [*.net *.split] 18:48:52 -!- pierpa` [~user@host126-61-dynamic.41-79-r.retail.telecomitalia.it] has quit [*.net *.split] 18:48:52 -!- muep [twingo@otitsun.oulu.fi] has quit [*.net *.split] 18:48:53 -!- sad0ur_ [~sad0ur@ip-89-102-144-158.net.upcbroadband.cz] has quit [*.net *.split] 18:48:53 -!- microcode [~microcode@bas1-toronto04-1242322006.dsl.bell.ca] has quit [*.net *.split] 18:48:53 -!- rudybot_ [~luser@ec2-54-215-10-197.us-west-1.compute.amazonaws.com] has quit [*.net *.split] 18:48:53 -!- UNIXgod [~v0id@funtoo/user/UNIXgod] has quit [*.net *.split] 18:48:53 -!- offby1 [~offby1@pdpc/supporter/monthlybyte/offby1] has quit [*.net *.split] 18:48:53 -!- ineiros [~itniemin@bayesianconspiracy.org] has quit [*.net *.split] 18:48:54 -!- aking [~aking@li455-73.members.linode.com] has quit [*.net *.split] 18:48:54 -!- xrq [~user@unaffiliated/xrq] has quit [*.net *.split] 18:48:54 -!- yosafbridge [~yosafbrid@li125-242.members.linode.com] has quit [*.net *.split] 18:48:54 -!- Natch [~Natch@c-10cfe155.25-4-64736c10.cust.bredbandsbolaget.se] has quit [*.net *.split] 18:48:54 -!- impaktor [~user@b2.thep.lu.se] has quit [*.net *.split] 18:48:54 -!- DeadZen [~deadzen@deadzen.com] has quit [*.net *.split] 18:48:54 -!- sharkbird [~dingdong@sharkbird.com] has quit [*.net *.split] 18:49:21 -!- ivan\_ [~ivan@108-213-76-179.lightspeed.frokca.sbcglobal.net] has quit [Excess Flood] 18:49:30 -!- elliottcable [~me@ell.io] has quit [Client Quit] 18:49:40 elliottcable [~me@ell.io] has joined #scheme 18:49:43 ivan\ [~ivan@unaffiliated/ivan/x-000001] has joined #scheme 18:50:58 Khisanth [~Khisanth@50.14.244.111] has joined #scheme 18:50:58 microcode [~microcode@bas1-toronto04-1242322006.dsl.bell.ca] has joined #scheme 18:52:07 Myk267 [~myk@unaffiliated/myk267] has joined #scheme 18:53:49 eli [~eli@winooski.ccs.neu.edu] has joined #scheme 18:53:49 -!- eli [~eli@winooski.ccs.neu.edu] has quit [Changing host] 18:53:49 eli [~eli@racket/eli] has joined #scheme 18:58:34 -!- levi` is now known as levi 18:59:03 aeth_ [~Michael@wesnoth/umc-dev/developer/aethaeryn] has joined #scheme 18:59:31 -!- ASau`` is now known as ASau 18:59:51 -!- RageOfThou [~RageOfTho@77.221.25.95] has quit [Read error: Operation timed out] 19:00:36 -!- Myk267 [~myk@unaffiliated/myk267] has quit [Quit: Ack! Hans, run! It's the lhurgoyf!] 19:01:11 crypto_ [~z0d@q.notresp.com] has joined #scheme 19:01:14 asumu_ [~at@2001:470:b:b7:1e6f:65ff:fe23:c3d4] has joined #scheme 19:01:51 robot-be` [~user@c-24-118-142-0.hsd1.mn.comcast.net] has joined #scheme 19:02:03 nitefli [sage@reaver.cat.pdx.edu] has joined #scheme 19:02:54 weinholt` [weinholt@ratio.weinholt.se] has joined #scheme 19:03:29 DeadZen [~deadzen@deadzen.com] has joined #scheme 19:03:33 agumonke1 [~agu@52.158.70.86.rev.sfr.net] has joined #scheme 19:03:35 DerGuteM1ritz [~syn@saturn.lileth.net] has joined #scheme 19:04:45 joneshf-laptop_ [~joneshf@mail.concordusapps.com] has joined #scheme 19:04:46 cpach [~cpach@h125n2-veo-a11.ias.bredband.telia.com] has joined #scheme 19:04:56 dan64- [dan64@dannyadam.com] has joined #scheme 19:05:01 SeySayux_ [SeySayux@libsylph/developer/seysayux] has joined #scheme 19:05:07 bipt` [~bpt@cpe-071-070-253-241.nc.res.rr.com] has joined #scheme 19:05:24 -!- weinholt` [weinholt@ratio.weinholt.se] has quit [Changing host] 19:05:24 weinholt` [weinholt@debian/emeritus/weinholt] has joined #scheme 19:05:38 -!- SeySayux [SeySayux@libsylph/developer/seysayux] has quit [Ping timeout: 245 seconds] 19:05:38 -!- weinholt [weinholt@debian/emeritus/weinholt] has quit [Ping timeout: 245 seconds] 19:05:38 -!- aeth [~Michael@wesnoth/umc-dev/developer/aethaeryn] has quit [Ping timeout: 245 seconds] 19:05:38 -!- z0d [~z0d@unaffiliated/z0d] has quit [Ping timeout: 245 seconds] 19:05:38 -!- sharkbir1 [~dingdong@sharkbird.com] has quit [Ping timeout: 245 seconds] 19:05:38 -!- asumu [~at@2001:470:b:b7:1e6f:65ff:fe23:c3d4] has quit [Ping timeout: 245 seconds] 19:05:38 -!- clog [~nef@bespin.org] has quit [Ping timeout: 245 seconds] 19:05:39 -!- joneshf-laptop [~joneshf@mail.concordusapps.com] has quit [Ping timeout: 245 seconds] 19:05:39 -!- DeadZen_ [~deadzen@deadzen.com] has quit [Ping timeout: 245 seconds] 19:05:39 -!- permagreen [~donovan@204.195.27.175] has quit [Ping timeout: 245 seconds] 19:05:39 -!- cmatei [~cmatei@95.76.25.200] has quit [Ping timeout: 245 seconds] 19:05:39 -!- bipt [~bpt@cpe-071-070-253-241.nc.res.rr.com] has quit [Ping timeout: 245 seconds] 19:05:39 -!- agumonkey [~agu@52.158.70.86.rev.sfr.net] has quit [Ping timeout: 245 seconds] 19:05:39 -!- robot-beethoven [~user@c-24-118-142-0.hsd1.mn.comcast.net] has quit [Ping timeout: 245 seconds] 19:05:39 -!- nitefli19 [sage@reaver.cat.pdx.edu] has quit [Ping timeout: 245 seconds] 19:05:39 -!- dan64 [dan64@dannyadam.com] has quit [Ping timeout: 245 seconds] 19:05:40 -!- DerGuteMoritz [~syn@saturn.lileth.net] has quit [Ping timeout: 245 seconds] 19:05:40 -!- cpach_ [~cpach@h125n2-veo-a11.ias.bredband.telia.com] has quit [Ping timeout: 245 seconds] 19:05:40 -!- weinholt` is now known as weinholt 19:05:40 -!- dan64- is now known as dan64 19:05:42 theRealPermagree [~donovan@204.195.27.175] has joined #scheme 19:05:59 waxysubs [hope2@world.peace.net] has joined #scheme 19:06:23 -!- dan64 is now known as Guest81153 19:06:28 cmatei [~cmatei@95.76.25.200] has joined #scheme 19:06:34 clog [~nef@bespin.org] has joined #scheme 19:06:58 sharkbird [~dingdong@sharkbird.com] has joined #scheme 19:07:55 tcsc [~tcsc@c-76-127-240-20.hsd1.ct.comcast.net] has joined #scheme 19:09:37 -!- nitefli [sage@reaver.cat.pdx.edu] has quit [Ping timeout: 244 seconds] 19:09:42 -!- aeth_ is now known as aeth 19:09:55 nitefli [sage@reaver.cat.pdx.edu] has joined #scheme 19:10:55 -!- lusory [~lusory@42.60.25.228] has quit [Ping timeout: 271 seconds] 19:12:20 -!- taylanub [tub@p4FD924A7.dip0.t-ipconnect.de] has quit [Disconnected by services] 19:12:53 taylanub [tub@p4FD91CF4.dip0.t-ipconnect.de] has joined #scheme 19:14:09 sad0ur_ [~sad0ur@ip-89-102-144-158.net.upcbroadband.cz] has joined #scheme 19:14:09 -!- copec [copec@schrodbox.unaen.org] has quit [Quit: checkity check out.] 19:14:41 -!- bipt` [~bpt@cpe-071-070-253-241.nc.res.rr.com] has quit [*.net *.split] 19:14:41 -!- cpach [~cpach@h125n2-veo-a11.ias.bredband.telia.com] has quit [*.net *.split] 19:14:41 -!- joneshf-laptop_ [~joneshf@mail.concordusapps.com] has quit [*.net *.split] 19:14:41 -!- elliottcable [~me@ell.io] has quit [*.net *.split] 19:14:41 -!- sad0ur [~sad0ur@ip-89-102-144-158.net.upcbroadband.cz] has quit [*.net *.split] 19:14:41 -!- cross [cross@spitfire.i.gajendra.net] has quit [*.net *.split] 19:14:41 -!- araujo [~araujo@gentoo/developer/araujo] has quit [*.net *.split] 19:15:42 copec [copec@schrodbox.unaen.org] has joined #scheme 19:16:04 elliottcable [~me@ell.io] has joined #scheme 19:16:54 amoe_ [~amoe@host-92-19-31-127.as13285.net] has joined #scheme 19:17:04 araujo [~araujo@gentoo/developer/araujo] has joined #scheme 19:17:23 lusory [~lusory@42.60.25.228] has joined #scheme 19:18:19 cpach [~cpach@h125n2-veo-a11.ias.bredband.telia.com] has joined #scheme 19:18:24 -!- Blice [~blice@alrig.ht] has quit [Ping timeout: 246 seconds] 19:18:44 -!- tcsc [~tcsc@c-76-127-240-20.hsd1.ct.comcast.net] has quit [Quit: computer sleeping] 19:18:44 -!- htor_ [165479@safir.ifi.uio.no] has quit [Ping timeout: 246 seconds] 19:19:00 -!- araujo [~araujo@gentoo/developer/araujo] has quit [Max SendQ exceeded] 19:19:52 -!- amoe [~amoe@host-92-26-174-192.as13285.net] has quit [Ping timeout: 256 seconds] 19:20:28 -!- copec is now known as copec_ 19:20:31 araujo [~araujo@gentoo/developer/araujo] has joined #scheme 19:20:46 htor_ [165479@safir.ifi.uio.no] has joined #scheme 19:21:04 bipt` [~bpt@cpe-071-070-253-241.nc.res.rr.com] has joined #scheme 19:21:05 joneshf-laptop_ [~joneshf@mail.concordusapps.com] has joined #scheme 19:21:49 MrFahrenheit [~RageOfTho@77.221.25.95] has joined #scheme 19:22:24 cross [cross@spitfire.i.gajendra.net] has joined #scheme 19:22:26 -!- copec_ is now known as copec__ 19:22:49 -!- copec__ is now known as copec 19:25:45 Blice [~blice@alrig.ht] has joined #scheme 19:26:25 offby1 [~offby1@ec2-54-215-10-197.us-west-1.compute.amazonaws.com] has joined #scheme 19:27:46 -!- offby1 [~offby1@ec2-54-215-10-197.us-west-1.compute.amazonaws.com] has quit [Changing host] 19:27:47 offby1 [~offby1@pdpc/supporter/monthlybyte/offby1] has joined #scheme 19:27:47 -!- ffio [~fire@unaffiliated/security] has quit [Ping timeout: 252 seconds] 19:28:01 -!- agumonke1 [~agu@52.158.70.86.rev.sfr.net] has quit [Ping timeout: 248 seconds] 19:28:05 -!- rudybot__ is now known as rudybot 19:28:29 ffio_ [~fire@unaffiliated/security] has joined #scheme 19:30:38 jrajav [~jrajav@198.179.137.210] has joined #scheme 19:33:01 -!- MrFahrenheit [~RageOfTho@77.221.25.95] has quit [Ping timeout: 276 seconds] 19:35:55 -!- Triclops256 is now known as Triclops256|away 19:37:48 tcsc [~tcsc@c-76-127-240-20.hsd1.ct.comcast.net] has joined #scheme 19:39:32 -!- bananagram [~bot@c-76-30-158-226.hsd1.tx.comcast.net] has quit [Read error: Operation timed out] 19:39:46 langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has joined #scheme 19:41:16 MrFahrenheit [~RageOfTho@77.221.25.95] has joined #scheme 19:44:56 -!- offby1 [~offby1@pdpc/supporter/monthlybyte/offby1] has quit [Quit: back to ERC] 19:45:37 offby1 [~user@ec2-54-215-10-197.us-west-1.compute.amazonaws.com] has joined #scheme 19:46:24 -!- offby1 [~user@ec2-54-215-10-197.us-west-1.compute.amazonaws.com] has quit [Changing host] 19:46:24 offby1 [~user@pdpc/supporter/monthlybyte/offby1] has joined #scheme 19:46:33 -!- teiresias [~teiresias@archlinux/trusteduser/teiresias] has quit [Quit: leaving] 19:46:40 -!- htor_ [165479@safir.ifi.uio.no] has quit [Quit: leaving] 19:48:08 -!- offby1 [~user@pdpc/supporter/monthlybyte/offby1] has quit [Client Quit] 19:48:49 offby1 [~user@ec2-54-215-10-197.us-west-1.compute.amazonaws.com] has joined #scheme 19:48:53 -!- offby1 [~user@ec2-54-215-10-197.us-west-1.compute.amazonaws.com] has quit [Changing host] 19:48:53 offby1 [~user@pdpc/supporter/monthlybyte/offby1] has joined #scheme 19:49:03 -!- zeroish [~zeroish@135.207.174.50] has quit [Remote host closed the connection] 19:52:53 -!- gravicappa [~gravicapp@ppp91-77-190-75.pppoe.mtu-net.ru] has quit [Remote host closed the connection] 19:54:15 -!- cibs [~cibs@118-163-170-73.HINET-IP.hinet.net] has quit [Ping timeout: 256 seconds] 19:55:22 cibs [~cibs@60-251-40-253.HINET-IP.hinet.net] has joined #scheme 19:58:10 agumonkey [~agu@52.158.70.86.rev.sfr.net] has joined #scheme 19:58:38 -!- evhan_ is now known as evhan 19:58:53 -!- evhan [evhan@foldling.org] has quit [Changing host] 19:58:53 evhan [evhan@pdpc/supporter/active/evhan] has joined #scheme 20:01:25 -!- jrajav [~jrajav@198.179.137.210] has quit [Quit: phunq, sandwich store loop, WHAT NO UNIVERSE] 20:02:30 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Ping timeout: 264 seconds] 20:05:59 bananagram [~bot@c-76-30-158-226.hsd1.tx.comcast.net] has joined #scheme 20:07:22 rszeno1 [~rszeno@79.114.20.81] has joined #scheme 20:08:21 -!- rszeno [~rszeno@79.114.20.81] has quit [Ping timeout: 245 seconds] 20:08:54 eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has joined #scheme 20:09:38 -!- rszeno1 [~rszeno@79.114.20.81] has quit [Client Quit] 20:12:56 sharkbir1 [~dingdong@sharkbird.com] has joined #scheme 20:13:09 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 20:15:14 Guest34631 [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has joined #scheme 20:15:16 teiresias [~teiresias@archlinux/trusteduser/teiresias] has joined #scheme 20:15:48 -!- Guest34631 [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has quit [Changing host] 20:15:49 Guest34631 [~jao@pdpc/supporter/professional/jao] has joined #scheme 20:16:10 -!- snowylike [~sn@91-67-171-156-dynip.superkabel.de] has quit [Quit: Nettalk6 - www.ntalk.de] 20:18:37 jcowan [~jcowan@mail.digitalkingdom.org] has joined #scheme 20:18:48 -!- agumonkey [~agu@52.158.70.86.rev.sfr.net] has quit [*.net *.split] 20:18:48 -!- tcsc [~tcsc@c-76-127-240-20.hsd1.ct.comcast.net] has quit [*.net *.split] 20:18:48 -!- ffio_ [~fire@unaffiliated/security] has quit [*.net *.split] 20:18:49 -!- lusory [~lusory@42.60.25.228] has quit [*.net *.split] 20:18:49 -!- elliottcable [~me@ell.io] has quit [*.net *.split] 20:18:49 -!- sharkbird [~dingdong@sharkbird.com] has quit [*.net *.split] 20:18:49 -!- microcode [~microcode@bas1-toronto04-1242322006.dsl.bell.ca] has quit [*.net *.split] 20:18:50 -!- rudybot [~luser@ec2-54-215-10-197.us-west-1.compute.amazonaws.com] has quit [*.net *.split] 20:18:50 -!- przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has quit [*.net *.split] 20:18:50 -!- aking_ [~aking@li455-73.members.linode.com] has quit [*.net *.split] 20:19:26 jewel [~jewel@105-237-24-43.access.mtnbusiness.co.za] has joined #scheme 20:20:24 doi 20:21:44 -!- nitefli [sage@reaver.cat.pdx.edu] has quit [Read error: Connection reset by peer] 20:22:03 nitefli [sage@reaver.cat.pdx.edu] has joined #scheme 20:23:54 aking [~aking@li455-73.members.linode.com] has joined #scheme 20:24:22 agumonkey [~agu@52.158.70.86.rev.sfr.net] has joined #scheme 20:24:36 coi jcowan 20:24:43 lusory [~lusory@42.60.25.228] has joined #scheme 20:24:45 przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has joined #scheme 20:24:58 Okay, Will C has proposed that R7RS allow eq? to return #f on procedures even when eqv? is required to return #t (that is, when they are the result of the same lambda invocation) 20:25:11 I'd like to hear feedback on this, if anyone has any. 20:25:59 isn't eq? => eqv? right now? 20:26:07 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 20:26:42 I'm not sure how you could really make EQV? return #T for a pair of procedures if EQ? returns #F. 20:26:42 (that's supposed to be an implication) 20:27:33 rudybot [~luser@ec2-54-215-10-197.us-west-1.compute.amazonaws.com] has joined #scheme 20:27:45 microcode [~microcode@bas1-toronto04-1242322006.dsl.bell.ca] has joined #scheme 20:28:41 tcsc [~tcsc@c-76-127-240-20.hsd1.ct.comcast.net] has joined #scheme 20:28:41 ffio_ [~fire@unaffiliated/security] has joined #scheme 20:28:41 elliottcable [~me@ell.io] has joined #scheme 20:29:14 -!- ffio_ [~fire@unaffiliated/security] has quit [Max SendQ exceeded] 20:29:27 It means that an implementation can separate the "location tag" from the address, and allow eq? to compare the address whereas eqv? compares the location tag. IOW, when the compiler decides to duplicate a closure, it must ensure that both copies have the same location tag (but not the same address) 20:33:12 ffio_ [~fire@unaffiliated/security] has joined #scheme 20:34:46 -!- agumonkey [~agu@52.158.70.86.rev.sfr.net] has quit [Ping timeout: 276 seconds] 20:35:19 jrajav [~jrajav@198.179.137.210] has joined #scheme 20:37:08 ggherdov [uid11402@gateway/web/irccloud.com/x-qphhopyhhfmvymrv] has joined #scheme 20:39:52 rszeno [~rszeno@79.114.20.81] has joined #scheme 20:43:34 entitativity [~entity@c-50-136-180-20.hsd1.ca.comcast.net] has joined #scheme 20:48:41 -!- asumu_ is now known as asumu 20:48:48 -!- miql [~miql@ip68-98-19-126.ph.ph.cox.net] has quit [Ping timeout: 252 seconds] 20:48:52 -!- asumu [~at@2001:470:b:b7:1e6f:65ff:fe23:c3d4] has quit [Changing host] 20:48:52 asumu [~at@racket/asumu] has joined #scheme 20:52:05 main [~main@agjt183.neoplus.adsl.tpnet.pl] has joined #scheme 20:58:21 -!- Guest34631 [~jao@pdpc/supporter/professional/jao] has quit [Ping timeout: 256 seconds] 20:58:58 -!- jewel [~jewel@105-237-24-43.access.mtnbusiness.co.za] has quit [Ping timeout: 245 seconds] 21:01:08 -!- elliottcable [~me@ell.io] has quit [Quit: best short-url ever. ] 21:01:26 ELLIOTTCABLE [~me@ell.io] has joined #scheme 21:09:05 -!- pothos [~pothos@114-25-201-226.dynamic.hinet.net] has quit [Read error: Connection reset by peer] 21:11:01 -!- cajetanus [~user@2a01:4f8:162:44c1::2] has quit [Ping timeout: 240 seconds] 21:12:10 cajetanus [~user@2a01:4f8:162:44c1::2] has joined #scheme 21:12:42 pothos [~pothos@1-164-212-249.dynamic.hinet.net] has joined #scheme 21:13:02 -!- eni [~eni@gob75-5-82-230-88-217.fbx.proxad.net] has quit [Quit: Leaving] 21:15:38 -!- przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has quit [Ping timeout: 245 seconds] 21:24:01 -!- ELLIOTTCABLE [~me@ell.io] has quit [Quit: best short-url ever. ] 21:24:02 -!- DerGuteM1ritz is now known as DerGuteMoritz 21:25:14 ELLIOTTCABLE [~me@ell.io] has joined #scheme 21:29:36 -!- numeral_ is now known as numeral 21:33:11 ijp`` [~user@host81-155-240-231.range81-155.btcentralplus.com] has joined #scheme 21:36:02 -!- ijp` [~user@host109-157-170-160.range109-157.btcentralplus.com] has quit [Ping timeout: 256 seconds] 21:45:30 -!- tcsc [~tcsc@c-76-127-240-20.hsd1.ct.comcast.net] has quit [Quit: computer sleeping] 21:46:55 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Ping timeout: 276 seconds] 21:58:15 -!- langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has quit [Remote host closed the connection] 21:58:31 langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has joined #scheme 22:02:11 -!- jrajav [~jrajav@198.179.137.210] has quit [Quit: I tend to be neutral about apples] 22:02:33 -!- robot-be` is now known as robot-beethoven 22:03:58 -!- pierpa`` [~user@host126-61-dynamic.41-79-r.retail.telecomitalia.it] has quit [Ping timeout: 252 seconds] 22:09:27 pjb [~t@AMontsouris-651-1-111-59.w83-202.abo.wanadoo.fr] has joined #scheme 22:09:28 -!- ijp`` [~user@host81-155-240-231.range81-155.btcentralplus.com] has quit [Read error: Connection reset by peer] 22:09:34 -!- pjb is now known as Guest42937 22:10:51 tenq [~tenqnewse@ip68-100-228-234.dc.dc.cox.net] has joined #scheme 22:13:16 -!- Triclops256|away is now known as Triclops256 22:14:17 tcsc [~tcsc@c-76-127-240-20.hsd1.ct.comcast.net] has joined #scheme 22:19:23 -!- langmartin [~user@host-68-169-175-226.WISOLT2.epbfi.com] has quit [Ping timeout: 245 seconds] 22:22:01 przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has joined #scheme 22:25:18 -!- theRealPermagree [~donovan@204.195.27.175] has quit [Quit: USER DEAD IMMINENT] 22:27:13 -!- przl [~przlrkt@p5B2987F7.dip0.t-ipconnect.de] has quit [Ping timeout: 276 seconds] 22:33:43 -!- sad0ur_ [~sad0ur@ip-89-102-144-158.net.upcbroadband.cz] has quit [Ping timeout: 276 seconds] 22:35:12 sad0ur [~sad0ur@ip-89-102-144-158.net.upcbroadband.cz] has joined #scheme 22:35:25 -!- twem2 [~tristan@puma-mxisp.mxtelecom.com] has quit [Ping timeout: 246 seconds] 22:40:19 Guest34631 [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has joined #scheme 22:42:58 -!- Guest42937 is now known as pjb` 22:43:06 -!- pjb` is now known as pjb 22:49:59 -!- ELLIOTTCABLE is now known as ihateallofyou 22:57:07 -!- alexei [~amgarchin@p4FD606EB.dip0.t-ipconnect.de] has quit [Ping timeout: 252 seconds] 23:10:21 -!- ihateallofyou is now known as goodbye 23:17:29 BW^- [~Miranda@5-15-172-161.residential.rdsnet.ro] has joined #scheme 23:17:36 -!- goodbye [~me@ell.io] has quit [Remote host closed the connection] 23:18:03 jcowan: just a short reflection on this talk on procedural equivalence on the R7RS mailing list today: 23:18:45 jcowan: you have my +1 vote for keeping |eq?| essentially an object reference comparison operation. 23:19:25 jcowan: e.g., (define my-var [anything you could posisbly come up with that evaluates here]) (eq? my-var my-var) => #t 23:23:02 scheme has value in being very, very, very simple, and part of this is being so intuitive you don't need to check the language spec except for for exotic use cases 23:25:17 Well, this turns out to be false in principle, if my-var is a number or a character. 23:25:23 It tends to be true in practice, though. 23:25:24 anyhow, not sure i completely got the scope or particular point in the ML conversation here 23:25:56 jcowan: if it's a number or character, it would still be an object reference to the respective of those two, and still return #t , no? 23:26:15 e.g., you assign the number 9999999999999999999999999999 to the variable X , 23:26:15 No, because numbers and characters are not required to be objects in the relevant sense. 23:26:21 hm aha 23:26:25 aha ok 23:26:49 See http://trac.sacrideo.us/wg/wiki/FixnumInfo 23:27:04 in Gambit, (eq? X X) would always return #t there as bignums are objects; ok i'm with you that the language spec can have another more general take on it 23:27:06 mhm 23:27:14 rudybot: eval fixnum? 23:27:14 dpk: your sandbox is ready 23:27:14 dpk: ; Value: # 23:27:28 rudybot: eval (fixnum? (expt 2 100)) 23:27:28 dpk: ; Value: #f 23:27:42 rudybot: eval (define x (expt 2 100)) 23:27:42 dpk: Done. 23:27:45 Gambit has 30-bit fixnums 23:27:50 rudybot: eval (eq? x x) 23:27:50 dpk: ; Value: #t 23:27:52 :-/ 23:28:31 -!- Guest34631 [~jao@183.Red-79-144-34.dynamicIP.rima-tde.net] has quit [Ping timeout: 256 seconds] 23:28:37 jcowan: aha you meant fixnums 23:28:52 by numbers 23:28:54 rudybot: eval (define y 1) 23:28:54 dpk: Done. 23:28:58 rudybot: eval (eq? y y) 23:28:58 dpk: ; Value: #t 23:29:29 what specific implementation technique would cause (eq? x x) not to return #t? 23:30:01 Keeping things in registers. 23:30:27 ah, ok 23:31:51 jcowan: like, how? 23:32:04 so, EAX is 1234 for some fixnum and EBX is 1234 for the same fixnum 23:32:23 how could a transformation of (eq? x x) to (eq? EAX EBX) give other than #t ? 23:33:45 Eq? is supposed to be implementable as an address comparison. The address, as it were, of two registers need not be the same. 23:34:31 aha 23:35:07 jcowan: so you mean, a Scheme implementation is allowed to allocate fixnums as objects and thus there may be more than one object representing the same fixnum, and in that case eq? of those two objects would give #f ? 23:35:38 Right. 23:35:48 mhm 23:35:52 In particular, some actually do, notably SISC. 23:36:06 right 23:36:39 From _The Phantom Tollbooth_: 23:36:49 I understand some environments may require this so the language spec needs to put it at that level, though wow that's not good for performance 23:36:51 "How terribly confusing," he [the Dodecahedron] cried. "Everything here is called exactly what it is. The triangles are called triangles, the circles are called circles, and even the same numbers have the same name. Why, can you imagine what would happen if we named all the twos Henry or George or Robert or John or lots of other things? You'd have to say Robert plus John equals four, and if the four's name were Albert, things would be hopeless." 23:37:03 Eqv? can't distinguish between Robert and John, whereas eq? can. 23:37:26 mhm 23:38:14 "mhm"? I give you that marvelous example, and all you say is "mhm"? You should say "Ah! Now I understand *everything!" at the very least. 23:38:16 :-) 23:38:36 hehe 23:40:17 kvda [~kvda@unaffiliated/kvda] has joined #scheme 23:40:21 m 23:40:30 noam_ [~noam@213.57.201.130] has joined #scheme 23:40:31 -!- aranhoide [~smuxi@123.Red-79-158-172.staticIP.rima-tde.net] has quit [Remote host closed the connection] 23:41:53 -!- levi [~user@c-24-10-225-212.hsd1.ut.comcast.net] has quit [Read error: Operation timed out] 23:42:15 levi [~user@c-24-10-225-212.hsd1.ut.comcast.net] has joined #scheme 23:42:37 aranhoide [~smuxi@123.Red-79-158-172.staticIP.rima-tde.net] has joined #scheme 23:43:02 -!- aranhoide [~smuxi@123.Red-79-158-172.staticIP.rima-tde.net] has quit [Remote host closed the connection] 23:43:23 -!- fadein [~Erik@c-67-161-246-186.hsd1.ut.comcast.net] has quit [Ping timeout: 256 seconds] 23:43:57 -!- noam [~noam@213.57.201.130] has quit [Ping timeout: 256 seconds] 23:44:27 fadein [~Erik@c-67-161-246-186.hsd1.ut.comcast.net] has joined #scheme 23:45:39 -!- kobain [~kobian@unaffiliated/kobain] has quit [Ping timeout: 256 seconds] 23:45:53 kobain [~kobian@unaffiliated/kobain] has joined #scheme 23:46:55 LAMMJohnson [~ja@user-5af4385c.broadband.tesco.net] has joined #scheme 23:55:27 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 23:58:39 -!- Triclops256 is now known as Triclops256|away