2015-02-19T00:00:13Z kephra: as long as the server replies with an S-Expression 2015-02-19T00:00:21Z mark_weaver quit (Read error: Connection reset by peer) 2015-02-19T00:01:39Z kephra: the implementation is of course still asyncronous, as its running within a browser under JavaScript 2015-02-19T00:01:47Z zacts joined #scheme 2015-02-19T00:01:59Z kephra: but the continuation is hidden from the user/coder 2015-02-19T00:05:08Z hiroakip quit (Ping timeout: 246 seconds) 2015-02-19T00:05:15Z koz_ joined #scheme 2015-02-19T00:05:30Z koz_: Is this a channel for Scheme in general? 2015-02-19T00:05:44Z ijp: this is a channel for hatching schemes 2015-02-19T00:05:44Z kephra: koz_, sure 2015-02-19T00:06:10Z kephra: ijp, invasion of the toy schemes 2015-02-19T00:06:11Z koz_: OK, cool - I'm trying to learn Kawa Scheme at the moment, and I like the language. I'm just unclear on how Scheme does abstract data types. 2015-02-19T00:06:11Z ijp: which would be an amusing euphemism for forking Chicken 2015-02-19T00:06:22Z koz_: Like, say, I want a binary tree. 2015-02-19T00:06:29Z koz_: How would I implement this? Just using lists? 2015-02-19T00:06:30Z ijp: koz_: scheme doesn't 2015-02-19T00:08:10Z koz_: Or a better example would be a hashtable (or any other dictionary-type structure). 2015-02-19T00:08:58Z kephra: some schemes have an hash table type, but not r4rs (the base of all toy schemes) 2015-02-19T00:09:18Z ijp: the closest thing to a truly abstract type would be hiding the implementation with a module 2015-02-19T00:09:49Z AkashicLegend joined #scheme 2015-02-19T00:09:51Z kephra: what about using a lambda/letrec to implement abstract data types 2015-02-19T00:09:55Z koz_: Ah, ok. 2015-02-19T00:10:00Z kephra: would this be possible? 2015-02-19T00:10:03Z koz_: Well, that's basically the main thing I needed to know. 2015-02-19T00:10:06Z ijp: kephra: sure, but I wouldn't 2015-02-19T00:10:22Z koz_: AFAIK, Kawa is R6RS-compliant. 2015-02-19T00:10:30Z ijp: I really doubt that 2015-02-19T00:11:13Z kephra: ijp, *yeah* I've stated to dislike common lisp after digging deeper how how objects are implemented (CLOS over common loops) 2015-02-19T00:11:32Z kongtomorrow: koz_: aware of vector? Basically an array. That's the only non-obvious thing I can think of that you'd want for a hash table. 2015-02-19T00:11:49Z kephra: this is so much bloat to do something, that is totally against Lisp 2015-02-19T00:11:57Z koz_: kongtomorrow: Yeah - I was just wondering if there was something higher-level. But that's OK - I can work with that. 2015-02-19T00:12:10Z koz_: Thanks - I'll go back to TSPL for now. :) 2015-02-19T00:12:36Z kongtomorrow: koz_: out of curiousity, what would be higher level than vector but lower level than the table itself? 2015-02-19T00:13:15Z koz_: Lol, what I meant was 'does Scheme already have something like a hashtable or dictionary-type thing'. 2015-02-19T00:13:21Z koz_: Like, in library form or something. 2015-02-19T00:14:14Z kephra: koz_, in short: abstract data types (aka objects), are glorified site effects from viewpoint of a scheme or lisp coder. and everybody here will tell, you that side effects are as evil as war, even if you start war (aka side effects) with the most justest intension, war stays evil! 2015-02-19T00:14:30Z koz_: kephra: Fair enough. 2015-02-19T00:14:43Z ijp: koz_: it depends what you mean by "scheme" 2015-02-19T00:14:48Z koz_: But you can have purely-functional data structures. 2015-02-19T00:14:59Z koz_: But I see your point. 2015-02-19T00:15:16Z kephra: koz_, /join ##smalltalk, and people will tell the opposite ;-) 2015-02-19T00:15:28Z kephra: s/people/I/ 2015-02-19T00:16:11Z ijp: pre-r6rs: no, unless you think of alists as a suitable dictionary structure. r6rs has hashtables. future r7rs may or may not, I've stopped caring. any good implementation will of course have them in some more or less incompatible version. 2015-02-19T00:17:02Z kongtomorrow quit 2015-02-19T00:17:11Z koz_: OK, thanks - that's exactly what I needed to know. 2015-02-19T00:17:12Z ijp: I have two types of functional map in pfds (r6rs only), but I have no clue if they will run on kawa 2015-02-19T00:17:22Z kephra: the r6rs definition is much to complex to be of good use, its also overengineered at the wrong place, imho 2015-02-19T00:17:47Z ijp: kephra: of hashtables? 2015-02-19T00:18:09Z kephra: a hash table is a perfect example, where one can distinct between storage and access methods 2015-02-19T00:18:17Z ijp: if they have no good use, then I must be doing something ungood 2015-02-19T00:18:17Z kephra: in Perl speak bless and tie 2015-02-19T00:19:55Z kephra: instead of offering to tie the storage e.g. to disk, or to some C routine, or a cloud database, I have to think about a algo to produce good distributed numbers for the hash. 2015-02-19T00:20:13Z kephra: so I need a CS degree to use that hash 2015-02-19T00:21:12Z nowhereman joined #scheme 2015-02-19T00:21:26Z ijp rolls eyes, leaves 2015-02-19T00:21:56Z nowhere_man quit (Ping timeout: 246 seconds) 2015-02-19T00:22:24Z turtleman_ quit (Ping timeout: 252 seconds) 2015-02-19T00:23:26Z Riastradh joined #scheme 2015-02-19T00:25:37Z kongtomorrow joined #scheme 2015-02-19T00:30:08Z Ayey_ joined #scheme 2015-02-19T00:31:33Z adu joined #scheme 2015-02-19T00:32:19Z ddp quit (Quit: ddp) 2015-02-19T00:33:21Z robot-beethoven joined #scheme 2015-02-19T00:34:49Z Ayey_ quit (Ping timeout: 245 seconds) 2015-02-19T00:39:32Z kephra: koz_, (define stack (let ((pile ())) (lambda args (if (eqv? args ()) (let ((ret (car pile))) (set! pile (cdr pile)) ret) (set! pile (append args pile)))))) 2015-02-19T00:40:41Z mrowe is now known as mrowe_away 2015-02-19T00:42:53Z davexunit: is there no way to do pattern matching or a case-lambda in r6rs or whatever? 2015-02-19T00:43:23Z davexunit: I don't like all that that car/cdring 2015-02-19T00:44:01Z kephra: koz_, (define stack (lambda () (let ((pile ())) (lambda args (if (eqv? args ()) (let ((ret (car pile))) (set! pile (cdr pile)) ret) (set! pile (append args pile))))))) 2015-02-19T00:44:10Z Sgeo quit (Read error: Connection reset by peer) 2015-02-19T00:45:16Z kephra: koz_, the first implements a stack singleton, the later a stack class 2015-02-19T00:45:55Z ijp: davexunit: case-lambda is in r6rs, but not general matching 2015-02-19T00:46:30Z ijp: I forget if foof did it himself, but the shinn matcher has been ported 2015-02-19T00:46:50Z davexunit: thanks for the info ijp 2015-02-19T00:47:05Z davexunit: I have very little knowledge of what's actually in the various standards 2015-02-19T00:47:12Z davexunit: I just write Guile and go on with life. 2015-02-19T00:47:18Z cojy_: yo davexunit mind if i pm? 2015-02-19T00:48:15Z davexunit: go ahead 2015-02-19T00:48:36Z ddp joined #scheme 2015-02-19T00:51:52Z mrowe_away is now known as mrowe 2015-02-19T00:51:55Z oleo__ joined #scheme 2015-02-19T00:52:37Z oleo is now known as Guest68719 2015-02-19T00:52:56Z Guest68719 quit (Ping timeout: 244 seconds) 2015-02-19T00:53:37Z zacts quit (Remote host closed the connection) 2015-02-19T00:55:45Z AkashicLegend quit (Quit: AkashicLegend) 2015-02-19T00:55:47Z zacts joined #scheme 2015-02-19T01:00:06Z turtleman_ joined #scheme 2015-02-19T01:05:28Z zacts quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-02-19T01:07:02Z zacts joined #scheme 2015-02-19T01:14:28Z daviid quit (Ping timeout: 252 seconds) 2015-02-19T01:15:52Z ijp quit (Quit: brb writing connect4 fanfic) 2015-02-19T01:25:51Z kvda joined #scheme 2015-02-19T01:26:47Z xfz quit (Ping timeout: 252 seconds) 2015-02-19T01:29:35Z kongtomorrow quit 2015-02-19T01:29:57Z AkashicLegend joined #scheme 2015-02-19T01:30:41Z ddp quit (Quit: ddp) 2015-02-19T01:34:13Z xfz joined #scheme 2015-02-19T01:39:55Z jj_konk quit (Read error: Connection reset by peer) 2015-02-19T01:41:35Z sethalv quit (Quit: Leaving.) 2015-02-19T01:42:21Z b4283 quit (Read error: Connection reset by peer) 2015-02-19T01:53:32Z zacts quit (Read error: Connection reset by peer) 2015-02-19T01:53:51Z joneshf-laptop joined #scheme 2015-02-19T01:59:21Z Vutral quit (Ping timeout: 265 seconds) 2015-02-19T02:07:25Z Vutral joined #scheme 2015-02-19T02:15:48Z Sgeo joined #scheme 2015-02-19T02:17:24Z c74d quit (Ping timeout: 250 seconds) 2015-02-19T02:17:26Z mark_weaver joined #scheme 2015-02-19T02:19:36Z c74d joined #scheme 2015-02-19T02:24:57Z AkashicLegend quit (Quit: AkashicLegend) 2015-02-19T02:28:16Z excelsior joined #scheme 2015-02-19T02:43:24Z kongtomorrow joined #scheme 2015-02-19T02:45:15Z zacts joined #scheme 2015-02-19T02:46:21Z turtleman_ quit (Ping timeout: 252 seconds) 2015-02-19T02:46:34Z hiyosi quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-02-19T02:52:08Z c74d quit (Read error: Connection reset by peer) 2015-02-19T02:54:29Z davexunit quit (Quit: Later) 2015-02-19T02:54:44Z c74d joined #scheme 2015-02-19T03:13:32Z kongtomorrow quit 2015-02-19T03:23:09Z mark_wea` joined #scheme 2015-02-19T03:27:10Z mark_weaver quit (Ping timeout: 250 seconds) 2015-02-19T03:38:26Z c74d quit (Ping timeout: 250 seconds) 2015-02-19T03:41:33Z c74d joined #scheme 2015-02-19T03:47:57Z ddp joined #scheme 2015-02-19T03:48:51Z theseb joined #scheme 2015-02-19T03:53:15Z sheilong quit (Remote host closed the connection) 2015-02-19T03:53:43Z sheilong joined #scheme 2015-02-19T03:57:26Z mark_wea` is now known as mark_weaver 2015-02-19T03:59:08Z c74d quit (Read error: Connection reset by peer) 2015-02-19T04:00:42Z zacts quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-02-19T04:01:18Z c74d joined #scheme 2015-02-19T04:21:41Z offby1: rudybot: que es mas macho: foof o shinn? 2015-02-19T04:21:41Z rudybot: *offby1: forget to ask, are you Alex Shinn? 2015-02-19T04:22:32Z badkins quit 2015-02-19T04:24:32Z offby1: rudybot: nossir, I am not 2015-02-19T04:24:33Z rudybot: *offby1: nossir 2015-02-19T04:24:37Z offby1: nuh-uh 2015-02-19T04:27:15Z ecthiender joined #scheme 2015-02-19T04:29:26Z daviid joined #scheme 2015-02-19T04:29:46Z c74d is now known as Guest12641 2015-02-19T04:30:00Z mark_weaver quit (Ping timeout: 250 seconds) 2015-02-19T04:30:09Z Guest12641 quit (Ping timeout: 265 seconds) 2015-02-19T04:30:50Z zacts joined #scheme 2015-02-19T04:31:04Z frkout_ joined #scheme 2015-02-19T04:31:56Z c74d3 joined #scheme 2015-02-19T04:33:05Z ehaliewicz joined #scheme 2015-02-19T04:33:56Z frkout quit (Ping timeout: 246 seconds) 2015-02-19T04:36:04Z mark_weaver joined #scheme 2015-02-19T04:43:46Z mark_wea` joined #scheme 2015-02-19T04:47:35Z sheilong quit (Quit: end of file) 2015-02-19T04:47:45Z mark_weaver quit (Ping timeout: 250 seconds) 2015-02-19T04:48:11Z bb010g quit (Quit: Connection closed for inactivity) 2015-02-19T04:54:50Z mark_wea` is now known as mark_weaver 2015-02-19T04:58:26Z mark_wea` joined #scheme 2015-02-19T04:59:25Z ddp quit (Quit: ddp) 2015-02-19T05:01:38Z mark_weaver quit (Ping timeout: 250 seconds) 2015-02-19T05:02:44Z koz_ left #scheme 2015-02-19T05:08:15Z frkout_ quit (Remote host closed the connection) 2015-02-19T05:08:43Z frkout joined #scheme 2015-02-19T05:16:57Z Sgeo quit (Ping timeout: 244 seconds) 2015-02-19T05:22:35Z zacts quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-02-19T05:32:05Z frkout_ joined #scheme 2015-02-19T05:35:52Z frkout quit (Ping timeout: 250 seconds) 2015-02-19T05:43:01Z Sgeo joined #scheme 2015-02-19T05:45:27Z mark_wea` is now known as mark_weaver 2015-02-19T05:47:22Z jeapostrophe joined #scheme 2015-02-19T05:47:23Z jeapostrophe quit (Changing host) 2015-02-19T05:47:23Z jeapostrophe joined #scheme 2015-02-19T05:49:18Z HisaoNakai joined #scheme 2015-02-19T05:49:32Z HisaoNakai: o/ 2015-02-19T05:51:01Z HisaoNakai: How does one, non-implementation-specifically, manipulate the file pointer in R5RS Scheme? 2015-02-19T05:55:37Z zacts joined #scheme 2015-02-19T05:56:28Z HisaoNakai: (I looked around in TYS and TSPL3 and didn't see anything..) 2015-02-19T05:58:21Z bb010g joined #scheme 2015-02-19T06:01:07Z frkout_ quit (Remote host closed the connection) 2015-02-19T06:01:33Z frkout joined #scheme 2015-02-19T06:12:16Z c74d3 quit (Ping timeout: 250 seconds) 2015-02-19T06:12:22Z Ayey_ joined #scheme 2015-02-19T06:14:12Z mrowe is now known as mrowe_away 2015-02-19T06:15:05Z c74d joined #scheme 2015-02-19T06:16:52Z jeapostrophe quit (Ping timeout: 240 seconds) 2015-02-19T06:30:08Z psy_ quit (Quit: Leaving) 2015-02-19T06:32:19Z ASau` joined #scheme 2015-02-19T06:33:02Z c74d is now known as Guest61840 2015-02-19T06:33:53Z Guest61840 quit (Ping timeout: 265 seconds) 2015-02-19T06:35:12Z c74d3 joined #scheme 2015-02-19T06:35:40Z ASau quit (Ping timeout: 255 seconds) 2015-02-19T06:36:52Z daviid quit (Ping timeout: 240 seconds) 2015-02-19T06:38:55Z pnkfelix joined #scheme 2015-02-19T06:40:12Z bjz joined #scheme 2015-02-19T06:43:02Z joneshf-laptop quit (Ping timeout: 250 seconds) 2015-02-19T06:45:30Z pjdelport joined #scheme 2015-02-19T06:45:43Z kvda quit (Quit: z____z) 2015-02-19T06:49:30Z theseb left #scheme 2015-02-19T06:51:42Z c74d3 quit (Ping timeout: 250 seconds) 2015-02-19T06:54:01Z c74d joined #scheme 2015-02-19T06:55:38Z frkout_ joined #scheme 2015-02-19T06:58:59Z frkout quit (Ping timeout: 252 seconds) 2015-02-19T06:59:34Z bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2015-02-19T07:01:18Z HisaoNakai: Anyone? :\ 2015-02-19T07:05:00Z ehaliewicz quit (Ping timeout: 252 seconds) 2015-02-19T07:08:36Z Isp-sec joined #scheme 2015-02-19T07:10:17Z agam quit (Ping timeout: 245 seconds) 2015-02-19T07:26:35Z z0d: HisaoNakai: you mean seek()? 2015-02-19T07:27:12Z bjz joined #scheme 2015-02-19T07:31:22Z leppie quit 2015-02-19T07:32:10Z HisaoNakai: z0d: If it lets one jump to arbitary locations in a file being read from/written to, then yes :) 2015-02-19T07:32:20Z z0d: yeah, it is 2015-02-19T07:32:34Z z0d: AFAIK R5RS doesn't define such thing. your best bet is to use an implementation-specific POSIX library 2015-02-19T07:32:50Z leppie joined #scheme 2015-02-19T07:33:26Z HisaoNakai: z0d: no SRFI either? 2015-02-19T07:33:45Z HisaoNakai: (I think I saw one but was likely in the withdrawn category) 2015-02-19T07:36:21Z rszeno joined #scheme 2015-02-19T07:36:33Z z0d: I don't see any 2015-02-19T07:38:09Z z0d: oh, this one: http://srfi.schemers.org/srfi-68/srfi-68.html 2015-02-19T07:38:31Z HisaoNakai: Aye. 2015-02-19T07:38:48Z HisaoNakai: I guess I'll have to use Chicken's PORT-POSITION. 2015-02-19T07:39:23Z HisaoNakai: (and not bother about implementation-portable code, as the wiki said.) 2015-02-19T07:39:32Z Steverman joined #scheme 2015-02-19T07:43:24Z fantazo joined #scheme 2015-02-19T07:43:29Z wasamasa: HisaoNakai: out of curiosity, why did you assume you can write all your code in an implementation-independent manner? 2015-02-19T07:43:51Z HisaoNakai: Hey, wasamasa . I didn't, was just curious if I could o.o 2015-02-19T07:44:13Z wasamasa: HisaoNakai: well, if you avoid implementation-specific stuff, you can :P 2015-02-19T07:44:29Z wasamasa: which is, a lot 2015-02-19T07:48:24Z wasamasa: it doesn't help that the more interesting SRFIs depend on implementation-specific support either 2015-02-19T07:48:48Z HisaoNakai: wow, wat ^ 2015-02-19T07:49:42Z HisaoNakai: wasamasa: and, that chicken doesn't implement R6RS (which, I think, has more I/O built in) 2015-02-19T07:49:47Z wasamasa: like, SRFI-19 2015-02-19T07:50:11Z wasamasa: "This SRFI cannot be written in completely standard Scheme. In particular, there must be some system-independent method of finding the values for CURRENT-TIME. The GNU C function, gettimeofday might prove useful to implementors." 2015-02-19T07:50:37Z wasamasa: HisaoNakai: no, it instead went of implementing useful bits of r7rs 2015-02-19T07:50:46Z wasamasa: *for 2015-02-19T07:51:17Z HisaoNakai: :\ 2015-02-19T07:51:24Z wasamasa: what? 2015-02-19T07:51:29Z wasamasa: I mean, think about it logically 2015-02-19T07:51:43Z wasamasa: how are you going to figure out other times if you don't know the current time 2015-02-19T07:52:06Z HisaoNakai: no, I directed that at R5RS -> R7RS 2015-02-19T07:52:28Z wasamasa: well, that's a different story 2015-02-19T07:52:33Z HisaoNakai: Is R7RS a superset of R6RS? 2015-02-19T07:53:23Z wasamasa: no, it's a clean break after the r6rs controversies 2015-02-19T07:53:31Z stepnem joined #scheme 2015-02-19T07:54:27Z wasamasa: with one committee working on a small and another on a large version 2015-02-19T07:55:17Z wasamasa: the former did finish their work a few years ago IIRC, the latter didn't yet 2015-02-19T07:55:19Z HisaoNakai: Ha, I was going to ask something about the 'large/small' thing...what consitutes a 'large language'? A lot of syntax/special forms? A large standard library? 2015-02-19T07:58:11Z wasamasa: I think it's more about the standard library 2015-02-19T07:58:23Z wasamasa: like, providing FFI 2015-02-19T07:58:44Z wasamasa: or making posix mandatory 2015-02-19T07:58:55Z Steverman quit (Ping timeout: 255 seconds) 2015-02-19T07:59:35Z HisaoNakai: that doesn't sound like a bad thing. 2015-02-19T08:00:23Z wasamasa: I'm not sure why they voted for CLR FFI :P 2015-02-19T08:00:36Z HisaoNakai: wut 2015-02-19T08:01:37Z wasamasa: and java FFI 2015-02-19T08:02:15Z wasamasa: and loop syntax? 2015-02-19T08:02:22Z HisaoNakai: ^dafuq 2015-02-19T08:02:23Z Steverman joined #scheme 2015-02-19T08:02:29Z HisaoNakai: we can has recursion :| 2015-02-19T08:03:08Z wasamasa: at least they've dropped python FFI :P 2015-02-19T08:03:23Z HisaoNakai: lol 2015-02-19T08:03:25Z rszeno quit (Ping timeout: 255 seconds) 2015-02-19T08:03:57Z wasamasa: http://tinyurl.com/wg2-votes 2015-02-19T08:05:04Z wasamasa: also, dbm? 2015-02-19T08:05:13Z wasamasa: that kind of stuff should go into an external library 2015-02-19T08:10:04Z psy_ joined #scheme 2015-02-19T08:10:16Z HisaoNakai: wasamasa: interesting. 2015-02-19T08:10:29Z psy_ quit (Max SendQ exceeded) 2015-02-19T08:10:29Z HisaoNakai: I wonder when they'll be finished. 2015-02-19T08:10:35Z kongtomorrow joined #scheme 2015-02-19T08:11:01Z psy_ joined #scheme 2015-02-19T08:11:52Z c74d quit (Ping timeout: 250 seconds) 2015-02-19T08:13:34Z kongtomorrow quit (Client Quit) 2015-02-19T08:14:03Z boycottg00gle joined #scheme 2015-02-19T08:14:44Z c74d joined #scheme 2015-02-19T08:14:54Z dmiles_afk quit (Ping timeout: 265 seconds) 2015-02-19T08:18:27Z Ayey_ quit (Ping timeout: 256 seconds) 2015-02-19T08:19:39Z fridim joined #scheme 2015-02-19T08:20:19Z zacts quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-02-19T08:20:47Z mrowe_away is now known as mrowe 2015-02-19T08:24:39Z frkout_ quit (Remote host closed the connection) 2015-02-19T08:25:05Z frkout joined #scheme 2015-02-19T08:30:39Z mrowe is now known as mrowe_away 2015-02-19T08:32:04Z ASau` is now known as ASau 2015-02-19T08:34:25Z rszeno joined #scheme 2015-02-19T08:35:01Z rszeno quit (Client Quit) 2015-02-19T08:35:16Z rszeno joined #scheme 2015-02-19T08:40:16Z fridim is now known as fridim_ 2015-02-19T08:41:48Z gravicappa joined #scheme 2015-02-19T08:41:59Z msgodf joined #scheme 2015-02-19T08:45:15Z wingo joined #scheme 2015-02-19T08:50:33Z nee joined #scheme 2015-02-19T08:52:34Z przl joined #scheme 2015-02-19T08:53:37Z bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2015-02-19T08:55:59Z Ayey_ joined #scheme 2015-02-19T08:58:25Z c74d quit (Read error: Connection reset by peer) 2015-02-19T09:01:09Z c74d joined #scheme 2015-02-19T09:05:21Z dmiles_afk joined #scheme 2015-02-19T09:10:21Z germ13 joined #scheme 2015-02-19T09:12:05Z ecthiender quit (Ping timeout: 252 seconds) 2015-02-19T09:14:50Z frkout_ joined #scheme 2015-02-19T09:17:11Z Ayey_ quit (Ping timeout: 264 seconds) 2015-02-19T09:18:19Z frkout quit (Ping timeout: 252 seconds) 2015-02-19T09:18:47Z agam joined #scheme 2015-02-19T09:19:34Z frkout_ quit (Ping timeout: 252 seconds) 2015-02-19T09:29:32Z ASau quit (Remote host closed the connection) 2015-02-19T09:30:20Z ecthiender joined #scheme 2015-02-19T09:31:01Z oleo__ quit (Ping timeout: 264 seconds) 2015-02-19T09:31:05Z ASau joined #scheme 2015-02-19T09:34:45Z oleo__ joined #scheme 2015-02-19T09:35:44Z adu quit (Quit: adu) 2015-02-19T09:39:35Z Steverman quit (Ping timeout: 252 seconds) 2015-02-19T09:40:48Z ASau quit (Remote host closed the connection) 2015-02-19T09:41:03Z vraid quit (Ping timeout: 252 seconds) 2015-02-19T09:41:24Z ASau joined #scheme 2015-02-19T09:43:59Z HisaoNakai quit (Ping timeout: 245 seconds) 2015-02-19T09:45:37Z ecthiender quit (Ping timeout: 244 seconds) 2015-02-19T09:53:47Z c74d quit (Read error: Connection reset by peer) 2015-02-19T09:56:43Z c74d joined #scheme 2015-02-19T10:03:10Z agumonkey joined #scheme 2015-02-19T10:07:19Z ecthiender joined #scheme 2015-02-19T10:09:07Z ecthiender quit (Excess Flood) 2015-02-19T10:12:47Z boycottg00gle quit (Remote host closed the connection) 2015-02-19T10:16:00Z c74d is now known as Guest95670 2015-02-19T10:16:24Z Guest95670 quit (Ping timeout: 252 seconds) 2015-02-19T10:18:12Z c74d joined #scheme 2015-02-19T10:19:16Z przl quit (Ping timeout: 250 seconds) 2015-02-19T10:21:25Z vraid joined #scheme 2015-02-19T10:24:41Z ecthiender joined #scheme 2015-02-19T10:27:02Z zacts joined #scheme 2015-02-19T10:29:24Z ecthiender quit (Ping timeout: 245 seconds) 2015-02-19T10:31:25Z pjdelport quit (Quit: Connection closed for inactivity) 2015-02-19T10:37:05Z ASau quit (Remote host closed the connection) 2015-02-19T10:37:51Z bjz joined #scheme 2015-02-19T10:42:25Z ecthiender joined #scheme 2015-02-19T10:54:33Z Steverman joined #scheme 2015-02-19T10:54:51Z dmiles_afk quit (Ping timeout: 244 seconds) 2015-02-19T10:55:19Z germ13 quit (Ping timeout: 255 seconds) 2015-02-19T10:58:53Z excelsior quit (Quit: leaving) 2015-02-19T11:00:58Z dmiles_afk joined #scheme 2015-02-19T11:06:03Z cdidd quit (Remote host closed the connection) 2015-02-19T11:06:54Z leppie quit 2015-02-19T11:11:03Z leppie joined #scheme 2015-02-19T11:14:28Z Ayey_ joined #scheme 2015-02-19T11:16:20Z robot-beethoven quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-02-19T11:16:21Z przl joined #scheme 2015-02-19T11:20:42Z przl quit (Ping timeout: 245 seconds) 2015-02-19T11:21:14Z Natch quit (Remote host closed the connection) 2015-02-19T11:28:21Z bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2015-02-19T11:35:18Z dmiles_afk quit (Ping timeout: 246 seconds) 2015-02-19T11:38:06Z leppie quit 2015-02-19T11:42:32Z leppie joined #scheme 2015-02-19T11:42:32Z redeemed joined #scheme 2015-02-19T11:49:54Z Natch joined #scheme 2015-02-19T11:51:26Z pjb` joined #scheme 2015-02-19T11:53:18Z pjb quit (Ping timeout: 250 seconds) 2015-02-19T11:53:20Z bjz joined #scheme 2015-02-19T11:54:25Z Ayey_ quit (Ping timeout: 264 seconds) 2015-02-19T11:57:44Z Steverman quit (Ping timeout: 245 seconds) 2015-02-19T11:57:58Z bjz quit (Ping timeout: 252 seconds) 2015-02-19T11:58:48Z mrowe_away is now known as mrowe 2015-02-19T12:04:30Z dmiles_afk joined #scheme 2015-02-19T12:05:36Z pjb` is now known as pjb 2015-02-19T12:06:23Z oleo__ quit (Quit: Verlassend) 2015-02-19T12:07:26Z cdidd joined #scheme 2015-02-19T12:08:35Z mrowe is now known as mrowe_away 2015-02-19T12:09:39Z leppie quit 2015-02-19T12:10:48Z oleo joined #scheme 2015-02-19T12:12:19Z leppie joined #scheme 2015-02-19T12:15:24Z przl joined #scheme 2015-02-19T12:17:43Z jj_konk joined #scheme 2015-02-19T12:21:05Z jj_konk quit (Max SendQ exceeded) 2015-02-19T12:21:11Z Isp-sec quit (Ping timeout: 250 seconds) 2015-02-19T12:22:04Z jj_konk joined #scheme 2015-02-19T12:22:17Z jj_konk quit (Max SendQ exceeded) 2015-02-19T12:22:44Z jj_konk joined #scheme 2015-02-19T12:22:59Z jj_konk quit (Max SendQ exceeded) 2015-02-19T12:23:29Z jj_konk joined #scheme 2015-02-19T12:24:42Z bjz joined #scheme 2015-02-19T12:25:11Z c74d quit (Read error: Connection reset by peer) 2015-02-19T12:28:10Z c74d joined #scheme 2015-02-19T12:29:27Z Ayey_ joined #scheme 2015-02-19T12:32:22Z cdidd quit (Remote host closed the connection) 2015-02-19T12:33:58Z zadock joined #scheme 2015-02-19T12:34:02Z Ayey_ quit (Ping timeout: 245 seconds) 2015-02-19T12:37:16Z cdidd joined #scheme 2015-02-19T12:44:37Z agumonkey quit (Read error: No route to host) 2015-02-19T12:44:54Z agumonkey joined #scheme 2015-02-19T12:50:01Z peterhil` joined #scheme 2015-02-19T12:50:41Z zadock quit (Quit: Leaving) 2015-02-19T12:53:11Z peterhil quit (Ping timeout: 264 seconds) 2015-02-19T12:55:33Z rszeno quit (Quit: Leaving.) 2015-02-19T12:55:42Z davexunit joined #scheme 2015-02-19T12:56:27Z Ayey_ joined #scheme 2015-02-19T12:56:52Z ski: kephra : "abstract data types (aka objects)" -- abstract data types are different from objects .. 2015-02-19T12:58:10Z psy_ quit (Remote host closed the connection) 2015-02-19T13:02:44Z kephra: objects is a wide term, where every language (but smalltalk) has its own wrong definition 2015-02-19T13:02:55Z kephra: abstract data types are a theory behind that 2015-02-19T13:03:10Z ski . o O ( ) 2015-02-19T13:04:36Z kephra: but basically both are same: I have a hidden state, and I'm only able to access this with methods that might have side effects on the state 2015-02-19T13:05:56Z ecraven: Riastradh: greetings :) do you have any idea how to make MIT/GNU Scheme WRITE strings exactly as they are read? for example "ä" works fine, but "ß" does not 2015-02-19T13:06:06Z ecraven: (just entering it at the REPL shows the problem) 2015-02-19T13:07:48Z ski: i agree that "object-oriented" is a vague term 2015-02-19T13:08:11Z ski: however, one common view of an object is a record of methods which closes over some state that can only be directly accessed by those methods 2015-02-19T13:09:28Z pjb: Alan Kay meant "message-oriented" when he said "object-oriented". It would have been clearer if he had implemented message passing as an asynchronous procedure, instead of as a synchronous subroutine call. Ie. if he had jumpted to actors directly. 2015-02-19T13:11:05Z pjb: Which may sound strange, since Sussman found that implementing actors and closures lead to the same code. 2015-02-19T13:11:18Z pjb: I must have a different actor model in mind. 2015-02-19T13:11:57Z Riastradh: ecraven: No, because there are multiple equivalent representations of each string. 2015-02-19T13:12:32Z Riastradh: For example, "\040" is the same as " ". Should (write "\040") yield the text `"\040"'? 2015-02-19T13:13:37Z pjb: Well, I'm in accord with nowadays model of Actors http://en.wikipedia.org/wiki/Actor_model ; I guess Sussman implemented a simplified (synchronous) version to find equivalence with closures. 2015-02-19T13:16:41Z ecraven: Riastradh: so the "solution" is to actually DISPLAY the strings instead of WRITE them? 2015-02-19T13:17:39Z kephra: ecraven, the ß might also be a character set problem 2015-02-19T13:17:40Z joneshf-laptop joined #scheme 2015-02-19T13:17:46Z kephra: do you use latin1 or uft8? 2015-02-19T13:18:07Z ecraven: kephra: the point is, MIT/GNU Scheme should ideally ignore the encoding, and just treat the string as a byte array (which it mostly does anyway) 2015-02-19T13:18:24Z ecraven: kephra: emacs takes care of only sending utf-8 and treating everything it gets as utf-8 2015-02-19T13:18:38Z kephra: *ok* did you try (display "Straße") 2015-02-19T13:18:49Z ecraven: kephra: yes, display works 2015-02-19T13:19:02Z kephra: thats a feature of write vs display 2015-02-19T13:19:07Z ecraven: however, when interacting with scheme with SLIME, the results of expressions are WRITEn, not DISPLAYd 2015-02-19T13:19:15Z kephra: write is the computer readable form, while display is the human readable form 2015-02-19T13:19:52Z kephra: sure, the REPL uses write for output 2015-02-19T13:20:44Z Riastradh: I think it's a little silly for WRITE to write any non-US-ASCII code points literally, really. 2015-02-19T13:20:54Z ecraven: indeed, but this makes working with utf-8 impossible (because MIT/GNU Scheme insists on mangling characters) 2015-02-19T13:21:20Z ecraven: Riastradh: well, I'd say that depends, if I *know* I want exactly that, why wouldn't it be ok to provide it? 2015-02-19T13:21:48Z Riastradh: It doesn't mangle anything -- READ will read back exactly the same string from the notation WRITE produces. 2015-02-19T13:22:33Z ecraven: and that would be great, if the repl didn't use WRITE :) 2015-02-19T13:23:22Z ecraven: of course, this is rarely a problem for english speakers, as everything they type work correctly anyway :-/ 2015-02-19T13:25:03Z turtleman_ joined #scheme 2015-02-19T13:25:22Z ecthiender quit (Quit: gotta go) 2015-02-19T13:26:06Z leppie quit 2015-02-19T13:26:18Z hiyosi joined #scheme 2015-02-19T13:26:31Z Riastradh: Not disputing that. All I meant by the US-ASCII comment is that ISO-8859-1 was a poor choice of limited default. 2015-02-19T13:27:14Z ecraven: Riastradh: Would you happen to know where the code that does the slashification lives? Could I (with small changes) modify my local version of MIT/GNU Scheme to not slashify any characters? 2015-02-19T13:27:26Z ecraven: I've been looking in unpars, output and port, but haven't been successful so far 2015-02-19T13:28:57Z b4284 joined #scheme 2015-02-19T13:30:02Z alezost joined #scheme 2015-02-19T13:32:23Z gravicappa quit (Ping timeout: 256 seconds) 2015-02-19T13:37:22Z leppie joined #scheme 2015-02-19T13:38:03Z ovenpasta joined #scheme 2015-02-19T13:45:37Z zhangyh26258 joined #scheme 2015-02-19T13:46:50Z taylanub quit (Disconnected by services) 2015-02-19T13:47:18Z taylanub joined #scheme 2015-02-19T13:48:03Z mrowe_away is now known as mrowe 2015-02-19T13:49:37Z turtleman_ quit (Ping timeout: 264 seconds) 2015-02-19T13:52:29Z turtleman_ joined #scheme 2015-02-19T13:57:32Z mrowe is now known as mrowe_away 2015-02-19T14:00:55Z jeapostrophe joined #scheme 2015-02-19T14:02:59Z turtleman_ quit (Ping timeout: 256 seconds) 2015-02-19T14:06:41Z zhangyh26258 quit (Quit: Leaving) 2015-02-19T14:08:39Z serses joined #scheme 2015-02-19T14:09:32Z serses: is there any other program to compile scheme besides mit-gnu scheme on windows? 2015-02-19T14:11:08Z pecg joined #scheme 2015-02-19T14:17:26Z kephra: Riastradh, UTF8 is even worse. imho, its impossible to implement UTF8 both sane and correct. With the result that many perfectly stable old 8bit apps suddenly core dumped with bad UTF8 transition. 2015-02-19T14:18:48Z ffs joined #scheme 2015-02-19T14:19:08Z sonstwo quit (Ping timeout: 252 seconds) 2015-02-19T14:21:21Z serses left #scheme 2015-02-19T14:21:29Z jeapostrophe quit (Ping timeout: 250 seconds) 2015-02-19T14:22:34Z Riastradh: Many perfectly stable old apps suddenly broke with bad XYZ for plenty of different XYZ. Dealing with internationalization well is hard, and there's no silver bullet, but I haven't seen anything easier to deal with for internationalized text than UTF-8. 2015-02-19T14:23:19Z LeoNerd: UTF-8 is nice. It's on my list of "things I wish I'd invented, so I could claim the credit" :P 2015-02-19T14:23:40Z cdidd quit (Remote host closed the connection) 2015-02-19T14:24:07Z Riastradh: ecraven: Check your mail for a detailed response with a suggested roadmap for how to proceed. 2015-02-19T14:27:34Z c74d quit (Ping timeout: 252 seconds) 2015-02-19T14:32:50Z ecraven: Riastradh: thank you very much! 2015-02-19T14:36:53Z c74d joined #scheme 2015-02-19T14:37:20Z jeapostrophe joined #scheme 2015-02-19T14:41:02Z enitiz joined #scheme 2015-02-19T14:42:11Z cdidd joined #scheme 2015-02-19T14:45:31Z daviid joined #scheme 2015-02-19T14:48:36Z Khisanth quit (Read error: Connection reset by peer) 2015-02-19T14:49:21Z Khisanth joined #scheme 2015-02-19T14:54:33Z Soft quit (Ping timeout: 256 seconds) 2015-02-19T15:03:53Z enitiz quit (Ping timeout: 246 seconds) 2015-02-19T15:04:55Z badkins joined #scheme 2015-02-19T15:04:59Z enitiz joined #scheme 2015-02-19T15:09:24Z Soft joined #scheme 2015-02-19T15:13:12Z uris77 joined #scheme 2015-02-19T15:18:20Z gravicappa joined #scheme 2015-02-19T15:27:20Z c74d quit (Ping timeout: 252 seconds) 2015-02-19T15:28:10Z ddp joined #scheme 2015-02-19T15:31:02Z c74d joined #scheme 2015-02-19T15:33:00Z enitiz_ joined #scheme 2015-02-19T15:35:19Z enitiz quit (Ping timeout: 250 seconds) 2015-02-19T15:38:29Z joneshf-laptop quit (Remote host closed the connection) 2015-02-19T15:39:04Z enitiz_ quit (Ping timeout: 250 seconds) 2015-02-19T15:39:10Z joneshf-laptop joined #scheme 2015-02-19T15:42:31Z uris77_ joined #scheme 2015-02-19T15:43:40Z uris77 quit (Ping timeout: 244 seconds) 2015-02-19T15:48:43Z jj_konk quit (Ping timeout: 255 seconds) 2015-02-19T15:55:53Z turtleman_ joined #scheme 2015-02-19T15:57:00Z badkins_ joined #scheme 2015-02-19T15:57:52Z badkins quit (Ping timeout: 240 seconds) 2015-02-19T16:06:39Z excelsior joined #scheme 2015-02-19T16:11:24Z ddp quit (Quit: ddp) 2015-02-19T16:24:01Z ddp joined #scheme 2015-02-19T16:24:53Z theseb joined #scheme 2015-02-19T16:26:42Z nee quit (Read error: Connection reset by peer) 2015-02-19T16:30:14Z zacts quit (Ping timeout: 245 seconds) 2015-02-19T16:32:15Z uris77_ quit (Ping timeout: 265 seconds) 2015-02-19T16:32:21Z badkins_ is now known as badkins 2015-02-19T16:33:27Z uris77 joined #scheme 2015-02-19T16:34:17Z pygospa quit (Ping timeout: 252 seconds) 2015-02-19T16:37:44Z pjdelport joined #scheme 2015-02-19T16:40:14Z mutley89 quit (Read error: Connection reset by peer) 2015-02-19T16:41:11Z redeemed quit (Quit: q) 2015-02-19T16:41:12Z mutley89 joined #scheme 2015-02-19T16:41:23Z pygospa joined #scheme 2015-02-19T16:46:45Z ecthiender joined #scheme 2015-02-19T16:49:59Z Okasu joined #scheme 2015-02-19T16:50:01Z Okasu quit (Client Quit) 2015-02-19T16:51:51Z mutley89 quit (Quit: Leaving) 2015-02-19T16:51:51Z agumonkey quit (Ping timeout: 250 seconds) 2015-02-19T16:52:27Z jeapostrophe quit (Ping timeout: 250 seconds) 2015-02-19T16:55:22Z zadock joined #scheme 2015-02-19T16:55:51Z ecthiender quit (Quit: gotta go) 2015-02-19T16:58:10Z bb010g quit (Quit: Connection closed for inactivity) 2015-02-19T17:10:13Z alezost quit (Quit: I use GNU Guix ) 2015-02-19T17:10:33Z turtleman_ quit (Ping timeout: 256 seconds) 2015-02-19T17:12:32Z msgodf quit (Ping timeout: 244 seconds) 2015-02-19T17:14:35Z pnkfelix quit (Quit: rcirc on GNU Emacs 24.3.92.1) 2015-02-19T17:17:14Z alezost joined #scheme 2015-02-19T17:25:40Z mrowe_away is now known as mrowe 2015-02-19T17:33:35Z psy_ joined #scheme 2015-02-19T17:34:27Z ecraven quit (Ping timeout: 245 seconds) 2015-02-19T17:35:27Z mrowe is now known as mrowe_away 2015-02-19T17:38:31Z jj_konk joined #scheme 2015-02-19T17:43:37Z przl quit (Ping timeout: 264 seconds) 2015-02-19T17:48:17Z sethalves1 joined #scheme 2015-02-19T17:48:34Z wingo quit (Ping timeout: 245 seconds) 2015-02-19T17:48:47Z hiyosi quit (Quit: My Mac has gone to sleep. ZZZzzz…) 2015-02-19T17:55:25Z oleo quit (Quit: Verlassend) 2015-02-19T17:57:09Z wingo joined #scheme 2015-02-19T17:58:20Z pnkfelix joined #scheme 2015-02-19T18:01:09Z germ13 joined #scheme 2015-02-19T18:03:35Z zadock quit (Quit: Leaving) 2015-02-19T18:04:31Z ffs quit (Quit: 1.: Verstecken! 2.: Wenn sie dich finden: LÜGEN!) 2015-02-19T18:09:23Z vifino joined #scheme 2015-02-19T18:10:25Z sheilong joined #scheme 2015-02-19T18:12:40Z badkins_ joined #scheme 2015-02-19T18:13:53Z alexei_ joined #scheme 2015-02-19T18:15:17Z badkins quit (Ping timeout: 245 seconds) 2015-02-19T18:18:39Z oleo joined #scheme 2015-02-19T18:19:02Z turtleman_ joined #scheme 2015-02-19T18:19:16Z jeapostrophe joined #scheme 2015-02-19T18:19:16Z jeapostrophe quit (Changing host) 2015-02-19T18:19:16Z jeapostrophe joined #scheme 2015-02-19T18:32:04Z germ13 quit (Ping timeout: 255 seconds) 2015-02-19T18:32:28Z germ13 joined #scheme 2015-02-19T18:44:19Z jj_konk quit (Quit: Leaving) 2015-02-19T18:44:39Z jj_konk joined #scheme 2015-02-19T18:45:07Z jj_konk quit (Max SendQ exceeded) 2015-02-19T18:45:32Z jeapostrophe quit (Ping timeout: 244 seconds) 2015-02-19T18:45:33Z jj_konk joined #scheme 2015-02-19T18:51:25Z pjdelport quit (Quit: Connection closed for inactivity) 2015-02-19T18:55:19Z vraid quit (Ping timeout: 265 seconds) 2015-02-19T18:56:47Z Ayey_ quit (Ping timeout: 264 seconds) 2015-02-19T19:05:22Z daviid quit (Ping timeout: 240 seconds) 2015-02-19T19:08:04Z leppie quit (Ping timeout: 255 seconds) 2015-02-19T19:13:43Z ddp quit (Quit: ddp) 2015-02-19T19:14:14Z leppie joined #scheme 2015-02-19T19:14:25Z ddp joined #scheme 2015-02-19T19:14:56Z mrowe_away is now known as mrowe 2015-02-19T19:20:45Z przl joined #scheme 2015-02-19T19:20:47Z ddp quit (Quit: ddp) 2015-02-19T19:22:46Z b4284 quit (Quit: Konversation terminated!) 2015-02-19T19:24:23Z mrowe is now known as mrowe_away 2015-02-19T19:32:22Z alexei_ quit (Ping timeout: 245 seconds) 2015-02-19T19:34:46Z ecraven joined #scheme 2015-02-19T19:36:29Z zacts joined #scheme 2015-02-19T19:39:46Z fantazo quit (Quit: Verlassend) 2015-02-19T19:40:10Z Isp-sec joined #scheme 2015-02-19T19:42:11Z ddp joined #scheme 2015-02-19T19:53:15Z hiroakip joined #scheme 2015-02-19T20:01:54Z vraid joined #scheme 2015-02-19T20:03:34Z germ13 quit (Read error: Connection reset by peer) 2015-02-19T20:04:04Z germ13 joined #scheme 2015-02-19T20:08:56Z oleo quit (Quit: Verlassend) 2015-02-19T20:10:14Z Soft quit (Ping timeout: 265 seconds) 2015-02-19T20:13:35Z germ13 quit (Quit: Leaving) 2015-02-19T20:13:59Z germ13 joined #scheme 2015-02-19T20:15:39Z germ13 quit (Client Quit) 2015-02-19T20:16:21Z germ13 joined #scheme 2015-02-19T20:16:32Z zacts quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2015-02-19T20:21:38Z germ13 quit (Quit: Leaving) 2015-02-19T20:22:03Z germ13 joined #scheme 2015-02-19T20:24:53Z Soft joined #scheme 2015-02-19T20:26:10Z oleo joined #scheme 2015-02-19T20:27:22Z ddp quit (Quit: ddp) 2015-02-19T20:27:51Z ovenpasta quit (Ping timeout: 252 seconds) 2015-02-19T20:34:01Z gravicappa quit (Ping timeout: 255 seconds) 2015-02-19T20:46:07Z koz_ joined #scheme 2015-02-19T20:46:38Z koz_: Hi all. This will sound daft, but I don't get continuations. I've read the relevant part of TSPL several times, but I still don't 'get it'. 2015-02-19T20:46:50Z koz_: Could someone help me out with understanding this concept? 2015-02-19T20:48:33Z wasamasa: someone explained it to me as a computed GOTO 2015-02-19T20:49:21Z zacts joined #scheme 2015-02-19T20:50:45Z wasamasa: which is a concept that's more obvious for people who have written assembly or implemented a stack-based language for an interpreter 2015-02-19T20:51:03Z wasamasa: since in those pretty much all control structures compile down to GOTOs 2015-02-19T20:51:46Z koz_: Well, it's not obvious to me. I look at all the call/cc examples and they just plain don't make sense to me. 2015-02-19T20:52:04Z wasamasa: no, the concept of representing control flow with GOTOs I mean 2015-02-19T20:52:19Z bb010g joined #scheme 2015-02-19T20:55:26Z taylanub quit (Disconnected by services) 2015-02-19T20:55:31Z Vutral quit (Ping timeout: 245 seconds) 2015-02-19T20:56:04Z taylanub joined #scheme 2015-02-19T20:57:36Z davexunit quit (Quit: Later) 2015-02-19T20:58:01Z wingo quit (Ping timeout: 264 seconds) 2015-02-19T21:01:57Z badkins_ is now known as badkins 2015-02-19T21:02:47Z karswell quit (Ping timeout: 264 seconds) 2015-02-19T21:03:08Z alezost quit (Quit: I use GNU Guix ) 2015-02-19T21:12:11Z cojy_: koz_: what happens when evaluating the term 1? 2015-02-19T21:12:21Z koz_: cojy_: You get 1. 2015-02-19T21:12:35Z pnkfelix quit (Ping timeout: 265 seconds) 2015-02-19T21:12:35Z koz_: Numbers in Scheme evaluate to themselves. 2015-02-19T21:12:49Z cojy_: how do you get 1, what happens for that 1 to reach you 2015-02-19T21:13:17Z cojy_: when evaluating 1 the continuation gets called with 1 2015-02-19T21:13:32Z koz_: Ummm, ok. 2015-02-19T21:14:27Z cojy_: so call/cc gives you the continuation 2015-02-19T21:14:49Z cojy_: when you call it, it returns the value 2015-02-19T21:15:14Z turtleman_ quit (Ping timeout: 245 seconds) 2015-02-19T21:15:21Z cojy_: and then it continues the rest of the progrM in the same way 2015-02-19T21:15:44Z cojy_: if you call it multiple times, it continues the whole program multiple times 2015-02-19T21:15:57Z cojy_: effectively forking it 2015-02-19T21:15:58Z koz_: So call/cc returns a closure? 2015-02-19T21:16:15Z cojy_: a closure that represents the entire rest of the program 2015-02-19T21:16:27Z cojy_: it is very similar to forking a process 2015-02-19T21:16:28Z koz_: OK. And as I understand it, the closure takes one argument. 2015-02-19T21:16:38Z koz_: And that's the 'next thing it was meant to see'? 2015-02-19T21:16:50Z cojy_: yea which is the return value of the current expression 2015-02-19T21:17:00Z koz_: OK, let me see if I understand you correctly. 2015-02-19T21:17:04Z koz_: Suppose I have (+ 2 3). 2015-02-19T21:17:11Z cojy_: you can also decide to not call it, and not return 2015-02-19T21:17:14Z koz_: And I call/cc on the whole thing. 2015-02-19T21:17:31Z cojy_: call/cc the whole thing? 2015-02-19T21:17:59Z koz_: The current program state essentially doesn't have anything yet. 2015-02-19T21:18:09Z koz_: Because it hasn't started evaluating any part of (+ 2 3). 2015-02-19T21:18:10Z koz_: Right? 2015-02-19T21:19:55Z cojy_: koz_: think of it like this, if (+ 2 3) is your whole program 2015-02-19T21:20:30Z alexei_ joined #scheme 2015-02-19T21:20:37Z cojy_: then it looks like ((lambda (a) ((lambda (b) (+ a b)) 2) 1) 2015-02-19T21:20:53Z cojy_: thats not quite fully cpsd but 2015-02-19T21:21:16Z cojy_: basically what call/cc does is give you one of those lambdas 2015-02-19T21:21:35Z cojy_: so you can call it as many times as you want, instead of just like once there with the given value 2015-02-19T21:21:57Z koz_: OH! 2015-02-19T21:22:13Z koz_: So basically it says 'please turn my program into lambda calculus'. 2015-02-19T21:22:32Z cojy_: (+ 1 (call/cc (lambda (k) (k 1)))) => 2; (+ 1 (call/cc (lambda (k) (+ (k 1) (k 1))))) => 4 2015-02-19T21:22:46Z cojy_: not quite 2015-02-19T21:22:51Z cojy_: it already is in a form like that 2015-02-19T21:22:58Z cojy_: its actually closer to machine language 2015-02-19T21:23:07Z cojy_: you never "return" a value 2015-02-19T21:23:10Z cojy_: you just call the continuation with it 2015-02-19T21:23:55Z koz_: So, in my example, if I call the continuation with, say, 10, I get back (lambda (b) (+ 2 b))? 2015-02-19T21:24:08Z koz_: But then what's the purpose of the single argument that the closure takes? 2015-02-19T21:24:23Z sheilong quit (Quit: Konversation terminated!) 2015-02-19T21:24:26Z cojy_: the closure _is_ the continuation 2015-02-19T21:24:44Z cojy_: that's the closure k in (call/cc (lambda (k) ....)) 2015-02-19T21:24:52Z koz_: AH. 2015-02-19T21:25:01Z koz_: OK, *now* I get it. 2015-02-19T21:25:42Z koz_: I think. 2015-02-19T21:25:48Z cojy_: basically if you only call your continuation instead of "returning", it lets you get a hold of any part, and fork the computation from there 2015-02-19T21:25:50Z bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) 2015-02-19T21:25:57Z cojy_: if you are familiar with fork in a threaded system 2015-02-19T21:26:06Z koz_: Yeah, sorta. 2015-02-19T21:27:00Z koz_: Thanks - this definitely helps, but I think I'll need to look at TSPL's section on call/cc again. 2015-02-19T21:27:10Z koz_: But your explanation definitely clears things up for me. 2015-02-19T21:27:15Z cojy_: if you have knowledge of monads that helps oto 2015-02-19T21:28:41Z koz_: cojy_: Not really.... I'm only fairly noob at functional programming concepts. 2015-02-19T21:28:53Z PinealGlandOptic joined #scheme 2015-02-19T21:30:20Z cojy_: imagine instead of the 2 i have call/cc ((lambda (a) ((lambda (b) (halt (+ a b))) 2) 1) and ((lambda (a) ((lambda (b) (halt (+ a b))) (call/cc (lambda (k) (k 2)))) 1) 2015-02-19T21:30:26Z cojy_: those are equivalent 2015-02-19T21:30:35Z vanila joined #scheme 2015-02-19T21:31:19Z koz_: As I said, I'll re-read the relevant section of TSPL and see if it makes more sense to me now. 2015-02-19T21:31:28Z excelsior quit (Quit: Lost terminal) 2015-02-19T21:31:31Z koz_: That's the *one* biggest thing about Scheme I never got. 2015-02-19T21:32:19Z przl quit (Ping timeout: 245 seconds) 2015-02-19T21:36:33Z aretecode quit (Read error: Connection reset by peer) 2015-02-19T21:37:02Z cojy_: anyway just to finish the point if (+ 1 2) == ((lambda (a) ((lambda (b) (halt (+ a b))) 2) 1) then (+ 1 (call/cc fn)) => ((lambda (a) (fn (lambda (b) (halt (+ a b))))) 1) 2015-02-19T21:38:20Z ijp joined #scheme 2015-02-19T21:39:50Z aretecode joined #scheme 2015-02-19T21:41:22Z AkashicLegend joined #scheme 2015-02-19T21:44:05Z fridim_ quit (Ping timeout: 250 seconds) 2015-02-19T21:47:56Z ski think it's nicer to think of the procedure obtained as *containing* the continuation 2015-02-19T21:48:54Z vanila: rather than being the continuation? what is the difference? 2015-02-19T21:49:35Z ski: (⌜¬ τ⌝ being different from ⌜∀ ω. (τ → ω)⌝ and all that ..) 2015-02-19T21:50:06Z vanila: I don't know how that relates 2015-02-19T21:50:30Z hiroakip quit (Ping timeout: 244 seconds) 2015-02-19T21:50:45Z ski: in a sense, continuations can be thought of as being more primitive than functions 2015-02-19T21:51:51Z vanila: ah then reifying a continuation means wrapping it in a procedure, okay 2015-02-19T21:52:04Z ski: to call a function, you need to provide (a) an argument (or several); (b) a control point where the result will be received and where computation can resume after the call 2015-02-19T21:52:31Z Ayey_ joined #scheme 2015-02-19T21:52:33Z ski: to invoke a continuation, you just need an argument (or several) 2015-02-19T21:53:53Z Vutral joined #scheme 2015-02-19T21:54:17Z ski: conceptually, `call/cc' wraps the captured continuation in a function that, when it receives an argument (or several) and a return continuation, discards the return continuation, and instead invokes the captured continuation with the argument(s) 2015-02-19T21:55:27Z ski: if you want to, you can think of a function as being a continuation that accepts a tuple containing : the argument(s) and the return continuation (accepting a tuple containing the result(s)) 2015-02-19T21:56:55Z Ayey_ quit (Ping timeout: 250 seconds) 2015-02-19T21:56:57Z ski: (this is essentially saying that ⌜τ₀ → τ₁⌝ is logically equivalent to ⌜¬ (τ₀ × ¬ τ₁)⌝, in terms of types) 2015-02-19T21:57:42Z joge1 joined #scheme 2015-02-19T21:57:55Z Vutral quit (Excess Flood) 2015-02-19T21:58:54Z hiroakip joined #scheme 2015-02-19T22:00:07Z vanila: that's so cool! 2015-02-19T22:03:21Z AkashicLegend quit (Quit: AkashicLegend) 2015-02-19T22:05:13Z vanila: how would you write a proof of ¬ (τ₀ × ¬ τ₁) ? 2015-02-19T22:05:22Z vanila: for the other one you can use lambda.. 2015-02-19T22:05:57Z vanila: oh for this maybe it woul be something like \/(a,k). k (f a) where \/ is a binder that inhabits continuations 2015-02-19T22:08:51Z joge1 left #scheme 2015-02-19T22:09:57Z pecg quit (Quit: WeeChat 1.1.1) 2015-02-19T22:10:55Z vanila: oh thats wrong 2015-02-19T22:11:18Z vanila: \/(a,k). k (f a, halt) 2015-02-19T22:12:41Z AkashicLegend joined #scheme 2015-02-19T22:13:26Z Atro joined #scheme 2015-02-19T22:13:27Z Atropaplanta joined #scheme 2015-02-19T22:16:06Z Vutral joined #scheme 2015-02-19T22:17:59Z boycottg00gle joined #scheme 2015-02-19T22:18:30Z AkashicLegend quit (Quit: AkashicLegend) 2015-02-19T22:26:32Z oleo is now known as Guest20700 2015-02-19T22:28:20Z Atro quit (Quit: Leaving) 2015-02-19T22:28:22Z Atropaplanta quit (Quit: Leaving) 2015-02-19T22:28:37Z theseb quit (Quit: Leaving) 2015-02-19T22:29:47Z Guest20700 quit (Ping timeout: 264 seconds) 2015-02-19T22:34:28Z ijp: ski: it's been a while, how's life treating you? 2015-02-19T22:35:29Z ski is currently taking a topology course 2015-02-19T22:36:41Z ijp: cue terrible joke about donuts and mugs 2015-02-19T22:37:15Z ski: vanila : you need a syntax for invoking continuations. obviously such an invocation isn't an expression. you might call it a "jump". the body of your continuation-binder (sometimes written with a gamma) would be a jump 2015-02-19T22:37:23Z ski: `halt' would not be involved in here 2015-02-19T22:37:59Z ski: (i actually because interested in topology because of computing science ..) 2015-02-19T22:38:26Z ijp: like the "seemingly impossible programs" thing? 2015-02-19T22:38:35Z przl joined #scheme 2015-02-19T22:38:51Z ski: Martín H. Escardó's work mainly, yes 2015-02-19T22:38:55Z ski: and Paul Taylor 2015-02-19T22:39:11Z rszeno joined #scheme 2015-02-19T22:41:18Z oleo__ joined #scheme 2015-02-19T22:43:10Z przl quit (Ping timeout: 255 seconds) 2015-02-19T22:45:05Z ski: e.g. "Selection Functions, Bar Recursion, and Backward Induction" by Martín H. Escardó,Paulo Oliva in 2009-11-11 at is interesting 2015-02-19T22:46:31Z ski: (related to to game theory, optimal strategies, &c.) 2015-02-19T22:52:42Z mrowe_away is now known as mrowe 2015-02-19T22:52:59Z zacts quit (Ping timeout: 250 seconds) 2015-02-19T22:53:13Z ddp joined #scheme 2015-02-19T22:54:19Z pjb: "How is life threatening you?"? >:o{ 2015-02-19T22:54:49Z ski: .. "Searchable Sets, Dubuc-Penon Compactness, Omniscience Principles, and the Drinker Paradox" by ibid in 2010 at and "The universe is indiscrete" by Martín Escardó,Thomas Streicher in 2013-11-16 at are more topological 2015-02-19T22:56:43Z jj_konk quit (Ping timeout: 250 seconds) 2015-02-19T22:57:01Z jj_konk joined #scheme 2015-02-19T22:57:44Z kongtomorrow joined #scheme 2015-02-19T22:58:36Z daviid joined #scheme 2015-02-19T22:59:14Z ski: ("It is a theorem in type theory that the universe is sequentially indiscrete, in the sense that any sequence of types converges to any desired type, up to equivalence. As a corollary we derive /Rice's Theorem for the universe/: it cannot have any non-trivial decidable property, unless WLPO, the weak limited principle of omniscience, holds.") 2015-02-19T22:59:15Z boycottg00gle quit (Read error: Connection reset by peer) 2015-02-19T23:00:54Z vanila quit (Quit: Leaving) 2015-02-19T23:02:19Z mrowe is now known as mrowe_away 2015-02-19T23:03:30Z zacts joined #scheme 2015-02-19T23:05:19Z uris77 quit (Quit: leaving) 2015-02-19T23:07:36Z stepnem quit (Ping timeout: 246 seconds) 2015-02-19T23:09:43Z mrowe_away is now known as mrowe 2015-02-19T23:11:07Z oleo__ quit (Quit: Verlassend) 2015-02-19T23:15:03Z Vutral_ joined #scheme 2015-02-19T23:17:13Z oleo joined #scheme 2015-02-19T23:18:23Z Isp-sec quit (Ping timeout: 264 seconds) 2015-02-19T23:18:37Z adu joined #scheme 2015-02-19T23:19:40Z PinealGlandOptic quit (Quit: leaving) 2015-02-19T23:24:04Z King_Hual joined #scheme 2015-02-19T23:34:24Z joneshf-laptop quit (Read error: Connection reset by peer) 2015-02-19T23:34:39Z joneshf-laptop joined #scheme 2015-02-19T23:41:35Z grantix joined #scheme 2015-02-19T23:42:42Z ddp quit (Quit: ddp) 2015-02-19T23:42:57Z PinealGlandOptic joined #scheme 2015-02-19T23:53:22Z hiyosi joined #scheme 2015-02-19T23:57:10Z ddp joined #scheme