00:07:42 -!- cmatei [~cmatei@78.96.108.146] has quit [Ping timeout: 268 seconds] 00:21:20 -!- amgarchIn9 [~amgarchin@p4FD62A6A.dip0.t-ipconnect.de] has quit [Quit: Konversation terminated!] 00:21:36 amgarchIn9 [~amgarchin@p4FD62A6A.dip0.t-ipconnect.de] has joined #scheme 00:22:02 -!- mmc1 [~michal@j212142.upc-j.chello.nl] has quit [Ping timeout: 272 seconds] 00:29:54 -!- amgarchIn9 [~amgarchin@p4FD62A6A.dip0.t-ipconnect.de] has quit [Read error: Connection reset by peer] 00:30:01 amgarchIn9 [~amgarchin@p4FD62A6A.dip0.t-ipconnect.de] has joined #scheme 00:30:41 alexei [~amgarchin@p4FD62A6A.dip0.t-ipconnect.de] has joined #scheme 00:41:04 -!- alexei [~amgarchin@p4FD62A6A.dip0.t-ipconnect.de] has quit [Quit: Konversation terminated!] 01:13:40 -!- scoofy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has quit [Ping timeout: 264 seconds] 01:24:14 -!- amgarchIn9 [~amgarchin@p4FD62A6A.dip0.t-ipconnect.de] has quit [Ping timeout: 264 seconds] 01:32:23 b4283 [~b4283@60-249-196-111.HINET-IP.hinet.net] has joined #scheme 01:37:43 -!- davexunit [~user@fsf/member/davexunit] has quit [Quit: Later] 01:40:28 -!- Nshag [user@chl45-1-88-123-84-8.fbx.proxad.net] has quit [Quit: Quitte] 01:40:40 Nshag [user@chl45-1-88-123-84-8.fbx.proxad.net] has joined #scheme 02:12:35 ASau` [~user@p54AFF3EB.dip0.t-ipconnect.de] has joined #scheme 02:16:30 -!- ASau [~user@p54AFF901.dip0.t-ipconnect.de] has quit [Ping timeout: 244 seconds] 02:23:26 -!- cibs_ [~cibs@118-163-170-73.HINET-IP.hinet.net] has quit [Quit: leaving] 02:23:51 cibs [~cibs@60-251-40-253.HINET-IP.hinet.net] has joined #scheme 02:53:22 zacts [~zacts@unaffiliated/zacts] has joined #scheme 03:04:10 -!- kobain [~sambio@unaffiliated/kobain] has quit [Ping timeout: 245 seconds] 03:05:08 p_adams [~p_adams@24-107-140-111.dhcp.stls.mo.charter.com] has joined #scheme 03:08:07 -!- tenq|away is now known as tenq 03:10:29 -!- stepnem [~stepnem@internet2.cznet.cz] has quit [Ping timeout: 248 seconds] 03:18:37 -!- ASau` is now known as ASau 03:39:28 -!- asumu [~at@2001:470:b:b7:1e6f:65ff:fe23:c3d4] has quit [Read error: Connection reset by peer] 03:39:42 asumu [~at@2001:470:b:b7:1e6f:65ff:fe23:c3d4] has joined #scheme 03:42:05 -!- aeth [~Michael@wesnoth/umc-dev/developer/aethaeryn] has quit [Quit: Lost terminal] 03:43:30 aeth [~Michael@wesnoth/umc-dev/developer/aethaeryn] has joined #scheme 03:59:15 -!- p_adams [~p_adams@24-107-140-111.dhcp.stls.mo.charter.com] has quit [Quit: WeeChat 0.4.2] 04:01:10 strobegen [~Adium@188.168.72.236] has joined #scheme 04:05:09 -!- erider [~chatzilla@unaffiliated/erider] has quit [Quit: ChatZilla 0.9.90.1 [Firefox 25.0/20131028113246]] 04:05:35 -!- nisstyre [~yours@oftn/member/Nisstyre] has quit [Quit: Leaving] 04:12:59 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 252 seconds] 04:14:05 cherrypunk [~cherrypun@192.200.17.208] has joined #scheme 04:21:18 preflex_ [~preflex@unaffiliated/mauke/bot/preflex] has joined #scheme 04:22:26 -!- preflex [~preflex@unaffiliated/mauke/bot/preflex] has quit [Ping timeout: 264 seconds] 04:22:42 -!- preflex_ is now known as preflex 04:31:19 -!- cherrypunk [~cherrypun@192.200.17.208] has left #scheme 04:34:40 -!- MrFahrenheit [~RageOfTho@77.221.25.95] has quit [Ping timeout: 264 seconds] 04:39:23 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 04:40:50 palach [~palach@128-68-60-179.broadband.corbina.ru] has joined #scheme 04:44:10 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 245 seconds] 04:53:27 -!- oleo [~oleo@xdsl-78-35-166-157.netcologne.de] has quit [Ping timeout: 272 seconds] 04:53:50 oleo [~oleo@xdsl-78-35-140-95.netcologne.de] has joined #scheme 05:08:01 -!- entitativity [~entity@c-24-6-95-92.hsd1.ca.comcast.net] has quit [Ping timeout: 272 seconds] 05:08:58 -!- yacks [~py@103.6.159.103] has quit [Quit: Leaving] 05:12:21 MichaelRaskin [~MichaelRa@195.91.224.161] has joined #scheme 05:18:37 -!- tenq is now known as tenq|away 05:22:45 entitativity [~entity@c-24-6-95-92.hsd1.ca.comcast.net] has joined #scheme 05:30:36 -!- tenq|away is now known as tenq 05:40:11 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 05:45:23 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 272 seconds] 05:58:57 -!- oleo [~oleo@xdsl-78-35-140-95.netcologne.de] has quit [Remote host closed the connection] 06:16:39 -!- palach [~palach@128-68-60-179.broadband.corbina.ru] has quit [Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org] 06:17:17 palach [~palach@128-68-60-179.broadband.corbina.ru] has joined #scheme 06:24:37 -!- MichaelRaskin [~MichaelRa@195.91.224.161] has quit [Ping timeout: 248 seconds] 06:41:03 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 06:45:53 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 252 seconds] 06:55:08 -!- palach [~palach@128-68-60-179.broadband.corbina.ru] has quit [Read error: Connection reset by peer] 07:01:12 scoofy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has joined #scheme 07:11:14 vishesh [~vishesh@122.177.222.95] has joined #scheme 07:19:37 -!- gnomon [~gnomon@CPE000e582ae076-CM000f9f776f96.cpe.net.cable.rogers.com] has quit [Ping timeout: 252 seconds] 07:31:56 gnomon [~gnomon@CPE000e582ae076-CM000f9f776f96.cpe.net.cable.rogers.com] has joined #scheme 07:41:50 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 07:46:23 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 252 seconds] 07:56:00 lo 07:56:08 what is the name of that book PLAI? 07:56:24 wingo [~wingo@cha74-2-88-160-190-192.fbx.proxad.net] has joined #scheme 07:58:39 nvmnd. http://cs.brown.edu/courses/cs173/2012/book/ 08:06:54 which editions of HTDP and PLAI should I read? 08:21:54 defanor [~defanor@ppp91-77-162-217.pppoe.mtu-net.ru] has joined #scheme 08:24:37 -!- defanor_ [~defanor@ppp91-77-169-251.pppoe.mtu-net.ru] has quit [Ping timeout: 248 seconds] 08:34:33 przl [~przlrkt@62.217.45.197] has joined #scheme 08:36:12 Okasu [~1@unaffiliated/okasu] has joined #scheme 08:38:23 -!- tenq is now known as tenq|away 08:42:35 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 08:42:42 -!- przl [~przlrkt@62.217.45.197] has quit [Quit: leaving] 08:42:55 przl [~przlrkt@62.217.45.197] has joined #scheme 08:47:52 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 264 seconds] 08:50:24 -!- tenq|away is now known as tenq 08:51:19 zacts: the latest? 08:51:49 z0d: hm.. I guess. 08:51:58 I've heard differing opinions though.. 08:52:05 especially with HTDP 08:53:03 stepnem [~stepnem@internet2.cznet.cz] has joined #scheme 08:56:22 specifically? 08:58:29 -!- vraid [50d8e34d@gateway/web/freenode/ip.80.216.227.77] has quit [Ping timeout: 250 seconds] 09:00:19 z0d: I can't remember. that's why I'm asking. 09:00:27 but regardless.. 09:00:41 I'm wondering if PLAI will be a good intro for me to learn about compilers 09:00:48 eventually 09:00:59 I know it teaches interpreters 09:01:20 eventually, I want to work on a C/C++ compiler 09:01:32 well, HTDP is kind of basic 09:01:45 and AFAIR it's not about compilers at all 09:02:06 so PLAI is a better choice in this case 09:02:17 pnkfelix [~Adium@bas75-2-88-170-201-21.fbx.proxad.net] has joined #scheme 09:02:26 -!- pnkfelix [~Adium@bas75-2-88-170-201-21.fbx.proxad.net] has quit [Client Quit] 09:04:05 z0d: ok. my plan is to use HTDP to learn basic programming, then move on to PLAI after that. 09:04:33 pnkfelix [~Adium@bas75-2-88-170-201-21.fbx.proxad.net] has joined #scheme 09:04:52 I have to make a choice for next semester. between 'learn C' | 'learn scheme' | 'learn haskell' 09:05:10 so I've decided to go the (scheme) -> haskell -> C route 09:05:15 in that order 09:05:29 I feel that I might learn more that way.. 09:06:11 especially since I feel that C is becoming archaic, just a feeling not based on facts.. 09:06:50 are you new to programming? 09:07:00 somewhat 09:07:01 yes 09:08:42 I'm a programming newbie 09:08:55 tessier [~treed@kernel-panic/copilotco] has joined #scheme 09:10:31 then, you can start with HTDP 09:11:01 ok 09:11:24 zacts: C is portable assembly, you want to learn it to understand mechanic details of computers. 09:11:47 TaylanUB: my main reason for wanting to learn C is to learn UNIX 09:11:49 (Other languages might fit that role as well, like an actual assembly language, or maybe Forth or so, but C is also still very wide-spread ...) 09:11:52 UNIX programming 09:11:59 That's a good reason too. 09:12:04 and I would be interested in compilers 09:12:22 and there is a good book that teaches that using C with a lion on it 09:12:37 Some O'Reilly book ? :P 09:12:52 from what I hear scheme is a great language for learning general comp sci, and also interpreters/compilers 09:12:55 TaylanUB: nope 09:13:19 Oh OK .. (they usually put animals on their covers) 09:13:31 Scheme is just an overall great language. :) 09:14:13 Contains many many key concepts which are found in other languages in more constrained, less generic forms ... 09:15:34 TaylanUB: Modern Compiler Implementation in C - Andrew W Appel 09:16:06 although the book isn't an o'reilly book, it is on safari books 09:16:16 which my college gives me free access to 09:17:02 Hrm, I've heard the name Appel in some fancy contexts .. 09:17:07 *zacts* is just planning for the next couple of semesters 09:17:10 Was about garbage collection I think. 09:18:14 correction the animal on the cover is a Tiger not a Lion 09:19:33 *zacts* doesn't know if I should read the unpublished 2nd edition of HTDP or the first edition? 09:20:23 I know that the 2nd edition doesn't cover imperative programming 09:20:45 I'm thinking I may go with the 1st edition 09:20:51 What's on htdp.org ?.. I suppose I'd go with that. 09:20:58 that's the 1st edition 09:21:28 Hrm, if the second edition isn't online, and isn't published, where is it ? :P 09:21:40 it is online 09:21:50 it's just not an official stable version yet 09:22:03 Ah, I see it's a draft. 09:22:16 yeah 09:22:31 I'm going to go with 1st edition, since it covers imperative programming also 09:22:45 I want to get a well rounded introduction to various ways of thinking about programming 09:23:13 (note I have read the book "Simply Scheme") 09:23:22 but HTDP covers more material 09:24:15 amgarchIn9 [~amgarchin@theo1.theochem.tu-muenchen.de] has joined #scheme 09:24:17 I do think that I will go with the 2nd edition of PLAI 09:30:06 -!- Nshag [user@chl45-1-88-123-84-8.fbx.proxad.net] has quit [Read error: Operation timed out] 09:30:45 gravicappa [~gravicapp@80.90.116.82] has joined #scheme 09:31:06 -!- amgarchIn9 [~amgarchin@theo1.theochem.tu-muenchen.de] has quit [Read error: No route to host] 09:31:09 Nshag [user@chl45-1-88-123-84-8.fbx.proxad.net] has joined #scheme 09:31:17 alexei [~amgarchin@theo1.theochem.tu-muenchen.de] has joined #scheme 09:34:56 sc00fy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has joined #scheme 09:35:46 -!- scoofy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has quit [Ping timeout: 240 seconds] 09:36:57 alexei_ [~amgarchin@theo1.theochem.tu-muenchen.de] has joined #scheme 09:37:25 -!- alexei [~amgarchin@theo1.theochem.tu-muenchen.de] has quit [Read error: Connection reset by peer] 09:41:07 scoofy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has joined #scheme 09:41:16 -!- dsmith [~dsmith@cpe-184-56-129-232.neo.res.rr.com] has quit [Ping timeout: 264 seconds] 09:41:20 -!- sc00fy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has quit [Ping timeout: 244 seconds] 09:43:26 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 09:44:40 sc00fy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has joined #scheme 09:45:28 -!- scoofy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has quit [Ping timeout: 244 seconds] 09:48:14 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 264 seconds] 09:53:00 scoofy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has joined #scheme 09:54:28 -!- sc00fy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has quit [Ping timeout: 264 seconds] 09:55:47 dsmith [~dsmith@cpe-184-56-129-232.neo.res.rr.com] has joined #scheme 09:57:37 -!- alexei_ [~amgarchin@theo1.theochem.tu-muenchen.de] has quit [Ping timeout: 265 seconds] 09:58:12 alexei_ [~amgarchin@theo1.theochem.tu-muenchen.de] has joined #scheme 09:59:35 -!- przl [~przlrkt@62.217.45.197] has quit [Ping timeout: 245 seconds] 10:03:13 sc00fy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has joined #scheme 10:03:49 alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has joined #scheme 10:03:53 -!- scoofy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has quit [Ping timeout: 252 seconds] 10:03:58 -!- alexei_ [~amgarchin@theo1.theochem.tu-muenchen.de] has quit [Quit: Konversation terminated!] 10:11:26 scoofy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has joined #scheme 10:13:11 -!- sc00fy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has quit [Ping timeout: 272 seconds] 10:13:36 yacks [~py@103.6.159.103] has joined #scheme 10:14:44 przl [~przlrkt@62.217.45.197] has joined #scheme 10:21:42 mmc1 [~michal@sams-office-nat.tomtomgroup.com] has joined #scheme 10:33:23 -!- przl [~przlrkt@62.217.45.197] has quit [Ping timeout: 265 seconds] 10:39:40 sc00fy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has joined #scheme 10:41:41 -!- scoofy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has quit [Ping timeout: 272 seconds] 10:44:14 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 10:45:44 -!- b4283 [~b4283@60-249-196-111.HINET-IP.hinet.net] has quit [Quit: ] 10:46:39 noam_ [~noam@213.57.201.130] has joined #scheme 10:48:24 przl [~przlrkt@62.217.45.197] has joined #scheme 10:48:45 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 245 seconds] 10:48:56 -!- noam [~noam@213.57.201.130] has quit [Ping timeout: 245 seconds] 10:51:03 -!- ASau [~user@p54AFF3EB.dip0.t-ipconnect.de] has quit [Remote host closed the connection] 10:53:27 ASau [~user@p54AFF3EB.dip0.t-ipconnect.de] has joined #scheme 10:54:47 kwmiebach [~kwmiebach@xdsl-87-78-47-100.netcologne.de] has joined #scheme 11:05:24 scoofy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has joined #scheme 11:07:13 -!- sc00fy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has quit [Ping timeout: 265 seconds] 11:08:57 sc00fy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has joined #scheme 11:10:04 -!- scoofy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has quit [Ping timeout: 264 seconds] 11:29:20 -!- przl [~przlrkt@62.217.45.197] has quit [Ping timeout: 244 seconds] 11:38:33 jao [~jao@21.Red-79-153-49.dynamicIP.rima-tde.net] has joined #scheme 11:38:36 -!- jao [~jao@21.Red-79-153-49.dynamicIP.rima-tde.net] has quit [Changing host] 11:38:36 jao [~jao@pdpc/supporter/professional/jao] has joined #scheme 11:45:06 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 11:49:29 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 244 seconds] 11:51:05 rstandy [~rastandy@5-157-114-11.v4.ngi.it] has joined #scheme 11:57:49 -!- gravicappa [~gravicapp@80.90.116.82] has quit [Remote host closed the connection] 11:58:03 przl [~przlrkt@62.217.45.197] has joined #scheme 12:02:06 cmatei [~cmatei@78.96.108.146] has joined #scheme 12:17:22 kuribas [~user@d54C430B0.access.telenet.be] has joined #scheme 12:29:10 -!- Sgeo [~quassel@ool-ad034ea6.dyn.optonline.net] has quit [Read error: Connection reset by peer] 12:45:48 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 12:50:25 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 245 seconds] 12:55:52 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 13:03:39 -!- amgarching [~matveev@theo1.theochem.tu-muenchen.de] has quit [Ping timeout: 272 seconds] 13:04:35 -!- alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has quit [Ping timeout: 245 seconds] 13:09:21 -!- jao [~jao@pdpc/supporter/professional/jao] has quit [Ping timeout: 272 seconds] 13:10:42 scoofy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has joined #scheme 13:10:56 alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has joined #scheme 13:11:07 -!- sc00fy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has quit [Ping timeout: 244 seconds] 13:11:11 amgarching [~matveev@theo1.theochem.tu-muenchen.de] has joined #scheme 13:15:18 -!- araujo [~araujo@gentoo/developer/araujo] has quit [Read error: Connection reset by peer] 13:16:04 -!- amgarching [~matveev@theo1.theochem.tu-muenchen.de] has quit [Ping timeout: 264 seconds] 13:16:18 araujo [~araujo@gentoo/developer/araujo] has joined #scheme 13:16:21 -!- tenq is now known as tenq|away 13:20:14 -!- jewel [~jewel@105-236-138-104.access.mtnbusiness.co.za] has quit [Quit: Leaving] 13:21:55 -!- przl [~przlrkt@62.217.45.197] has quit [Ping timeout: 272 seconds] 13:22:27 davexunit [~user@fsf/member/davexunit] has joined #scheme 13:32:14 vraid [c1b4bd9e@gateway/web/freenode/ip.193.180.189.158] has joined #scheme 13:42:12 ebzzry [~ebzzry@112.204.19.57] has joined #scheme 13:46:09 boycottg00gle [~user@stgt-5f719e95.pool.mediaWays.net] has joined #scheme 13:47:37 -!- vishesh [~vishesh@122.177.222.95] has quit [Ping timeout: 272 seconds] 13:53:47 sc00fy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has joined #scheme 13:55:15 -!- scoofy [~scoofy@catv-89-135-80-2.catv.broadband.hu] has quit [Ping timeout: 252 seconds] 14:22:08 przl [~przlrkt@62.217.45.197] has joined #scheme 14:28:15 gravicappa [~gravicapp@ppp91-77-178-189.pppoe.mtu-net.ru] has joined #scheme 14:39:43 b4283 [~b4283@118.150.134.51] has joined #scheme 14:44:09 duggiefresh [~duggiefre@64.119.141.126] has joined #scheme 14:44:38 -!- gravicappa [~gravicapp@ppp91-77-178-189.pppoe.mtu-net.ru] has quit [Ping timeout: 264 seconds] 14:44:51 defanor_ [~defanor@ppp91-77-167-145.pppoe.mtu-net.ru] has joined #scheme 14:45:14 -!- defanor [~defanor@ppp91-77-162-217.pppoe.mtu-net.ru] has quit [Ping timeout: 264 seconds] 14:46:18 -!- alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has quit [Read error: No route to host] 14:46:34 alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has joined #scheme 14:59:43 vishesh [~vishesh@103.30.142.133] has joined #scheme 15:01:05 -!- alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has quit [Read error: No route to host] 15:01:13 alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has joined #scheme 15:02:13 -!- alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has quit [Read error: Connection reset by peer] 15:02:16 -!- przl [~przlrkt@62.217.45.197] has quit [Ping timeout: 264 seconds] 15:02:22 alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has joined #scheme 15:02:52 -!- alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has quit [Read error: Connection reset by peer] 15:03:00 alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has joined #scheme 15:04:28 -!- alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has quit [Client Quit] 15:04:37 alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has joined #scheme 15:10:18 gravicappa [~gravicapp@ppp91-77-166-251.pppoe.mtu-net.ru] has joined #scheme 15:12:58 kobain [~sambio@unaffiliated/kobain] has joined #scheme 15:16:42 oleo [~oleo@xdsl-78-35-140-95.netcologne.de] has joined #scheme 15:22:30 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Ping timeout: 245 seconds] 15:28:54 przl [~przlrkt@62.217.45.197] has joined #scheme 15:33:25 -!- przl [~przlrkt@62.217.45.197] has quit [Ping timeout: 248 seconds] 15:34:12 civodul [~user@gateway/tor-sasl/civodul] has joined #scheme 15:37:02 -!- ski_ is now known as ski 15:45:32 -!- tenq|away is now known as tenq 15:49:13 jewel [~jewel@105-236-138-104.access.mtnbusiness.co.za] has joined #scheme 15:52:45 -!- Okasu [~1@unaffiliated/okasu] has quit [Quit: leaving] 15:55:47 -!- araujo [~araujo@gentoo/developer/araujo] has quit [Read error: Connection reset by peer] 15:56:01 -!- tenq is now known as tenq|away 15:56:47 araujo [~araujo@gentoo/developer/araujo] has joined #scheme 15:57:30 przl [~przlrkt@62.217.45.197] has joined #scheme 15:59:05 pjb2 [~t@voyager.informatimago.com] has joined #scheme 16:00:01 -!- pjb2 is now known as claire 16:00:35 -!- claire [~t@voyager.informatimago.com] has left #scheme 16:04:43 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 16:09:32 -!- REPLeffect [~REPLeffec@69.54.115.254] has quit [Quit: bye] 16:11:59 -!- edw [~edw@cpe-67-250-41-96.nyc.res.rr.com] has quit [Quit: Computer has gone to sleep.] 16:13:57 -!- przl [~przlrkt@62.217.45.197] has quit [Ping timeout: 248 seconds] 16:26:45 -!- alexei___ [~amgarchin@theo1.theochem.tu-muenchen.de] has quit [Read error: Operation timed out] 16:30:07 -!- wingo [~wingo@cha74-2-88-160-190-192.fbx.proxad.net] has quit [Ping timeout: 272 seconds] 16:31:18 Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginm.net] has joined #scheme 16:32:20 przl [~przlrkt@62.217.45.197] has joined #scheme 16:37:36 -!- Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginm.net] has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/] 16:39:42 REPLeffect [~REPLeffec@69.54.115.254] has joined #scheme 16:43:29 MichaelRaskin [~MichaelRa@195.91.224.161] has joined #scheme 16:46:00 paddymahoney [~paddymaho@24.137.221.230] has joined #scheme 16:56:16 -!- mmc1 [~michal@sams-office-nat.tomtomgroup.com] has quit [Ping timeout: 264 seconds] 16:59:27 Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginm.net] has joined #scheme 17:02:47 Shaolinburper [~nevzets@unaffiliated/nevzets] has joined #scheme 17:03:01 Scheme doesn't really have a good facility to add user defined types does it? 17:03:11 Like, add a label to a random datum which may be tested in constant time? 17:05:18 edw [~edw@207.239.61.34] has joined #scheme 17:06:01 -!- noobboob [uid5587@gateway/web/irccloud.com/x-ryaimhtoagodbiyz] has quit [Quit: Connection closed for inactivity] 17:06:40 -!- rstandy [~rastandy@5-157-114-11.v4.ngi.it] has quit [Ping timeout: 245 seconds] 17:10:55 mmc1 [~michal@sams-office-nat.tomtomgroup.com] has joined #scheme 17:11:20 Shaolinburper: some implementations provide define-record (or define-record-type) which can be used to do that 17:11:41 I believe records are also an r7 thing... 17:11:46 Or structures, or something. 17:12:18 Yeah, I know, I was more or less hoping for something like (addtype 'x ) and to be able to have (checktype? 'x ) or something 17:12:34 -!- oleo [~oleo@xdsl-78-35-140-95.netcologne.de] has quit [Read error: Connection reset by peer] 17:12:59 Didn't use dashes and you can't stop me babe. 17:14:03 oleo [~oleo@xdsl-87-78-76-122.netcologne.de] has joined #scheme 17:15:27 -!- przl [~przlrkt@62.217.45.197] has quit [Ping timeout: 252 seconds] 17:15:36 (define (addtype t v) (cons t v)) (define (checktype? t v) (eq? t (car v))) 17:16:07 Yeah, but then you have to unbox it every time you use it 17:16:09 ...and perhaps: (define (checked t v) (if (not (checktype? t v)) (error "Type mismatch:" t v)) (cdr v)) 17:16:42 *poof* 17:16:49 poof? 17:17:34 -!- ASau [~user@p54AFF3EB.dip0.t-ipconnect.de] has quit [Ping timeout: 244 seconds] 17:18:17 Shaolinburper: Riastradh is gone again, vanished into thin air 17:18:30 It's magic. 17:18:42 Has blink I see. 17:19:50 jao [~jao@21.Red-79-153-49.dynamicIP.rima-tde.net] has joined #scheme 17:19:53 -!- jao [~jao@21.Red-79-153-49.dynamicIP.rima-tde.net] has quit [Changing host] 17:19:53 jao [~jao@pdpc/supporter/professional/jao] has joined #scheme 17:21:19 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Ping timeout: 265 seconds] 17:28:43 wingo [~wingo@cha74-2-88-160-190-192.fbx.proxad.net] has joined #scheme 17:31:53 tupi [~user@139.82.89.157] has joined #scheme 17:32:11 -!- mmc1 [~michal@sams-office-nat.tomtomgroup.com] has quit [Ping timeout: 272 seconds] 17:34:37 -!- kwmiebach [~kwmiebach@xdsl-87-78-47-100.netcologne.de] has quit [Ping timeout: 272 seconds] 17:34:59 kwmiebach [~kwmiebach@xdsl-195-14-207-26.netcologne.de] has joined #scheme 17:38:11 ASau [~user@p54AFF3EB.dip0.t-ipconnect.de] has joined #scheme 17:39:25 -!- ASau [~user@p54AFF3EB.dip0.t-ipconnect.de] has quit [Remote host closed the connection] 17:40:37 ASau [~user@p54AFF3EB.dip0.t-ipconnect.de] has joined #scheme 17:42:09 -!- Cromulent [~Cromulent@cpc1-reig5-2-0-cust251.6-3.cable.virginm.net] has quit [Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/] 17:42:29 weie [~weie@softbank221078042071.bbtec.net] has joined #scheme 17:46:15 -!- b4283 [~b4283@118.150.134.51] has quit [Remote host closed the connection] 17:46:44 tcsc [~tcsc@c-76-127-240-20.hsd1.ct.comcast.net] has joined #scheme 17:49:11 -!- boycottg00gle [~user@stgt-5f719e95.pool.mediaWays.net] has quit [Remote host closed the connection] 17:50:09 alexei___ [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has joined #scheme 17:52:57 przl [~przlrkt@62.217.45.197] has joined #scheme 17:56:59 Okasu [~1@unaffiliated/okasu] has joined #scheme 18:09:16 -!- ASau [~user@p54AFF3EB.dip0.t-ipconnect.de] has quit [Remote host closed the connection] 18:09:34 -!- TaylanUB [tub@p4FD9337F.dip0.t-ipconnect.de] has quit [Disconnected by services] 18:10:06 TaylanUB [tub@p4FD90EA1.dip0.t-ipconnect.de] has joined #scheme 18:12:05 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 245 seconds] 18:13:51 ASau [~user@p54AFF3EB.dip0.t-ipconnect.de] has joined #scheme 18:14:55 -!- jaimef [jaimef@dns.mauthesis.com] has quit [Excess Flood] 18:17:25 -!- tenq|away [~tenq@199.19.116.207] has quit [Ping timeout: 252 seconds] 18:17:35 jaimef [jaimef@dns.mauthesis.com] has joined #scheme 18:19:49 -!- przl [~przlrkt@62.217.45.197] has quit [Ping timeout: 248 seconds] 18:29:04 DoctorDude [~Jake@unaffiliated/doctordude] has joined #scheme 18:29:26 hiroaki [~hiroaki@77-20-51-63-dynip.superkabel.de] has joined #scheme 18:38:26 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 18:39:09 -!- jao [~jao@pdpc/supporter/professional/jao] has quit [Remote host closed the connection] 18:43:05 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 252 seconds] 18:59:22 HG` [~HG@185.2.29.209] has joined #scheme 19:06:53 -!- vraid [c1b4bd9e@gateway/web/freenode/ip.193.180.189.158] has quit [Ping timeout: 250 seconds] 19:07:18 przl [~przlrkt@p4FE64877.dip0.t-ipconnect.de] has joined #scheme 19:21:39 tenq|away [~tenq@199.19.116.207] has joined #scheme 19:26:26 sheilong [~sabayonus@unaffiliated/sheilong] has joined #scheme 19:29:21 -!- fikusz [~fikusz@catv-89-132-137-62.catv.broadband.hu] has quit [Ping timeout: 245 seconds] 19:29:47 fikusz [~fikusz@catv-89-132-137-62.catv.broadband.hu] has joined #scheme 19:29:57 ehaliewicz [~user@50-0-51-11.dsl.static.sonic.net] has joined #scheme 19:32:23 mmc1 [~michal@j212142.upc-j.chello.nl] has joined #scheme 19:34:10 -!- duggiefresh [~duggiefre@64.119.141.126] has quit [Remote host closed the connection] 19:34:37 duggiefresh [~duggiefre@64.119.141.126] has joined #scheme 19:36:00 -!- mmc1 [~michal@j212142.upc-j.chello.nl] has quit [Read error: Connection reset by peer] 19:37:26 duggiefr_ [~duggiefre@64.119.141.126] has joined #scheme 19:37:37 -!- duggiefresh [~duggiefre@64.119.141.126] has quit [Remote host closed the connection] 19:38:05 -!- duggiefr_ [~duggiefre@64.119.141.126] has quit [Client Quit] 19:38:11 cosmez [~cosmez@200.92.100.68] has joined #scheme 19:38:15 duggiefresh [~duggiefre@64.119.141.126] has joined #scheme 19:39:17 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 19:39:21 mmc1 [~michal@j212142.upc-j.chello.nl] has joined #scheme 19:44:27 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 272 seconds] 19:45:15 Yeah, but then you have to unbox it every time you use it 19:45:22 how else were you hoping for it to be treated? 19:49:05 -!- alexei___ [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has quit [Quit: Konversation terminated!] 19:49:54 amgarchIn9 [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has joined #scheme 19:49:55 sbp, a way for user defend times to be interfacially undistinct from primitive types, just a label. 19:50:32 You want more of a "label" or "tag" concept then, than a "type" 19:50:51 Say being able to define something like (define (triplet a b c) (add-type 'triplet (cons a (cons b c)))) and (define (triplet? x) (has-type? 'tripled x)) 19:51:10 Er.. ya... that's exactly what an r7 structured record type does 19:51:17 Well, this is how dynamic types work, a label is assigned 19:51:24 Well, except that it has to be a record 19:51:36 Say I want to apply it to a procedure? 19:51:58 (define < (add-type 'ordering <)) 19:52:09 Shaolinburper: oh, so the type tag is held secretly in memory and only accessible through has-type? 19:52:18 sbp, yeah, pretty much 19:52:34 pointer to a symbol or whatever 19:52:54 rather like tagging in Arc 19:53:17 Never really digged into Arc I must confess. 19:53:23 -!- weie [~weie@softbank221078042071.bbtec.net] has quit [Quit: Leaving...] 19:53:28 Specifically wrt procedures, chicken provides extend-procedure, which can be used for that purpose. 19:53:45 Surely though we can agree there are definite use case and stability cases for allowing user defined types which are on the same level as things like pair? or number? or vector? 19:53:56 Sure. Sounds useful 19:54:15 http://wiki.call-cc.org/man/4/Unit%20lolevel#extending-procedures-with-data 19:54:16 http://tinyurl.com/mgbgm67 19:54:19 Yeah, so I was surprised it doesn't exist, but apaprently it doesn t. 19:54:56 Yeah, that looks similar but only seems to work for procedures 19:55:07 right 19:59:17 -!- amgarchIn9 [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has quit [Ping timeout: 244 seconds] 19:59:21 amgarching [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has joined #scheme 20:01:47 -!- pnkfelix [~Adium@bas75-2-88-170-201-21.fbx.proxad.net] has quit [Quit: Leaving.] 20:02:00 Shaolinburper: you could maintain it yourself in a global hash I suppose 20:02:55 Well yeah, there are always hacks of course to do it, it's just unelegant. 20:03:24 I like the principle of some languages that if it doesn't exist the language anbles you to create it and the interface is no different than if it were primitive 20:05:02 well, apart from reasons of performance it's nicer if things aren't primitive sometimes. a primitive just means "you can't see how this code works". it's an axiom; it's the hidden plumbing of a language. why would you want to hide the workings? you can't learn from it; you can't copy and derive from it; you can't debug it 20:05:49 primitives are usually only implemented when the functionality *has* to be primitive 20:06:00 jao [~jao@21.Red-79-153-49.dynamicIP.rima-tde.net] has joined #scheme 20:06:04 -!- jao [~jao@21.Red-79-153-49.dynamicIP.rima-tde.net] has quit [Changing host] 20:06:04 jao [~jao@pdpc/supporter/professional/jao] has joined #scheme 20:09:51 pnkfelix [~Adium@bas75-2-88-170-201-21.fbx.proxad.net] has joined #scheme 20:13:32 sbp, well, I mean that the interface should be the same 20:13:52 as in, as far as the language goes the behaviour is the same, you have to see it's not primitive by opening the source of the implementation 20:14:24 alexei [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has joined #scheme 20:14:25 -!- amgarching [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has quit [Quit: Konversation terminated!] 20:15:02 how would you do that in this case? say you could extend Scheme in any way you like. you have full control over R8RS. how would you allow somebody to add the add-type and has-type? that you specified, to work in a primitive interface way? 20:15:14 -!- wingo [~wingo@cha74-2-88-160-190-192.fbx.proxad.net] has quit [Read error: Operation timed out] 20:15:40 I wouldn't call it a "type", I'd call it a tag, or mark, or something 20:15:44 annotation? 20:15:57 -!- alexei [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has quit [Client Quit] 20:16:46 sounds a bit like Clojure's metadata concept 20:18:11 -!- HG` [~HG@185.2.29.209] has quit [Ping timeout: 260 seconds] 20:18:16 LeoNerd: it's a tag in Arc. but who cares what it's called, really 20:18:27 I mean, Scheme is hardly the paragon of elegant naming 20:18:36 Yah but most importantly don't call it a "type" 20:18:49 accepted 20:19:09 Shaolinburper: Using a hash-table or the like would not be a "hack", building such a thing directly into the data-representation of the implementation would be an ugly hack that causes efficiency difficulties for a specific edge use-case. 20:19:18 sbp, probaby implement typed data like with just a pointer to a symbol or somethingh? 20:20:22 Well, it doesn't make it less efficient if you don't use it. In this case you can add just one extra type, a 'user defined type' which itself is just two pointers, one to a symbol and one to the actual datum as it normally would be 20:20:37 amgarchIn9 [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has joined #scheme 20:20:44 You can also of course statically scan how many types the user adds and if the most common ones under a certain number get special treatment 20:20:52 Shaolinburper: That's exactly what a cons cell will do, no ? 20:21:18 TaylanUB, yeah, except that you can't access it as a cons cell any more and it also stops making every user defined type satisfy pair? 20:21:22 Shaolinburper: what you describe can be achieved with define-record-type 20:21:41 DerGuteMoritz, well, you need special accessors to get the 'actual' datum out of it no? 20:21:59 Shaolinburper: ah I see, what you want is polymorphism 20:22:12 You're asking for a very specific, "weird" feature to be supported as a fundamental language feature. 20:22:13 polymorphism is already there in a dynamic language 20:22:24 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 20:22:27 TaylanUB, I beg to differ that this is an edge case, many languages allow user defined data types. 20:22:38 For good reason I would say 20:22:46 amgarching [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has joined #scheme 20:22:49 And so does Scheme, starting with R7RS-small at least. 20:23:00 -!- amgarchIn9 [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has quit [Client Quit] 20:23:03 Well, there we have it. 20:23:18 MrFahrenheit [~RageOfTho@77.221.25.95] has joined #scheme 20:23:46 I remember making a scheme-in-scheme 4 years back being a bit dismayed by being unable to do that cleanly 20:23:48 `define-record-type' is how you create new types. And in a sense it *is* done by tagging objects of existing types. That would be a record type with a single field. 20:24:21 if you use define-record-type, then you can't use existing functions on the results 20:24:25 You complain that this will require an accessor call to get the value of that field; that only makes sense because this is a new type and you don't want it to be automatically work with whatever procedures work on the type you encapsulated. 20:24:28 Well, it surely works for data, for procedures it might get ugly though 20:24:35 for example, SRFI-9's pare type: 20:24:39 #;1> (cdr (kons 1 2)) 20:24:39 Error: (cdr) bad argument type: #<:pare> 20:24:49 That would not be a new type; that would be associating an arbitrary piece of data with an object of an existing kind. 20:24:52 (in CHICKEN) 20:24:59 Or say (> 1 2 3) where > is typed as 'ordering function'? 20:25:12 ((get-actual-function >) 1 2 3) doesn't look pretty 20:25:37 That's too fancy for the Scheme standards we had so far; R7RS-large has something planned like that I think. 20:25:49 Akin to Java interfaces, Haskell type-classes, or whatever. 20:25:50 TaylanUB: any idea what it's called? 20:25:55 alexei [~amgarchin@46.115.56.167] has joined #scheme 20:25:56 Well, it certainly fits in the motto of 'remove restrictions, do not add features' 20:26:18 sbp: Depends on what language's fans you ask. :P 20:26:25 Ideally you if you remove one random element from the language it should be possible to indistinguishably replicate it with the rest if it doesn't take turing completeness away 20:26:41 Shaolinburper: That's how you get a so-called "turing tarpit". 20:26:55 Shaolinburper: Would you like programming in the languages "unlambda" or "brainfuck" ? 20:27:28 Those are languages which are highly restrive 20:27:31 Also highly fatureless 20:27:34 Removing things can create restrictions even if you retain turing completeness. 20:27:41 FSVO "restriction" 20:27:54 Well, let me phrase it more exact 20:28:37 What I seek is R6 as it is now with the added requriement that if any random procedure or syntax or datum which is in the standard is randomly removed it could be recreated provided turing completeness still exist and no one could tell the difference in any way 20:28:39 TaylanUB: I mean, what it's (going to be) called in R7RS-large 20:29:01 sbp: I'm not sure .. could be "interfaces" as well .. it could also be that I've been dreaming. 20:29:02 -!- amgarching [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has quit [Ping timeout: 240 seconds] 20:29:05 Haskell follos this approach modulo syntactic sugar. 20:29:54 alexei_ [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has joined #scheme 20:32:01 Shaolinburper: If I'm not mistaken, what you're asking for means that the language is built on features that can mutually implement each other, meaning that for every "fundamental" feature you will *need* a "partner" feature which two can implement each other; I don't see how this would make a language better in any way, but then again I'm inclined to believe that you've misunderstood something about Haskell's design choices. 20:32:15 -!- edw [~edw@207.239.61.34] has quit [Quit: Computer has gone to sleep.] 20:32:34 TaylanUB, I didn't say 'feature', I said random procedure, datum or syntax 20:32:45 In Haskell one may add 'type' to this 20:32:47 Those are what make up the language. 20:33:19 Not really, a feature is being able to pass functions as variables to other functions for instance 20:33:27 -!- alexei [~amgarchin@46.115.56.167] has quit [Ping timeout: 252 seconds] 20:33:29 I'm not asking for those things to also be implemented as well as basic things like function calls 20:33:37 implementable* 20:33:58 What I'm saying in this case is that Haskell allows you to roll your own Bool type if say it wouldn't exist theoretically 20:34:08 Or your own conses and lists 20:34:22 There is nothing 'special' or fundamnetal about it 20:34:42 Haskell follos this approach modulo syntactic sugar. 20:34:45 I'm afraid this discussion has gone silly places, I'm tired and will do something else now. 20:34:48 not really, because Haskell isn't available at read time 20:34:55 Scheme has read-macros, Haskell doesn't 20:35:40 True, but what I meant is that you can't make your own syntactic sugar such that [a] is secretly some weird syntac for what you'd expect to be List x 20:35:43 That the limitation 20:36:00 also, if you want to implement every language feature through monads without a type checker, see how quickly before your brain revolts and forces you to take up farming lentils on a steppe in Central Asia instead 20:36:12 You don't have to, I'm not sure wht you bring that up 20:36:42 What I'm saying is that lists, pairs, tuples, records and all that stuff in Haskell aren't 'special' and could've been user defined except for the syntactic sugar around them 20:36:42 just the remnants of looking at implementing Scheme in Haskell recently 20:36:45 and looking at Liskell 20:36:58 edw [~edw@207.239.61.34] has joined #scheme 20:37:06 I don't get Liskell, I don't like infix but S-expressions are designed for variadic functions in mind 20:37:23 yeah, it didn't really go places 20:37:25 What's the use of (f x y z) if it's the same thing as (((f x) y) z) 20:37:36 Why would you not just write f x y z then 20:37:47 Mmmm curry 20:37:57 well, you have to group expressions in Haskell even if the associativity isn't right 20:38:09 but the idea of it was that you could replace Template Haskell, not that you could replace Haskell 20:38:14 Template Haskell is a rather different beast 20:38:46 sbp, yeah, but I don't get making the brackets compulsory, in Liskell ( ... ) again becomes a grouping mechanism rather than a way to denote the amount of arguments in S exprsesions which doesn't need a grouping mechanism 20:39:23 right, have you read the source of Language.Haskell.Parser recently? :-) 20:39:29 sbp, well, that all aside. You now get what I mean with being able to theoretically re-implement all the 'primitive' data types and functions in Haskell if you remove one in terms of the toher? 20:39:35 Never have, what's with it? 20:40:11 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 20:40:26 -!- MichaelRaskin [~MichaelRa@195.91.224.161] has quit [Ping timeout: 264 seconds] 20:40:45 I don't 20:41:27 -!- gravicappa [~gravicapp@ppp91-77-166-251.pppoe.mtu-net.ru] has quit [Ping timeout: 272 seconds] 20:42:29 sbp, hmm, take every type, datum and function in prelude. Would you say there is one that if it was removed cannot be remade? 20:44:38 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 240 seconds] 20:46:50 Shaolinburper: how would you do that in Scheme without static typing? 20:47:18 sbp, well, with labels, I'm saying that if you remove cons and pair? there is no way to add the exact same functionality back 20:47:48 sure. that's just the way it is in lisp though 20:47:52 albeit if course less efficiently implement. 20:47:52 nisstyre [~yours@oftn/member/Nisstyre] has joined #scheme 20:47:54 Yap 20:48:24 But it extends to the fact that if you want to add triplet and triplet? there's no way to do it cleanly without your triplet also testing true for say pair? or vector? 20:48:28 Which you don't want 20:49:24 well there might be some design that allows it, but I don't think "turn Scheme into Haskell" really counts... :-) 20:49:58 Call it 'turn scheme into something better' in this case, I like scheme much more than haskell, I just feel that this choice was a godo one haskell made 20:50:13 Certainly you'd agree being able for people to arbitrarily type things would lead to less bugs. 20:50:21 (incidentally, though, this was sort of why I was looking at implementing Scheme in Haskell) 20:50:28 it might do, I dunno. you'd have to measure that 20:50:38 I think it's a bit too open a statement 20:50:46 If you could type a pair of two numbers as a point because it's a point in 2 space but a pair of 2 other numbers a date because ti's a month and the day of the month 20:51:03 like, you can argue static typing leads to less bugs, but then you'll just open up a kettle of permaflaming fish, to mix a few metaphors in a lovely metaphor gumbo 20:51:15 -!- cdidd [~cdidd@128-68-21-147.broadband.corbina.ru] has quit [Ping timeout: 245 seconds] 20:51:32 but yeah. as I say, Arc has this; somebody noted above that Clojure might have it 20:51:38 cdidd [~cdidd@128-68-135-249.broadband.corbina.ru] has joined #scheme 20:51:38 you could try tinkering with them 20:51:58 THat's true in, I could be wrong, but I strongly feel allowing people to disambugate an ordered pair of two numbers that's a point in 2 space and another that's a fraction of 2 numbers so they can be passed to the wrong functions could stop space shuttles from exploding 20:52:19 Clojure doesn't as far as I know, it does have the metadata thing yeah, that also nice. 20:52:29 Never tried arc, I did hear it has ("string" 2) 20:56:37 Sounds like you want Haskell newtypes in Scheme, except even Haskell newtypes require explicit unwrapping. 20:58:19 If you want records, use records. Everyone supports DEFINE-RECORD-TYPE. 21:00:10 I don't want newtypes, I want data Fraction = Fraction Int Int; vs data Point = Point Int Int;, both are an ordering of two Ints but have a different semantic to them. 21:00:46 So (define-record-type fraction (make-fraction n d) fraction? (n numerator) (d denominator)), likewise point. 21:03:51 -!- przl [~przlrkt@p4FE64877.dip0.t-ipconnect.de] has quit [Ping timeout: 268 seconds] 21:09:57 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Ping timeout: 272 seconds] 21:10:49 Shaolinburper: it's ironic that you asked this today because I was already looking at something related to this earlier 21:11:02 I was thinking about "I expect type names will ordinarily be symbols, but they don't have to be. Either argument can be of any type. I can't imagine why users would want to have type labels other than symbols, but I also can't see any reason to prevent it." in http://www.paulgraham.com/ilc03.html specifically 21:11:33 the idea behind it really seems to be where you put the contract about the data 21:12:17 if you just duck type itcall it duck datathen the contract exists between the functions. i.e. when you make a call to a function that doesn't do any type checking, you're not annotating what you're giving it with a type, and the receiving function isn't checking for that type. so the onus is on the program 21:12:25 with the type of system that you're talking about, you have a *local promise* 21:12:34 the promise is local because you're only putting a symbol on it 21:12:44 but there are other layers of the system. you can also have uniqueness, and authority 21:13:10 przl [~przlrkt@p4FE64877.dip0.t-ipconnect.de] has joined #scheme 21:13:23 in a unique system, you'd use UUIDs or something for the types. in that case, you'd be able to allocate new types without worrying about clashes in different parts of the system (managed by different programmers, say), or when sharing between systems, such as putting data out in public, sharing between companies, or whatever 21:14:18 the last layer, or tier perhaps, is the authority later. in this case, you could have types which you can look up and verify globally. so you could use URIs and trust DNS and so forth to figure out whose authority is behind the type; or you could use a cryptographically signed type 21:14:42 obviously, the further up these layers/tiers you go, the less widespread the use 21:15:31 but that answers PG's question about whether you'd just allow symbols, and it might be something that you want to think about too, depending on your system. another reason I'm interested is that I was working on a new lisp for a sort of non-Von Neumann system (hence: a new lisp), and thinking about how to manage extensible datatypes 21:16:50 and it just so happens that in the system I'm working with, doing such typing is quite low costlower than a hashtable at least. it's sort of like a segmented memory system, so you can use a pointer for more than one thing, only you're not actually allocing whole blocks in that way 21:17:54 so it was interesting that you asked in the context of Scheme. for me, it's quite a simple thing to add; but I don't know what I'd do with respect to Scheme. I'll be interested to learn more about how it's turning out in R7RS-large. I've enquired further about it elsewhere 21:18:12 -!- jao [~jao@pdpc/supporter/professional/jao] has quit [Remote host closed the connection] 21:18:31 *onus is on the programmer, above 21:19:48 jao [~jao@21.Red-79-153-49.dynamicIP.rima-tde.net] has joined #scheme 21:19:51 -!- jao [~jao@21.Red-79-153-49.dynamicIP.rima-tde.net] has quit [Changing host] 21:19:51 jao [~jao@pdpc/supporter/professional/jao] has joined #scheme 21:22:02 -!- ehaliewicz [~user@50-0-51-11.dsl.static.sonic.net] has quit [Remote host closed the connection] 21:25:38 Somelauw [~Somelauw@unaffiliated/somelauw] has joined #scheme 21:29:39 kandinski [~kandinski@hiperactivo.com] has joined #scheme 21:30:31 -!- edw [~edw@207.239.61.34] has quit [Quit: Computer has gone to sleep.] 21:31:37 edw [~edw@207.239.61.34] has joined #scheme 21:32:52 which scheme compiler is most practical? 21:33:51 supporint gui development, having bindings to Lapack, etc 21:35:18 and something like namespaces maybe 21:38:45 vraid [50d8e34d@gateway/web/freenode/ip.80.216.227.77] has joined #scheme 21:40:53 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 21:43:00 sbp, is there any reason you rite a lisp with the expection of it to be compiled to a non von neumann architecture? 21:43:41 -!- davexunit [~user@fsf/member/davexunit] has quit [Quit: Later] 21:43:47 -!- DoctorDude [~Jake@unaffiliated/doctordude] has left #scheme 21:45:36 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 246 seconds] 21:46:06 Riastradh [~riastradh@fsf/member/riastradh] has joined #scheme 21:47:03 -!- przl [~przlrkt@p4FE64877.dip0.t-ipconnect.de] has quit [Ping timeout: 252 seconds] 21:48:12 -!- alexei_ [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has quit [Quit: Konversation terminated!] 21:48:22 alexei_ [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has joined #scheme 21:51:35 -!- Okasu [~1@unaffiliated/okasu] has quit [Quit: leaving] 21:59:43 Shaolinburper: orthogonal persistence research. nothing practical at the moment 22:00:38 see e.g. http://arxiv.org/pdf/1006.3448v1.pdf 22:06:05 -!- mrowe is now known as mrowe_away 22:06:49 -!- sc00fy is now known as scoofy 22:17:49 -!- Kabaka [~Kabaka@botters/kabaka] has quit [Ping timeout: 240 seconds] 22:28:51 -!- acedia [~rage@unaffiliated/ffs] has quit [Ping timeout: 252 seconds] 22:36:12 -!- duggiefresh [~duggiefre@64.119.141.126] has quit [Remote host closed the connection] 22:36:38 duggiefresh [~duggiefre@64.119.141.126] has joined #scheme 22:39:58 -!- strobegen [~Adium@188.168.72.236] has quit [Quit: Leaving.] 22:41:45 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 22:41:47 -!- duggiefresh [~duggiefre@64.119.141.126] has quit [Ping timeout: 272 seconds] 22:46:27 -!- hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has quit [Ping timeout: 252 seconds] 22:46:31 -!- m4burns [~m4burns@happyface.convextech.ca] has quit [Quit: leaving] 22:49:29 -!- vishesh [~vishesh@103.30.142.133] has quit [Ping timeout: 252 seconds] 22:49:47 -!- kandinski [~kandinski@hiperactivo.com] has quit [Remote host closed the connection] 22:51:31 ffs [~garland@unaffiliated/ffs] has joined #scheme 22:53:21 -!- nisstyre [~yours@oftn/member/Nisstyre] has quit [Quit: Leaving] 22:53:55 -!- mmc1 [~michal@j212142.upc-j.chello.nl] has quit [Ping timeout: 244 seconds] 22:55:31 strobegen [~Adium@188.168.72.236] has joined #scheme 22:59:37 -!- pnkfelix [~Adium@bas75-2-88-170-201-21.fbx.proxad.net] has quit [Quit: Leaving.] 23:04:44 -!- jaimef [jaimef@dns.mauthesis.com] has quit [Ping timeout: 260 seconds] 23:07:29 -!- aeth [~Michael@wesnoth/umc-dev/developer/aethaeryn] has quit [Read error: Operation timed out] 23:08:35 -!- mrowe_away is now known as mrowe 23:13:12 hiyosi [~skip_it@247.94.30.125.dy.iij4u.or.jp] has joined #scheme 23:14:03 -!- kuribas [~user@d54C430B0.access.telenet.be] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 23:17:40 jaimef [jaimef@166.84.6.60] has joined #scheme 23:17:48 pnkfelix [~Adium@bas75-2-88-170-201-21.fbx.proxad.net] has joined #scheme 23:27:28 -!- pnkfelix [~Adium@bas75-2-88-170-201-21.fbx.proxad.net] has quit [Quit: Leaving.] 23:32:12 -!- dsmith [~dsmith@cpe-184-56-129-232.neo.res.rr.com] has quit [Read error: Operation timed out] 23:33:14 erider [~chatzilla@unaffiliated/erider] has joined #scheme 23:34:19 -!- Riastradh [~riastradh@fsf/member/riastradh] has quit [Ping timeout: 268 seconds] 23:36:20 DoctorDude [~Jake@unaffiliated/doctordude] has joined #scheme 23:39:03 Fare [fare@nat/google/x-einavjlqwyusmqtp] has joined #scheme 23:42:14 -!- tupi [~user@139.82.89.157] has quit [Ping timeout: 264 seconds] 23:43:03 -!- alexei_ [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has quit [Ping timeout: 260 seconds] 23:43:33 -!- stepnem [~stepnem@internet2.cznet.cz] has quit [Ping timeout: 248 seconds] 23:45:55 aeth [~Michael@wesnoth/umc-dev/developer/aethaeryn] has joined #scheme 23:47:53 davexunit [~user@fsf/member/davexunit] has joined #scheme 23:51:51 alexei_ [~amgarchin@p4FD6019C.dip0.t-ipconnect.de] has joined #scheme