00:01:51 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 00:22:05 bombshelter13_ [n=bombshel@76-10-149-209.dsl.teksavvy.com] has joined #scheme 00:22:27 -!- dysinger [n=dysinger@98.246.183.155] has quit [Read error: 54 (Connection reset by peer)] 00:33:15 -!- Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has quit ["This computer has gone to sleep"] 00:38:31 chylli [n=lchangyi@119.181.15.104] has joined #scheme 00:53:29 Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has joined #scheme 00:53:56 jao [n=jao@31.Red-83-33-230.dynamicIP.rima-tde.net] has joined #scheme 00:54:36 dudleyf [n=dudleyf@ip70-178-212-238.ks.ks.cox.net] has joined #scheme 00:54:38 Adamant [n=Adamant@c-68-51-134-164.hsd1.ga.comcast.net] has joined #scheme 01:03:02 -!- mrsolo [n=mrsolo@nat/yahoo/x-ivkxnnefqohnwczi] has quit ["Leaving"] 01:04:08 -!- segoe [n=segoe@83.231.16.41] has quit [Read error: 104 (Connection reset by peer)] 01:07:05 QinGW [n=wangqing@203.86.89.226] has joined #scheme 01:07:28 Repentinus [n=Repentin@209.163.191.90.dyn.estpak.ee] has joined #scheme 01:09:16 Marco [n=Marco@81.202.67.112.dyn.user.ono.com] has joined #scheme 01:09:18 -!- Marco [n=Marco@81.202.67.112.dyn.user.ono.com] has quit [Client Quit] 01:17:46 -!- dudleyf [n=dudleyf@ip70-178-212-238.ks.ks.cox.net] has quit [] 01:43:19 mmc [n=mima@cs137104.pp.htv.fi] has joined #scheme 01:57:06 MononcQc [n=parseido@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 02:05:59 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [] 02:10:44 peddie_ [n=peddie@c-67-169-9-130.hsd1.ca.comcast.net] has joined #scheme 02:12:28 dstorrs [n=dstorrs@cpe-98-14-187-196.nyc.res.rr.com] has joined #scheme 02:12:40 evening all, how's the day? 02:12:45 sleepy 02:12:57 the encryption she will not decrypt captain 02:13:29 fyrrcl 02:15:09 synx: Damnit, synx! I...need...more...DECRYPTION! 02:18:59 https://synx.us.to/code/scheme/forum/crypt/encrypt-unit.ss seriously what's wrong with this? 02:19:49 I write each id:ckey pair, then the iv, then the encrypted data. To decrypt I read each id:ckey pair, then the iv, then decrypt if I found a session key I had the pkey for. 02:19:55 do you have a test script somewhere? what are you expecting it to do and what is it doing? 02:21:13 My test script works perfectly, finds a pkey, decrypts the ckey into a session key, then passes that to vyzo's openssl's symmetric decrypt. In vyzo's decrypt, the error "bytes-length: expects argument of type ; given #" is raised. 02:22:20 It's like there's nothing to read past that besides an EOF, but I know that's not true... I called encrypt, which writes stuff! 02:23:04 and you've done the obvious stuff, like stepping through it? 02:23:06 hmm... check for an EOF maybe, just in case 02:23:35 I have a bunch of print statements in there. It reaches vyzo's cipher decrypt just fine. 02:24:18 well, are you sure the problem is in your code? 02:24:42 'cause I'm not seeing anything. 02:24:53 -!- peddie [n=peddie@c-67-169-9-130.hsd1.ca.comcast.net] has quit [Read error: 113 (No route to host)] 02:26:01 aha, found an error. 02:26:14 I hate having to hard-code iv-size... 02:26:37 what was it? 02:27:32 The IVs being generated are now 8 not #x10 long ._. 02:28:02 ah. 02:29:00 I should just write the size they are. But they're always the same size for a given cipher, honest! 02:29:56 -!- Repentinus [n=Repentin@209.163.191.90.dyn.estpak.ee] has quit [Read error: 110 (Connection timed out)] 02:30:12 glad you found it. is it working now? 02:31:24 Well, the equivalent of (equal? s (decrypt (encrypt s)) worked. 02:35:29 incubot: sounds like synx's code is on life support 02:35:32 ; Value: ((a b c) (ALPHA BETA GAMMA)) 02:35:50 oh, thank you! 02:36:29 sometimes incubot will give you things, like a two-year-old would, and you just have to smile brightly and thank him 02:38:17 So I can save, split, sign and encrypt files, and then load them back automatically. Got a thingie for making new text messages. Got a thingie for loading files to stdout. Just need a thingie to examine piece structure now, but otherwise it's pretty OK. 02:40:15 cool, glad to hear it. 02:41:55 zbigniew: Value: ((hoochie coochie) (UMMA GUMMA TAU))) 02:42:31 -!- davids [n=davids@189.122.90.116] has quit ["Client exiting"] 02:43:40 gah 02:43:45 it's greek to me 02:52:08 -!- Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 02:52:10 hey, does anyone here have the PLT Scheme web server running on a non-local server and, if so, where? 02:52:37 I've been Googling for recommendations on this and there seem to be suggestions and discussion, but I'm not getting anything concrete. 02:52:41 I do, though it's not a public server. 02:53:02 Just my little place to put stuff and test stuff out. 02:53:07 Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has joined #scheme 02:53:10 but it's with a public company, right? i.e. one where anyone could rent space? 02:53:42 No it's just...my computer... 02:54:04 tjafk1 [n=timj@e176200059.adsl.alicedsl.de] has joined #scheme 02:54:10 It's accessible over the main Internet though, not just locally. 02:54:29 ah, I see. 02:54:53 Hm. that's a thought. I suppose for basic stuff I could just put one of my machines online through DynDNS 02:55:12 I use afraid.org, but whatever works. 02:56:30 -!- timchen119 is now known as nasloc__ 02:58:03 linode! 02:58:10 $20/month but pretty reliable 02:58:56 I wish I could get a linode. 02:58:57 karlw [n=user@adsl-99-157-202-134.dsl.pltn13.sbcglobal.net] has joined #scheme 02:59:02 offby1: are you using them? 02:59:08 synx: why can't you? just hte $$ ? 02:59:13 s/hte/the/ 02:59:19 but I'm also a strong advocate of personal servers, just running on your computer. 02:59:23 yeah dstorrs 03:01:17 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 03:02:11 I'm messing around with SXML and SVG. It doesn't look hard to implement the Henderson language with an SVG backend through SXML. 03:04:11 dstorrs: I was using linode a while ago but quit simply to save money 03:04:21 -!- underspecified [n=eric@softbank220043052007.bbtec.net] has quit [] 03:05:57 I wonder if there's any tax deductible VPS companies out there. You could get on that, contribute most of the bandwidth to charity like i2p or something, and write it off. 03:09:39 -!- tjafk [n=timj@e176221116.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 03:09:55 honestly, I doubt that anything I would produce would have enough bandwidth costs to justify it. 03:10:06 I'm sort of considering using AWS, actually 03:10:52 as long as you can run under Sqlite and don't need MySQL (which won't run on a size small AWS AMI), it would be fine. 03:13:01 Only thing I did that ever used bandwidth was file sharing and i2p. 03:13:20 Could run a TOR relay I guess. 03:13:23 i2p ? 03:13:39 http://www.i2p2.de/ 03:13:40 second door on the left 03:15:48 huh. How is this different from Tor? 03:17:36 One way tunnels for one. It's got protections against timing attacks and such. Plus Tor pretty much forces you to use their little central knot of servers. 03:18:13 i2p destinations are published via a Floodfill database, which is central, but plans for doing kademlia are in progress. 03:18:38 ?? from what I've read on Tor, it's all routed through volunteer-contributed relays. 03:18:40 Also the i2p philosophy seems to be more towards developing the network internally, instead of pressuring people to be exit nodes to risk communicating over the insecure Internet. 03:18:51 or are you saying that the central servers must be used to get the list of relays? 03:18:59 Yeah, but it's only a few volunteer contributed relays. You need a bunch of bandwidth to do so. 03:19:32 Whereas i2p tries to spread the load out more evenly, making it harder for an authority to control the entire network. 03:20:08 under Tor you can throttle it to whatever level you like, and also restrict which services you want to relay. That lowers the hurdle on how much bandwidth you need. 03:21:34 I just mean opening up the ORPort. I think they request at least 60K/s or something. It's a very unscalable algorithm. 03:22:09 -!- karlw [n=user@adsl-99-157-202-134.dsl.pltn13.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 03:22:35 ah. 03:22:50 you learn something every day. 03:23:25 Also i2p can handle bittorrent. TOR dies with bittorrent. 03:23:36 Like that vampire in the Buffy the Vampire Slayer movie. 03:23:59 Dracula glares at him and he's like "Ack ick-- uck? *falls down obediently*" 03:26:32 dstorrs: http://www.i2p2.de/techintro.html#similar 03:32:14 interesting. Thanks, synx 03:32:21 np ^^ 03:32:55 I donate what I can to i2p. It ain't tax deductible though, since the one I'm paying is my for-profit ISP :p 03:50:29 One aspect of Tor that does not admit throttling very well is that the amount of state on each node scales linearly with the number of nodes in the Tor network. 03:52:17 Also, some suspect that for similar reasons, Tor interacts badly with the TCP and its congestion control, causing the network to have greater latency and lower bandwidth than there actually is between the nodes on the IP network. 03:59:32 -!- dmoerner [n=dmr@ppp-71-139-19-1.dsl.snfc21.pacbell.net] has quit ["Lost terminal"] 03:59:49 dmoerner [n=dmr@ppp-71-139-19-1.dsl.snfc21.pacbell.net] has joined #scheme 04:00:43 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 04:04:34 -!- Arelius [n=indy@64.174.9.113] has quit [Read error: 110 (Connection timed out)] 04:31:01 jonrafkind [n=jon@98.202.86.149] has joined #scheme 04:33:43 -!- snurble [n=snurble@s83-191-238-2.cust.tele2.se] has quit [Read error: 104 (Connection reset by peer)] 04:34:18 snurble [n=snurble@s83-191-238-2.cust.tele2.se] has joined #scheme 04:35:53 underspecified [n=eric@walnut.naist.jp] has joined #scheme 04:48:29 -!- MononcQc [n=parseido@modemcable062.225-20-96.mc.videotron.ca] has quit ["DOWNLOADING LATEST VERSION OF THE INTERNET"] 04:54:17 -!- Quadrescence [n=quad@unaffiliated/quadrescence] has quit [Remote closed the connection] 04:54:32 Quadrescence [n=quad@24.118.241.200] has joined #scheme 05:25:51 -!- sleepydog [n=user@64.252.12.149] has quit [Read error: 60 (Operation timed out)] 05:27:24 -!- Greg02 [n=greg@ool-18bc79e7.dyn.optonline.net] has quit [Read error: 104 (Connection reset by peer)] 05:29:18 -!- ASau [n=user@83.69.240.52] has quit ["off"] 05:30:23 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 05:54:52 -!- bombshelter13_ [n=bombshel@76-10-149-209.dsl.teksavvy.com] has quit [Client Quit] 06:01:21 -!- Modius_ [n=Modius@24.174.112.56] has quit [Client Quit] 06:01:46 Modius [n=Modius@24.174.112.56] has joined #scheme 06:14:07 -!- mmc [n=mima@cs137104.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 06:15:02 danfowler [n=Dfowler@ip-66-9-231-226.autorev.intellispace.net] has joined #scheme 06:20:21 -!- danfowler1 [n=Dfowler@ip-66-9-231-207.autorev.intellispace.net] has quit [Read error: 60 (Operation timed out)] 06:28:26 MrFahrenheit [n=RageOfTh@80.65.72.29] has joined #scheme 06:36:18 -!- snurble [n=snurble@s83-191-238-2.cust.tele2.se] has quit [Read error: 60 (Operation timed out)] 06:49:50 snurble [n=snurble@s83-191-238-2.cust.tele2.se] has joined #scheme 06:51:03 mmc [n=mima@esprx02x.nokia.com] has joined #scheme 06:54:28 leppie|work [i=52d2e3c8@gateway/web/freenode/x-lypxtcbpmqmntfwy] has joined #scheme 06:56:01 jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has joined #scheme 07:28:55 HG` [n=HG@85.8.90.253] has joined #scheme 07:31:01 sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 07:32:18 npe [n=npe@195.207.5.2] has joined #scheme 07:32:22 -!- sphex_ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 60 (Operation timed out)] 07:33:06 -!- npe [n=npe@195.207.5.2] has quit [Connection reset by peer] 07:33:10 npe [n=npe@195.207.5.2] has joined #scheme 07:49:57 -!- stepnem [n=stepnem@topol.nat.praha12.net] has quit [Read error: 60 (Operation timed out)] 07:52:53 stepnem [n=stepnem@topol.nat.praha12.net] has joined #scheme 07:56:10 -!- stepnem [n=stepnem@topol.nat.praha12.net] has quit [Excess Flood] 07:57:31 stepnem [n=stepnem@topol.nat.praha12.net] has joined #scheme 08:02:01 -!- stepnem [n=stepnem@topol.nat.praha12.net] has quit [Excess Flood] 08:02:56 stepnem [n=stepnem@topol.nat.praha12.net] has joined #scheme 08:06:29 ASau [n=user@77.246.230.155] has joined #scheme 08:09:08 -!- ASau [n=user@77.246.230.155] has quit [Read error: 104 (Connection reset by peer)] 08:09:24 ASau [n=user@77.246.230.155] has joined #scheme 08:16:24 -!- elias` [n=c@unaffiliated/elias/x-342423] has quit [Read error: 110 (Connection timed out)] 08:30:26 dzhus [n=sphinx@95-24-69-87.broadband.corbina.ru] has joined #scheme 08:46:47 -!- wingo-pi [n=wingo-pi@74.Red-80-24-4.staticIP.rima-tde.net] has quit [Remote closed the connection] 08:46:51 -!- stepnem [n=stepnem@topol.nat.praha12.net] has quit [Read error: 60 (Operation timed out)] 08:49:19 stepnem [n=stepnem@topol.nat.praha12.net] has joined #scheme 08:52:52 -!- stepnem [n=stepnem@topol.nat.praha12.net] has quit [Excess Flood] 08:53:19 -!- xwl_ [n=user@esprx01x.nokia.com] has quit [Remote closed the connection] 08:53:47 stepnem [n=stepnem@topol.nat.praha12.net] has joined #scheme 08:57:58 -!- stepnem [n=stepnem@topol.nat.praha12.net] has quit [Excess Flood] 09:03:33 xwl_ [n=user@esprx01x.nokia.com] has joined #scheme 09:06:38 stepnem [n=stepnem@topol.nat.praha12.net] has joined #scheme 09:12:10 -!- QinGW [n=wangqing@203.86.89.226] has quit [Read error: 104 (Connection reset by peer)] 09:13:20 QinGW [n=wangqing@203.86.89.226] has joined #scheme 09:17:51 -!- kniu [n=kniu@pool-71-106-16-199.lsanca.dsl-w.verizon.net] has quit [Read error: 110 (Connection timed out)] 09:41:27 QinGW1 [n=wangqing@203.86.89.226] has joined #scheme 09:51:40 didi [n=user@189-68-37-62.dsl.telesp.net.br] has joined #scheme 09:55:53 -!- Axioplase is now known as Axioplase_ 09:57:55 -!- QinGW [n=wangqing@203.86.89.226] has quit [Connection timed out] 10:00:24 QinGW [n=wangqing@203.86.89.226] has joined #scheme 10:01:19 moghar [n=user@unaffiliated/moghar] has joined #scheme 10:06:48 RageOfThou [n=RageOfTh@80.65.72.29] has joined #scheme 10:11:06 -!- QinGW [n=wangqing@203.86.89.226] has quit [Read error: 131 (Connection reset by peer)] 10:11:19 -!- MrFahrenheit [n=RageOfTh@80.65.72.29] has quit [Read error: 60 (Operation timed out)] 10:18:33 -!- jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has quit [Read error: 60 (Operation timed out)] 10:19:44 jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has joined #scheme 10:24:58 -!- QinGW1 [n=wangqing@203.86.89.226] has quit [Success] 10:35:05 kyle_ [n=kyle@S010600195bd5aaab.ek.shawcable.net] has joined #scheme 10:37:59 Edico [n=Edico@unaffiliated/edico] has joined #scheme 10:41:19 does anyone know if ikarus is still being developed? 10:45:51 attila_lendvai [n=ati@catv-89-132-189-132.catv.broadband.hu] has joined #scheme 10:52:37 -!- jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has quit [Operation timed out] 10:54:29 jewel [n=jewel@41.242.163.86] has joined #scheme 10:54:30 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 10:55:35 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit ["If technology is distinguishable from magic, it is insufficiently advanced."] 10:56:49 yes kyle_ 10:57:11 have a look on the launchpad site 10:57:58 Edico [n=Edico@unaffiliated/edico] has joined #scheme 10:58:50 Vinnipeg [n=barbastr@95.84.21.44] has joined #scheme 11:04:53 Awesome, thanks. Looks like I have my new scheme compiler of choice 11:12:09 :) 11:24:44 -!- mmc [n=mima@esprx02x.nokia.com] has quit [Remote closed the connection] 11:31:42 mmc [n=mima@esprx02x.nokia.com] has joined #scheme 11:31:49 -!- mmc [n=mima@esprx02x.nokia.com] has quit [Remote closed the connection] 11:37:08 mmc [n=mima@esprx01x.nokia.com] has joined #scheme 11:44:11 -!- araujo [n=araujo@gentoo/developer/araujo] has quit ["Leaving"] 11:52:08 kyle_: you might want to look at the ikarus mailinglist too, it's quite active. 12:01:11 -!- jewel [n=jewel@41.242.163.86] has quit [Connection timed out] 12:03:51 jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has joined #scheme 12:07:02 -!- Vinnipeg [n=barbastr@95.84.21.44] has quit [Read error: 104 (Connection reset by peer)] 12:07:58 mario-goulart [n=user@201-40-162-47.cable.viacabocom.com.br] has joined #scheme 12:20:21 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 12:23:55 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 12:33:57 bzzbzz [n=franco@207.236.146.245] has joined #scheme 12:40:56 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 12:44:52 sepult [n=user@xdsl-87-78-73-19.netcologne.de] has joined #scheme 12:49:07 -!- jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has quit [Connection timed out] 12:52:51 Repentinus [n=Repentin@209.163.191.90.dyn.estpak.ee] has joined #scheme 12:56:16 annodomini [n=lambda@64.30.3.122] has joined #scheme 13:01:14 Nshag [i=user@Mix-Orleans-106-3-204.w193-248.abo.wanadoo.fr] has joined #scheme 13:04:15 tormoz [n=tormoz__@91.149.158.53] has joined #scheme 13:10:33 sphex_ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 13:11:49 jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has joined #scheme 13:11:58 jimi_hendrix [n=quassel@unaffiliated/jimihendrix] has joined #scheme 13:12:14 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 13:12:17 whats the best scheme implementation? 13:14:04 -!- chylli [n=lchangyi@119.181.15.104] has quit [Remote closed the connection] 13:14:16 chylli [n=lchangyi@119.181.15.104] has joined #scheme 13:14:40 jimi_hendrix: That's a contentious question. 13:15:15 Scheme84. 13:15:29 I can answer it! The best scheme implementation is the one you like the most (and, possibly, wrote yourself). 13:17:20 well can i get suggestions and explinations 13:17:32 -!- dzhus [n=sphinx@95-24-69-87.broadband.corbina.ru] has quit [Remote closed the connection] 13:19:00 jimi_hendrix: Some Scheme implementations that people like are (in no particular order): Scheme48, PLT, Chicken, Gambit, Gauche, Larceny, Ikarus, and MIT Scheme. 13:19:07 I would use PLT Scheme. ;) 13:19:21 Repentinus: why :) 13:19:32 thats a lot of implementations? 13:19:34 What are your needs, jimi_hendrix? If you want to play around and learn, there's that nice one with all the tutorials (DrScheme IIRC?). If you want to do 'practical' stuff with a UNIXy mindset (compiled binaries, ease of getting to C libraries), chicken works for me. I don't know what's notably good about Scheme48, PLT, Gambit, Gauche, Larceny, Ikarus, and MIT, but they'll all have their particular specialities. 13:19:37 Well-documented. 13:19:59 And I had compiler installed before starting to learn it. 13:20:00 i know a friend who swares by MIT 13:20:20 PLT is a popular choice for beginners. The development environment is fairly friendly, and there's a lot of tutorial and reference documentation supplied with the implementation. 13:20:48 cracki [n=cracki@45-197.eduroam.RWTH-Aachen.DE] has joined #scheme 13:20:50 MIT Scheme is not a bad choice either. Like PLT, it has its own development environment, though the learning curve is probably a bit steeper. 13:20:57 alaricsp: with chicken, does the compiler work as an interpreter too? 13:21:13 chandler: you mean plt by itself or with drscheme 13:21:22 With DrScheme, yes. 13:21:40 Compiler and interpreter + Kate are fine for me. 13:21:44 Chicken has an interpreter that almost exactly mirrors the behaviour of the compiler (except embedded inline C code doesn't work, but you can link in pre-compiled modules (they become .sos) from the interpreter dunamically) 13:21:46 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 13:22:41 alaricsp: Gambit's advantages are much the same as Chicken's. Scheme48 is cleanly implemented, and designed with care. Gauche I like because it provides a good selection of practical libraries and a CLOS-like system, with good documentation, in a minimal size. 13:22:41 i can live with emacs + repl buffer 13:23:17 ok i will consider 13:23:19 alaricsp: Larceny and Ikarus are native code compilers focused on optimization. MIT Scheme has Edwin. 13:23:22 i do know CL 13:23:25 Chicken is undergoing some overdue changes at the moment - they adopted a proper module system with hygienic macros in the core, so there's being a period of turmoil while existing library code is ported to the Chicken 4 core. So it may look a bit rough right now, but it should pick up again fast. 13:23:35 chandler: Please don't spread the "PLT is for beginners" myth. 13:23:36 (and by know i mean i did some hacking with it, but nothing serious) 13:23:39 alaricsp: Those are very incomplete descriptions of course, but now you know. 13:23:48 eli: Please re-read what I said. 13:23:51 chandler: I expected you'd say that, it was still misleading. 13:23:57 Thanks, chandler ;-) 13:24:20 We live in a world that's too short of one-line summaries of things ;-) 13:24:34 chicken is a popular choice with pedophiles. 13:24:47 MIT Scheme is a popular choice with necrophiliacs. 13:25:05 gambit is adored by hamster molesters. 13:25:21 uh? 13:25:27 Oooh, I trust hamster molesters. I should look at Gambit... 13:25:56 I think eli is complaining about the misleading nature of shallow one-line summaries ;-) 13:26:05 i think i will try gauche 13:26:11 *jimi_hendrix* may be back later 13:26:11 alaricsp: Yes. 13:26:17 eli: Why do you treat "beginners" as a slur? It was meant as a positive statement, and I believe it to be a true statement as well. 13:26:47 chandler: It inevitably leads to the "for real work ...". 13:26:51 eli: There is no other implementation (other than MIT Scheme, which I implicitly dissed as having a high learning curve) which is as easy to download and set up as a complete development environment. 13:26:57 It does not in my case. 13:27:24 chandler: I don't know about your case, but I've seen it very many times over very many years. 13:27:51 bombshelter13_ [n=bombshel@206.80.252.37] has joined #scheme 13:27:52 There's an underlying issue here: *some* people will take a one-line summary as Gospel truth and a complete statement, and *some* people will assume that something described as good for beginners will be less pleasant for "real work" 13:27:52 I used PLT once and I had to figure out how to get it to run scheme instead of scheme for beginners from their textbook, if I remember right. 13:27:53 -!- sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 13:28:00 But some people won't make those leaps 13:28:00 Probably from the time I switched away from SCM, which was around the time the icebergs started to melt. 13:28:05 kyle_: That is not an issue anymore. 13:28:13 Do we pepper our language with long disclaimers and careful wording all the time, in case a moron hears us? 13:28:27 Sometimes we have to, when writing press releases or standing up in court 13:28:34 As programmers, we should know, that something is good for beginners, does not imply that it's not good for professionals and real work. 13:28:50 kyle_: the "beginner" language has not been the default for probably more than 3 years now. 13:29:05 But it's nice to be able to communicate efficiently as a bunch of wise clever folks from time to time 13:29:11 Makes a pleasant change from talking to managers, at any rate! 13:29:14 alaricsp: Tell that to any group of people who are singled out by stereotypes. 13:29:18 PLT is a serious implementation with many recommendable attributes. I have recently suggested it several times to users of Python, Ruby, etc. as an example of a "serious" Scheme implementation that could be used for real-world work. 13:29:25 Are you happy with that statement, eli? 13:29:30 chandler: Sure. 13:29:33 eli: managers, for example ;-) 13:29:47 And I will still make the statement that it is a popular choice for beginners, because it is a *good* choice for beginners. 13:29:59 This is not a slur! 13:30:07 jimi_hendrix: a few months ago I want through the Scheme selection process. :> 13:30:48 chandler: I didn't mean to sound defensive or offensive -- but the "PLT = beginners" is something that bugs me as someone who spends all of his time on "PLT = real tool". (That is, I don't deal with the teaching languages at all.) 13:31:43 You know, people usually learn languages to use them. I see no point in learning a language in order to not use it. 13:32:01 let me post the qualifications I used and the results 13:32:33 Repentinus: Scheme is a little "special" in the implementation selection area. 13:32:48 jimi_hendrix: anyway, the short answer was "PLT Scheme" 13:32:49 eli: I wouldn't even recommend the teaching languages to someone who is a competent programmer of other languages but new to Scheme, so they are not a part of the statement I am making. I am solely focused on ease of installation, quality and completeness of implementation, and quality of documentation. 13:32:49 Now, a stereotype may be valid (women ARE more likely to bear children than men), or invalid (women may be more likely to have less well-paid jobs, but for silly reasons; so they are *no less suitable* for those jobs); the important distinction to make is between stereotypes that are valid uses of statistical trends, and stereotyping that is *prejudice*. 13:33:04 I couldn't get absolutely everything I wanted, but PLT satisfied the largest fraction of my requirements 13:34:09 chandler: I almost completely agree on the programmers of other languages point, and I'll take the installation ease as a complement, since that's mostly my area. 13:34:22 Including the damn OSX installer... 13:34:34 Which implies the cursing that is needed... 13:34:38 I don't have any issues with it, so you must be doing something right! 13:34:45 jimi_hendrix: http://paste.lisp.org/display/85653 13:35:16 chandler: You mean you've used the Mac thing? 13:35:42 oh and, to be clear, I work from CLI + Emacs 13:36:01 eli: The disk image? Yes, that's all I use. 13:36:28 Emacs is a little bit overkill IMHO. 13:36:29 chandler: Well, there's some really strange design decisions in making these drag-to-install things. 13:37:13 eli: what kind of decisions? 13:37:13 I'm aware of that, but the end result is something which can be installed very easily without assuming that the user has administrator-level privileges on their computer. 13:38:11 chandler, users who don't have administrative privileges shouldn't be able to install software. 13:38:42 dstorrs: There are some "preflight" and "postflight" and other such scripts, which are run with some odd preferences, 13:39:12 So, they shouldn't be using Scheme at all? "Install software" merely means making a program available to run on a computer. If as a non-administrator I shouldn't be running programs not supplied by the administrator, I shouldn't be programming either. 13:39:20 I reject that conclusion, so one of the premises has to give. 13:39:34 Then there's some rules about keeping the meta data for the package -- which could be used for things like upgrading or deleting a package -- but none of these things was implemented (at least at the time). 13:40:20 And just trying to get some of the fancy features like a custom folder icon is a complete disaster. 13:40:45 (All are much worse when you need to deal with that and don't have a physical Mac to work with.) 13:41:03 eli: erm...so far as I'm aware, OSX does not worry about keeping metadata on its packages. 13:41:22 Well, it makes you add that, even though it's not using it. 13:41:29 a directory simply has an "I am a package" bit, much like it has an "I am readable bit" 13:41:36 if the bit is set, it appears as an icon 13:41:49 but it's still really just a directory containing all the data for the app that runs from it. 13:41:57 No, there's some XML file with the real data about the application, version, etc etc. 13:42:06 I'm happy to say that I don't remember the details though. 13:42:20 I think you're referring to Info.plist . 13:42:24 well, yes, true. But that's inside the directory and has a standard name and path 13:42:24 chandler, correction to an earlier statement of yours: Scheme48 *was* designed with care, but then it, well, grew, having had an R6RS seed grafted onto it. 13:43:00 eli: anyway, the OSX design isn't one that you prefer. Ok. 13:43:23 dstorrs: Yes. 13:43:45 The directory-as-file mechanism that OS X uses is very strange, and has some completely non-obvious implications that even Apple doesn't always remember to account for. 13:44:05 -!- underspecified [n=eric@walnut.naist.jp] has quit [] 13:44:21 For instance, you can't just create a directory and then ask the Finder to open it, expecting that it'll show the user the directory. You have to explicitly check to make sure that you didn't just create a directory-which-is-a-file. 13:44:37 And whether you did depends on what software is installed, and has been recognized by LaunchServices. 13:45:10 So you could do the check, find that it's not a bundle, but then try to use it and find that it *is* a bundle because LaunchServices has just recognized an application that registers the extension as a bundle type. 13:45:57 Riastradh: I believed that I summarized all of the named implementations to the point where my summary was false - which is, I believe, called an "executive summary". 13:46:20 OK, I looked, and I can't find it. I don't remember if it was Info.plist or something else. 13:47:00 Info.plist is the repository for the type of metadata that you mentioned (application name, version, etc.). 13:47:18 Depending on how you're building, that may be created from some other file. 13:48:34 There are plists of the applications, but I remember something similar for the installer. 13:48:53 Perhaps I'm mixing that with the installer we had before the drag+drop dmg. 13:49:10 Yes. There's another blasted plist for .pkg installers. 13:49:11 (I remember that as making the OSX thing way simpler.) 13:49:22 Ah -- pkg something. 13:49:26 .pkg installers have preflight and postflight scripts and various plists or something, and lots of sketchiness. 13:49:27 That rings a bell. 13:49:54 Also, they store receipts in /Library/Receipts, but as far as I know, there is no general way to uninstall them. 13:49:56 I understand what you were ranting about now. The drag and drop approach requires some care to implement, but is a lot less sketchy. 13:50:10 And it looks like there are no "pkg" occurrences in the build script, so I probably did confuse it with the previous installer. 13:50:42 And yes -- the /Library/Receipts was a major focal point for bogons. 13:51:07 eli: In any event, I hope that you will not respond so negatively the next time I decide to pay PLT a complement. 13:51:27 A compliment, even? 13:51:31 Er, yes. 13:51:33 My only problem with PLT's drag-and-drop install is that even if I don't install it, but do run it, it deposits state in my file system which I didn't ask it to. So when I run DrScheme a year later, and the default state has changed, DrScheme will use whatever was the default state a year ago, to my confusion. 13:51:38 And I need another cup of coffee, it seems. 13:51:50 -!- chylli [n=lchangyi@119.181.15.104] has quit [Remote closed the connection] 13:52:06 chylli [n=lchangyi@119.181.15.104] has joined #scheme 13:52:07 (Damn English and its non-isomorphic orthography and phonology...) 13:54:53 chandler: Like I said, I'm sorry of it came out as deffensive, but I really dislike that particular connection; even things like "scsh for shell programming" is not really a good categorization. 13:55:13 Riastradh: Which state are you talking about -- the OSX equivalent of "~/.plt-scheme"? 13:55:25 Probably, eli. I think it was something in ~/Library/Preferences. 13:55:42 My complaint isn't specific to PLT, of course -- many applications do this, to my continued frustration. 13:56:11 What would you do instead? 13:56:28 (For saving application settings.) 13:56:44 I'd store only those decisions that I have expressly made. 13:57:24 So the only difference would be if version X set a default that somehow broke a later version Y? 13:57:52 -!- RageOfThou [n=RageOfTh@80.65.72.29] has quit [Read error: 110 (Connection timed out)] 13:58:05 Not `broke', but merely changed the behaviour of. 13:58:43 I just launched DrScheme from a PLT Scheme 4.2 disk image that I had lying around, and it already stored a number of decisions that I didn't make, and that DrScheme never told me about, in ~/Library/Preferences/org.plt-scheme.prefs.ss. 13:59:00 For example? 13:59:32 -!- jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has quit [Connection timed out] 14:00:33 (FWIW, if there's any such decisions that were put into the preference file that make a difference later, then that would (usually) be a bug.) 14:00:37 Riastradh pasted "~/Library/Preferences/org.plt-scheme.prefs.ss after only launching DrScheme from PLT 4.2 and doing nothing else" at http://paste.lisp.org/display/85658 14:00:45 higepon315 [n=taro@FL1-118-109-37-76.tky.mesh.ad.jp] has joined #scheme 14:01:31 Why did DrScheme store anything there? 14:01:50 Clearly it knows what the defaults are, since it created that file with them, so it doesn't need to find their values by reading the file. 14:01:55 a. I don't see any problem there (re something that would be a bug). 14:03:08 There was more of a problem when DrScheme began by prompting for a choice of language, if I recall correctly -- so in that respect it has improved. Although now it has a default of no language, so in order to do anything with it I am required to make a decision for DrScheme; I can't just make a decision in the file I'm editing. 14:03:37 b. Some parts of that are "normal state" like the size of the window that you chose; and the `splash-max-width' thing is a cache that corresponds to the number of modules loaded (roughly) to make the progress thing when it starts reflect the actual startup time. 14:03:38 Sorry, that's false. 14:04:11 Writing `#lang scheme' and some Scheme code worked, but now DrScheme has put more decisions into the preferences file. 14:04:19 (That is, all of (b) are harmless, and they must be there to provide the functionality.) 14:05:37 To provide what functionality? DrScheme was able to launch without the file, and I saw nothing wrong with its launch. 14:06:22 ... popping a window that has the same size it had last time (a popular feature these days) and remembering the number of items that need loading. 14:06:27 annodomini [n=lambda@130.189.179.215] has joined #scheme 14:07:35 (c) The top ~4 items are probably the defaults, there's some code that hooks preferences to the file, and I'm not sure why it saves values that are the same as the defaults -- could be an obscure design, or could be due to some gui issue (ie, code that doesn't know if 1234 is the default, or if you happened to set it explicitly to the default value). 14:07:44 Riastradh: do you object that DrS wrote to your disk at all, or do you object to a specific decision that it made? 14:08:04 (c) might be worth a complaint. 14:08:04 dstorrs, the first. I didn't make any decisions. 14:08:06 eli: If you'd like for me not to recommend PLT as a good choice for beginning Scheme programmers, I recommend that you make it more difficult to install, more cumbersome to use, and less well documented. :-) 14:08:45 (Oh, boy. More Git lossage: I can't update my repositories because some files that I didn't touch are `not uptodate': error: Entry 'src/microcode/bkpt.h' not uptodate. Cannot merge.) 14:09:07 And re the language selection issue -- the "no language" thing was the solution to the common confusion wrt the language to choose -- and the whole thing is on its way out (which will make me very happy) and leave only the `#lang' thing. 14:09:07 Riastradh: automatically creating a prefs file on first startup is a common pattern for dozens of pieces of software. I really don't see the problem but, ok, if it bothers you, don't use it. 14:09:57 and storing the defaults in prefs makes perfect sense...it makes the code very simple: "if (there is a prefs file) read it and use no defaults ELSE create one with these defaults" 14:10:03 chandler: Heh, that would be hard now... Especially the installer stuff. 14:10:22 dstorrs, the problem is that the defaults can change, and merely having run the software once two years ago shouldn't affect its behaviour when I install a new version of it today. 14:10:55 Yes, it's a classic case of three-valued logic... 14:10:56 dstorrs, I want to have a very clear idea, for every program I run, of every decision that I have made for that program, or at least where to find those decisions. 14:11:01 that's true, but a non-issue 14:11:07 No, it's not a non-issue! 14:11:29 I nearly reported a bug to DrScheme because the documentation spectacularly failed to match the behaviour of the program. 14:11:35 if you installed over, a proper installer keeps your prefs 14:11:40 No! 14:11:47 I don't WANT any preferences to be kept where I didn't specify any. 14:11:55 if you installed beside, then you should expect to get whatever the defaults are as you have not made any decisions. 14:11:57 a proper installer asks you if you want to carry your prefs over 14:12:06 brx: fair enough. you're right. 14:12:11 brx: That's impossible. 14:12:27 That's something that the software can do, not the installer. 14:12:41 eli: erm...huh? 14:12:43 eli: you are right. 14:12:53 What bothers me is that there is a mismatch between the information stored by the program, and the set of decisions that I made and am aware of. 14:12:55 oh, I see your point. 14:13:04 Riastradh's point is not that PLT wrote a file, but that the file contained "preferences" that weren't. It's a valid point. 14:13:11 Also, brx, there is no installer in this case. 14:13:11 because the installer didn't create the file. right. 14:14:05 dstorrs: The best way to avoid this confusion is to consider the case of a sysadmin who runs the installer, and a user (a different person) who run the software. 14:14:43 Riastradh: In our release procedure there is this item: "Ensure that previous version of DrScheme's preference files still starts up with new DrScheme" 14:14:43 meh, whatever. Externalizing defaults is a very standard deisgn pattern, and for good reason. Sorry it bothers you, but feel free to use another implementation. 14:14:53 Though there is some subtlety to it: if my program has a customizable toolbar, and I remove one item from the default set of items, am I expressing a preference for "the defaults, without this button" or "this particular arrangement of items, which happens to be nearly the same as the defaults of this version"? 14:15:25 Furthermore, for most programs, there is no human-readable or human-editable or diffable format for the information that it stores related to the decisions that I have made. (The constraints on the format require something other than that it have a textual representation -- it must have an intentionally documented representation.) 14:15:34 Riastradh: If there's some setting that actually broke visibly, then checking it should be added there. 14:15:49 dstorrs: You are missing the point of the discussion. It does not merit a "meh, whatever". 14:16:04 dstorrs, calling it `standard' doesn't justify it. 14:16:38 That's the defense they used for the R6RS, and look what happened! 14:16:39 eli, it wasn't the previous version -- it was something like 4.0 -> 4.2, or perhaps a 4.0 beta -> 4.2. 14:17:20 davids [n=davids@139.82.89.70] has joined #scheme 14:17:33 jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has joined #scheme 14:18:13 chandler, it is true that it is not clear what that decision means. That's why updating configuration files for new versions should really be done by a three-way merge. Of course, while I may be willing to do that (and in fact should very much like to do that), I imagine that most users are not. 14:18:26 Riastradh: Well, we don't really have the resources to check arbitrary upgrade paths -- but usually that would be the result of a particular version that broke something. 14:19:54 eli, it isn't necessary to check any paths, in this case: if I didn't make any decisions, they shouldn't be recorded. 14:20:14 -!- tormoz [n=tormoz__@91.149.158.53] has quit [Remote closed the connection] 14:20:20 bweaver [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 14:20:22 `Breaking' isn't the issue here so much as altering the behaviour in confusing ways. That is, DrScheme didn't crash; it just behaved very differently from how I expected and from how the documentation said it would behave. 14:21:16 For what it's worth, this problem (or a similar one) also appears when doing live upgrades of hign-availability software systems, and in this case a three-way merge choice is impossible because it's not feasible to involve a human operator in making the decision. 14:21:25 Just now I restarted DrScheme after editing a file which I didn't save, and now DrScheme is behaving differently from how it behaved before. 14:21:44 Riastradh: Yes, I understood that -- what could be the problem here is exactly the kind of bug you're talking about: saving a default value instead of either saving a "no choice" value or not saving it at all. 14:21:57 Previously, it said that there was no language selected, or something. Now it says `Language: Module' in the interactions window, and it has `#lang scheme' by default at the top of the definitions window. 14:23:14 I've become convinced that managing upgrades of software is a problem with (to the best of my knowledge) no existing good solution, which deserves a substantial amount of attention due to the enormous practical industrial ramifications. 14:23:23 chandler, gee, what is this `live upgrade' concept of which you speak? Where can I get my hands on one? 14:24:02 You've probably experienced one already. If your phone did not lose coverage, it was succesful. 14:24:10 Phone? 14:24:23 If you have a cellular phone, that is. 14:24:50 Bell gave me this contraption that I have plugged into the wall and that sometimes emits a loud ringing noise. 14:25:08 Or your regular land-line for that matter; telecommunications companies can't exactly stop the world to do a software upgrade. 14:25:19 Riastradh: Yes, I see the problem (the automatic switch to Module when it sees `#lang' is persistent); but the proper solution that should be applied (in the near future) is to make the module language the only choice. 14:25:27 (And the default.) 14:27:34 Riastradh: having spent quite a lot of time on this problem in the area of cellular telephony, I've formed the belief that there *has* to be a better way to do this, and that it should be applicable to software-in-the-large in a robust fashion. 14:28:06 -!- mmc [n=mima@esprx01x.nokia.com] has quit [Remote closed the connection] 14:28:09 But I don't pretend to know how. 14:28:16 MrFahrenheit [i=RageOfTh@92.36.148.11] has joined #scheme 14:28:39 I doubt whether anyone can form a general theory of software upgrades, but probably many particular details can be formalized much better than they are now. 14:29:12 Of course, if what you have is a large collection of identical installations, then the three-way merge need happen only once, and the decisions from that merge can be applied to all the installations. 14:29:33 (It's probably similar to the repl problem.) 14:29:42 I'm convinced that such a general theory can be formed, but I don't know what it is. 14:29:58 Also, the problem can almost always be worked around at a higher level. 14:30:18 For example, suppose I want to upgrade the software on the gateway and firewall of my local network. 14:30:46 I could try to very carefully do a live upgrade and hope that none of the toothpick scaffolding falls over in the process. 14:31:17 That's the problem I would like to see a solution to. 14:31:19 Or I could just have several machines acting as gateway using the CARP and synchronizing firewall state, and upgrade them one by one as messily as I want, until things work, always leaving at least one running. 14:32:37 Synchronizing the relevant bits of state so that connections are not dropped on upgrade is a difficult problem in general, particularly if the new version changes the behavior of interactions that are already in progress. 14:32:39 sepult` [n=user@xdsl-87-78-31-69.netcologne.de] has joined #scheme 14:32:53 Being idealist perfectionist Schemers, of course we'd like to see live upgrades that do everything right to make sure that everything Just Works, but...gosh, operating systems are complex beasts. 14:32:56 jlongster [n=user@c-68-59-187-95.hsd1.tn.comcast.net] has joined #scheme 14:34:11 Having seen how difficult it is in general to use a state replication mechanism designed for failover between identical versions for live upgrades, I'm convinced that there is a more formal approach to this problem that is not yet discovered, and which would be of immense practical utility. 14:35:24 I haven't used it personally, but I hear that pfsync works pretty well at least for firewall state. Naturally, this does not generalize. 14:36:12 I work in a company that makes a replicated database 14:36:22 Part of my contribution has been a tool that manages live upgrades of clusters without downtime (in theory) 14:36:26 *alaricsp* twitches nervously 14:36:51 One day somebody will use my code and it'll break and THEY'LL COME FOR ME WITH KNIVES 14:37:06 I've helped to make it work for other systems, too. I don't assert that it *can't* work, but that there is probably a better solution than Thinking Very Hard and Hoping You Haven't Screwed Up. 14:37:15 I know the feeling 14:37:17 alaricsp: Yes! 14:37:24 -!- sepult [n=user@xdsl-87-78-73-19.netcologne.de] has quit [Connection reset by peer] 14:37:46 In the meantime, I sleep with a gun under my pillow. 14:37:59 sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 14:38:04 Hey, what's wrong with thinking very hard and hoping you haven't screwed up? Mathematicians do that all the time! (Except for those ninnies who use proof assistant software, but who knows what bugs the proof assistant software has?) 14:38:20 alaricsp: Better knives than lawyers. 14:38:40 Nothing. The same approach works *great* for memory management, too. 14:38:45 Well, the implication is that you're never certain you've thought of *everything*, while mathematicians have a better chance of covering all cases, as they work in much better-defined environments 14:39:37 It's hard to define the semantics of an upgrade, if you can't even formally define the semantics of the two versions of the application ;-) 14:42:19 Well, the bulk of the functionality of our software was expressed formally as comunicating finite-state automata, but that didn't buy much here. Even for same-version failover, defining what state should and should not be replicated was a challenge. The best I could do was to statically verify that what they meant to replicate was replicated. 14:42:29 mmc [n=mima@esprx01x.nokia.com] has joined #scheme 14:44:21 underspecified [n=eric@softbank220043052007.bbtec.net] has joined #scheme 14:49:20 -!- ASau [n=user@77.246.230.155] has quit ["off"] 14:49:59 -!- jlongster [n=user@c-68-59-187-95.hsd1.tn.comcast.net] has quit [Read error: 113 (No route to host)] 14:52:25 -!- sphex_ [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Read error: 110 (Connection timed out)] 14:56:39 -!- jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has quit [Connection timed out] 14:57:43 jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 15:00:11 I see the job of a computer programmer as a classic example of the Halting Problem. 15:00:59 "When do you think you'll be finished with this?" is what every boss has ever asked me at a programming job. 15:01:03 And I could wax poetic on the philosophy how it's technically impossible to say whether I'll ever finish at all but... 15:02:19 It's really uncomfortable to have to admit that you can't tell if you're wasting your time or not. 15:02:44 either im lagging or you pasted that text or you are a damn fast typist, synx 15:03:33 I'm always lagging. My posts queue up as I type 'em ._. 15:04:04 synx: as long as you are not lying about your capabilities, there is nothing wrong with saying you dont know, but a you could always give a ballpark figure, and note it so 15:04:12 IRC doesn't tell you when your post has reached the channel. 15:04:33 jewel [n=jewel@41.242.163.86] has joined #scheme 15:04:39 i know, but the 2 lines were only 4 seconds apart on my screen :p 15:04:42 Oh sure I give a ballpark figure, but it's really uncomfortable because I'm often wrong, and for good reason. 15:05:37 you guys really need to learn how to estimate, the 2 clowns that work with me are always off by a factor of 5 or more... 15:05:57 i have never taken longer than I guessed 15:06:19 -!- underspecified [n=eric@softbank220043052007.bbtec.net] has quit [Remote closed the connection] 15:06:20 that's a big psychological downer, not to reach deadlines 15:06:22 I type at around 6.3cps 15:06:25 underspecified [n=eric@softbank220043052007.bbtec.net] has joined #scheme 15:06:46 i cant even touch type, I type with 4-6 fingures, watching the keyboard all the time 15:06:51 leppie: are you a really, really good estimator, or do you pad your estimates? 15:07:02 -!- drwho [n=d@c-98-225-211-78.hsd1.pa.comcast.net] has quit ["Ex-Chat"] 15:07:02 if the former, is it something you can teach? Because I'd like to learn it. 15:07:22 dstorrs: guess + risk * risk constant 15:07:24 I can estimate when I've got statistics to work with. But when all I've got is "The machines do not move now," it's hard to estimate... 15:08:01 just start with going with the first number that comes to mind 15:08:36 heuristic estimates are great, but hard to teach... 15:08:37 95% of the time that will be right, and I normally finish only at 90-95% 15:08:42 leppie: yep, I've been using that same strategy for years. unfortunately, it's ok for new development, not bad for maintenance of a familiar codebase, but frequently useless for debugging 15:08:46 at least IME 15:08:55 can only teach heuristics by example and repetition, aka a lot of failures 15:09:07 I have seen a lot of failures 15:09:32 "how long will it take to fix?" "I don't know. I don't know what the problem is yet, and can't guess how long it will take to discover that." 15:09:34 Well there you go. Benefit of experience! 15:10:02 I also never make excuses, if something is wrong, i state why, and take blaim 15:10:05 My strategy is to keep bullshitting and failing until my heuristics are refined enough where I can actually predict these things. 15:10:14 people/managers hate excuses 15:10:27 that's your problem synx 15:10:39 never bullshit 15:10:45 yep. 15:10:48 That's not true. They say they hate excuses, but then refuse to accept truths they don't want to hear. 15:10:55 if you cant do it, say so, and fast 15:11:16 "It'll take X hours, unless the frobnitzer is on the fritz" is often more acceptable than "It'll take X hours, provided it takes me as many hours to figure out what it is I'm actually doing as I think it will". 15:11:17 chandler: the one doesn't preclude the other, though. :> 15:11:40 It's not that I can't do it. It's the Halting Problem. I have sort of an idea how to do it in theory, but until I've got something working, I can't say it'll produce a result at all. 15:12:31 well say that 15:12:39 I guess it really depends on your boss, but most of the time "It'll be done when it's done" isn't what they want to hear. 15:12:45 but dont waste time on it 15:13:20 and take time to think about the problem before coding it 15:13:31 On the other hand, most managers expect that an estimate can be given with *some* level of confidence such that deviations from the estimate are exceptions, rather than the rule. 15:13:50 The people I've worked with who couldn't make those estimates at all simply didn't learn from their experiences. 15:13:57 I had a guy working with me once...best CSS / HTML / JS coder I ever saw. 15:14:09 i often tell them, no I havent had enough time to think about it yet (given some problem) 15:14:10 he had a super power...his estimates were NEVER wrong. 15:14:39 actually, he did call me up once and say "I'm really sorry, but this will be done Monday morning instead of Friday night". and he was right. 15:14:45 but I don't really count that. 15:14:53 Well, what really gets me is debugging. 15:15:13 He could say "this will take 12 days" and he'd be dead on. Didn't matter if it was new work, fixes, extensions, debugging, whatever. 15:15:13 i normally visual the whole thing before I start with 'real' code (not talking about plumbing like UI) 15:15:21 never saw anyone else who could do that. 15:15:48 What's the point of Scheme classes naming convention? (The % sign at the end of the name.) 15:15:50 I can estimate well for up to 2-3 weeks, but after that I get bad 15:16:01 I think my problems through a bit too carefully... but once they're coded and put together and nothing happens when I turn it on, that's when my estimates start to fail. 15:16:06 but most tasks can be broken into parts smaller than that 15:16:22 "When will it get done?" comes down to "When I find why these bits are both updating and not updating at the same time." 15:16:54 dstorrs: i tend to be like that (maybe work is just not a enough of a challenge) 15:17:00 Answering a question with a question. 15:17:00 copumpkin [n=pumpkin@129.170.241.32] has joined #scheme 15:17:25 Repentinus: It's just a convention in PLT, doesn't matter really. 15:17:31 synx: if it fails, you didnt think about everything :) 15:18:03 synx, so I might easily use CamelCase identifiers as far as I'm happy with them? 15:18:11 synx: In my experience, the best answer is to provide a reasonable upper bound that contains the amount of time it's taken to solve similar problems on similarly large programs in the past, and then to expect the manager to understand if it goes beyond the amount of time. If they don't, that's their problem, but I have to act reasonably first if I expect them to be reasonably first. 15:18:22 Also, where are CamelCase identifiers a convention in PLT? 15:19:05 They aren't, as far as I know. But I am coming from C++ bg, so... 15:19:15 I am used to them. 15:19:19 Oh, I misunderstood. 15:19:40 If you want to stay close to things that you are used to from a C++ background, you should consider using C++. 15:19:55 -!- jewel [n=jewel@41.242.163.86] has quit [Connection timed out] 15:20:12 I have reasons to learn new languages. 15:20:32 Scheme will not enforce a naming convention for you, but I'll boggle at your naming convention if ever you ask for help on a piece of code. 15:20:51 That should be reason enough to use the common hyphen-separated-name-convention. 15:22:27 jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has joined #scheme 15:31:06 hyphens waste bytes 15:31:23 Those precious bytes! 15:31:34 WHereas a hyphen typed is as many keystrokes as a letter shifted 15:31:42 replace your spaces with tabs! 15:32:03 No. Spaces greater than tabs IMHO. 15:32:10 Learned that from Python. 15:32:32 but you can fit 8 spaces into a single tab so tabs are better 15:33:08 Remove all non-essential whitespace and comments, and have identifiers that are base64 numbers, as short as provide enough for all the symbols in your program. 15:33:21 (caution: advice given in this conversation may contain lies) 15:33:30 alaricsp: hard core 15:33:32 Actually you can fit arbitrarily large finite amount of spaces in a tab. 15:33:33 Honestly python is the only language where I really do use tabs. :> 15:33:34 -!- snurble [n=snurble@s83-191-238-2.cust.tele2.se] has quit [Read error: 104 (Connection reset by peer)] 15:34:08 And yet Python is the one that propagates spaces as much as possible. 15:34:11 snurble [n=snurble@s83-191-238-2.cust.tele2.se] has joined #scheme 15:36:00 Whereas most languages whitespace is just decorative, to provide visual clarity, in python whitespace defines logical structure. I don't want to have to debug when I accidentally deleted a space in my block structure. Much more obvious with tabs. 15:36:12 synx: I already know that I'm going to boggle if I look at any code of yours, so I won't bother giving advice to you. 15:36:20 Seriously though, initially typing it and transferring it over networks are some of the least costly moments in a program's lifespan - being read and understood by yourself and others is far more useful for reducing the cost of writing it (and getting a good quality result). The advantages of CamelCase vs. hyphen-separation or underscore_delimiting can be debated, but it's usually best to go with an environment's conventions, unless they 15:36:27 synx, I let IDLE handle that stuff for me. 15:36:34 synx: and even more obvious with curlies, parens, or some other non-whitespace character. :> 15:36:42 ugh, IDLE... 15:37:40 Hungarian notation makes my eyes bleed, but to C programmers who are expecting it, the absence of it makes their *genitals* bleed, which is worse. So if I ever do old-school Windows C programming, I'll use Hungarian notation ;-) 15:37:41 IDLE uses Tk which decided arbitrarily to make it impossible to configure the width of a tab character. And from then on python developers championed the use of spaces! 15:38:00 the trauma of Makefiles pretty much spoiled me on even looking at Python. 15:38:10 dstorrs: from __future__ import braces :p 15:38:30 Repentinus: My advice is to take advice on programming style from the people who are most likely to provide constructive help if you have a question. That's probably myself, Riastradh, eli, jcowan, gnomon, etc. in this channel - all of whom follow the widespread convention of using names-with-hyphens. 15:38:35 anything where mistyping a character that **I cannot see** will screw up my program is pretty much on my "run! run quickly!" list. 15:38:40 synx: heh. 15:39:09 alaricsp: I find it interesting how C++ does automatic "Hungarian" notation to allow for generic functions. 15:40:02 C++ does that on all methods. ObjC too. 15:40:12 alaricsp: if you ever do any old-school Windows C programming, could you take a picture of yourself and send it to me? 15:40:20 I've never actually seen someone's eyes bleed before. 15:40:43 I have... but you don't wanna know. 15:40:46 I assumed it was just a movie/TV trope with no basis in reality. 15:41:03 dstorrs: Sure! It happens to me all the time. 15:41:15 (I did point out that I may contain lies today, didn't I? :-) 15:41:35 Take a poker to them and anyone's eyes will bleed like crazy 15:41:44 (well, aside from red flecks / veins in the sclera from enlarged or minimally leaking blood vessels...but not actual blood coming out from the lids) 15:48:11 -!- sladegen [n=nemo@unaffiliated/sladegen] has quit [Nick collision from services.] 15:48:20 sladegen [n=nemo@unaffiliated/sladegen] has joined #scheme 15:48:52 -!- didi [n=user@189-68-37-62.dsl.telesp.net.br] has quit [Remote closed the connection] 15:50:35 -!- jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit [Remote closed the connection] 15:51:17 rstandy [n=rastandy@net-93-144-187-223.t2.dsl.vodafone.it] has joined #scheme 16:00:27 -!- npe [n=npe@195.207.5.2] has quit [] 16:03:11 incubot: what is clojure? 16:03:15 what's not normal? 16:03:39 incubot: everything is normal. 16:03:42 well, if it can be used for everything, then it certainly can mean 'breasts', 'marijuana', 'in bed' and all those other things you mentioned... 16:04:04 incubot: i want my lawyer. 16:04:07 the next step, if you want the alternate order I mentioned above, is to connect the powerset with the fact that there are 2^n subsets in it ;) 16:04:54 judgement will halt us all, anyway. 16:05:00 -!- cracki [n=cracki@45-197.eduroam.RWTH-Aachen.DE] has quit ["If technology is distinguishable from magic, it is insufficiently advanced."] 16:05:06 incubot: please solve the halting problem 16:05:09 the 'how to solve it' thing also became 'how to solve it: modern heuristics' which is an entirely different thing. 16:06:23 -!- higepon315 [n=taro@FL1-118-109-37-76.tky.mesh.ad.jp] has quit [Read error: 113 (No route to host)] 16:06:55 sladegen: interesting point actually. Since every computer built out of real stuff will inevitably decay, it's impossible to construct a machine that can perform a program that never halts. 16:09:38 Adamant [n=Adamant@c-68-51-134-164.hsd1.ga.comcast.net] has joined #scheme 16:10:15 X-Scale [i=email@89.180.181.34] has joined #scheme 16:10:48 one can always keep dreaming that it never halted. most people believe in never-haltedness... anyway. 16:12:01 ASau [n=user@83.69.240.52] has joined #scheme 16:21:51 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 16:24:42 rdd` [n=user@c83-250-159-12.bredband.comhem.se] has joined #scheme 16:28:49 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 16:30:13 -!- copumpkin [n=pumpkin@129.170.241.32] has quit [] 16:30:41 Dark-Star [i=Darkstar@p57B56F54.dip.t-dialin.net] has joined #scheme 16:31:43 jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has joined #scheme 16:34:59 -!- jonrafkind [n=jon@98.202.86.149] has quit [Connection timed out] 16:37:26 incubot: it depends what the definition of never is 16:37:29 you didn't paste the definition of improveGuess 16:37:37 no, sorry 16:46:24 -!- mmc [n=mima@esprx01x.nokia.com] has quit [Remote closed the connection] 16:49:26 -!- rstandy [n=rastandy@net-93-144-187-223.t2.dsl.vodafone.it] has quit [Read error: 104 (Connection reset by peer)] 16:51:25 -!- chylli [n=lchangyi@119.181.15.104] has quit [Remote closed the connection] 16:56:03 araujo [n=araujo@gentoo/developer/araujo] has joined #scheme 17:06:50 synx: Furthermore, all computers are just FSAs. 17:08:03 Maybe one day we'll have a way of storing and manipulating true continuous values, but until then, all computation is ultimately discrete. 17:08:45 aren't analogue computers continuous? 17:09:09 I remember reading about a fluidic computer built in England. 17:09:11 dstorrs: That depends on some unresolved issues in physics. 17:10:13 (cf the spacetime lattice question) 17:11:17 jonrafkind [n=jon@crystalis.cs.utah.edu] has joined #scheme 17:11:18 TimMc: personally, I would say that any computer capable of representing values at the same level of resolution as the universe meets any sane definition of "continuous" 17:11:27 but I'm funny that way. :> 17:12:21 dstorrs: I'll remind you that we were discussing the halting problem, which also has nothing to do with practical limits. :-P 17:12:22 arcfide [n=arcfide@adsl-99-14-210-197.dsl.bltnin.sbcglobal.net] has joined #scheme 17:12:22 dstorrs: In order to represent a value, say a number, with the same resolution of the universe would you not need the whole universe to do so? 17:13:06 heh. And between the two of you, you just took this conversation to A Place I Do Not Care To Follow. :> 17:14:20 mrsolo [n=mrsolo@nat/yahoo/x-bvfxwwmifnarztga] has joined #scheme 17:15:13 I think the topic has reached a halting state anyway. 17:15:48 Nope. 17:15:58 *dstorrs* transitions conversation to a new state. 17:18:31 Ha! I just got the "from __future__ import braces" joke. >_< 17:19:34 wow! That joke travelled back in time! 17:21:37 -!- Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has quit ["Leaving"] 17:22:04 sreeram [n=sreeram@122.174.67.237] has joined #scheme 17:22:45 Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has joined #scheme 17:24:11 -!- Modius [n=Modius@24.174.112.56] has quit [Read error: 104 (Connection reset by peer)] 17:24:38 Modius [n=Modius@24.174.112.56] has joined #scheme 17:24:42 -!- sreeram [n=sreeram@122.174.67.237] has quit [Client Quit] 17:24:53 sreeram [n=sreeram@122.174.67.237] has joined #scheme 17:25:53 incubot: blesseth are those who go in cycles for they shall be known as wheels. 17:25:56 oh, blesseth be Bob! 17:26:21 incubot: boB! 17:30:15 indiano [n=estagio-@146.193.41.120] has joined #scheme 17:31:19 -!- danfowler [n=Dfowler@ip-66-9-231-226.autorev.intellispace.net] has quit [Read error: 104 (Connection reset by peer)] 17:32:38 (display "Hi") 17:33:22 -!- indiano [n=estagio-@146.193.41.120] has left #scheme 17:33:32 -!- snurble [n=snurble@s83-191-238-2.cust.tele2.se] has quit [Read error: 54 (Connection reset by peer)] 17:33:53 snurble [n=snurble@s83-191-238-2.cust.tele2.se] has joined #scheme 17:39:35 indiano: ; stdout: Hi 17:42:28 -!- Repentinus [n=Repentin@209.163.191.90.dyn.estpak.ee] has quit [Read error: 110 (Connection timed out)] 17:46:13 danfowler [n=Dfowler@ip-66-9-231-226.autorev.intellispace.net] has joined #scheme 17:47:11 -!- alaricsp [n=alaricsp@88-202-202-179.rdns.as8401.net] has quit ["Leaving."] 17:52:23 -!- saccade [n=saccade_@COMBINATOR.MIT.EDU] has quit ["Leaving"] 17:52:25 -!- tessier [n=treed@kernel-panic/sex-machines] has quit [Read error: 113 (No route to host)] 17:58:10 -!- davids [n=davids@139.82.89.70] has quit ["Client exiting"] 17:59:03 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit ["If technology is distinguishable from magic, it is insufficiently advanced."] 18:02:07 saccade [n=saccade@dhcp-18-188-74-28.dyn.mit.edu] has joined #scheme 18:05:19 tessier [n=treed@mail.copilotco.com] has joined #scheme 18:07:07 Repentinus [n=Repentin@209.163.191.90.dyn.estpak.ee] has joined #scheme 18:07:34 kniu [n=kniu@pool-71-106-16-199.lsanca.dsl-w.verizon.net] has joined #scheme 18:10:00 saccade_ [n=saccade_@COMBINATOR.MIT.EDU] has joined #scheme 18:19:13 -!- saccade [n=saccade@dhcp-18-188-74-28.dyn.mit.edu] has quit ["This computer has gone to sleep"] 18:33:16 saccade [n=saccade@18.56.7.46] has joined #scheme 18:38:13 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Remote closed the connection] 18:39:02 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 18:42:03 -!- danfowler [n=Dfowler@ip-66-9-231-226.autorev.intellispace.net] has quit ["Leaving."] 18:42:21 -!- ASau [n=user@83.69.240.52] has quit [Read error: 113 (No route to host)] 18:43:47 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 18:43:58 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 18:45:12 -!- Dark-Star [i=Darkstar@p57B56F54.dip.t-dialin.net] has quit [] 18:47:09 copumpkin [n=pumpkin@129.170.241.32] has joined #scheme 18:49:30 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 18:49:42 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 18:49:44 -!- kyle_ [n=kyle@S010600195bd5aaab.ek.shawcable.net] has quit [Read error: 113 (No route to host)] 18:50:41 haole [n=ivan@143.107.181.10] has joined #scheme 18:52:39 hello there... i'm having some weird problems with the UDP library from plt... if i use udp-send-to with the socket disconnected, the server of my software (i'm doing the client) will receive the message and work properly... if i use the udp-send only, with the socket connected, it will receive the message and disconnect me right away! i'm trying to figure out the differences between this two functions, but the documentation doesn't seem to be enough for me. 18:52:39 .. can someone give me a hint on this? 18:55:02 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Connection reset by peer] 18:55:15 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 18:59:01 -!- saccade [n=saccade@18.56.7.46] has quit ["This computer has gone to sleep"] 19:00:09 haole, can you provide sample code 19:00:38 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 19:00:50 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 19:00:50 jonrafkind: i'm just playing around with some code to get the hangs of things... gonna pastebin it in a somewhat organized way... brb 19:03:15 lisppaste: url? 19:03:15 To use the lisppaste bot, visit http://paste.lisp.org/new/scheme and enter your paste. 19:04:00 -!- leppie|work [i=52d2e3c8@gateway/web/freenode/x-lypxtcbpmqmntfwy] has quit [Ping timeout: 180 seconds] 19:04:50 ASau [n=user@83.69.240.52] has joined #scheme 19:05:07 haole pasted "udp problem" at http://paste.lisp.org/display/85682 19:05:32 jonrafkind: ^ 19:05:50 ok 19:06:12 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 19:06:25 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 19:08:02 rstandy [n=rastandy@net-93-144-20-180.t2.dsl.vodafone.it] has joined #scheme 19:09:14 haole, i tried a simple test using netcat, both udp-send and udp-send-to let me send multiple packets 19:09:22 so maybe its your server 19:09:29 what server are you using? something hand-written? 19:09:49 jonrafkind: no, i'm using rcssserver... it's from robocup.org 19:10:23 jonrafkind: the server will disconnect me when i use udp-send as if i closed my client... but the socket remains connected, even after the server rejects me 19:10:54 -!- HG` [n=HG@85.8.90.253] has quit [Client Quit] 19:11:48 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Connection reset by peer] 19:12:00 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 19:12:33 jonrafkind: and if i use udp-send-to, i get to send the first message without being kicked, but then i can't send any more messages... i was wondering that the difference between this two methods of doing this might give me a clue of what's wrong 19:13:20 jonrafkind: don't know if this might interfere, but as soon as i send that message to the server, it starts sending back messages to me until the connection is closed... it's a two way communication socket 19:13:25 i must send stuff and receive stuff 19:14:03 -!- mario-goulart [n=user@201-40-162-47.cable.viacabocom.com.br] has quit [Read error: 104 (Connection reset by peer)] 19:14:59 kyle_ [n=kyle@S010600195bd5aaab.ek.shawcable.net] has joined #scheme 19:16:57 im not sure.. but just a wild guess are you sure the server wants to use udp and tcp? 19:17:13 is it possible you open a socket, send a udp packet, and the server gets confused because it expected a tcp packet instead? 19:17:23 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 54 (Connection reset by peer)] 19:17:36 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 19:20:43 jonrafkind: no, the server explicitly tells me to use UDP packets 19:21:03 jonrafkind: it is possible to use the same socket to send and receive messages, right? 19:21:15 yea, they are dual channel 19:22:54 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 19:23:05 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 19:23:14 npe [n=npe@94-224-251-223.access.telenet.be] has joined #scheme 19:24:09 jonrafkind: and the udp-bind! method is used for servers, right? not my case 19:24:23 yea 19:28:19 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 54 (Connection reset by peer)] 19:28:33 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 19:31:29 -!- sepult` [n=user@xdsl-87-78-31-69.netcologne.de] has quit [Client Quit] 19:31:31 -!- X-Scale [i=email@89.180.181.34] has left #scheme 19:33:53 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 54 (Connection reset by peer)] 19:34:08 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 19:39:28 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 19:39:41 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 19:43:00 mario-goulart [n=user@201-40-162-47.cable.viacabocom.com.br] has joined #scheme 19:43:00 -!- haole [n=ivan@143.107.181.10] has quit [Read error: 104 (Connection reset by peer)] 19:43:38 haole [n=ivan@143.107.181.10] has joined #scheme 19:45:01 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 19:45:20 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 19:49:23 -!- snurble [n=snurble@s83-191-238-2.cust.tele2.se] has quit [Read error: 110 (Connection timed out)] 19:49:50 snurble [n=snurble@s83-191-238-2.cust.tele2.se] has joined #scheme 19:50:11 -!- mario-goulart [n=user@201-40-162-47.cable.viacabocom.com.br] has quit [Read error: 104 (Connection reset by peer)] 19:50:43 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 131 (Connection reset by peer)] 19:51:01 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 19:51:02 dysinger [n=dysinger@71.20.35.99] has joined #scheme 19:52:39 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 19:55:45 -!- rstandy [n=rastandy@net-93-144-20-180.t2.dsl.vodafone.it] has quit [Read error: 110 (Connection timed out)] 19:56:22 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Connection reset by peer] 19:56:40 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 20:02:03 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 54 (Connection reset by peer)] 20:02:20 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 20:07:44 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 20:08:01 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 20:13:22 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 20:13:39 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 20:16:38 -!- jewel [n=jewel@dsl-242-163-86.telkomadsl.co.za] has quit [Read error: 113 (No route to host)] 20:18:07 does anybody knows what is the difference between the udp-send function and udp-send-to function in plt?? i'm getting different problems from each of one them 20:18:43 -!- dysinger [n=dysinger@71.20.35.99] has quit [Connection timed out] 20:18:58 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Connection reset by peer] 20:19:15 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 20:20:02 UDP-SEND presumably works only with a socket that you have connected, and sends packets only to the socket address to which you have connected it. 20:21:38 masm [n=masm@bl7-205-154.dsl.telepac.pt] has joined #scheme 20:23:23 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 20:24:36 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 20:24:53 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 20:29:54 Riastradh: i'm writing a client to a server that i cannot modify... if i use the udp-send-to function, it accepts my client and my software keeps working with the server (it's a simulator where i connect agents to it) 20:30:03 however, i can't send anymore messages... the server will just ignore 20:30:17 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 54 (Connection reset by peer)] 20:30:28 if i use udp-send with a connected socket, the server will receive them... but it will kick my agent right after it 20:30:34 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 20:31:07 don't know if i'm missing something, or if it's a problem with my application concerning the scheme/udp library for being somewhat a high-level library 20:32:44 saccade [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 20:36:04 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 20:36:09 haole: send(2), sendto(2). 20:36:22 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 20:36:38 haole: I think that Scheme names reflect underlying syscalls. 20:38:17 Common advice for novice FFI fighters: 20:38:32 in case of doubt, write C prototype. 20:38:44 Also, ktrace is your friend. 20:38:57 FFI? 20:39:06 Foreign function interface. 20:39:14 oh 20:39:44 the frustrating part is that i get to receive tons of messages with my code... but i can't get to send more than one message per section 20:39:46 :( 20:39:59 tcpdump is your friend. 20:40:22 Almost any network code requires that you know tcpdump. 20:40:22 does it support udp? :D 20:40:26 Sure. 20:41:02 RTFM, you'll learn many new things. 20:41:08 well, even if i find that something is wrong, i can't imagine what could change in my code 20:41:09 Welcome to reality. :( 20:41:18 i'm gonna learn all those things you pointed me 20:41:37 but the udp functions are quite simple... will i need to write my own FFI? 20:41:47 No. 20:41:52 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 20:41:52 Use what you have. 20:42:08 What you need to understand is underlying mechanics. 20:42:09 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 20:42:18 Refer to send(2) and sendto(2) man pages. 20:42:38 Find tutorial on BSD sockets. 20:43:04 If you find you understand that way better. 20:43:09 ok... guess i'm gonna be a better programmer after this :D 20:43:12 'cause I studied it by man pages. 20:43:26 And that was rather hard. 20:43:29 c prototyping should give me a direction... gonna try your way :) 20:43:46 Good luck. 20:43:48 tutorials won't teach you much... it's like giving the fish, not the pole 20:43:50 thanks 20:44:02 -!- haole [n=ivan@143.107.181.10] has quit ["Ex-Chat"] 20:45:42 -!- bzzbzz [n=franco@207.236.146.245] has quit ["leaving"] 20:46:03 Gee, I haven't encountered many consistent GCC internal compiler errors before. 20:47:37 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 20:47:56 r0bby_ [n=wakawaka@guifications/user/r0bby] has joined #scheme 20:50:01 -!- mbishop_ is now known as mbishop 20:53:25 -!- r0bby_ [n=wakawaka@guifications/user/r0bby] has quit [Read error: 54 (Connection reset by peer)] 20:53:42 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 20:59:10 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Connection reset by peer] 20:59:27 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 21:04:55 schmir [n=schmir@mail.brainbot.com] has joined #scheme 21:04:56 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 21:05:13 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 21:05:38 how do i read the whole contents of a file as a string? 21:07:32 -!- kyle_ [n=kyle@S010600195bd5aaab.ek.shawcable.net] has quit [Read error: 148 (No route to host)] 21:08:39 -!- moghar [n=user@unaffiliated/moghar] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 21:10:06 -!- Kusanagi [n=Lernaean@unaffiliated/kusanagi] has quit [] 21:10:14 schmir: with or without evaluating it as scheme? 21:10:24 *Riastradh* blinks. 21:10:36 What in schmir's inquiry made you even think about evaluation, klutometis? 21:10:40 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 54 (Connection reset by peer)] 21:10:58 klutometis: no scheme. 21:10:59 Riastradh: just that READ is standard 21:11:00 r0bby_ [n=wakawaka@guifications/user/r0bby] has joined #scheme 21:11:17 Riastradh: i usually resort to non-standard techniques for reading unevaluated strings from files 21:11:31 I think that his question clearly indicated that this had nothing whatsoever to do with reading S-expressions or evaluating code. 21:11:56 klutometis: srfi-6 isn't standard enough? 21:12:28 schmir, there is no standard procedure to do precisely what you ask; usually one will open the file and read character-by-character into a list or a SRFI 6 string output port. 21:13:00 chandler: oh, thanks; i usually resort to chicken's READ-ALL 21:14:59 rudybot: init r5rs 21:15:00 chandler: your r5rs sandbox is ready 21:15:05 Riastradh: damn...this is bad. 21:15:11 rudybot: (#%require srfi/6) 21:15:11 chandler: eh? Try "rudybot: help". 21:15:16 rudybot: eval (#%require srfi/6) 21:15:42 rudybot: eval open-output-string 21:15:42 chandler: ; Value: # 21:15:52 Yay! 21:15:55 why is there a read-line then? 21:16:27 What READ-LINE? There is no READ-LINE in any RnRS or in any SRFI of which I am aware. 21:16:29 -!- r0bby_ [n=wakawaka@guifications/user/r0bby] has quit [Read error: 54 (Connection reset by peer)] 21:16:46 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 21:17:09 READ-LINE is there because line terminator is system dependent. 21:17:41 It may be line separator rather than terminator. 21:18:06 gambit has read-line. I assumed it was in some standard... 21:18:19 It's in the standard called the Gambit Reference Manual. 21:18:30 X3J14 has it. :D 21:18:32 But what does that have to do with reading the contents of a file into a string? 21:21:08 -!- dmoerner [n=dmr@ppp-71-139-19-1.dsl.snfc21.pacbell.net] has quit [Read error: 110 (Connection timed out)] 21:22:14 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Connection reset by peer] 21:22:33 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 21:23:01 Riastradh: one could use multiple read-lines to read the whole contents?? 21:23:16 schmir: I told you how to do it. 21:23:38 Use srfi-6, and read characters until the end of the port. 21:23:48 chandler pasted "read-complete-file" at http://paste.lisp.org/display/85687 21:23:58 rudybot: init http://paste.lisp.org/display/85687/raw 21:23:59 chandler: error: program:9:28: compile: unbound identifier in module in: port 21:24:03 gack 21:24:24 (Why don't you just use CALL-WITH-INPUT-FILE?) 21:24:31 chandler annotated #85687 "corrected" at http://paste.lisp.org/display/85687#1 21:25:14 Riastradh: because there's only space in my brain for one procedure for a given purpose, and apparently `with-input-from-file' is stored in that slot. 21:25:25 rudybot: init http://paste.lisp.org/display/85687,1/raw 21:25:26 chandler: your "http://paste.lisp.org/display/85687,1/raw" sandbox is ready 21:25:39 rudybot: (read-complete-port (open-input-string "Hello, world!")) 21:25:39 chandler: eh? Try "rudybot: help". 21:25:43 rudybot: eval (read-complete-port (open-input-string "Hello, world!")) 21:25:43 chandler: ; Value: "Hello, world!" 21:25:45 Yay! 21:26:21 in R6RS: (call-with-input-file "filename.txt" get-string-all) 21:27:56 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Read error: 104 (Connection reset by peer)] 21:28:13 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 21:28:32 *ASau* recalls famous "slurp-file"... 21:28:36 thanks chandler. I'll look around if gambit provides such a thing. I still can't believe it... 21:29:05 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [K-lined] 21:29:35 Reading complete files into strings is not a common task. What are you intending to use this for? 21:29:55 chandler: this is a common task in the real world 21:30:16 actually i want to read the whole output from a unix command 21:30:40 Apparently I don't live in the real world, as I can probably count on one fingers the number of times I've needed to slurp in a complete file into a string. 21:30:41 using gambit's open-process 21:32:12 [py26] ~/Python-2.4.6/ % ack "\.read\(\)" |wc -l ralf@muni ok 21:32:13 387 21:32:22 jao: I'm somewhat surprised that as far as I can tell the guile and PLT backends for geiser don't share implementation code. Is this correct, or am I missing something? 21:33:05 -!- bombshelter13_ [n=bombshel@206.80.252.37] has quit [] 21:33:19 that's read till eof in python source code. 21:33:44 chandler: in the scheme side? no, they don't. shared functionality is usually in the elisp side, and the two systems work very differently 21:34:14 Oh, in Scheme code literally embedded in the Elisp code to be sent to the implementation? 21:35:26 chandler: well, sort of. there's that possibility, but i mainly use it to send procedure calls that define the protocol between the scheme emacs. 21:36:02 chandler: if enough commonality were found, geiser could do that. but, as i said, i have found little overlap so far. 21:36:52 s/the scheme emacs/the scheme implementation and emacs/ 21:41:04 g0ju [n=moo@spalila.hrz.fh-zwickau.de] has joined #scheme 21:43:33 Ah. 21:44:09 I guess in my excitement I failed to notice the license. Oh well. 21:46:01 r0bby [n=wakawaka@guifications/user/r0bby] has joined #scheme 21:46:18 chandler: is the license a problem for you? (as in preventing you from using geiser?) 21:46:50 It doesn't prevent me from using it, but I'd prefer to apply a free license to anything I write, so it does prevent me from adding a new backend. 21:47:22 a free license? isn't GPL free enough? 21:47:40 No, it isn't. 21:47:42 i might be missing something, but i don't think it prevents you from writing a backend... 21:48:21 you just implement the handful of procedures geiser sends to the scheme process 21:48:35 and you don't need to touch geiser's code 21:49:15 afaict, you can freely choose the license for your code in that scenario 21:49:42 Yes, that does seem likely. I just need to be careful not to use any code from the other backends. 21:50:55 well, my impression is that that'll hardly be an issue: the scheme side deals with metadata facilities outside of any scheme standard, so they're very implementation-specific 21:51:11 -!- r0bby [n=wakawaka@guifications/user/r0bby] has quit [Client Quit] 21:52:13 davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has joined #scheme 21:52:36 (if/when i find commonalities in geiser's scheme side, i'll put them in an LGPL library, i guess) 21:52:53 -!- copumpkin [n=pumpkin@129.170.241.32] has quit [] 21:55:35 chandler: (read-line p #f) does the trick for gambit. apparently it's a common task for them. 21:58:25 anyway I still can't believe it's not in the standard. PITA 21:58:29 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 22:02:15 -!- Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has quit [Connection timed out] 22:04:48 MononcQc [i=MononcQc@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 22:04:51 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 22:05:34 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 22:06:57 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 22:07:38 dysinger [n=dysinger@71.20.35.99] has joined #scheme 22:11:06 Kusanagi [n=Lernaean@unaffiliated/kusanagi] has joined #scheme 22:12:32 -!- bweaver [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 22:18:43 schmir: It really doesn't need to be in a standard, and it's not something that I do very often either, and I do work in the real world to some extent. On the other hand R6RS does define a number of input and output functions, one of which permits you to read in all the contents of a file. 22:27:03 -!- fishey [n=fisheyss@ool-4573344b.dyn.optonline.net] has quit [Read error: 145 (Connection timed out)] 22:27:08 arcfide: thanks. maybe I should take a look at r6rs 22:30:58 Adamant [n=Adamant@c-68-51-134-164.hsd1.ga.comcast.net] has joined #scheme 22:33:55 schmir: Neh, you really shouldn't if you value your sanity. :-) 22:34:28 schmir: More to the point, just because R6RS has a lot of stuff in it doesn't mean that you should use it over R5RS + Any set of de facto library standards. 22:34:43 :) just reading https://webmail.iro.umontreal.ca/pipermail/gambit-list/2007-August/001580.html 22:34:46 -rudybot:#scheme- http://tinyurl.com/ltl9e5 22:34:47 -!- npe [n=npe@94-224-251-223.access.telenet.be] has quit [] 22:34:48 Especially for something as trivial as getting all the contents of the strings. 22:34:56 foof: how goes chibi? 22:35:00 sorry, Getting all of the contents of a port to a string. 22:36:23 Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has joined #scheme 22:36:45 fishey [n=fisheyss@ool-4573344b.dyn.optonline.net] has joined #scheme 22:39:09 -!- jlongster [n=user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit [Read error: 113 (No route to host)] 22:40:09 copumpkin [n=pumpkin@dhcp-210-127.cs.dartmouth.edu] has joined #scheme 22:40:13 arcfide: learning scheme seems somehow insane to me. I'm using python professionally. it's a different world. 22:40:23 even choosing an implementation is hard. 22:43:01 this is widely considered a good thing :P 22:43:11 it means, hopefully, that there are many competing 'good' implementations 22:45:29 -!- ASau [n=user@83.69.240.52] has quit [Remote closed the connection] 22:45:48 ASau [n=user@83.69.240.52] has joined #scheme 22:47:53 Elly: yes, that's good when you know about the strengths and weaknesses of those implementations. 22:48:32 I'll have to leave. bye. 22:49:46 bye 22:50:28 -!- snurble [n=snurble@s83-191-238-2.cust.tele2.se] has quit [Read error: 110 (Connection timed out)] 22:50:45 snurble [n=snurble@s83-191-238-2.cust.tele2.se] has joined #scheme 22:51:26 -!- schmir [n=schmir@mail.brainbot.com] has quit [Remote closed the connection] 22:53:40 -!- ASau [n=user@83.69.240.52] has quit [Remote closed the connection] 22:53:53 ASau [n=user@83.69.240.52] has joined #scheme 22:56:14 la la la 22:56:31 yo dawg, we put an interpreter in your interpreter so you can intepret while you interpret 23:01:06 pfo [n=pfo@chello084114049188.14.vie.surfer.at] has joined #scheme 23:04:37 dudleyf [n=dudleyf@ip70-178-212-238.ks.ks.cox.net] has joined #scheme 23:08:59 jengle [n=jengle@64-252-49-153.adsl.snet.net] has joined #scheme 23:09:11 dysinger` [n=dysinger@71.20.35.99] has joined #scheme 23:14:28 -!- dysinger [n=dysinger@71.20.35.99] has quit [Connection timed out] 23:15:05 -!- duncanm [n=duncan@a-chinaman.com] has quit [Read error: 104 (Connection reset by peer)] 23:16:14 duncanm [n=duncan@a-chinaman.com] has joined #scheme 23:20:44 -!- pfo [n=pfo@chello084114049188.14.vie.surfer.at] has quit [Read error: 104 (Connection reset by peer)] 23:25:24 jao: You wrote FUEL, correct? 23:26:04 chandler: yes. 23:26:10 rstandy [n=rastandy@net-93-144-192-10.t2.dsl.vodafone.it] has joined #scheme 23:27:31 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 23:30:12 -!- ASau [n=user@83.69.240.52] has quit [Remote closed the connection] 23:30:20 ASau [n=user@83.69.240.52] has joined #scheme 23:30:57 jao: I'm curious why you chose the BSD license for the client side of FUEL, but the GPL for the client side of Geiser. Was that slava's choice? 23:32:06 chandler: for FUEL, yes. 23:32:28 Yes, that's what I meant to ask. 23:33:12 since all code in factor is BSD, i just followed suit there. geiser's license is my choice. 23:38:17 -!- arcfide [n=arcfide@adsl-99-14-210-197.dsl.bltnin.sbcglobal.net] has left #scheme 23:40:26 jao: Is there any documentation for the protocol the client must implement, outside of the Scheme-side code? 23:42:07 chandler: i sent an email to the ikarus list with an overall description, but not detailed enough. i should write it, though. 23:42:16 (the detailed documentation) 23:43:27 chandler: i can prioritize that if you need it badly :) and of course, i'll be happy to answer any questions. 23:44:00 (i wanted to write the user manual first) 23:44:11 -!- ASau [n=user@83.69.240.52] has quit [Remote closed the connection] 23:44:22 ASau [n=user@83.69.240.52] has joined #scheme 23:45:01 -!- MrFahrenheit [i=RageOfTh@92.36.148.11] has quit [Read error: 110 (Connection timed out)] 23:45:48 jao: I'll look for that mail, and otherwise have a look over the code to get a feel for it. 23:46:19 jao: The Emacs side is very cleanly designed (well, as cleanly as elisp can be). It is night and day compared to the SLIME code. 23:47:13 -!- rdd` [n=user@c83-250-159-12.bredband.comhem.se] has quit [Remote closed the connection] 23:47:44 chandler: well, that was one of my goals; and the reason i decided not to write a slime-based geiser 23:48:06 (besides i had all this elisp from fuel) 23:57:11 -!- MononcQc [i=MononcQc@modemcable062.225-20-96.mc.videotron.ca] has quit ["DOWNLOADING NEXT VERSION OF INTERNET"] 23:57:50 -!- fishey [n=fisheyss@ool-4573344b.dyn.optonline.net] has quit [Read error: 110 (Connection timed out)] 23:58:35 fishey [n=fisheyss@ool-4573344b.dyn.optonline.net] has joined #scheme