00:00:09 allnmymind [n=user@bas3-ottawa10-1279680047.dsl.bell.ca] has joined #scheme 00:00:38 sm [n=sm@pool-71-107-249-212.lsanca.dsl-w.verizon.net] has joined #scheme 00:01:56 thanks...kind of obvious, sorry 00:02:10 don't let it happen again. 00:02:18 *offby1* glowers threateningly 00:03:36 Adamant [n=Adamant@c-98-244-152-196.hsd1.ga.comcast.net] has joined #scheme 00:04:33 -!- replor [n=replor@ntkngw375028.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [No route to host] 00:06:43 jao [n=user@129.Red-83-42-110.dynamicIP.rima-tde.net] has joined #scheme 00:13:51 -!- Balita [n=ase23azz@p7220-ipbfp1401fukuokachu.fukuoka.ocn.ne.jp] has quit ["Tiarra 0: SIGTERM received; exit"] 00:14:12 Balita [n=ase23azz@p7220-ipbfp1401fukuokachu.fukuoka.ocn.ne.jp] has joined #scheme 00:16:28 How is it going everyone? 00:18:18 arcfide: Three sausages is in the lead. 00:18:33 mejja: Huh? 00:19:07 mejja, beef ribs are a close second? 00:19:34 ooh ooh 00:19:42 *offby1* roots for pork 00:20:23 *mejja* 's red is so-so. (penfolds el'cheapo) 00:24:11 -!- Khisanth [n=Khisanth@151.204.138.236] has quit ["bleh"] 00:24:58 -!- Balita [n=ase23azz@p7220-ipbfp1401fukuokachu.fukuoka.ocn.ne.jp] has quit ["Tiarra 0: SIGTERM received; exit"] 00:25:05 *Daemmerung* craves Chimay 00:25:28 Balita [n=ase23azz@p7220-ipbfp1401fukuokachu.fukuoka.ocn.ne.jp] has joined #scheme 00:25:52 -!- Balita [n=ase23azz@p7220-ipbfp1401fukuokachu.fukuoka.ocn.ne.jp] has quit [Client Quit] 00:26:01 -!- melito [n=melito@0-1e-c2-ac-65-6d.dynamic.ucsd.edu] has quit ["Leaving..."] 00:29:59 *offby1* just bought two bottles this afternoon 00:30:50 Daemmerung: which color do you prefer -- white, brown, or blue? 00:31:00 (I suspect there's a fourth, a sort of darker blue, but can't remember) 00:33:55 offby1: blue, white & red. 00:34:38 Kieslowski++ 00:38:52 offby1: missing ';' 00:42:34 -!- mejja [n=user@c-7d2472d5.023-82-73746f38.cust.bredbandsbolaget.se] has quit [Remote closed the connection] 00:43:27 *offby1* slaps mejja upside the haid 00:44:24 So... thirsty.... 00:45:55 Khisanth [n=Khisanth@pool-151-204-138-236.ny325.east.verizon.net] has joined #scheme 00:46:14 And I prefer the blonde, in Belgians at least. 00:46:37 saccade_ [n=saccade@65-78-24-47.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 00:49:39 mejja [n=user@c-7d2472d5.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 00:50:48 "White" is what we favor here, too; after a long blue period. 00:50:53 Blue got to be too much, though. 00:51:02 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 00:51:04 *mejja* agrees 00:51:39 *offby1* idly wonders if he has gloated to Daemmerung recently thus: http://bottleworks.com/beerlist.html 00:51:44 Daemmerung: three blocks from my house 00:51:45 *offby1* whistles innocently 00:51:45 -!- saccade_ [n=saccade@65-78-24-47.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit ["This computer has gone to sleep"] 00:54:52 sodio [n=sodio@netblock-63-66-64-29.myitdepartment.net] has joined #scheme 01:01:51 beer and chocolate 01:02:03 yep 01:02:57 *synx* tries to think of something nearby that has fine quality foodstuffs. 01:05:42 where is "nearby"? 01:06:45 maybe about 10 miles away at most 01:06:54 though it is possible to take the train 01:08:55 I meant, where are you? 01:10:37 I'm right here. :) 01:10:42 ah, OK 01:10:43 -!- Khisanth [n=Khisanth@pool-151-204-138-236.ny325.east.verizon.net] has quit [Read error: 110 (Connection timed out)] 01:10:58 well, then, you're in my neighborhood. Bottleworks is just three blocks from you, too! 01:11:09 Khisanth [n=Khisanth@pool-151-204-138-236.ny325.east.verizon.net] has joined #scheme 01:11:15 *offby1* should have expected as much from a Tor user 01:11:41 hehe yup 01:13:35 I don't really take the death threats seriously, but I do prefer to retain a little privacy. 01:14:55 offby1: I am presently wearing a Bottleworks T-shirt-- swag from their opening godonlyknows how many years ago. 01:21:14 pix or it didn't happen 01:26:22 speaking of which, has anyone tried fossil fuels? 01:26:26 http://www.fossilfuelsbrewingco.com/ 01:32:19 certainty [n=closure@dslb-082-083-154-047.pools.arcor-ip.net] has joined #scheme 01:32:19 -!- cubix [n=cubix@CPE0013100506c1-CM001692411b42.cpe.net.cable.rogers.com] has quit [Read error: 104 (Connection reset by peer)] 01:34:20 Can I see a raise of hands here for people who use Macros other than SYNTAX-RULES? 01:34:47 No, probably not, unless you're sitting in the same room as some of the other folks here. 01:35:02 arcfide, I used syntax-case frequently 01:35:16 Riastradh, I meant IRC hand waving. :-) 01:35:55 jonrafkind, is the abilty to place a conditional to pattern matching useful to you? 01:36:10 Of course it is. Next! 01:36:16 well.. I don't use it much.. 01:36:29 but clearly it has its uses 01:36:29 How do other macro system provide this feature? 01:36:38 what other macro systems 01:36:50 jonrafkind, yes, of course, but I wonder how many people use it, or how many people would use SYNTAX-CASE for this reason alone. 01:37:08 i dunno. who cares? if they want it and syntax-case provides it then just use syntax-case 01:37:15 jonrafkind, explicit renaming, and whatever other macro systems have been devised and are still in Scheme implementations today seeing use. 01:37:26 the difference between syntax-case and syntax-rules is #' anyway for simple things 01:37:28 jonrafkind, I'm just curious. 01:38:44 explicit renaming.. really? so some systems are not hygienic? 01:38:55 Explicit renaming is a hygienic macro system. 01:38:56 doesn't r5rs mandate some form of hyginiec macros? 01:39:04 `Explicit renaming' does not mean GENSYM. 01:39:05 -!- certainty [n=closure@dslb-082-083-154-047.pools.arcor-ip.net] has quit ["Lost terminal"] 01:39:08 Riastradh, oh, sorry. 01:39:11 how is it hygienic if I fail to explicitly rename 01:39:17 Then your macros fail to be hygienic. 01:39:19 Riastradh, I think I'm thinking of DEFMACROs, not the others. 01:39:26 so.. lisp macros are hygienic? 01:39:30 No, jonrafkind. 01:39:41 Those have no renaming at all. 01:39:46 gensym? 01:39:51 (I presume you mean Common Lisp DEFMACRO macros.) 01:39:53 I know that there were at least one, maybe two or more other non-hygeniec macro systems for Scheme, weren't there? 01:39:59 GENSYM is not `renaming' in this sense. 01:40:05 `Renaming' means `hygienic renaming' here. 01:40:13 arcfide, those are irrelevant. They are historical mistakes. 01:40:24 (Mostly because the designers don't, or didn't at the time, understand hygienic macros.) 01:41:07 So SYNTAX-CASE is the only commonly used macro system in Scheme systems today that can bend hygiene? 01:41:09 -!- bsmntbombdood [n=gavin@97-118-116-90.hlrn.qwest.net] has quit [] 01:41:27 I don't have statistics for `commonly', but if you strike that word, then the answer is negative. 01:41:33 certainty [n=closure@dslb-082-083-154-047.pools.arcor-ip.net] has joined #scheme 01:41:36 cubix [n=cubix@CPE0013100506c1-CM001692411b42.cpe.net.cable.rogers.com] has joined #scheme 01:41:50 bsmntbombdood [n=gavin@97-118-116-90.hlrn.qwest.net] has joined #scheme 01:41:56 isn't hygienic renaming just the process of avoiding capturing bindings that weren't introduced in the macro? 01:42:02 Riastradh, care to point me to some information or provide it here? I'm not familiar with the other macro systems that are out there. 01:42:20 explicit renaming, syntactic closures? 01:43:06 arcfide, maybe just check the macro page on library.readscheme.org 01:43:26 jonrafkind, hygienic renaming is the process of recording the meanings of names, not just the text of names, in macro expansion, according to the context whence the names arose. 01:44:13 *mejja* rates syntax-case below sc & er 01:47:11 vorpal [n=rhunter@pdpc/supporter/student/vorpal] has joined #scheme 01:47:24 yes, ok I see the error of my thinking 01:47:25 mejja: sc & er? 01:47:25 Common Lisp macros don't do this; instead they mostly rely on symbols' global definitions being not shadowed, and reducing the probablity of shadowing by separating the environments into parts. 01:47:44 arcfide, sc = syntactic closures, er = explicit renaming 01:47:50 Ah. 01:48:05 why would you want to use an explicit renaming system? isn't that just extra work? 01:48:09 -!- arcfide [n=arcfide@adsl-99-137-201-22.dsl.bltnin.sbcglobal.net] has quit ["Bah, restart."] 01:48:49 jonrafkind, presumably you develop some abstractions and only drop down to low level macro hackery when necessary 01:49:40 so those abstractions basically give you an implicit renaming system, and if you want to screw with hygiene you can always use the explicit renaming system to do so 01:49:52 The main difference between syntactic closures (or explicit renaming) and SYNTAX-CASE is that the language of SYNTAX-CASE is not designed to be understandable as a procedural Scheme API independent of the higher-level pattern language, whereas one can straightforwardly understand the meaning of syntactic closures strictly as a procedural Scheme API. In other words, a familiarity with Scheme-sans-macros suffices to understand synt 01:50:16 cutoff at "to understand syn" 01:50:24 darn 512 byte limit 01:50:26 ...syntactic closures, whereas it does not for SYNTAX-CASE. 01:50:37 jonrafkind, actually, <512-octet limit. In fact, a client cannot reliably know just what the limit is. 01:50:46 Riastradh is a one-man war against line limits. 01:51:01 I thought the limit was definde by the irc rfc, as 512-something 01:51:07 arcfide [n=arcfide@adsl-99-137-201-22.dsl.bltnin.sbcglobal.net] has joined #scheme 01:51:10 -!- metasyntax [n=taylor@pool-71-188-161-219.aubnin.fios.verizon.net] has quit ["leaving"] 01:51:17 The limit on the length of an IRC protocol message is 512 octets, including the CRLF. 01:51:28 This is not, however, the length of the content of an IRC PRIVMSG protocol message. 01:51:41 oh ok :p 01:51:48 My client cannot reliably know what prefix the server will affix to the PRIVMSG protocol message that it sends to your client. 01:51:57 And that prefix contributes to the 512-octet limit. 01:51:57 Some servers will tell the client the maximum size that can reliably be sent, IIRC. 01:53:06 Hmm. Looks like Freenode does. This I was not aware of. (It's not part of the protocol, though. The client still has to guess at the interpretation of some free-form text that the server sends as a greeting message to the client.) 01:53:19 Adamant [n=Adamant@c-98-244-152-196.hsd1.ga.comcast.net] has joined #scheme 01:54:14 It's all a kludge; why not make it even more difficult to implement consistently? 01:54:31 Mud sticks to mud. 01:54:54 IRC sticks to IRC. 01:55:00 yes, irc doesn't work. it needs fixing obviously 01:55:16 jonrafkind, in my experience it d 01:55:38 Not even the response code sent by Freenode for this purpose is defined in the IRC RFC. 01:56:10 kilimanjaro, was that an attempt at humor? 01:56:15 tizoc [n=user@r190-135-26-99.dialup.adsl.anteldata.net.uy] has joined #scheme 01:57:03 -!- tizoc_ [n=user@r190-135-19-214.dialup.adsl.anteldata.net.uy] has quit [Read error: 104 (Connection reset by peer)] 01:57:11 *chandler* doesn't think everything is defined in the RFC. For instance, the interpretation of the contents of this PRIVMSG. 01:57:33 jonrafkind, interpret it in whichever way pleases you 01:57:56 I thought maybe you were trying to be ironic by deliberatly cutting out the "oesn't" from the d at the end of your message 01:58:42 jonrafkind, yep 01:59:34 hilarious 02:02:12 Riastradh: How is the work on MIT Scheme going? 02:18:17 21:34 arcfide: Can I see a raise of hands here for people who use Macros other than SYNTAX-RULES? 02:18:28 keyboard fart. 02:22:47 eno__ [n=eno@adsl-70-137-155-185.dsl.snfc21.sbcglobal.net] has joined #scheme 02:23:40 *eli* takes `rcirc-send-input' to a dark corner, and shoots it. 02:24:57 certaint1 [n=closure@dslb-082-083-150-078.pools.arcor-ip.net] has joined #scheme 02:25:02 -!- certainty [n=closure@dslb-082-083-154-047.pools.arcor-ip.net] has quit [Read error: 60 (Operation timed out)] 02:25:06 -!- eno__ [n=eno@adsl-70-137-155-185.dsl.snfc21.sbcglobal.net] has quit [Client Quit] 02:27:17 eli: me 02:31:08 both er and sc 02:31:30 He wasn't asking a question, bsmntbombdood. 02:32:06 ok 02:33:33 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 110 (Connection timed out)] 02:33:33 -!- cubix [n=cubix@CPE0013100506c1-CM001692411b42.cpe.net.cable.rogers.com] has quit [Read error: 104 (Connection reset by peer)] 02:33:47 [the irc client that I'm using will copy the line the cursor happens to stand on to the prompt and move there -- hitting enter twice leads to the obivous stupidity.] 02:34:06 cubix [n=cubix@CPE0013100506c1-CM001692411b42.cpe.net.cable.rogers.com] has joined #scheme 02:37:45 arcfide: I use syntactic closures. 02:38:38 wy [n=wy@c-67-176-146-7.hsd1.in.comcast.net] has joined #scheme 02:44:56 -!- vorpal [n=rhunter@pdpc/supporter/student/vorpal] has quit ["The incensed priests...continued to raise their voices, vituperating each other in bad Latin"] 02:58:36 cracki_ [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 03:02:25 elmex_ [n=elmex@e180065091.adsl.alicedsl.de] has joined #scheme 03:11:31 grettke [n=grettke@CPE-65-31-132-59.wi.res.rr.com] has joined #scheme 03:14:25 -!- cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit [Read error: 110 (Connection timed out)] 03:17:37 -!- elmex [n=elmex@e180066108.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 03:17:40 -!- elmex_ is now known as elmex 03:21:17 -!- hadronzoo [n=hadronzo@ppp-70-247-160-133.dsl.rcsntx.swbell.net] has quit [] 03:22:18 -!- sodio [n=sodio@netblock-63-66-64-29.myitdepartment.net] has quit [] 03:25:46 -!- cipher [n=cipher@torque.acm.cs.rpi.edu] has quit [Remote closed the connection] 03:25:57 cipher [n=cipher@torque.acm.cs.rpi.edu] has joined #scheme 03:29:27 -!- cracki_ [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has quit [Read error: 110 (Connection timed out)] 03:31:42 -!- wy [n=wy@c-67-176-146-7.hsd1.in.comcast.net] has quit ["Leaving"] 03:32:23 has anybody used plt's sgl facility with its gui? I'm back to my age old problem of "nothing appears" 03:32:23 -!- cubix [n=cubix@CPE0013100506c1-CM001692411b42.cpe.net.cable.rogers.com] has quit [Read error: 104 (Connection reset by peer)] 03:32:49 I know how to make a C GL program, but... doing something wrong here. 03:38:41 vorpal [n=rhunter@pdpc/supporter/student/vorpal] has joined #scheme 03:43:09 cubix [n=cubix@CPE0013100506c1-CM001692411b42.cpe.net.cable.rogers.com] has joined #scheme 03:45:48 synx: have you studied the examples that come with PLT? 03:46:50 I have even simpler bits that I consed up while learning sgl, if necessary. 03:48:49 Thanks Daemmerung I was looking at the examples inside the documentation. I probably should try tracking down the separate examples too... 03:49:25 The doc is not super helpful. 03:50:12 There is alpha, and gears; and in games, checkers and jewel and gobblet (and the gl-board-game thingy that underlies checkers). 03:50:36 *Daemmerung* rummages through his temp directories 03:50:49 gears should do it for me. :) I found it, will take a look... 03:53:19 -!- mejja [n=user@c-7d2472d5.023-82-73746f38.cust.bredbandsbolaget.se] has quit [Read error: 104 (Connection reset by peer)] 03:53:51 Daemmerung pasted "Ultra simple SGL example" at http://paste.lisp.org/display/68347 04:04:10 Ooh, I've been looking for how to correlate mouse movement with 3D coordinates for a while now. 04:06:23 Drag de dot -- so awesome <3 04:07:46 I think I wasn't doing "draw-init" inside a with-context. That could use some fixing. 04:08:34 -!- allnmymind [n=user@bas3-ottawa10-1279680047.dsl.bell.ca] has quit [Remote closed the connection] 04:08:44 allnmymind [n=user@bas3-ottawa10-1279680047.dsl.bell.ca] has joined #scheme 04:08:50 Mighty oaks from tiny acorns doth grow. Cheers! 04:09:06 (and, yeah, I've made the same mistake) 04:10:33 tjafk1 [n=timj@e176207215.adsl.alicedsl.de] has joined #scheme 04:12:15 I still don't understand what glortho does. 04:12:24 "multiply the current matrix with an orthographic matrix" thank you helpful documentation :p 04:12:39 -!- GreyLensman [n=ray@c-76-108-235-51.hsd1.fl.comcast.net] has left #scheme 04:12:43 I'm just not savvy enough with 3D matrix transformations. 04:13:07 Heh. I have enough trouble with 2d cartesian crap.... 04:13:57 You forget a hell of a lot of precalculus in 25 years. 04:14:15 -!- bpt [n=bpt@cpe-071-070-209-067.nc.res.rr.com] has quit [Read error: 110 (Connection timed out)] 04:15:07 -!- a-s [i=root@93.112.68.42] has quit [Remote closed the connection] 04:15:29 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Connection timed out] 04:15:30 -!- dnm [n=dnm@cpe-67-246-46-208.nycap.res.rr.com] has quit [Read error: 110 (Connection timed out)] 04:15:43 xwl [n=user@221.221.145.203] has joined #scheme 04:16:17 dnm [n=dnm@cpe-67-246-46-208.nycap.res.rr.com] has joined #scheme 04:16:18 Anyway, glOrtho sets up a flat, non-perspective style projection matrix. 04:16:36 It's the natural thing for 2d business such as drag-de-dot. 04:17:37 yay, we have a white triangle! 04:17:50 A winnar is you. 04:17:58 I'm not even sure what a projection matrix is heh. 04:18:11 Good to know what to do for 2D though, since I can't 3D model for the life of me. 04:20:20 The proj matrix defines viewpoint position, range, and field of view. 04:22:27 Ohh right. So it's kind of like camera position, with a bit of distortion possibly. 04:22:44 It is /exactly/ camera position. 04:23:04 -!- arcfide [n=arcfide@adsl-99-137-201-22.dsl.bltnin.sbcglobal.net] has quit ["Leaving"] 04:23:10 http://awinnarisyou.ytmnd.com/ 04:23:27 *Daemmerung* is up past his bedtime... scuse the silliness 04:24:59 *synx* eyes your bike 04:27:19 sweet, now transparancy is working. Now all I have to do is...actually write the program. 04:28:02 -!- tjafk2 [n=timj@e176221023.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 04:28:50 tizoc_ [n=user@r190-135-27-145.dialup.adsl.anteldata.net.uy] has joined #scheme 04:38:44 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 04:45:08 -!- tizoc [n=user@r190-135-26-99.dialup.adsl.anteldata.net.uy] has quit [Read error: 110 (Connection timed out)] 04:56:40 -!- cky [n=cky@202-74-212-35.ue.woosh.co.nz] has quit [Read error: 110 (Connection timed out)] 04:58:05 -!- antoszka [n=antoszka@unaffiliated/antoszka] has quit [Remote closed the connection] 04:58:50 cky [n=cky@202-74-212-35.ue.woosh.co.nz] has joined #scheme 05:00:31 -!- grettke [n=grettke@CPE-65-31-132-59.wi.res.rr.com] has quit [] 05:06:47 -!- replor_ [n=replor@ntkngw375028.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit ["Leaving..."] 05:09:49 -!- ttmrichter [n=ttmricht@221.235.61.166] has quit [Read error: 110 (Connection timed out)] 05:13:03 -!- vorpal [n=rhunter@pdpc/supporter/student/vorpal] has quit ["The incensed priests...continued to raise their voices, vituperating each other in bad Latin"] 05:13:57 -!- allnmymind [n=user@bas3-ottawa10-1279680047.dsl.bell.ca] has quit [Read error: 110 (Connection timed out)] 05:38:38 So in GL you explicitly have to delete an unused texture. I don't suppose sgl automatically does that on garbage collection? 05:40:27 antoszka [n=antoszka@unaffiliated/antoszka] has joined #scheme 05:42:42 -!- certaint1 [n=closure@dslb-082-083-150-078.pools.arcor-ip.net] has quit ["Lost terminal"] 05:45:22 How does one have a function execute on garbage collection of something? 05:48:08 jgracin [n=jgracin@82.193.208.195] has joined #scheme 05:50:33 in PLT there's something called "Will executors"; I _think_ that's what they do 05:54:23 http://docs.plt-scheme.org/reference/willexecutor.html 05:54:29 I think that's it, thanks. <3 06:02:14 -!- wastrel [n=wastrel@nylug/member/wastrel] has quit ["sleep time is now"] 06:08:06 mackid [n=dan@unaffiliated/mackid] has joined #scheme 06:11:59 -!- kilimanjaro [n=kilimanj@70.116.95.163] has quit ["Leaving"] 06:12:05 synx: SGL auto-reaps quadrics, but not textures. Perhaps because textures are usually held in a cvector, or else explicitly paged in and out by the app... not sure. 06:14:43 No clue about that. I'll just have them in a weak box populated on demand, and explicitly delete the texture on execution of a will. 06:17:25 See the bottom of http://svn.plt-scheme.org/plt/trunk/collects/mzlib/foreign.ss for a simple way of using will executors. 06:18:01 *eli* notes that that piece of code uses a thread 06:19:18 That's strange... why does it do that? It's calling will-execute over and over again... 06:19:58 "If no will is ready for immediate execution, will-execute blocks until one is ready." 06:20:15 So it's really doing nothin until a value needs to be finalized. 06:20:55 Right, but then it calls will-execute again? Oh, because many objects/finalizers might have that will-executor. 06:21:22 yes. 06:21:51 So without that thread, no finalizers would ever be invoked for that will-executor. 06:22:15 yes. 06:22:29 You'll need to call `will-execute' yourself. 06:25:36 yhara [n=yhara@84.215.12.221.megaegg.ne.jp] has joined #scheme 06:26:28 plt threads are cooperative, so if I run the graphics loop in one thread, I can decide when to yield and have all this will-execution stuff happen. And other stuff too. 06:27:40 good grief, this is a pixel-by-pixel transformation algorithm just to load an image... 06:27:56 PLT threads are cooperative only if you have a very uncommon definition of "cooperative threads". 06:28:01 http://svn.plt-scheme.org/plt/trunk/collects/sgl/examples/gl-frame.ss under bitmap->gl-vector 06:28:20 Oh, do they preempt each other without using yield then? My bad. 06:28:48 synx: one can do better than that. 06:29:37 I'll look into it... I don't know what pixel format plt's "bitmaps" use though. Doesn't look like a 1:1 match to GL. 06:29:50 http://docs.plt-scheme.org/html/reference/concurrency.html -- first pararaph. 06:30:35 Also, the strange fact that there is no `yield' function to make way for a different thread. (There is a `yield', which is a gui thing.) 06:30:44 oops not found 06:31:02 oy, yield is only for the GUI? my serious bad then. 06:31:07 http://docs.plt-scheme.org/reference/concurrency.html 06:33:20 Alright so that's a problem, since I need the inner graphics calculation to happen fast, without lengthy interruption. 06:33:37 Much less time spent after every statement checking to see if other threads are awake. 06:34:43 there are two main points of difference betw. plt and gl imagen. 1 - plt bitmaps are argb 2 - plt bitmaps are quadrant II, gl are quadrant I. 06:35:44 gl can understand argb, if you pass the right flags to the texture generator. quadrants are trickier though... 06:36:04 It'd just result in a flipped image though, could math that away. 06:36:07 the first can be addressed by suitable unpack flags. the second requires either bitmungery or a glPixelZoom and Transpose. 06:36:30 synx: please try to forget your thread related worries. It makes me roll my eyes and it makes you write bad code. 06:37:06 Specifically, mzscheme certainly does not "spend time after every statement checking to see if other threads are awake". 06:37:12 Yeah okay I can see that Daemmerung 06:37:34 eli: so how does it...know when to preempt then? 06:37:40 Think about your many-threads example 00 if mzscheme was checking "all threads after every statement", it would be crowling. 06:37:47 s/crowling/crawling/ 06:38:41 (glTexImage2D GL_TESTURE_2D 0 GL_RGBA x y 0 GL_BGRA (if (system-big-endian?) GL_UNSIGNED_INT_8_8_8_8_REV GL_UNSIGNED_INT_8_8_8_8) pixmap) 06:38:43 I'd think so yeah... 06:38:52 It has to check all threads eventually though. 06:39:24 synx: I'm not going to go into explanations, partly because I didn't write the code or went deep into it -- but think about any OS, it has many processes, and it arranges to not check each and every one after each assembly instruction. 06:39:33 Daemmerung: something like that, yea. Oh wait _REV reverses it? So no transformation neccesary. 06:39:39 Same thing in mzscheme. 06:39:54 eli: I really don't know how they do that either. ^.^; 06:40:09 I just kind of thought they did, but processors were uh...fast... 06:40:26 Or what is that called... does plt employ timeslices? 06:40:37 THat takes care of the argb part. 06:40:44 synx: it doesn't matter. Just say it's "magic", and use them instead of reinventing wheels all over the place. 06:41:24 It does matter, if I am going to end up with a slow program because I had the wrong assumptions. 06:41:27 Jarvellis [n=Jarv@dsl-217-155-101-22.zen.co.uk] has joined #scheme 06:41:39 lisppaste: url 06:41:39 To use the lisppaste bot, visit http://paste.lisp.org/new/scheme and enter your paste. 06:42:11 I guess I can take your word for it though eli. 06:42:16 Daemmerung pasted "How to invert a bitmap" at http://paste.lisp.org/display/68356 06:42:45 synx: It works, period. If you're going to not believe basic performance then feel free to rewriting your code, and I'll get back to rolling my eyes. 06:43:34 I have replaced all the conses in my program with length-2 vectors because I don't want to end up with a slow program. 06:44:39 eli: I can't believe basic performance, because I haven't spent hours making a working program yet to test it with. What examples I've tried work pretty good though. All I have to do is not screw up and do differently. 06:45:42 Daemmerung: Thanks! I'll copy that function for use later. 06:45:46 For now it's getting late... 06:45:52 synx: in that case, there's a bunch of stuff that you should be doing, for example, what Daemmerung said. 06:46:01 (And that's true in every language.) 06:46:52 Hey if I can get 60fps, then I have no bones to pick with you at all. 06:48:17 synx: ... and that's *exactly* my point -- worry about performance when you need to. 06:49:37 It's like when I was 13 I had a C64. I implemented a "Snake" game on it (in assembly) -- spent some time to make the movement very efficient, but when I ran it it was too fast to register on the screen... Good lesson in premature optimization. 06:50:26 I won't ignore performance if I see a way to improve it, just because of the fear of premature optimization. 06:50:43 At the same time I won't waste my time trying to optimize stuff. I think that's what you're trying to get me to do. 06:52:10 That's what I'm trying to get you to not do. Spend your time on real stuff. Don't even think about optimization. Especially when you don't know enough to have a good guess at how much things cost. 06:52:56 No I meant you're trying to get me not to waste time on optimizing. 06:53:20 Though in truth you're wasting a lot of time trying to convince me to stop thinking. 06:53:35 It's a lost cause I'm afraid. 06:53:47 synx: you're about to get cut off here. 06:54:50 shut up i'm trying to agree with eli 06:55:01 *Daemmerung* laughs 06:55:55 synx: he's right. My argument "don't optimize, you're wasting your time"; your ("counter") argument: "don't try to make me a better hacker, you're wasting your time". 06:56:14 So, ok -- you convinced me. I'll get back to taking care of my own students. 06:56:24 *eli* rolls his eyes 06:56:49 I was just objecting to you telling me not to "think" about optimizing. :3 It's like thinking about monkeys, the more you tell people to not do it, the more they do... 06:57:04 *Daemmerung* thinks of monkeys 06:57:08 Damn you. 06:57:15 *Daemmerung* thinks of more monkeys 06:57:23 *Jarvellis* thinks of flying monkeys 06:57:50 *eli* rolls his eyes 06:57:54 synx: he's not telling you not to optimize. He's telling you not to prematurely optimize. You currently are kind of clueless. 06:58:55 Just take a deep breath, count to NaN, and get back to the optim. a little later, ok? Now is not the time. 06:59:02 I'll optimize whenever I goddamn want to yer. 06:59:28 Goddamn, boy, you got the right attitude. Have a beer. 06:59:59 woo hoo Oktoberfest 07:00:16 Damn you. 07:00:22 *Daemmerung* leaves in search of same 07:02:01 hotblack23 [n=jh@p5B0578F3.dip.t-dialin.net] has joined #scheme 07:02:05 if you optimize too early you risk not finding problems in your design or makes it incredibly hard to fix without rethinking/redoing the optimizations. So you may up wasting time doing optimization for stuff not even needed. 07:02:49 unless the optimization is a clear as daylight to you, dont bother with it 07:13:46 mr_ank [n=ank@220-244-42-72.static.tpgi.com.au] has joined #scheme 07:55:28 -!- papermachine [n=Eien@61.152.106.169] has quit [Remote closed the connection] 08:01:58 papermachine [n=Eien@61.152.106.169] has joined #scheme 08:08:52 -!- papermachine [n=Eien@61.152.106.169] has quit [Remote closed the connection] 08:27:15 papermachine [n=Eien@61.152.106.169] has joined #scheme 08:29:16 -!- hotblack23 [n=jh@p5B0578F3.dip.t-dialin.net] has quit [Read error: 60 (Operation timed out)] 09:14:23 xhanjian [n=Jan@218.109.76.46] has joined #scheme 09:19:31 fff_fff [i=ca01c41a@gateway/web/ajax/mibbit.com/x-01c42011cd1f0836] has joined #scheme 09:23:47 xerox [n=xerox@unaffiliated/xerox] has joined #scheme 09:32:04 slom [n=slom@pD9EB6B02.dip.t-dialin.net] has joined #scheme 09:32:05 -!- cubix [n=cubix@CPE0013100506c1-CM001692411b42.cpe.net.cable.rogers.com] has quit [Read error: 104 (Connection reset by peer)] 09:42:11 cubix [n=cubix@CPE0013100506c1-CM001692411b42.cpe.net.cable.rogers.com] has joined #scheme 09:43:02 -!- yhara [n=yhara@84.215.12.221.megaegg.ne.jp] has quit [Read error: 110 (Connection timed out)] 09:44:53 -!- xwl [n=user@221.221.145.203] has quit [Connection timed out] 10:01:21 -!- papermachine [n=Eien@61.152.106.169] has quit ["Leaving"] 10:05:08 -!- xhanjian [n=Jan@218.109.76.46] has quit [Read error: 113 (No route to host)] 10:31:30 -!- fff_fff [i=ca01c41a@gateway/web/ajax/mibbit.com/x-01c42011cd1f0836] has quit ["http://www.mibbit.com ajax IRC Client"] 10:32:19 Nshag [i=user@Mix-Orleans-105-1-102.w193-250.abo.wanadoo.fr] has joined #scheme 10:32:48 -!- slom [n=slom@pD9EB6B02.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 10:40:09 gigabytes [n=gigabyte@79.0.238.31] has joined #scheme 10:45:49 kryptos23 [n=kryptos@freenet/developer/kryptos] has joined #scheme 10:46:01 xhanjian [n=Jan@218.109.76.46] has joined #scheme 10:46:24 besiria [n=user@ppp083212086100.dsl.uom.gr] has joined #scheme 10:51:19 -!- elmex [n=elmex@e180065091.adsl.alicedsl.de] has quit [Remote closed the connection] 11:01:23 -!- dnm [n=dnm@cpe-67-246-46-208.nycap.res.rr.com] has quit [Read error: 60 (Operation timed out)] 11:16:41 -!- xhanjian [n=Jan@218.109.76.46] has quit [Read error: 113 (No route to host)] 11:19:28 yhara [n=yhara@84.215.12.221.megaegg.ne.jp] has joined #scheme 11:19:29 -!- yhara [n=yhara@84.215.12.221.megaegg.ne.jp] has quit [Client Quit] 11:23:52 peter_ [n=sjamaan@frohike-old.xs4all.nl] has joined #scheme 11:24:32 -!- peter_ is now known as sjamaan 11:30:01 ejs_ [n=eugen@94.178.50.156] has joined #scheme 11:36:11 AshyIsMe [n=User@b415.adsl.ecomtel.com.au] has joined #scheme 11:38:25 -!- besiria [n=user@ppp083212086100.dsl.uom.gr] has quit [Read error: 104 (Connection reset by peer)] 11:51:58 hotblack23 [n=jh@p5B056BB2.dip.t-dialin.net] has joined #scheme 11:54:14 allnmymind [n=user@bas3-ottawa10-1279680047.dsl.bell.ca] has joined #scheme 11:55:36 -!- gigabytes [n=gigabyte@79.0.238.31] has quit [] 12:00:02 puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has joined #scheme 12:20:28 -!- ejs_ [n=eugen@94.178.50.156] has quit [Read error: 104 (Connection reset by peer)] 12:23:38 ejs [n=eugen@13-153-124-91.pool.ukrtel.net] has joined #scheme 12:23:53 -!- ejs is now known as ejs0 12:27:13 besiria [n=user@ppp083212086100.dsl.uom.gr] has joined #scheme 12:35:35 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [Read error: 104 (Connection reset by peer)] 12:36:11 Adamant [n=Adamant@c-98-244-152-196.hsd1.ga.comcast.net] has joined #scheme 12:36:44 allnmymi` [n=user@bas3-ottawa10-1279680047.dsl.bell.ca] has joined #scheme 13:03:15 brandelune [n=JC@pl176.nas934.takamatsu.nttpc.ne.jp] has joined #scheme 13:21:20 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [Read error: 113 (No route to host)] 13:34:53 ttmrichter [n=ttmricht@221.235.61.159] has joined #scheme 13:52:30 -!- MichaelRaskin_ [n=raskin@gwh-1-177-mytn23k1.ln.rinet.ru] has quit [Read error: 110 (Connection timed out)] 13:54:10 MichaelRaskin_ [n=raskin@gwh-1-177-mytn23k1.ln.rinet.ru] has joined #scheme 13:58:18 xhanjian [n=Jan@218.109.76.46] has joined #scheme 14:12:36 -!- besiria [n=user@ppp083212086100.dsl.uom.gr] has quit [Read error: 110 (Connection timed out)] 14:16:16 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 14:22:04 -!- grnman [n=grnman@c-76-110-165-179.hsd1.fl.comcast.net] has quit [Read error: 110 (Connection timed out)] 14:30:05 -!- jgracin [n=jgracin@82.193.208.195] has quit [Remote closed the connection] 14:38:52 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 14:39:00 annodomini [n=lambda@c-75-69-95-99.hsd1.nh.comcast.net] has joined #scheme 14:43:19 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 15:09:10 -!- hiyuh [n=hiyuh@KD125054017176.ppp-bb.dion.ne.jp] has quit ["|_ e /\ \/ i |/| G"] 15:09:43 -!- allnmymind [n=user@bas3-ottawa10-1279680047.dsl.bell.ca] has quit [Read error: 110 (Connection timed out)] 15:10:27 -!- allnmymi` [n=user@bas3-ottawa10-1279680047.dsl.bell.ca] has quit [Read error: 110 (Connection timed out)] 15:12:17 hiyuh [n=hiyuh@KD125054017176.ppp-bb.dion.ne.jp] has joined #scheme 15:12:17 -!- ttmrichter [n=ttmricht@221.235.61.159] has quit [Connection timed out] 15:13:07 -!- hotblack23 [n=jh@p5B056BB2.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 15:19:59 nekyrebul [n=pear@193.43.249.169] has joined #scheme 15:31:07 cracki [n=cracki@sglty.kawo2.RWTH-Aachen.DE] has joined #scheme 15:37:59 -!- ejs0 [n=eugen@13-153-124-91.pool.ukrtel.net] has quit [Read error: 110 (Connection timed out)] 15:38:53 dnm [n=dnm@cpe-67-246-46-208.nycap.res.rr.com] has joined #scheme 15:39:24 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 15:40:25 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 15:44:37 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 15:44:59 hkBst [n=hkBst@gentoo/developer/hkbst] has joined #scheme 15:45:31 jgracin [n=jgracin@82.193.208.195] has joined #scheme 16:08:30 kryptos23_ [n=kryptos@59.92.60.7] has joined #scheme 16:11:23 ak70 [n=ak70@195.158.90.55] has joined #scheme 16:15:30 ejs_ [n=eugen@94.178.55.43] has joined #scheme 16:18:14 GreyLensman [n=ray@c-76-108-235-51.hsd1.fl.comcast.net] has joined #scheme 16:23:47 -!- Mr_Awesome [n=eric@pool-98-115-39-126.chi01.dsl-w.verizon.net] has quit [Read error: 110 (Connection timed out)] 16:26:17 -!- kryptos23 [n=kryptos@freenet/developer/kryptos] has quit [Connection timed out] 16:27:57 umis [n=umis@prudent-gloryer.volia.net] has joined #scheme 16:29:10 tizoc [n=user@r190-135-36-233.dialup.adsl.anteldata.net.uy] has joined #scheme 16:36:02 ivarrefsdal [n=ivarrefs@sos1-1x-dhcp072.studby.uio.no] has joined #scheme 16:44:01 besiria [n=user@ppp083212084127.dsl.uom.gr] has joined #scheme 16:46:56 -!- tizoc_ [n=user@r190-135-27-145.dialup.adsl.anteldata.net.uy] has quit [Read error: 110 (Connection timed out)] 16:50:19 -!- GreyLensman [n=ray@c-76-108-235-51.hsd1.fl.comcast.net] has left #scheme 16:56:50 replor [n=replor@ntkngw375028.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 16:58:52 -!- nekyrebul [n=pear@193.43.249.169] has quit [Remote closed the connection] 16:59:50 vygy [n=pear@193.43.249.169] has joined #scheme 17:01:12 -!- dnm [n=dnm@cpe-67-246-46-208.nycap.res.rr.com] has quit [Read error: 60 (Operation timed out)] 17:01:15 -!- ejs_ [n=eugen@94.178.55.43] has quit ["Ex-Chat"] 17:01:19 schmalbe [n=bernhard@p549A155C.dip0.t-ipconnect.de] has joined #scheme 17:02:03 vorpal [n=rhunter@pdpc/supporter/student/vorpal] has joined #scheme 17:03:31 rudybot: waah 17:03:38 rudybot: version 17:03:39 offby1: 2604469 17:07:28 kaaah [n=karim@joondalup.davromaniak.eu] has joined #scheme 17:12:30 Paraselene__ [n=None@79-68-228-157.dynamic.dsl.as9105.com] has joined #scheme 17:14:28 borism [n=boris@195-50-206-125-dsl.krw.estpak.ee] has joined #scheme 17:20:02 melito [n=melito@128.54.60.28] has joined #scheme 17:21:37 dnm [n=dnm@cpe-67-246-46-208.nycap.res.rr.com] has joined #scheme 17:23:27 hemulen [n=hemulen@70.158.103.10] has joined #scheme 17:24:24 -!- hemulen is now known as hemulen_airport 17:28:30 wastrel [n=wastrel@nylug/member/wastrel] has joined #scheme 17:30:02 -!- sladegen [n=nemo@unaffiliated/sladegen] has quit [Nick collision from services.] 17:30:11 sladegen [n=nemo@unaffiliated/sladegen] has joined #scheme 17:34:53 -!- hemulen_airport [n=hemulen@70.158.103.10] has quit ["He rode off into the sunset. . ."] 17:43:16 -!- schmalbe [n=bernhard@p549A155C.dip0.t-ipconnect.de] has quit [Remote closed the connection] 17:47:55 ecraven [n=nex@plc31-103.linzag.net] has joined #scheme 17:48:03 -!- ak70 [n=ak70@195.158.90.55] has left #scheme 18:05:21 bpt [n=bpt@cpe-071-070-209-067.nc.res.rr.com] has joined #scheme 18:08:42 -!- vygy [n=pear@193.43.249.169] has quit [Remote closed the connection] 18:12:00 lywul [n=pear@193.43.249.169] has joined #scheme 18:23:09 bombshelter13 [n=bombshel@209-161-240-8.dsl.look.ca] has joined #scheme 18:29:10 -!- vorpal [n=rhunter@pdpc/supporter/student/vorpal] has quit ["The incensed priests...continued to raise their voices, vituperating each other in bad Latin"] 18:33:37 yhara [n=yhara@84.215.12.221.megaegg.ne.jp] has joined #scheme 18:35:09 melito_ [n=melito@0-1e-c2-ac-65-6d.dynamic.ucsd.edu] has joined #scheme 18:35:27 -!- melito [n=melito@128.54.60.28] has quit [Read error: 104 (Connection reset by peer)] 18:40:30 saccade_ [n=saccade@18.188.72.23] has joined #scheme 18:42:12 grettke [n=grettke@CPE-65-31-132-59.wi.res.rr.com] has joined #scheme 18:49:22 GoNoGo [n=GoNoGo@cro34-3-82-236-93-215.fbx.proxad.net] has joined #scheme 18:57:47 hotblack23 [n=jh@p5B05678C.dip.t-dialin.net] has joined #scheme 18:59:24 -!- besiria [n=user@ppp083212084127.dsl.uom.gr] has quit [Remote closed the connection] 19:03:35 -!- grettke [n=grettke@CPE-65-31-132-59.wi.res.rr.com] has quit [] 19:03:52 kilimanjaro [n=kilimanj@70.116.95.163] has joined #scheme 19:04:02 -!- carlf [i=carlf@photocarl.org] has left #scheme 19:16:16 cdehaan [n=Cody@urwireless-dhcp-128-151-25-74.wireless.rochester.edu] has joined #scheme 19:22:04 Hello! I am creating a function that recursively operates on a parenthesized list such as ("E" ("T" ("F" "a") ("FT")) ("TT" ("ao" "+") ("T" ("F" "b") ("FT")) ("TT")))... what can I do when I get to ("FT""), for example, and want to make sure there isn't a second element, but caar("FT") is giving me an error? 19:23:39 You can't use caar on a list that does not contain a list 19:23:48 (caar x) <=> (car (car x)) 19:24:07 OceanSpray [n=karl@LEMON.RES.CMU.EDU] has joined #scheme 19:27:57 -!- xerox [n=xerox@unaffiliated/xerox] has left #scheme 19:29:17 Right, so how does one usually work around that/ 19:29:34 By adding a (list? ...) test perhaps 19:29:53 (or a PAIR? test if you're concerned about performance) 19:30:23 Hm ok 19:30:28 -!- errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has quit [Connection reset by peer] 19:30:33 It depends on the situation 19:30:42 Sometimes just rearranging COND clauses is enough 19:33:32 -!- ivarrefsdal [n=ivarrefs@sos1-1x-dhcp072.studby.uio.no] has quit [] 19:34:26 Hm, OK 19:34:32 Looks like I'll have to rethink this 19:37:36 Mr_Awesome [n=eric@pool-72-69-243-9.chi01.dsl-w.verizon.net] has joined #scheme 19:37:43 paste your code! 19:39:13 Current: http://pastebin.ca/1225308 19:41:09 gigabytes [n=gigabyte@host208-232-dynamic.2-87-r.retail.telecomitalia.it] has joined #scheme 19:41:17 offby1 pasted "cdehaan: how I'd do it" at http://paste.lisp.org/display/68382 19:42:00 hm, what I pasted won't quite help you. 19:42:39 Heh 19:43:14 -!- umis [n=umis@prudent-gloryer.volia.net] has quit [] 19:43:52 errordeveloper [n=errordev@78-86-1-110.zone2.bethere.co.uk] has joined #scheme 19:43:53 fschwidom [n=fschwido@dslb-084-059-250-034.pools.arcor-ip.net] has joined #scheme 19:45:08 ok, I've updaed http://pastebin.ca/1225309 with something that might actually be useful 19:45:59 Hm, "define: not allowed in an expression context" 19:46:11 what scheme are you using? 19:46:28 I was using a recent PLT scheme, and didn't think to make it portable 19:46:28 DrScheme 4.1 19:46:34 hm, that's the same thing! 19:46:36 lemme try 19:46:44 I could be doing something wrong, I'm no expert 19:46:44 what language level? 19:47:12 R5RS 19:47:14 ah. 19:47:18 switch to "module" language. 19:47:22 heh 19:47:23 that's what all the cool kids use 19:47:50 haha 19:48:34 although really there's only two changes you need to make to get it to work in R5RS: 1) nix the "#lang scheme" line at the top; and 2) change "string-downcase" to something that's defined in R5RS, like "values" 19:49:52 string->symbol is also interesting. 19:51:50 Hm, OK, i'm looking through this to figure it out 19:52:33 Why are you passing "string-downcase" through? 19:53:41 -!- melito_ [n=melito@0-1e-c2-ac-65-6d.dynamic.ucsd.edu] has quit [Read error: 110 (Connection timed out)] 19:57:32 cdehaan: that function is like a map for trees. So the call evaluates string-downcase on each element of the tree and returns the tree of the values that gives. 20:00:36 -!- xhanjian [n=Jan@218.109.76.46] has quit ["WeeChat 0.2.6"] 20:01:39 cdehaan: I wrote the stuff without paying much attention to what you were actually doing. So I assumed that you wanted to call a function on each string (which as it turns out really isn't the case). I didn't know what function you had in mind, so I just picked string-downcase as an example. 20:01:51 OK 20:02:04 Once I realized what you had in mind, I made just the bare minimum changes to my stuff to match what (I thought) you wanted, but I kept that string-downcase thing there. 20:02:15 hi 20:03:04 wastrel: that's what they all say ... at first 20:03:28 -!- saccade_ [n=saccade@18.188.72.23] has quit ["Leaving"] 20:03:39 then they say "Go back to bed grandpa!" 20:03:40 which should i learn, scheme or python? 20:03:56 python of course 20:04:04 What did you think we would say in #scheme? 20:04:06 wastrel: both! 20:04:16 wastrel: I also recommend you learn to bake 20:04:26 Good advice, that 20:04:32 minion: advice for wastrel 20:04:32 wastrel: #11952: In my experience that is a bad strategy, because the people who ask such questions are the ones who paste the answer into their program without understanding it and then complain that it `does not work'. 20:04:36 you see people using python all over the place but nobody really uses scheme 20:05:20 wastrel: A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects. -Lazarus Long, Time Enough For 20:05:20 Love 20:05:41 valiza1 [n=haroldo@r190-134-186-161.dialup.adsl.anteldata.net.uy] has joined #scheme 20:05:42 wastrel: that's because python is more useful. 20:05:48 *offby1* whistles innocently 20:05:59 yeah, Scheme is useless 20:06:21 o_O 20:06:24 a pertinent snippet from #emacs: 20:06:27 wastrel: for what purpose would you learn python or scheme? 20:06:30 ,salespitch [13:06] 20:06:32 We aren't gonna lie. Emacs sucks. Some of us tolerate it, but we can't tell you if YOU'LL be able to. Try it and make up your own mind. 20:06:38 -!- gweiqi [n=greg@69.120.126.163] has left #scheme 20:06:42 heh 20:06:57 offby1: never really liked heinlein 20:07:13 I never really liked Sci-Fi in general, but I thought that quote was apt. 20:07:16 saccade_ [n=saccade@dhcp-18-188-72-23.dyn.mit.edu] has joined #scheme 20:07:45 offby1 is disappointed in sci-fi, all that talk of flying cars in the 1900s really put him off 20:07:52 heh! 20:08:03 flying cars are bullshit 20:08:04 mbishop: don't deny you feel the same way! 20:08:15 too many fatal failure modes 20:10:57 -!- bombshelter13 [n=bombshel@209-161-240-8.dsl.look.ca] has quit [Client Quit] 20:11:30 bombshelter13 [n=bombshel@209-161-240-8.dsl.look.ca] has joined #scheme 20:14:57 -!- bombshelter13 [n=bombshel@209-161-240-8.dsl.look.ca] has quit [Client Quit] 20:15:04 bombshelter13 [n=bombshel@209-161-240-8.dsl.look.ca] has joined #scheme 20:21:39 offby1: I have this working now, thanks for your help! 20:21:40 -!- yhara [n=yhara@84.215.12.221.megaegg.ne.jp] has quit ["Leaving..."] 20:23:49 melito [n=melito@0-1e-c2-ac-65-6d.dynamic.ucsd.edu] has joined #scheme 20:25:06 hkBst: thanks i'm just goofing around :] 20:25:32 -!- hkBst [n=hkBst@gentoo/developer/hkbst] has quit [Read error: 104 (Connection reset by peer)] 20:30:19 yhara [n=yhara@84.215.12.221.megaegg.ne.jp] has joined #scheme 20:30:53 -!- cdehaan [n=Cody@urwireless-dhcp-128-151-25-74.wireless.rochester.edu] has quit [] 20:31:56 Flying cdrs, now-- that's where it's at. 20:31:57 -!- cubix [n=cubix@CPE0013100506c1-CM001692411b42.cpe.net.cable.rogers.com] has quit [Read error: 104 (Connection reset by peer)] 20:36:42 Adamant [n=Adamant@c-98-244-152-196.hsd1.ga.comcast.net] has joined #scheme 20:41:14 cubix [n=cubix@CPE0013100506c1-CM001692411b42.cpe.net.cable.rogers.com] has joined #scheme 20:42:58 op3c [n=op3c@p5B2AD2AF.dip.t-dialin.net] has joined #scheme 20:43:58 -!- op3c [n=op3c@p5B2AD2AF.dip.t-dialin.net] has quit [Client Quit] 20:46:59 -!- jgracin [n=jgracin@82.193.208.195] has quit [Remote closed the connection] 20:47:19 melito_ [n=melito@0-1e-c2-ac-65-6d.dynamic.ucsd.edu] has joined #scheme 20:47:21 -!- melito [n=melito@0-1e-c2-ac-65-6d.dynamic.ucsd.edu] has quit [Read error: 104 (Connection reset by peer)] 20:49:30 *leppie* hates ./configure on Cygwin :( 21:06:57 -!- gigabytes [n=gigabyte@host208-232-dynamic.2-87-r.retail.telecomitalia.it] has quit [] 21:19:45 -!- araujo [n=araujo@gentoo/developer/araujo] has quit ["Leaving"] 21:20:28 -!- GoNoGo [n=GoNoGo@cro34-3-82-236-93-215.fbx.proxad.net] has quit ["ChatZilla 0.9.83 [Firefox 3.0.3/2008092417]"] 21:22:24 -!- yhara [n=yhara@84.215.12.221.megaegg.ne.jp] has quit ["Leaving..."] 21:30:26 -!- elias` [n=me@unaffiliated/elias/x-342423] has quit [Read error: 145 (Connection timed out)] 21:30:36 -!- puchacz [n=puchacz@87-194-5-99.bethere.co.uk] has quit [Remote closed the connection] 21:34:50 kazzmir__ [n=kazzmir@c-98-202-86-149.hsd1.ut.comcast.net] has joined #scheme 21:35:50 -!- kazzmir_ [n=kazzmir@c-98-202-86-149.hsd1.ut.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 21:39:30 -!- lywul [n=pear@193.43.249.169] has quit [Remote closed the connection] 21:40:27 elias` [n=me@unaffiliated/elias/x-342423] has joined #scheme 21:43:18 -!- hotblack23 [n=jh@p5B05678C.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 21:47:14 w/ 2 21:47:16 oops! 21:47:42 puqur [n=pear@193.43.249.169] has joined #scheme 21:47:48 zxcvbs [n=sadf@201.250.42.138] has joined #scheme 21:48:47 mefistofeles [n=Tathar@unaffiliated/mefistofeles] has joined #scheme 21:49:24 -!- mefistofeles [n=Tathar@unaffiliated/mefistofeles] has left #scheme 21:49:44 hi, anyone can helpme with some basics of gnu scheme? 21:50:07 What is `gnu scheme', precisely? 21:50:20 mit gnu scheme 21:50:28 not mzscheme 21:50:39 OK. Usually that's called either `MIT Scheme' or `MIT/GNU Scheme', and never just `GNU Scheme'. 21:51:00 currently i am reading Simply Scheme Introducing Computer Science 21:51:47 but when come to use functions.scm, i cant, 21:52:28 What happens when you try, and what is `functions.scm'? 21:53:08 functions.scm simply.scm are libraries from the book, that dont work really well, with drscheme or mit/scheme 21:53:24 Where do I find them? 21:53:54 http://www.eecs.berkeley.edu/~bh/downloads/simply/ 21:54:17 So what happens when you try? 21:54:27 For that matter, what exactly are you trying? 21:54:33 i was interesed in the way of teaching of this book rather than reading syntax books. 21:54:56 In general, when describing a technical problem, you need to specify (1) exactly what you typed, (2) exactly what you saw, and (3) exactly what you expected to see. 21:55:01 tryng to use / loads well, this libs on drscheme, or mitscheme 21:55:25 Yes i know, will go to drscheme, and mitscheme to paste 21:55:32 lisppaste: url 21:55:32 To use the lisppaste bot, visit http://paste.lisp.org/new/scheme and enter your paste. 21:55:43 If you need to paste output or a transcript of interaction, use lisppaste. 21:56:00 -!- ecraven [n=nex@plc31-103.linzag.net] has quit ["bbl"] 21:57:05 -!- puqur [n=pear@193.43.249.169] has quit [Remote closed the connection] 21:57:56 podarexyg [n=pear@193.43.249.169] has joined #scheme 22:04:50 ttmrichter [n=ttmricht@59.172.140.193] has joined #scheme 22:07:00 zxcvbs pasted "MIT Scheme/DrScheme" at http://paste.lisp.org/display/68391 22:09:03 what windows (i am in my family house) interpreter, can i use to follow well this examples? 22:09:16 kryptos23__ [n=kryptos@59.92.60.7] has joined #scheme 22:09:37 Take DrScheme and set its language to R5RS. 22:09:47 -!- kryptos23__ is now known as kryptos23 22:10:01 yes i set it that way, but same about loading simply.scm 22:13:17 -!- sm [n=sm@pool-71-107-249-212.lsanca.dsl-w.verizon.net] has quit [Read error: 110 (Connection timed out)] 22:15:39 -!- podarexyg [n=pear@193.43.249.169] has quit [Remote closed the connection] 22:15:47 -!- ttmrichter [n=ttmricht@59.172.140.193] has quit ["Ex-Chat"] 22:16:17 ttmrichter [n=ttmricht@59.172.140.193] has joined #scheme 22:16:39 qywedywo [n=pear@193.43.249.169] has joined #scheme 22:17:40 -!- Nshag [i=user@Mix-Orleans-105-1-102.w193-250.abo.wanadoo.fr] has quit ["Quitte"] 22:20:30 GreyLensman [n=ray@c-76-108-235-51.hsd1.fl.comcast.net] has joined #scheme 22:20:35 -!- GreyLensman [n=ray@c-76-108-235-51.hsd1.fl.comcast.net] has left #scheme 22:22:27 -!- vega__ [i=vegard@85.252.211.23] has quit [Read error: 110 (Connection timed out)] 22:24:44 Interesting. I would have assumed that R5RS would allow mutation of top-level predef'd variables. Anyway, try the directions in http://hkn.eecs.berkeley.edu/~dyoo/cs3/simply-scheme/. 22:24:46 araujo [n=araujo@gentoo/developer/araujo] has joined #scheme 22:24:56 -!- qywedywo [n=pear@193.43.249.169] has quit [K-lined] 22:25:24 Why would it, Daemmerung? 22:25:40 The semantics of assignment to variables not defined in the program is not specified. 22:26:37 arcfide [n=arcfide@99.137.201.22] has joined #scheme 22:27:18 -!- kryptos23_ [n=kryptos@59.92.60.7] has quit [Read error: 110 (Connection timed out)] 22:29:02 -!- fschwidom [n=fschwido@dslb-084-059-250-034.pools.arcor-ip.net] has quit [Remote closed the connection] 22:29:25 fschwidom [n=fschwido@dslb-084-059-250-034.pools.arcor-ip.net] has joined #scheme 22:30:54 Thanks now it works, followed the steps in v300+ http://hkn.eecs.berkeley.edu/~dyoo/cs3/simply-scheme/ 22:34:22 If I had a dollar for every time you've sent me nosing into section 7 of R5RS, Riastradh, I'd be eating lobster tonight. 22:35:04 Where I'm from, lobsters are a dime a dozen, but I don't eat the insects anyway... 22:35:43 Oh, Lobster, bad Daemmerung, making my mouth water for food which is far beyond my current budget. 22:35:57 Where I'm at, the fuel cost for importing them makes them quite the luxury. 22:37:36 *arcfide* just eats chunks of ham and eggs, with stir fried veggies. 22:38:03 Better for you than the palmetto bug of the sea, anyway. 22:38:41 *Daemmerung* leaves for the kitchen to prep something other than lobster 22:44:39 lelf [n=Lelf@217.118.90.112] has joined #scheme 22:49:47 OverNord [n=OverNord@dyndsl-091-096-094-073.ewe-ip-backbone.de] has joined #scheme 22:50:03 -!- fschwidom [n=fschwido@dslb-084-059-250-034.pools.arcor-ip.net] has quit [Remote closed the connection] 22:55:55 -!- OverNord [n=OverNord@dyndsl-091-096-094-073.ewe-ip-backbone.de] has left #scheme 23:00:24 i have a function that returns six values by continuation via VALUES; in general, would it be more efficient to use a list or record than VALUES? 23:02:56 klutometis: Given an effecient implementation, VALUES is a good way, IF it makes sense to use VALUES. 23:03:02 klutometis: the better question is which makes the most sense from the usage point of view. 23:03:10 In other words, are these values disjoint and really separate values, or are they really meant to be treated as a list, or are they really components of a data-structure like a record? 23:03:20 Use whichever is more meaningful. 23:03:21 they're all roughly orthogonal; a record or list would be a forced association 23:03:44 klutometis, if they are not associated reasonably with lists or records, then use values; it makes more sense. 23:03:57 klutometis, is your program made clearer by using multiple return values? 23:04:45 It prevents me from defining an artificial record type which may be incoherent. 23:06:06 Specifically, a call to KEPLER returns the {x, y, z}-ecliptics of a planet, its right ascension and declination. 23:06:24 The ecliptics might be grouped together, come to think of it; and maybe the whole shebang. 23:06:48 In a novel "kepler" record. 23:07:12 I never fully understood that argument -- when using multiple return values you there is some inherent structure even though you choose not to name it. I mean, if you have a procedure which returns multiple values, and you have to write documentation describing the procedure's use, I think you would see that there is some structure, and VALUES is just a convenience 23:07:49 errm, I did a bit of surgery on that sentence but I hope you understand what I am saying 23:08:22 fschwidom [n=fschwido@dslb-084-059-250-034.pools.arcor-ip.net] has joined #scheme 23:08:36 kilimanjaro: Mutliple return values make plenty of sense with respect to clarity when you really do have separate pieces of data that should be treated separately. 23:08:45 arcfide, can you give an example? 23:08:59 -!- fschwidom [n=fschwido@dslb-084-059-250-034.pools.arcor-ip.net] has quit [Read error: 104 (Connection reset by peer)] 23:10:00 kilimanjaro: Recently I was doing clustering. One procedure I called walked down a set of data structures and performed various interconnected operations on that structure to finally arrive at an answer. Having done this, it was important to return both that answer, and the other results that were passed by. 23:10:14 It was a BEST and REST type of result. 23:10:37 It made more sense to have multiple values than to have a list whose head was the best, and whose tail contained an unordered assortment of the REST. 23:10:49 It improved the clarity of the code. 23:11:19 It also made more sense than performing the two operations using two procedure calls, because I was performing on operation on the data, and two procedures would have been very unnatural. 23:11:23 But it is just a convenience to avoid having to define a record type 23:12:04 kilimanjaro: Why does a record make sense here? 23:12:09 Could it be that VALUES are to record-types what LAMBDA is to a named procedure? 23:12:15 I'm not arguing that it isn't clearer than returning everything in a list, just that it is silly to say that there is no relationship between the returned values. There is one, and it could be expressed clearly in a record structure, but it would be a hassle to do so 23:12:35 I don't think records would have been clearer. 23:13:02 The data was not meant to be passed around as one piece. In fact, the data was passed around as two separate units, used in two different places in the code after the procedure returned them. 23:13:18 Records are for grouping related data into a single object to be treated as a single object. 23:13:43 Records create abstract data types, whereas I did not have some abstract data type, unless you want to consider a returned value to be an abstract type in itself. 23:14:06 the data is related, it's data necessary for you to perform your computation, there is an implicit relationship when you have two pieces of data returned by a procedure, the only thing you have done is avoid explicitly naming this relationship 23:14:36 you even named them yourself: BEST and REST 23:14:44 There is a relationship, but they are really still separate pieces of data. Every variable and every returned value in a program is related by the nature of it being in the same program. 23:14:46 but it would be a hassle to have to use a record for something so trivial 23:15:16 kilimanjaro: that's why i think the lambda/procedure analogy applies (even though the mechanism is different) 23:15:22 -!- lelf [n=Lelf@217.118.90.112] has quit ["used jmIrc"] 23:15:35 -!- bombshelter13 [n=bombshel@209-161-240-8.dsl.look.ca] has quit ["Where is the glory in complying with demands?"] 23:15:46 klutometis: I don't follow that analogy. 23:15:47 klutometis, sure, although I think you could make the same analogy for tuple vs record 23:16:50 kilimanjaro: Another example, from the same code, is when I had to return two results, a stage or history data structure, and a set of clusters. 23:17:17 vega_ [i=vegard@cpe-211-23.vktv.no] has joined #scheme 23:17:34 The data is related, in some way, yes, but it would make little sense to artificially make some record type that represents "Computational Result of Looping and creating clustering hierarchies." 23:18:06 arcfide: sometimes the activitation energy required to name a structure exceeds the utility of nomination 23:18:17 klutometis, precisely 23:18:32 What utility would a record type in this instance have over VALUES? 23:18:43 My point is that it serves no purpose. 23:18:52 In fact, I would say that it obfuscates things. 23:18:58 none; if it's inconvenient: that's my point 23:19:14 arcfide, i'm not arguing for utility, I am arguing against the claim that the data values returned by VALUES is somehow logically isolated from eachother 23:19:29 s/is/are 23:19:59 I am arguing that they are isolated enough to make the use of grouping constructs like records to be the *wrong* way of doing it, not just an inconvenient way. 23:20:04 I have never abstained from using VALUES when I found it convenient, but I only used it for convenience 23:20:09 -!- melito_ [n=melito@0-1e-c2-ac-65-6d.dynamic.ucsd.edu] has quit [] 23:20:29 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 23:21:02 arcfide, sure, if you name everything it is inconvenient and overwhelming, I think that is half the reason why people like syntax-rules for the sort of macros where that style of pattern matching is convenient 23:21:19 My point is that when presented with the options of record or other aggregate structures, and values, considering the type of data I was working with, it would be wrong, at least on some level more significant than convenience to use records or other structures to group relatively disjoint data types. 23:22:08 Though, by convenience you could be meaning what I just said. 23:22:27 When I say convenience, I think of things like #' or ` for quasiquote. 23:22:40 maybe there exists a utility function for named vs. anonymous structures; and someone could do a decision theoretic analysis on the expected utility of naming something 23:23:54 klutometis: My rule of thumb is to avoid explicitely identifying any implicit structure in code where the code does not make explicit use of that underlying structure. 23:28:27 Thinking about it, VALUES could be used in a situation where the relationship between the multiple values is transient. You mentioned that you had a primary datum you were interested, and then associated crap that was just necessary for the computation (and was irrelevent later). A record type would almost give too much recognition to the junk data that you need merely due to implementation details. 23:29:08 But there are also times where VALUES is used merely as a convenience, and I don't have a problem with that either. Boxing and unboxing stuff is a hassle 23:38:15 hemulen [n=hemulen@12-187-217-2.att-inc.com] has joined #scheme 23:38:35 -!- hemulen [n=hemulen@12-187-217-2.att-inc.com] has quit [Remote closed the connection] 23:40:15 kryptos23__ [n=kryptos@59.92.60.7] has joined #scheme 23:42:14 -!- saccade_ [n=saccade@dhcp-18-188-72-23.dyn.mit.edu] has quit ["This computer has gone to sleep"] 23:46:37 kilimanjaro: Mostly, when the two values really are treated separately, I think they should be returned separately. As for convenience, I can see why some code might want to use it for convenience, but I would hope that in doing so, they would not remove clarity. 23:47:14 If you have to keep unboxing stuff, then maybe somethings wrong, but if you have to keep boxing stuff up because of multiple return values, then maybe something is wrong. 23:48:02 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [] 23:48:23 -!- jonrafkind [n=jon@c-98-202-86-149.hsd1.ut.comcast.net] has quit [Read error: 60 (Operation timed out)] 23:53:14 r5rs gcd 23:53:15 http://www.schemers.org/Documents/Standards/R5RS/HTML/r5rs-Z-H-9.html#%_idx_294 23:53:16 -rudybot:#scheme- http://tinyurl.com/3ummbd 23:58:26 -!- kryptos23 [n=kryptos@59.92.60.7] has quit [Read error: 110 (Connection timed out)]