00:04:18 chemuduguntar [~user@smtp.touchcut.com] has joined #scheme 00:04:19 zac314159 [~user@c-68-84-149-234.hsd1.nm.comcast.net] has joined #scheme 00:22:26 -!- zac314159 [~user@c-68-84-149-234.hsd1.nm.comcast.net] has quit [Remote host closed the connection] 00:23:30 -!- davazp` [~user@36.Red-79-153-149.dynamicIP.rima-tde.net] has quit [Ping timeout: 272 seconds] 00:28:43 Caleb--: What level of calculus? 00:32:24 MrFahrenheit [~RageOfTho@users-55-189.vinet.ba] has joined #scheme 00:35:47 -!- RageOfThou [~RageOfTho@users-33-123.vinet.ba] has quit [Ping timeout: 255 seconds] 01:01:41 Euthydemus` [~euthydemu@vaxjo3.23.cust.blixtvik.net] has joined #scheme 01:04:35 -!- Euthydemus [~euthydemu@vaxjo3.23.cust.blixtvik.net] has quit [Ping timeout: 276 seconds] 01:05:31 -!- copumpkin is now known as ojiisan 01:06:35 aking [~aking@67.23.13.119] has joined #scheme 01:06:39 Jafet [~Jafet@unaffiliated/jafet] has joined #scheme 01:13:03 -!- Riastradh [debian-tor@fsf/member/riastradh] has quit [Ping timeout: 245 seconds] 01:13:06 -!- homie [~user@xdsl-78-34-235-239.netcologne.de] has quit [Ping timeout: 240 seconds] 01:13:43 -!- wbooze [~user@xdsl-78-34-235-239.netcologne.de] has quit [Ping timeout: 265 seconds] 01:14:11 -!- ojiisan is now known as copumpkin 01:15:05 Azuvix [~Azuvix@174-27-51-173.bois.qwest.net] has joined #scheme 01:17:50 homie [~user@xdsl-87-79-58-55.netcologne.de] has joined #scheme 01:20:04 wbooze [~user@xdsl-87-79-58-55.netcologne.de] has joined #scheme 01:20:58 aidalgol [~user@114-134-7-235.rurallink.co.nz] has joined #scheme 01:26:04 kephas [~pierre@AStrasbourg-551-1-77-202.w81-51.abo.wanadoo.fr] has joined #scheme 01:26:11 -!- jonrafkind [~jon@crystalis.cs.utah.edu] has quit [Ping timeout: 255 seconds] 01:27:28 -!- nowhereman [~pierre@AStrasbourg-551-1-11-59.w86-213.abo.wanadoo.fr] has quit [Ping timeout: 272 seconds] 01:28:53 -!- MrFahrenheit [~RageOfTho@users-55-189.vinet.ba] has quit [Ping timeout: 255 seconds] 01:35:11 -!- kephas [~pierre@AStrasbourg-551-1-77-202.w81-51.abo.wanadoo.fr] has quit [Ping timeout: 255 seconds] 01:40:09 -!- pygospa [~pygospa@217.191.213.34] has quit [Disconnected by services] 01:40:18 TheRealPygo [~pygospa@217.191.164.152] has joined #scheme 01:40:59 -!- copumpkin [~pumpkin@unaffiliated/pumpkingod] has quit [Quit: Computer has gone to sleep.] 01:52:29 debiandebian [~chatzilla@ntszok039189.szok.nt.adsl.ppp.infoweb.ne.jp] has joined #scheme 01:53:48 -!- drdo [~user@2.208.54.77.rev.vodafone.pt] has quit [Remote host closed the connection] 02:02:28 -!- tupi [~david@186.205.37.15] has quit [Quit: Leaving] 02:37:48 samth_ [~samth@c-76-24-223-136.hsd1.ma.comcast.net] has joined #scheme 02:42:17 ravic [~ravi@118-93-189-209.dsl.dyn.ihug.co.nz] has joined #scheme 02:42:26 -!- bgs100 [~ian@unaffiliated/bgs100] has quit [Quit: night all] 02:44:21 copumpkin [~pumpkin@c-66-31-44-245.hsd1.ma.comcast.net] has joined #scheme 02:44:21 -!- copumpkin [~pumpkin@c-66-31-44-245.hsd1.ma.comcast.net] has quit [Changing host] 02:44:21 copumpkin [~pumpkin@unaffiliated/pumpkingod] has joined #scheme 02:49:04 drdo [~user@2.208.54.77.rev.vodafone.pt] has joined #scheme 02:55:57 -!- drdo [~user@2.208.54.77.rev.vodafone.pt] has quit [Remote host closed the connection] 03:14:08 -!- Azuvix [~Azuvix@174-27-51-173.bois.qwest.net] has quit [Quit: Leaving] 03:19:48 githogori [~githogori@ppp-93-104-97-71.dynamic.mnet-online.de] has joined #scheme 03:24:15 -!- dnm [~dnm@static-71-166-174-24.washdc.east.verizon.net] has quit [Ping timeout: 260 seconds] 03:27:33 wuj [~wuj@pool-74-101-71-212.nycmny.east.verizon.net] has joined #scheme 03:31:03 risent [~risent@221.131.242.150] has joined #scheme 03:32:55 -!- cipher [~cipher@c-76-24-16-225.hsd1.ma.comcast.net] has quit [Ping timeout: 265 seconds] 03:34:21 cipher [~cipher@c-76-24-16-225.hsd1.ma.comcast.net] has joined #scheme 03:39:08 Riastradh [debian-tor@fsf/member/riastradh] has joined #scheme 03:41:10 -!- Riastradh [debian-tor@fsf/member/riastradh] has quit [Client Quit] 03:41:36 Riastradh [debian-tor@fsf/member/riastradh] has joined #scheme 03:52:17 -!- gnomon [~gnomon@CPE0022158a8221-CM000f9f776f96.cpe.net.cable.rogers.com] has quit [Ping timeout: 255 seconds] 03:52:34 gnomon [~gnomon@CPE0022158a8221-CM000f9f776f96.cpe.net.cable.rogers.com] has joined #scheme 03:52:43 -!- risent [~risent@221.131.242.150] has quit [Ping timeout: 240 seconds] 03:52:50 timj__ [~timj@e176195059.adsl.alicedsl.de] has joined #scheme 03:53:20 How would I add elements to a list 03:53:25 -!- timj_ [~timj@e176197074.adsl.alicedsl.de] has quit [Read error: Connection reset by peer] 03:54:53 nm 03:56:12 actually, yes how do you do it 03:59:58 cons? :| 04:00:16 nm 04:00:27 but cons is only beginning of list right? 04:01:25 No, although it might not do what you want it to at the end 04:03:55 Yes, cons is usually used to prepend to the list. 04:04:13 The usual way to do things is: build a list piece by piece, using cons, then reverse the result afterwards. 04:05:29 I would probably have used (append lst (list element)) Is this bad? 04:05:36 Yes, it's very bad. 04:05:40 Why? :) 04:05:45 It's O(n) at each call. 04:05:48 Whereas cons is O(1). 04:05:56 I see 04:06:10 mmc [~michal@cs27120227.pp.htv.fi] has joined #scheme 04:06:18 Usually, only the amortized running time of CONS is O(1), to be precise... 04:06:30 That. *nods* 04:07:44 -!- samth_ [~samth@c-76-24-223-136.hsd1.ma.comcast.net] has quit [Quit: Ex-Chat] 04:13:53 -!- museun [~what@c-76-122-126-43.hsd1.ga.comcast.net] has quit [Ping timeout: 255 seconds] 04:18:08 -!- jensn [~ceres@c-83-233-145-103.cust.bredband2.com] has quit [Ping timeout: 240 seconds] 04:18:30 -!- rpg [~rpg@216.243.156.16.real-time.com] has quit [Remote host closed the connection] 04:21:25 -!- Caleb-- [~caleb@bzq-79-183-43-234.red.bezeqint.net] has quit [Ping timeout: 260 seconds] 04:22:07 Caleb-- [thedude@bzq-79-177-20-230.red.bezeqint.net] has joined #scheme 04:26:27 -!- aidalgol [~user@114-134-7-235.rurallink.co.nz] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 04:41:44 -!- MichaelRaskin [~MichaelRa@195.91.224.225] has quit [Remote host closed the connection] 04:51:59 So, I'm a bit confused by syntax-case and quasisyntax here 04:52:03 http://paste.lisp.org/display/116754 04:52:28 Could someone shed some light on why I get "file-name: pattern variable cannot be used outwside of a template in: file-name" 04:52:36 That's what they're there for! 04:53:12 That was oracular. 04:54:49 FILE-NAME is a pattern variable, not a vanilla variable. You can use it only inside a template, such as inside a SYNTAX form. If you want to operate on it, rather than just put it into some other syntax object, you have to get it out with SYNTAX->DATUM; e.g.: (syntax-case stx () ((_ file-name-stx) (let ((file-name (syntax->datum (syntax file-name-stx)))) (if (string? file-name) ...] 04:55:27 jonrafkind [~jon@lre-west-4-229.usahousing.utah.edu] has joined #scheme 04:57:06 oh boy. 04:57:19 Syntax-rules spoils me 04:57:46 That said, you might be better served without using a macro at all. The test cases inside Racket appear to be loaded using LOAD, which is an ordinary procedure, rather than put into modules and loaded with REQUIRE. (This is merely an observation; I don't know why it is so in Racket.) 04:58:11 hmm 04:58:39 Yeah, I'm all for ditching the macros if there's a simpler way.. 04:58:40 (Also, in your macro, you probably want to use STRING->SYMBOL, not SYMBOL->STRING.) 04:59:16 So, I don't know if this actually works (as I never go the macro working) but I was hoping to do something like: (run-tests parser.scm) 04:59:25 To save the mild frustration of quotes. 05:01:02 Hmm 05:01:05 Using load is a no go 05:01:33 I get a cryptic unbound identifier error talking about "no #%app transformer is bound" 05:05:26 -!- Caleb-- [thedude@bzq-79-177-20-230.red.bezeqint.net] has quit [Ping timeout: 265 seconds] 05:06:12 Caleb-- [thedude@bzq-79-177-32-253.red.bezeqint.net] has joined #scheme 05:10:54 MichaelRaskin [~MichaelRa@195.178.216.22] has joined #scheme 05:13:19 danking: Similar to `eval' -- don't use `load' unless you really know what you're doing. 05:13:31 But your code is confused in a number of other ways. 05:13:43 (Besides the obvious problem you've seen.) 05:14:25 The most obvious thing is that `require's happen when the module loads, you can't just precede a `require' with some printout and expect it to be printed before it's required. 05:18:46 dnm [~dnm@c-68-34-57-169.hsd1.va.comcast.net] has joined #scheme 05:19:18 -!- Riastradh [debian-tor@fsf/member/riastradh] has quit [Ping timeout: 245 seconds] 05:20:27 Riastradh [debian-tor@fsf/member/riastradh] has joined #scheme 05:21:29 Zot! 05:31:06 -!- copumpkin [~pumpkin@unaffiliated/pumpkingod] has quit [Quit: Computer has gone to sleep.] 05:33:45 -!- wuj [~wuj@pool-74-101-71-212.nycmny.east.verizon.net] has quit [Ping timeout: 265 seconds] 05:59:52 risent [~risent@ip-67-202-107-128.static.chi2.systeminplace.net] has joined #scheme 06:15:51 eli: Yeah :/ It didn't quite work out they way I expected. I did get the macro to finally work, which was a cool learning experience anyway. Does Racket provide any way to organize test cases and run them as such? 06:16:38 For now I've just written down a few require statements in one file and I can execute that file. 06:21:22 danking: One popular way to do that is to provide the testing functions out of the test files, then write a function that runs them all. 06:21:43 If you really want to do some dynamic thing, you can use `dynamic-require'. 06:23:38 -!- kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has quit [Quit: Leaving] 06:29:39 eli: Thanks, I'll try that idea out and see if it works for me 06:29:52 What are you using for testing? 06:32:20 danking: ? 06:33:18 eli: Standard 211 check-expects 06:33:30 Is there something 'better'? 06:33:36 The one in the teaching languages? 06:33:39 I suppose it's not 211 anymore. 06:33:49 The one in the teaching languages? 06:33:51 eli: No, #lang racket. I require test-engine/racket-tests 06:34:05 Ugh. Don't do that. 06:34:10 Uhoh 06:34:34 There's two things that you can use: rackunit is a popular choice. 06:35:10 Another one is `tests/eli-tester', which is a much smaller thing, and I didn't librarify it yet, but it's easy to use. 06:35:27 (And you can see examples in the tests subtree.) 06:35:43 alright 06:36:02 The test-engine stuff is intended for the teaching languages, it's not really fitting for "real" work. 06:36:39 eli: Is it lacking in some how? It seems that it can test for equivalence rather well. 06:37:15 It has a bunch of issues, just better to avoid it. 06:38:58 I beginning feel like 211/Fundies opens up this tremendous metropolis of Scheme to students and then leaves them at the town center without a map. They can confidently navigate the local playground, but dare not they venture out unprepared. 06:39:28 Though, I don't know how much academic value there is in explaining libraries and idioms of a language. 06:39:40 Exactly. 06:40:01 I suppose scuffing your knees is a well enough way to learn. 06:40:09 There are plans to make things a little better wrt testing, but the bottom line will not change much. 06:40:32 After all, you don't expect people to contribute libraries in the beginner language... 06:42:46 Yeah 06:44:19 I guess I was just confused by things like why teachpacks didn't work or what this "#lang" thing was. 06:44:30 And Macros 06:45:39 The `#lang' thing will improve -- the destination is having the student languages done through it too, so people will be "more prepared"/ 06:45:59 And macros are unlikely to go into that course. 06:46:16 As well as gui hacking. 06:46:16 I think #lang and normal requires would definitely help 06:46:21 Threads. 06:46:28 Continuations. 06:46:39 Continuations should totally be there! 06:46:39 Unblocking IO. 06:46:41 They're so neat 06:47:07 Neat is one thing, teaching is another. 06:49:07 Yes, and that's why I'm happy I'm on this side of the lectern. 06:49:40 You can deal with the trouble of explaining stuff, I'll just benefit from your labors :D 06:50:24 And I'd expect to benefit from your work then... 06:53:53 Someday, when I'm a rockstar PhD candidate, maybe I'll be able to contribute something back. 06:55:09 Bah. You don't need to be either a rockstar, or a phd candidate, or both. 06:55:23 All you need is to write some useful code. 06:56:02 That, I think I can do. 07:27:24 -!- araujo [~araujo@gentoo/developer/araujo] has quit [Quit: Leaving] 07:33:10 -!- jonrafkind [~jon@lre-west-4-229.usahousing.utah.edu] has quit [Ping timeout: 240 seconds] 07:36:28 aidalgol [~user@114-134-7-235.rurallink.co.nz] has joined #scheme 07:43:18 jensn [~ceres@c-83-233-145-103.cust.bredband2.com] has joined #scheme 08:01:05 -!- githogori [~githogori@ppp-93-104-97-71.dynamic.mnet-online.de] has quit [Remote host closed the connection] 08:04:34 pavelludiq [~quassel@83.222.190.105] has joined #scheme 08:53:52 ASau [~user@83.149.9.173] has joined #scheme 08:59:19 museun [~what@c-76-122-126-43.hsd1.ga.comcast.net] has joined #scheme 09:06:58 -!- risent [~risent@ip-67-202-107-128.static.chi2.systeminplace.net] has quit [Remote host closed the connection] 09:06:59 araujo [~araujo@190.38.50.25] has joined #scheme 09:06:59 -!- araujo [~araujo@190.38.50.25] has quit [Changing host] 09:06:59 araujo [~araujo@gentoo/developer/araujo] has joined #scheme 09:07:14 risent [~risent@ip-67-202-107-128.static.chi2.systeminplace.net] has joined #scheme 09:11:07 -!- pchrist [~spirit@gentoo/developer/pchrist] has quit [Quit: leaving] 09:11:26 francogrex [~user@109.130.137.179] has joined #scheme 09:11:45 pchrist [~spirit@athedsl-4503561.home.otenet.gr] has joined #scheme 09:11:45 -!- pchrist [~spirit@athedsl-4503561.home.otenet.gr] has quit [Changing host] 09:11:45 pchrist [~spirit@gentoo/developer/pchrist] has joined #scheme 09:15:32 Hi, is there a (simple/short) tests suit to check whether a certain implementation of scheme is R4RS or R5RS compliant and to which extent? 09:15:52 githogori [~githogori@host-82-135-20-190.customer.m-online.net] has joined #scheme 09:16:26 I remember there was r5 suite somewhere. 09:16:58 Try web search. 09:17:00 ASau: that's really good. You don't happen to have the link... 09:17:08 ok I'll try google, 09:17:18 the name would be R5RS suite ?? 09:17:38 perhaps. 09:21:23 -!- xwl_ [~user@nat/nokia/x-nrvbhkjzrffmdbcx] has quit [Ping timeout: 255 seconds] 09:28:55 -!- aidalgol [~user@114-134-7-235.rurallink.co.nz] has quit [Quit: zZzZzZz] 09:30:41 francogrex: there are seom r4 and r5 tests in the chicken repository. See http://code.call-cc.org/cgi-bin/gitweb.cgi?p=chicken-core.git;a=blob;f=tests/r4rstest.scm;h=6d928ff042eda359dde97a208b5359f9eb462021;hb=HEAD and http://code.call-cc.org/cgi-bin/gitweb.cgi?p=chicken-core.git;a=blob;f=tests/r5rs_pitfalls.scm;h=5813dfc2523e01752bec1201fb1f6fb5fb42c2d6;hb=HEAD 09:30:43 http://tinyurl.com/36rf2lj 09:30:44 http://tinyurl.com/38w6byx 09:31:13 some* 09:37:43 Mohamdu [~Mohamdu@CPE00222d6b3798-CM00222d6b3795.cpe.net.cable.rogers.com] has joined #scheme 09:38:43 -!- francogrex [~user@109.130.137.179] has quit [Ping timeout: 240 seconds] 09:38:43 -!- Mohamdu [~Mohamdu@CPE00222d6b3798-CM00222d6b3795.cpe.net.cable.rogers.com] has quit [Read error: Connection reset by peer] 09:39:01 Mohamdu [~Mohamdu@CPE00222d6b3798-CM00222d6b3795.cpe.net.cable.rogers.com] has joined #scheme 09:43:58 xwl_ [~user@nat/nokia/x-ckikfwjvuqbvtncx] has joined #scheme 10:00:28 -!- ASau [~user@83.149.9.173] has quit [Ping timeout: 272 seconds] 10:25:09 -!- Riastradh [debian-tor@fsf/member/riastradh] has quit [Remote host closed the connection] 10:25:31 Riastradh [debian-tor@fsf/member/riastradh] has joined #scheme 10:29:10 -!- Axsuul [~someone@97-93-99-133.static.mtpk.ca.charter.com] has quit [Read error: Connection reset by peer] 10:30:03 gravicappa [~gravicapp@ppp91-78-229-127.pppoe.mtu-net.ru] has joined #scheme 10:45:26 -!- ski [~slj@c-2911e055.1149-1-64736c10.cust.bredbandsbolaget.se] has quit [Ping timeout: 272 seconds] 10:56:48 -!- Riastradh [debian-tor@fsf/member/riastradh] has quit [Ping timeout: 245 seconds] 11:02:44 -!- adu [~ajr@pool-173-66-11-168.washdc.fios.verizon.net] has quit [Quit: adu] 11:02:58 jao [~user@80.24.4.74] has joined #scheme 11:06:19 -!- pavelludiq [~quassel@83.222.190.105] has quit [Read error: Connection reset by peer] 11:14:06 Riastradh [debian-tor@fsf/member/riastradh] has joined #scheme 11:14:54 adu [~ajr@pool-173-66-11-168.washdc.fios.verizon.net] has joined #scheme 11:15:06 alaricsp [~alaric@relief.warhead.org.uk] has joined #scheme 11:36:01 drdo [~user@2.208.54.77.rev.vodafone.pt] has joined #scheme 11:40:42 kephas [~pierre@AStrasbourg-551-1-1-126.w92-141.abo.wanadoo.fr] has joined #scheme 12:12:31 pavelludiq [~quassel@83.222.190.105] has joined #scheme 12:14:59 -!- adu [~ajr@pool-173-66-11-168.washdc.fios.verizon.net] has quit [Quit: adu] 12:19:48 adu [~ajr@pool-173-66-11-168.washdc.fios.verizon.net] has joined #scheme 12:21:35 pnkfelix [~Adium@c-24-0-248-160.hsd1.nj.comcast.net] has joined #scheme 12:24:22 pnkfelix1 [~Adium@c-71-225-45-140.hsd1.nj.comcast.net] has joined #scheme 12:25:55 -!- pnkfelix [~Adium@c-24-0-248-160.hsd1.nj.comcast.net] has quit [Ping timeout: 240 seconds] 12:27:07 -!- leppie [~lolcow@196-215-20-67.dynamic.isadsl.co.za] has quit [Ping timeout: 240 seconds] 12:30:27 copumpkin [~pumpkin@unaffiliated/pumpkingod] has joined #scheme 12:35:23 -!- copumpkin [~pumpkin@unaffiliated/pumpkingod] has quit [Client Quit] 12:37:22 leppie [~lolcow@196-215-20-67.dynamic.isadsl.co.za] has joined #scheme 12:39:32 MrFahrenheit [~RageOfTho@users-55-133.vinet.ba] has joined #scheme 12:50:03 fradgers- [~fradgers-@5e064cc1.bb.sky.com] has joined #scheme 12:55:55 -!- MichaelRaskin [~MichaelRa@195.178.216.22] has quit [Read error: Connection reset by peer] 12:59:55 -!- pavelludiq [~quassel@83.222.190.105] has quit [Read error: Connection reset by peer] 13:02:01 MichaelRaskin [~MichaelRa@195.178.216.22] has joined #scheme 13:12:07 wuj [~wuj@pool-74-101-71-212.nycmny.east.verizon.net] has joined #scheme 13:12:21 -!- wuj [~wuj@pool-74-101-71-212.nycmny.east.verizon.net] has quit [Excess Flood] 13:12:40 wuj [~wuj@pool-74-101-71-212.nycmny.east.verizon.net] has joined #scheme 13:19:38 wbooze` [~user@xdsl-78-34-102-240.netcologne.de] has joined #scheme 13:19:40 -!- wuj [~wuj@pool-74-101-71-212.nycmny.east.verizon.net] has quit [Ping timeout: 245 seconds] 13:21:19 homie` [~user@xdsl-78-34-102-240.netcologne.de] has joined #scheme 13:21:59 -!- homie [~user@xdsl-87-79-58-55.netcologne.de] has quit [Ping timeout: 255 seconds] 13:22:08 -!- wbooze [~user@xdsl-87-79-58-55.netcologne.de] has quit [Ping timeout: 255 seconds] 13:23:12 -!- pnkfelix1 [~Adium@c-71-225-45-140.hsd1.nj.comcast.net] has quit [Quit: Leaving.] 13:28:53 -!- drdo [~user@2.208.54.77.rev.vodafone.pt] has quit [Ping timeout: 255 seconds] 13:44:10 -!- mmc [~michal@cs27120227.pp.htv.fi] has quit [Ping timeout: 240 seconds] 13:50:29 -!- Quadrescence [~Quad@unaffiliated/quadrescence] has quit [Read error: Connection reset by peer] 13:55:12 schmir [~schmir@mail.brainbot.com] has joined #scheme 13:57:55 Quadrescence [~Quad@unaffiliated/quadrescence] has joined #scheme 13:58:17 metasyntax` [~taylor@12.132.219.7] has joined #scheme 13:58:24 mmc [~michal@cs27124157.pp.htv.fi] has joined #scheme 14:09:47 pavelludiq [~quassel@83.222.190.211] has joined #scheme 14:13:15 copumpkin [~pumpkin@unaffiliated/pumpkingod] has joined #scheme 14:19:07 -!- risent [~risent@ip-67-202-107-128.static.chi2.systeminplace.net] has quit [Ping timeout: 240 seconds] 14:25:12 tupi [~david@139.82.89.24] has joined #scheme 14:30:27 dfkjjkfd [~paulh@245-15-ftth.onsnetstudenten.nl] has joined #scheme 14:32:46 -!- Riastradh [debian-tor@fsf/member/riastradh] has quit [Remote host closed the connection] 14:49:57 femtoo [~femto@95-89-197-196-dynip.superkabel.de] has joined #scheme 15:01:39 -!- dfkjjkfd [~paulh@245-15-ftth.onsnetstudenten.nl] has quit [Quit: Lost terminal] 15:01:59 -!- homie` [~user@xdsl-78-34-102-240.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 15:02:05 -!- wbooze` [~user@xdsl-78-34-102-240.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 15:05:48 dfkjjkfd [~paulh@245-15-ftth.onsnetstudenten.nl] has joined #scheme 15:08:01 homie [~user@xdsl-78-34-102-240.netcologne.de] has joined #scheme 15:08:37 -!- dnm [~dnm@c-68-34-57-169.hsd1.va.comcast.net] has quit [Ping timeout: 240 seconds] 15:11:10 wbooze [~user@xdsl-78-34-102-240.netcologne.de] has joined #scheme 15:18:26 stis [~stis@1-1-1-39a.veo.vs.bostream.se] has joined #scheme 15:27:23 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has quit [Quit: Leaving] 15:32:36 -!- pchrist [~spirit@gentoo/developer/pchrist] has quit [Quit: leaving] 15:33:15 pchrist [~spirit@gentoo/developer/pchrist] has joined #scheme 15:38:34 -!- schmir [~schmir@mail.brainbot.com] has quit [Remote host closed the connection] 15:50:31 ASau [~user@95-24-130-119.broadband.corbina.ru] has joined #scheme 15:51:54 -!- ASau [~user@95-24-130-119.broadband.corbina.ru] has quit [Remote host closed the connection] 15:52:25 ski [~slj@c-2911e055.1149-1-64736c10.cust.bredbandsbolaget.se] has joined #scheme 15:55:08 -!- MrFahrenheit [~RageOfTho@users-55-133.vinet.ba] has quit [Ping timeout: 255 seconds] 16:16:59 -!- githogori [~githogori@host-82-135-20-190.customer.m-online.net] has quit [Remote host closed the connection] 16:31:52 wuj [~wuj@pool-74-101-71-212.nycmny.east.verizon.net] has joined #scheme 16:36:10 -!- mmc [~michal@cs27124157.pp.htv.fi] has quit [Ping timeout: 240 seconds] 16:58:35 -!- Jafet [~Jafet@unaffiliated/jafet] has quit [Ping timeout: 255 seconds] 17:00:35 -!- tupi [~david@139.82.89.24] has quit [Remote host closed the connection] 17:11:22 nowhere_man [~pierre@AStrasbourg-551-1-1-149.w92-141.abo.wanadoo.fr] has joined #scheme 17:11:25 tupi [~david@139.82.89.24] has joined #scheme 17:11:31 -!- kephas [~pierre@AStrasbourg-551-1-1-126.w92-141.abo.wanadoo.fr] has quit [Ping timeout: 240 seconds] 17:19:25 mmc [~michal@cs27120227.pp.htv.fi] has joined #scheme 17:20:00 -!- jao [~user@80.24.4.74] has quit [Ping timeout: 272 seconds] 17:28:11 femtoo [~femto@95-89-197-196-dynip.superkabel.de] has joined #scheme 17:37:00 jonrafkind [~jon@crystalis.cs.utah.edu] has joined #scheme 17:59:12 MrFahrenheit [~RageOfTho@users-33-148.vinet.ba] has joined #scheme 18:01:14 -!- MichaelRaskin [~MichaelRa@195.178.216.22] has quit [Ping timeout: 264 seconds] 18:04:55 femtooo [~femto@95-89-197-196-dynip.superkabel.de] has joined #scheme 18:07:09 -!- tupi [~david@139.82.89.24] has quit [Quit: Leaving] 18:07:37 -!- femtoo [~femto@95-89-197-196-dynip.superkabel.de] has quit [Ping timeout: 240 seconds] 18:14:31 -!- gravicappa [~gravicapp@ppp91-78-229-127.pppoe.mtu-net.ru] has quit [Ping timeout: 265 seconds] 18:14:41 -!- adu [~ajr@pool-173-66-11-168.washdc.fios.verizon.net] has quit [Quit: adu] 18:26:11 MichaelRaskin [~MichaelRa@195.91.224.225] has joined #scheme 18:31:53 -!- ravic [~ravi@118-93-189-209.dsl.dyn.ihug.co.nz] has quit [Quit: Leaving] 18:32:30 -!- gnomon [~gnomon@CPE0022158a8221-CM000f9f776f96.cpe.net.cable.rogers.com] has quit [Ping timeout: 260 seconds] 18:32:47 gnomon [~gnomon@CPE0022158a8221-CM000f9f776f96.cpe.net.cable.rogers.com] has joined #scheme 18:38:17 kar8nga [~kar8nga@j-96.vc-graz.ac.at] has joined #scheme 18:38:20 Riastradh [debian-tor@fsf/member/riastradh] has joined #scheme 18:39:10 gravicappa [~gravicapp@ppp85-140-119-95.pppoe.mtu-net.ru] has joined #scheme 18:39:11 drdo [~user@194.210.228.35] has joined #scheme 18:40:52 http://www.youtube.com/watch?v=9XhC5b2FEOk 18:41:43 Caleb--: I'm sure there are plenty of places where people can find cat videos on the internet if they want to. Please try to paste only the Scheme-related ones here. 18:41:59 a cat that uses scheme? unheard of! 18:42:15 ;] 18:42:25 At least give a summary of what is at any URI you paste into the channel. 18:42:45 also list the filesize and how many views it has 18:44:44 -!- kar8nga [~kar8nga@j-96.vc-graz.ac.at] has quit [Remote host closed the connection] 18:45:51 dnm [~dnm@static-71-166-174-24.washdc.east.verizon.net] has joined #scheme 18:46:33 kar8nga [~kar8nga@j-96.vc-graz.ac.at] has joined #scheme 18:56:43 Don't forget to inform us the number of frames/second. 18:57:05 -!- pavelludiq [~quassel@83.222.190.211] has quit [Read error: Connection reset by peer] 19:08:41 -!- ski [~slj@c-2911e055.1149-1-64736c10.cust.bredbandsbolaget.se] has quit [Ping timeout: 250 seconds] 19:14:46 jao [~user@83.32.170.229] has joined #scheme 19:19:28 Cowmoo [~Cowmoo@cambridge-vxty.basistech.com] has joined #scheme 19:20:13 -!- dfkjjkfd [~paulh@245-15-ftth.onsnetstudenten.nl] has quit [Quit: Lost terminal] 19:24:01 -!- vu3rdd [~vu3rdd@122.167.80.25] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 19:30:37 Kirill [~user@CPEf81edff80afa-CM0016924f5bee.cpe.net.cable.rogers.com] has joined #scheme 19:30:53 hi! is it okay to ask Racket-specific questions here? 19:31:37 Kirill: it is ok, but if you want answer from Racket experts, there is #racket 19:31:54 answers* 19:32:15 thanks, I'll try there 19:34:37 Hey, there are Racket experts in this channel too (hi, eli!). But I suppose they're in #racket too, or should be. :-P 19:35:00 heh 19:35:17 I was just wondering if scheme/racket had a version of map that would run the computation in parallel 19:35:27 Hahahahahahahahaha. 19:35:38 explain =) 19:36:07 eli and I had this discussion about whether map is allowed to be parallel. The R5RS version isn't, but perhaps there are indeed Racket-specific versions that are. 19:36:24 yeah, because the supplied proc can have side effects 19:36:39 but I was wondering if there's a version of map that can be called when you know the computation can indeed be run in parallel 19:36:44 Yeah, so it has to be in some sequential order. 19:36:59 I mean, in principle it's not hard to write on my own, but I wanted to make sure I'm not reinventing the wheel (shittily) 19:37:13 Although the order of execution isn't specified, in practice, most implementations will map either left-to-right or right-to-left, and usually not "random". But the standard doesn't guarantee that. 19:37:43 well, it's soup time. we'll see if anyone on the channel knows anything else 19:38:01 Hehehehe. I'll glance at the Racket docs quickly and see if I'm more enlightened afterwards. 19:38:07 Enjoy your soup! 19:38:20 (If it's lobster bisque, awesome. :-)) 19:39:22 (nah it's a chicken and sauerkraut and god knows what else thing) 19:39:51 here: http://en.wikipedia.org/wiki/Rassolnik 19:39:51 Hahahaha. 19:40:23 *reads* 19:40:47 Interesting. 19:41:12 Unthahorsten [~Unthahors@del63-3-88-177-167-25.fbx.proxad.net] has joined #scheme 19:41:14 -!- drdo [~user@194.210.228.35] has quit [Ping timeout: 272 seconds] 19:44:15 cky: I didn't realise they had posh gits in Kiwiland (Re the lobster bisque :P) 19:45:10 franki^: Well, I'm from Auckland. And Auckland is a world of its own. :-P 19:45:29 Most non-Aucklander New Zealanders consider Auckland to be another country. :-P 19:46:26 Heh 19:48:15 P.S. Auckland is full of posh gits. Especially if they hail from Remuera (semi-wealthy suburb in Central Auckland). 19:48:24 I'd like to visit New Zealand one day. I've got some family out there, but I haven't managed to drag myself down there yet. My sister went for six months a few years ago. It sounded great 19:48:40 I think they live in Christchurch though, I'm not sure 19:48:51 <3 Christchurch 19:49:00 I love most of the big cities in New Zealand, except Auckland. 19:49:08 Heh 19:49:51 Aw... I wanna' live in New Zealand. I mean, Canada ain't bad either =P 19:50:07 Kirill: Yeah, it's an awesome place. I miss New Zealand so much. 19:50:22 Kirill: (I've lived in New Zealand for 20 years, but I currently live in the US.) 19:50:50 Is it too personal (or offtopic?) to ask why you left? Or was it for something as boring as job prospects? 19:50:58 franki^: My wife is American. 19:51:04 Ah, I see 19:51:10 :-) 19:51:22 Can't bring her to NZ? =) 19:51:30 Well, I guess with the TSA being what it is... you're better off going by ship 19:51:43 She actually came to NZ and lived there for nearly 3 years. 19:52:40 So, here in the US she can be with her dog, family, etc. :-) 19:52:57 I dare say her dog seriously improves her quality of life. 19:53:04 :) 19:53:07 =) 19:54:07 adu [~ajr@64.134.98.78] has joined #scheme 20:00:33 -!- Riastradh [debian-tor@fsf/member/riastradh] has quit [Ping timeout: 245 seconds] 20:03:18 offby1` [~user@q-static-138-125.avvanta.com] has joined #scheme 20:04:33 -!- offby1 [~user@pdpc/supporter/monthlybyte/offby1] has quit [Read error: Connection reset by peer] 20:05:50 -!- adu [~ajr@64.134.98.78] has quit [Quit: adu] 20:06:48 scheme is fun 20:07:29 my lecturer pronounces (cdr) as "cooder" 20:07:43 and it sounds like "cooter", which always makes me giggle like a little girl. 20:08:34 Caleb--: Cooder is the correct standard pronunciation for cdr. 20:08:48 oh :p 20:08:51 And maybe the similarity to cooter is intentional. :-P 20:08:55 lmao 20:09:10 i hate it when people pronounce SQL as "sequel" 20:09:18 I say ess-que-el. :-P 20:09:21 i always say es-kyu-el 20:09:22 yep 20:09:27 and XML as zammel 20:09:32 ex-em-el. :-P 20:09:40 if i had a gun i'd shoot those people in the face 20:09:54 zammel is XAML (Microsoft technology for, uh, WPF? Can't remember.) 20:10:17 yeah 20:10:30 it's kinad like XUL 20:10:43 Well, I usually hear that pronounced as "zool". 20:10:48 yep 20:11:02 but some acronyms are just not readable like that 20:11:09 XAML and XUL might be ok 20:11:13 Riastradh [debian-tor@fsf/member/riastradh] has joined #scheme 20:11:14 but XML and SQL aren't 20:11:19 Agree. 20:11:43 But cdr really is pronounced cooder, and you will sound like an outsider if you pronouce it another way. 20:11:50 so, we learned about lists this week 20:11:57 and trees today 20:12:11 -!- nowhere_man [~pierre@AStrasbourg-551-1-1-149.w92-141.abo.wanadoo.fr] has quit [Quit: Konversation terminated!] 20:12:16 nowhere_man [~pierre@AStrasbourg-551-1-1-149.w92-141.abo.wanadoo.fr] has joined #scheme 20:12:17 *Caleb--* can't wait for the homework assignment 20:12:51 a-s [~user@86.35.172.161] has joined #scheme 20:12:56 Nice, nice. :-) 20:13:24 `() 20:13:28 I was always such a rebel at university though. I did this course that was taught in Common Lisp, but, because just to be different, I chose to do all the assignments in Emacs Lisp instead. 20:13:31 is that a type of an apostrophe ^ 20:13:37 It's called a quasiquote. 20:13:41 HG` [~HG@xdsl-188-118-128-154.dip.osnanet.de] has joined #scheme 20:13:46 thanks :) 20:13:49 The point of a quasiquote is that you can selectively unquote things. 20:14:07 `() <- empty list, right? 20:14:08 So, '(1 2 (+ 3 4)) is (1 2 (+ 3 4)), but `(1 2 ,(+ 3 4)) is (1 2 7). 20:14:12 Right. 20:14:40 Actually, to explain better: 20:14:55 '((+ 3 4) ,(+ 3 4)) => ((+ 3 4) ,(+ 3 4)) 20:15:09 `((+ 3 4) ,(+ 3 4)) => ((+ 3 4) 7) 20:15:14 Does that make better sense? 20:15:41 So, with quote, there is no way to evaluate anything inside the quoted expression. 20:15:50 With quasiquote, you can evaluate anything that you unquote. 20:16:23 how do you unquote? with that comma? 20:16:25 Yep. 20:16:58 when is this useful? 20:17:10 When you want to create a list that's mostly got constant stuff, but some evaluated stuff too. 20:17:28 It's used especially much when you're writing old-style (unhygienic) macros. :-P 20:18:21 rudybot: (quote foo) 20:18:22 Caleb--: your sandbox is ready 20:18:22 Caleb--: ; Value: foo 20:18:27 rudybot: 'foo 20:18:27 Caleb--: ; Value: foo 20:18:29 mejja [~user@c-5bb9e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 20:18:38 rudybot: `foo 20:18:39 Caleb--: ; Value: foo 20:18:55 rudybot: (quasiquote ((+ 3 4) (unquote (+ 3 4)))) 20:18:55 cky: ; Value: ((+ 3 4) 7) 20:19:05 rudybot: `((+ 3 4) ,(+ 3 4)) 20:19:05 cky: ; Value: ((+ 3 4) 7) 20:19:18 Caleb--: See, the ` and , are shorthands for the longer version above. 20:19:18 -!- a-s [~user@86.35.172.161] has quit [Remote host closed the connection] 20:19:29 yeah, that's pretty cool ;) 20:19:52 :-) 20:19:54 was the value returned a literal expression? 20:20:04 that is, i could evaluate it ? 20:20:11 rpg [~rpg@216.243.156.16.real-time.com] has joined #scheme 20:20:16 rudybot: (version) 20:20:17 eli: your racket sandbox is ready 20:20:18 eli: ; Value: "5.0.1" 20:20:18 Well, you could, though in this case it's not a valid expression to evaluate. 20:20:36 rudybot: (define (pmap f l . ls) (map force (apply map (lambda xs (delay/thread (apply f xs))) l ls))) 20:20:36 rudybot `(+ (+ 3 4) ,(+ 3 4)) 20:20:37 eli: Done. 20:20:42 rudybot: `(+ (+ 3 4) ,(+ 3 4)) 20:20:43 Caleb--: ; Value: (+ (+ 3 4) 7) 20:20:47 ths one is 20:20:51 Caleb--: Sure. 20:20:59 eli: Nice. :-) 20:21:01 rudybot: (pmap (lambda (x y) (sleep 1) (+ x y)) '(1 2 3 4 5) '(10 20 30 40 50)) 20:21:03 eli: ; Value: (11 22 33 44 55) 20:21:08 eli: I was reading up on futures, but perhaps I was barking up the wrong tree. 20:21:31 cky: Well, the nice thing about that is that you can plug in any of the `delay/*' things. 20:21:45 *nods* 20:21:47 There's no `delay/future' yet, but I'll probably add one eventually. 20:21:54 That'd be awesome. 20:22:18 rudybot: (runtime) 20:22:18 Caleb--: error: reference to undefined identifier: runtime 20:22:40 Kirill: Note that the above uses threads, which means no real parallelism, but it would still be useful for things like IO etc. 20:23:03 eli: Racket only has green threads? :-O 20:23:05 Also can be useful if plugging a `delay/idle' there, but could just as well add one around a plain map. 20:23:35 cky: `thread' creates in-process aka green threads. 20:23:43 Ah. *nods* 20:24:09 `future' creates an OS threads, and it's an optimistic approach of letting it run until it needs to be joined to the main process (eg, on IO). 20:24:36 I love using futures, mostly due to my experiences using it in Java projects in the past. 20:24:41 And there's also `place' which is the opposite approach of an OS "heavyweight" thread, almost like a new process. 20:25:08 From a user POV, there's little difference between futures and threads. 20:25:44 *nods* 20:26:29 oh 20:26:45 so i can use (define ls '(1 2 3)) instead of (define ls (list 1 2 3)) 20:27:04 ?^ 20:27:23 Caleb--: Yes, but, one important difference. 20:27:40 Caleb--: '(1 2 3) is not guaranteed to be mutable. 20:27:46 Caleb--: (list 1 2 3) is. 20:28:02 mutable? 20:28:16 Caleb--: If you never use any mutation operations on the list, like set-car! or set-cdr!, then it doesn't matter. 20:28:25 oh, we haven't learned those yet 20:28:31 Hahahaha, well then. 20:28:43 Maxel [Maxel@137.28.70.221] has joined #scheme 20:28:51 dfkjjkfd [~paulh@245-15-ftth.onsnetstudenten.nl] has joined #scheme 20:28:58 first they make us use cons to rebuild lists 20:29:01 -first 20:29:04 :( 20:29:05 It's better that way. 20:29:20 You almost always want to program with immutable data structures. 20:29:36 but he said that we will learn a ways to modify a list which make scheme not a fully functional language 20:29:46 -!- Maxel [Maxel@137.28.70.221] has left #scheme 20:29:48 or something like that ;p] 20:29:49 acs [~user@86.35.172.161] has joined #scheme 20:29:51 Right, and set-car! and set-cdr! are ways to do that. 20:29:57 yeah 20:30:04 But, like, once you bring mutation into the picture, it complicates some things for you. 20:30:22 Like, if you have concurrent programs, they suddenly start to have to coordinate their updates. 20:30:35 Whereas if you use immutable data structures, no coordination is necessary. 20:30:36 but things like appending two lists would be way easier if you could just change the last pointer from null to the beginning of the other list 20:30:52 The usual trick is, just don't append lists piecemeal. :-P 20:31:16 But, yes, when you do have to append lists, indeed being able to set-cdr! the last element of the lists is useful. 20:31:32 That's in fact what SRFI 1's list-append! allows. 20:31:55 i guess that there are benefits to being fully functional... everything can be parallelized easily 20:31:56 Oh wait. Maybe it's just called append!, not list-append!. Lemme check. 20:32:01 Yes, exactly. 20:32:06 rudybot: (require srfi/1) 20:32:07 cky: Done. 20:32:10 rudybot: list-append! 20:32:11 cky: Oh wait. Maybe it's just called append!, not list-append!. Lemme check. 20:32:16 rudybot: append! 20:32:16 cky: Mr-Cat: I was just reading srfi-43 which has an append, but it creates a new vector 20:32:22 rudybot: eval list-append! 20:32:22 cky: error: reference to an identifier before its definition: list-append! in module: 'program 20:32:26 rudybot: eval append! 20:32:27 cky: ; Value: # 20:32:45 Okay, it's just called append!. And, in Racket, it doesn't do mutation. 20:32:58 (SRFI 1 allows implementations to do mutation with the ! versions, but does not oblige them to.) 20:33:11 oh 20:33:28 so functions with a ! suffix do mutations? 20:33:36 Caleb--: "Are allowed to" do mutations. 20:33:40 i see 20:33:47 Caleb--: It's at the implementer's discretion as to whether it mutates or not. 20:33:57 francogrex [~user@109.130.104.108] has joined #scheme 20:34:15 is Scheme used in any important way outside of academia? 20:34:25 I tried gambit-C but now I'm trying chicken, I think of all schemes I like it the most 20:34:28 Of course. It's used for some computer games. 20:34:37 really/ 20:34:42 Like, Gambit (thanks francogrex) was used for Quantz or something. 20:35:01 it compiles to machine code? 20:35:08 francogrex: Yeah, Chicken has a really comprehensive collection of eggs. 20:35:23 Caleb--: Gambit compiles to C first, IIRC. 20:35:30 And uses your C compiler to get to object code. 20:35:33 Same deal as Chicken. 20:35:40 chicken also 20:35:44 francogrex: Jinx! 20:35:47 why not just write it in C in the first place? 20:35:49 yes :) 20:36:00 Caleb--: Because C is too low-level to be useful for many programming tasks. 20:36:09 Caleb--: Who wants to manually manage memory when Scheme provides GC? 20:36:20 I don't know I just like the feel of chicken better, I think it's better supported 20:36:41 Caleb--: Another Scheme-to-C compiler is Stalin. 20:36:52 i thought he was dead 20:36:57 *lol* 20:37:00 cky: any benchmarking on speed was done? 20:37:14 francogrex: I don't know of any, but I haven't searched for one. 20:37:22 bbl... calculus 20:37:33 Caleb--: I'm pretty sure that for all those systems, the Scheme-to-C compiler is written in Scheme. 20:37:44 i wonder how efficient they are 20:37:50 Stalin's and Gambit's ones definitely are written in Scheme.- 20:37:57 Caleb--: quite efficient i'm sure 20:38:04 Yep, I'd say so. *nods* 20:38:12 (Re "quite efficient".) 20:39:02 Caleb--: In theory, Scheme isn't much harder to compile than C, though with systems like Gambit you can put annotations in your code to help out the compiler even more. 20:39:08 I do common lisp mainly, but one can't be a real programmer without learning also scheme and C 20:39:19 Indeed. :-) 20:40:18 a bit of assembly also won't hurt, if just for learning and not actual usage 20:40:52 I actually learnt x86 assembly before learning C. 20:40:59 (This was back when I was 14.) 20:41:25 Being able to mentally translate C code into assembly was fun. :-) 20:41:25 cky: so like 1 year ago 20:41:32 francogrex: *lol* 20:41:40 Like 16 years ago. :-) 20:44:24 how would that be written in scheme: (map 'list #'(lambda (x) (* x 6)) '(2 5 7)) 20:45:08 rudybot: (map (lambda (x) (* x 6)) '(2 5 7)) 20:45:08 cky: ; Value: (12 30 42) 20:45:12 yes, knowing x86 asm is incredibly useful, especially when debugging crash dumps 20:45:25 davazp [~user@36.Red-79-153-149.dynamicIP.rima-tde.net] has joined #scheme 20:45:38 cky: nice 20:45:42 Caleb--: Yep. And I've done lots of that in previous jobs. 20:45:59 francogrex: :-) 20:46:17 rudybot: (map (lambda (x) (expt x 6)) '(2 5 7)) 20:46:18 francogrex: your sandbox is ready 20:46:19 francogrex: ; Value: (64 15625 117649) 20:46:24 Or, to be more succinct with SRFI 26: 20:46:28 rudybot: (require srfi/26) 20:46:29 cky: Done. 20:46:37 rudybot: (map (cut expt <> 6) '(2 5 7)) 20:46:38 cky: ; Value: (64 15625 117649) 20:46:48 cky, why did MIT move to Python? 20:46:56 -!- Cowmoo [~Cowmoo@cambridge-vxty.basistech.com] has quit [Ping timeout: 276 seconds] 20:47:02 cky: where is srfi/26 ? 20:47:02 Caleb--: Because their robotics stuff had a Python library, but no Scheme library. 20:47:10 francogrex: http://srfi.schemers.org/srfi-26/srfi-26.html 20:47:49 cky, also: any idea what the differenec between this book http://www.htdp.org/ and SICP? 20:47:50 francogrex: It's builtin to Chicken 20:47:59 sjamaan: Oh really? That's too awesome. 20:48:05 You can (use srfi-26) if you want 20:48:10 It's a no-op though :) 20:48:26 Caleb--: They're targeted at difference audiences. 20:48:34 Caleb--: You should read both and see which one is a better fit for you. 20:48:50 i barely have time to read SICP 20:48:51 :( 20:49:09 Maybe that's a sign that HtDP is a better fit for you, then. 20:49:27 is HtDP supposed to be "easier"? 20:50:16 It's more accessible to people without prior programming knowledge, but is not necessarily more "soft core" than any other book. (I haven't read it, so that's all I can say.) 20:50:22 ok 20:50:44 sjamaan: ah nice, I as trying to require but indeed it is built in 20:50:58 chicken is realy THE scheme 20:51:03 :-) 20:51:16 francogrex: For chicken-specific questions, you might like to join #chicken. Here is fine too, but it can get lost in the noise sometimes 20:51:27 sjamaan: ok 20:51:59 I think SICP is more famous 20:52:00 R5RS SchmeE? 20:52:00 Sorry, I couldn't find anything for SchmeE?. 20:52:04 is that the standard? 20:52:20 There are multiple Scheme standards, of which R5RS and R6RS are two. 20:52:27 (They're certainly the current ones.) 20:52:54 the only thing that kinda annoys me about scheme is loops 20:53:08 The next version of the standards will have (at least) two versions, one that caters better to the R5RS crowd and one that caters better to the R6RS crowd. 20:53:20 i'm so used to just writing while/for loops in other languages, that always thinknig recursively about them is a kind of a hassle 20:53:30 Caleb--: There are many different types of loop extensions that might be helpful 20:53:31 Caleb--: You better wean yourself of that hurdle, then. 20:53:37 foof-loop! 20:53:40 Caleb--: write a macro and use while and for 20:53:42 loopy-loop! 20:53:56 *cky* Googles that one up. 20:54:01 francogrex: right! That's what those extensions do anyway 20:54:08 cky: TBH, I never tried either of them 20:54:17 Neither. 20:54:27 yeah, I was experiencing with loopy-loop today, neat! 20:54:41 there's also srfi-....42? 20:54:46 eager comprehensions 20:55:31 -!- bweaver [~user@75-148-111-133-Chattanooga.hfc.comcastbusiness.net] has quit [Ping timeout: 240 seconds] 20:55:50 sicp's 4.1 The Metacircular Evaluator, boggles the mind 20:56:11 bgs100 [~ian@unaffiliated/bgs100] has joined #scheme 20:56:36 I would also add solemnly: he who has not read SICP cannot call himself a true programmer 20:57:05 francogrex, there must be at least one true programmer that hasn't read SICP 20:57:09 ^_^ 20:57:31 Probably a Perl hacker ;) 20:57:46 lol 20:59:37 -!- Kirill [~user@CPEf81edff80afa-CM0016924f5bee.cpe.net.cable.rogers.com] has left #scheme 21:02:08 i can't make myself switch to Linux :( 21:02:33 *sjamaan* neither 21:02:46 But I don't suppose you'd be switching from BSD ;) 21:02:50 me neither, but i enjoy both win and linux 21:02:53 for starters, i love Office 2010 too much :p 21:02:59 :| 21:03:07 don't :| me 21:03:13 heh! 21:03:21 and don't heh! me either 21:03:23 how do you love an office suite? it's a necessary evil at best 21:03:34 it's the best office suite, bar none. 21:03:44 That doesn't answer the question :P 21:03:50 sjamaan: BSD for the win, but I wish there's a BSD that supports running as Xen dom0. 21:04:00 it's the best at not annoying me by refusing to open documents that other people send me, but that doesn't mean I love it 21:04:05 cky: NetBSD does 21:04:10 *francogrex* doesn't particularly like windows, but forced to use it at work 21:04:12 cky: NetBSD has supported Xen dom0 for ages 21:04:12 franki^, have you ever used OneNote? 21:04:13 OpenBSD has a special place in my heart, but FreeBSD is pretty good too. 21:04:15 or, just run VirtualBox 21:04:19 sjamaan, chandler: Thanks! 21:04:22 I'll try it out. 21:04:33 Caleb--: Nope, I don't use any office software 21:04:43 LaTeX > any "Office" suite 21:04:44 SuperMemo might prolly work in Wine 21:04:44 Running Windows in VirtualBox on FreeBSD is probably going to be a better experience than running a Windows domU under NetBSD dom0 21:04:48 Well, I have used Google Docs in emergencies... 21:04:52 chandler: VirtualBox is...how shall we say this. It's like a scooter, compared to Xen being a shuttle. 21:05:16 cky: Scooters are easier to driev and less likely to kill you if they crash? :> 21:05:16 Only if your guest is paravirtualized. 21:05:26 chandler: Yep, my guests are Linux, so. :-) 21:05:41 i like best spartan os 21:05:48 franki^: :-P 21:06:05 Oh. In the case of Linux guests, NetBSD dom0 and Linux domU is probably a decent solution. 21:06:15 My favourite OS is Emacs :P 21:06:17 currently using damn small linux, 50 mb ! that's all 21:06:32 Anyway, this discussion has wandered far away from Scheme... 21:06:40 franki^: emacs too 21:07:07 If IKEA made scientific machines... - http://tinyurl.com/36tnrar 21:07:19 chandler: Well, the talk of Emacs brings it a little closer...assuming people haven't altogether given up on the idea of porting Emacs to Scheme. :-P 21:07:33 Caleb--: nice link 21:07:42 ;D 21:07:43 Let's write SchemeOS 21:07:46 kuribas [~user@d54C2AF18.access.telenet.be] has joined #scheme 21:07:50 franki^: Lots of people have tried. 21:07:51 Let's not and say we did, eh? 21:08:00 :) 21:08:10 Let's write MORE CODE. 21:08:11 minion: chant 21:08:12 MORE CODE 21:08:12 an OS written in such a high level language? :P 21:08:36 there was a project in Microsoft Research to write a kernel in .NET 21:08:37 Caleb--: Yes, there's DreamOS, there's uh, what's that one by Matthew Flatt called? 21:08:41 Caleb--: Yes, Singularity. 21:08:44 yep 21:09:02 not sure how that one ended ;p 21:09:05 there are OS written in lisp 21:09:47 Caleb--: To me, the topic of interest is writing a _fully_-managed OS, with no unmanaged code in any persistent place (except the bootloader). 21:09:55 lisppaste [~lisppaste@common-lisp.net] has joined #scheme 21:10:19 what would be the benefits of a fully managed OS? 21:10:34 Caleb--: Everything is automatically whole-program-optimisable. 21:10:50 Caleb--: At JIT time, even, which means you can do dynamic profiling. 21:11:03 would it run only managed code? 21:11:18 Caleb--: You can make sandboxes to run unmanaged code in, but it would actually be slower than running managed code. 21:11:34 i see 21:13:09 many Java programmers are claiming that Java code is very fast, and in fact runs faster than native code in some situations 21:13:18 Yes, for the same reasons. 21:13:26 but why in god's holy name, is every Java app so freaking sluggish? 21:13:33 well, the GUI at least. 21:13:37 Caleb--: The JVM has what's called "warmup time". 21:13:59 So, if you run short-lived programs in Java, then yes, you will feel more pain. 21:14:08 Long-running programs are optimised really well. 21:14:42 i guess that's why it's so popular for various server-side solutions 21:14:42 As for the GUI, depends on whether you're talking about Swing programs or SWT ones. 21:14:45 Yep. 21:15:00 and the whole cross-platform thing 21:15:10 although i'd probably just use Qt 21:15:20 Yes, in fact there's going to be SWT/Qt soon. :-) 21:15:25 So you can write Java apps that use Qt. 21:15:31 Well, you already can with QtJambi. 21:15:43 Qt is an amazing framework 21:15:43 But, with SWT/Qt, you can use SWT (which is widely used in projects like Eclipse). 21:17:16 Unfortunately the current Qt bindings situation is a bit of a mess. 21:17:30 From what I can determine, each language binding has basically done a lot of the same work in a different way. 21:20:05 -!- francogrex [~user@109.130.104.108] has quit [Remote host closed the connection] 21:20:09 i've gotta go now 21:20:19 thanks for all the interesting info cky 21:20:30 Have fun! 21:20:33 i haven't done this in a while 21:20:39 josephholsten [~josephhol@216.16.128.242] has joined #scheme 21:20:57 i guess 3 years of military service do make you forget some things ;p 21:20:58 chandler: Yeah, certainly QtJambi isn't as simple as a Swig thing. 21:23:55 There are also two different Python bindings, each implemented completely differently, a built in JavaScript binding that uses mechanisms that are (as far as I can tell) not exposed to the user, a library that provides support for introspective bindings and a few bindings that use that, and a few others out there. 21:24:20 !! 21:25:13 -!- Unthahorsten [~Unthahors@del63-3-88-177-167-25.fbx.proxad.net] has quit [Quit: goodbye] 21:33:53 -!- femtooo [~femto@95-89-197-196-dynip.superkabel.de] has quit [Quit: Leaving] 21:37:13 -!- Riastradh [debian-tor@fsf/member/riastradh] has quit [Ping timeout: 245 seconds] 21:43:17 Riastradh [debian-tor@fsf/member/riastradh] has joined #scheme 21:51:13 aidalgol [~user@132.181.15.184] has joined #scheme 21:56:05 -!- rpg [~rpg@216.243.156.16.real-time.com] has quit [Remote host closed the connection] 21:58:25 -!- aidalgol [~user@132.181.15.184] has quit [Remote host closed the connection] 22:02:48 someone here works at the northeastern programming research lab, correct? 22:05:42 -!- stis [~stis@1-1-1-39a.veo.vs.bostream.se] has quit [Remote host closed the connection] 22:05:45 elly, yes, several of us 22:08:32 -!- mmc [~michal@cs27120227.pp.htv.fi] has quit [Ping timeout: 240 seconds] 22:08:43 elly: To varying degrees of "works". 22:17:29 cool :) 22:21:42 schmir [~schmir@p5099de5a.dip0.t-ipconnect.de] has joined #scheme 22:22:35 kilimanjaro [~kilimanja@unaffiliated/kilimanjaro] has joined #scheme 22:26:20 -!- schmir [~schmir@p5099de5a.dip0.t-ipconnect.de] has quit [Ping timeout: 265 seconds] 22:34:50 -!- homie [~user@xdsl-78-34-102-240.netcologne.de] has quit [Read error: Connection reset by peer] 22:36:08 homie [~user@xdsl-78-34-102-240.netcologne.de] has joined #scheme 22:36:50 -!- wbooze [~user@xdsl-78-34-102-240.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 22:37:05 -!- homie [~user@xdsl-78-34-102-240.netcologne.de] has quit [Client Quit] 22:37:27 -!- wuj [~wuj@pool-74-101-71-212.nycmny.east.verizon.net] has quit [Ping timeout: 265 seconds] 22:41:29 -!- kuribas [~user@d54C2AF18.access.telenet.be] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 22:46:33 alocay [c01f59d3@gateway/web/freenode/ip.192.31.89.211] has joined #scheme 22:46:53 Hello, anyone available to answer a question? 22:47:09 ask away 22:47:26 zac314159 [~user@c-68-84-149-234.hsd1.nm.comcast.net] has joined #scheme 22:47:50 Ok so I'm working on an algorithm, nothing fancy just trying to understand scheme. I'm trying to define a function that takes in a list and returns its reverse. 22:48:02 This is what I had so far and I thought it would work but it doesn't 22:48:15 (define (reverse lis)(cond ((null? lis) '())(else cons (car lis)(reverse (cdr lis))))) 22:48:28 Unfortunately it just returns an empty list every time 22:49:08 That's because you aren't doing anything with CONS or (CAR LIS) -- you're evaluating those expressions, and then throwing away the results. 22:49:20 oh 22:50:01 oh I see you're right, my else statement isn't returning anything 22:50:12 If you want to apply a procedure, you need to use parentheses: (CONS (CAR LIS) ...), for example. An ELSE clause in COND, say (ELSE X Y Z), evaluates X, Y, and Z, in that order, but throws away the values of X and Y, and yields the value of Z. 22:50:43 Whereas (ELSE (X Y Z)) will evaluate, and yield the value of, (X Y Z), applying the procedure X to the arguments Y and Z. 22:50:58 so if I do (else (cons ....)) my evaluated list is not thrown away? 22:51:04 oh ok 22:51:17 -!- kar8nga [~kar8nga@j-96.vc-graz.ac.at] has quit [Remote host closed the connection] 22:52:46 ah ok I see. I also had the thing reverse 22:53:10 It needs to be (reverse (cdr lis))(car lis) not vice versa 22:53:23 which makes since. 22:53:27 sense* 22:56:31 I also had another algorithm I was working on and that was to count the number of atoms in the list, also including sublists. But how do I go about keeping track of my count without variables? 22:59:23 -!- copumpkin [~pumpkin@unaffiliated/pumpkingod] has quit [Ping timeout: 276 seconds] 23:00:53 homie [~user@xdsl-78-34-102-240.netcologne.de] has joined #scheme 23:01:49 drdo [~user@2.208.54.77.rev.vodafone.pt] has joined #scheme 23:02:22 -!- mejja [~user@c-5bb9e555.023-82-73746f38.cust.bredbandsbolaget.se] has quit [Remote host closed the connection] 23:02:48 wbooze [~user@xdsl-78-34-102-240.netcologne.de] has joined #scheme 23:06:04 -!- HG` [~HG@xdsl-188-118-128-154.dip.osnanet.de] has quit [Quit: Leaving.] 23:06:18 Hello I'm trying to count the number of 0s in a list. I'm very new to scheme so could someone briefly explain why this doesn't do that? Here's what I wrote(define (zeros s lis)(cond ((null? lis) s)((list? (car lis)) (zeros s (car lis)))((equal? (car lis) 0) (+ 1 s)(zeros s (cdr lis)))(else (zeros s (cdr lis))))) 23:07:00 I was trying to use the atom 's' to keep track of the count so I think I'm having a similar issue as before and I'm just updating 's' and throwing it away 23:07:14 when you find a zero you immediately return, instead of recuring 23:07:34 actually you are recuring, but throwing away the (+1 s) result 23:08:03 Hmmm I thought so but if I do ((+ 1 s)(zeros s (cdr lis))) I get an error 23:08:16 it tells me: "Error: attempt to apply non-procedure '1'." 23:08:34 -!- davazp [~user@36.Red-79-153-149.dynamicIP.rima-tde.net] has quit [Remote host closed the connection] 23:08:52 (1 blabla) makes no sense 23:08:59 since 1 is not a procedure 23:09:04 (+ 1 S) gives a number, not a procedure. If you evaluate the expression (F X Y), the expression F must evaluate to a procedure, but you've written ((+ 1 S) ...), so the F in this case is not a procedure. 23:09:55 doing (+ 1 s) is not a mutable operation, so s doesnt change its value 23:10:04 Note that (+ 1 S) does not have any *effect* of incrementing S in-place. Before or after you evaluate (+ 1 S), the value of S is no different. You probably want to pass a different argument in the recursive call to ZEROS -- namely, one more than the value of S: (ZEROS (+ 1 S) (CDR LIS)). 23:10:25 ohh 23:10:29 I get it. 23:11:31 Oh cool thanks guys. 23:11:36 I'm slowly getting this. 23:17:16 copumpkin [~pumpkin@17.101.89.205] has joined #scheme 23:17:16 -!- copumpkin [~pumpkin@17.101.89.205] has quit [Changing host] 23:17:16 copumpkin [~pumpkin@unaffiliated/pumpkingod] has joined #scheme 23:20:12 -!- fradgers- [~fradgers-@5e064cc1.bb.sky.com] has left #scheme 23:33:44 -!- alocay [c01f59d3@gateway/web/freenode/ip.192.31.89.211] has quit [Quit: Page closed] 23:33:55 -!- dnm [~dnm@static-71-166-174-24.washdc.east.verizon.net] has quit [Ping timeout: 240 seconds] 23:34:00 -!- copumpkin [~pumpkin@unaffiliated/pumpkingod] has quit [Ping timeout: 265 seconds] 23:38:02 yamanu [~yamanu@89.142.205.104] has joined #scheme 23:43:52 copumpkin [~pumpkin@17.101.89.205] has joined #scheme 23:43:52 -!- copumpkin [~pumpkin@17.101.89.205] has quit [Changing host] 23:43:52 copumpkin [~pumpkin@unaffiliated/pumpkingod] has joined #scheme 23:49:36 wuj [~wuj@pool-74-101-71-212.nycmny.east.verizon.net] has joined #scheme 23:52:21 Jafet [~Jafet@unaffiliated/jafet] has joined #scheme 23:59:11 RageOfThou [~RageOfTho@users-55-164.vinet.ba] has joined #scheme