00:01:18 A thoroughly broken module system and macro system? 00:06:35 and the drawbacks of gauche? 00:06:40 Riastradh: what's a readable scheme implementation? 00:08:58 Riastradh: ping 00:09:24 -!- blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has quit [Read error: 110 (Connection timed out)] 00:19:34 -!- perdix [n=perdix@sxemacs/devel/perdix] has quit ["A cow. A trampoline. Together they fight crime!"] 00:42:03 -!- ski_ [n=md9slj@remote1.student.chalmers.se] has quit ["Lost terminal"] 00:47:42 -!- mrsolo [n=mrsolo@nat/yahoo/x-ntmepxdqkeqrggow] has quit ["Leaving"] 00:47:49 -!- karme [n=user@static.180.75.40.188.clients.your-server.de] has quit [Remote closed the connection] 00:48:02 arcfide [n=arcfide@adsl-99-14-211-8.dsl.bltnin.sbcglobal.net] has joined #scheme 00:48:09 perdix [n=perdix@sxemacs/devel/perdix] has joined #scheme 00:48:28 saccade_ [n=saccade@VPN-ONE-TWENTY-FIVE.MIT.EDU] has joined #scheme 00:48:33 Good evening everyone. 00:49:05 Just as a thought, how many Scheme implementations have convenient ways of taking a file descriptor and converting it to a port? 00:49:25 Chez does, and I think Chicken, Gambit, and PLT Scheme all do, but are there any others? 00:49:43 leppie: How about your implementation? 01:02:18 -!- Axioplase_ is now known as Axioplase 01:04:30 -!- saccade [n=saccade@c-66-31-201-117.hsd1.ma.comcast.net] has quit [Read error: 110 (Connection timed out)] 01:05:44 ski_ [n=md9slj@remote1.student.chalmers.se] has joined #scheme 01:13:08 eno__ [n=eno@adsl-70-137-156-35.dsl.snfc21.sbcglobal.net] has joined #scheme 01:16:01 -!- eno [n=eno@nslu2-linux/eno] has quit [Read error: 145 (Connection timed out)] 01:20:52 jcowan [n=jcowan@cpe-74-68-154-139.nyc.res.rr.com] has joined #scheme 01:21:11 -!- perdix [n=perdix@sxemacs/devel/perdix] has quit [] 01:24:56 -!- blackened`_ [n=blackene@ip-89-102-28-224.karneval.cz] has quit [] 01:30:23 -!- lowlycoder [n=x@unaffiliated/lowlycoder] has quit [Client Quit] 01:33:07 perdix [n=perdix@sxemacs/devel/perdix] has joined #scheme 01:35:11 merus [n=merus@pal-175-116.itap.purdue.edu] has joined #scheme 01:35:46 QinGW [n=wangqing@203.86.89.226] has joined #scheme 01:43:30 -!- saccade_ [n=saccade@VPN-ONE-TWENTY-FIVE.MIT.EDU] has quit ["This computer has gone to sleep"] 01:46:23 *jcowan* does his feeble best, and (possibly) provokes a magnificent screed from Joe Marshall. 01:48:45 PLT Scheme has no way to convert a file descriptor into a port. 01:49:14 I think you can use its FFI to do so though. 01:53:12 perdiy [n=perdix@sxemacs/devel/perdix] has joined #scheme 01:53:16 -!- perdix [n=perdix@sxemacs/devel/perdix] has quit [Read error: 104 (Connection reset by peer)] 01:53:32 -!- perdiy is now known as perdix 01:54:44 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 01:55:07 foof [n=user@118-021-204-069.jp.fiberbit.net] has joined #scheme 01:57:18 synx: I was almost positive that it had a way to do that. 01:58:39 arcfide: http://docs.plt-scheme.org/inside/Ports_and_the_Filesystem.html#(cpp._scheme_make_fd_input_port) 01:58:51 Only with the FFI, no native scheme interface to it. 02:01:10 arcfide: scsh does, of course ;-) 02:01:34 scsh can even convert a port into a fd, well, sometimes. 02:01:50 Bugger. 02:01:54 if it's a port wrapped around a file descriptor no doubt 02:02:22 -!- Quadrescence [n=quad@unaffiliated/quadrescence] has quit [Remote closed the connection] 02:02:54 Usually. 02:03:00 details in the manual. 02:07:15 eno [n=eno@nslu2-linux/eno] has joined #scheme 02:12:26 peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has joined #scheme 02:13:11 https://synx.us.to/code/scheme/make-fd-port.ss 02:13:20 I'm feeling retarded about names at the moment, but 02:14:19 The only time I've ever had to turn a file descriptor into a port though, was for FastCGI, and it sucks and I quit. 02:15:50 -!- peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has quit [Client Quit] 02:17:23 -!- eno__ [n=eno@adsl-70-137-156-35.dsl.snfc21.sbcglobal.net] has quit [Read error: 110 (Connection timed out)] 02:22:20 -!- Pepe_ [n=ppjet@78.113.44.92] has quit [Remote closed the connection] 02:23:20 Pepe_ [n=ppjet@78.113.44.92] has joined #scheme 02:25:04 macr0 [n=vista@71.21.122.103] has joined #scheme 02:25:09 Who here has experience with web servers written in Scheme? 02:26:01 I want to run a local web server and write REST-ful webapps to run on it. Something that can compile Scheme to JS would be cool, but not necessary. 02:26:30 So far I've seen Hop and the thing that PLT provides. 02:28:28 saccade_ [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has joined #scheme 02:29:48 -!- macr0 [n=vista@71.21.122.103] has quit ["Leaving."] 02:34:33 TimMc: There is also something called Magic. I don't know what its status is now. 02:34:39 TimMc: http://www.poseur.com 02:34:57 TimMc: Additionally, do you need things to be a web server, or can you work off of something like mod_lisp? 02:43:22 TimMc: There is something for Gauche, but I can't even recall the name. 02:44:33 copumpkin [n=pumpkin@c-76-118-10-135.hsd1.ma.comcast.net] has joined #scheme 02:53:00 tjafk1 [n=timj@e176209037.adsl.alicedsl.de] has joined #scheme 02:58:54 -!- luz [n=davids@189.122.90.116] has quit ["Client exiting"] 03:05:51 amttc [n=alex@adsl-190-186-4.asm.bellsouth.net] has joined #scheme 03:08:51 -!- tjafk2 [n=timj@e176222072.adsl.alicedsl.de] has quit [Read error: 110 (Connection timed out)] 03:12:19 -!- Nshag [i=user@Mix-Orleans-106-4-179.w193-248.abo.wanadoo.fr] has quit [Remote closed the connection] 03:18:00 -!- forcer [n=forcer@e177158090.adsl.alicedsl.de] has quit [Read error: 113 (No route to host)] 03:22:38 arcfide: ping 03:32:43 poet [n=poet@unaffiliated/poet] has joined #scheme 03:33:15 can anyone explain to me what this error message means: file has more than one expression; expected a module declaration only 03:33:43 It probably means that you are using PLT Scheme and forgot to write `#lang foo' at the top of your file, for some language foo. 03:36:27 what dialect of scheme do people usually write their open source software in? 03:40:19 poet: PLT, Chicken, MIT, Petite Chez, Bigloo, or scheme48 03:40:34 ...is what I've seen here 03:40:48 *offby1* ponders a new "Turkey Scheme" 03:41:01 Oh and Guile 03:41:34 http://www.dmoz.org/Computers/Programming/Languages/Lisp/Scheme/Implementations/ 03:41:35 -rudybot_:#scheme- http://tinyurl.com/mjzs8s 03:41:43 Dunno where to find a list of specifically free software. 03:47:05 -!- MichaelRaskin [n=MichaelR@195.91.224.225] has quit [Remote closed the connection] 03:47:21 Everything at http://spreadsheets.google.com/pub?key=tRCHK6jWXuKMABKAfoOwWqw is free software except EdScheme and Chez. 03:48:03 There's free and proprietary as well software in Gambit (including video games!) 03:48:14 *jcowan* nods. 03:49:12 But I'd just say that people use their favourite Scheme for whatever task (even though I happen to use another, I mostly stick to my implementation of choice) 03:49:54 Im having a really hard time understanding the PLT documentation for defining c structs. Can anyone point me to an example? 03:51:02 I'm trying to define a C structure that will be passed to a Windows API function 03:52:04 As things stand, portability in Scheme is primarily handled by portability of the underlying implementation. 03:52:39 General request to the participants of the Scheme report process: Please reduce your verbiage as much as you can. I can't keep up with flamage on the mailing lists and Usenet. 03:53:56 Omit needless words! Omit needless words! Omit needless words! 03:55:09 QinGW1 [n=wangqing@203.86.89.226] has joined #scheme 03:55:18 Whats scheme report process? 03:55:42 , although most of the discussion is happening on the R6RS discussion mailing list, . 03:56:42 Mr_Awesome [n=eric@c-98-212-143-245.hsd1.il.comcast.net] has joined #scheme 03:56:43 _Pb [n=Pb@75.131.194.186] has joined #scheme 03:57:45 *jcowan* inserts a rant denouncing Strunk as a Victorian old fart and White as an incompetent who shouldn't have meddled with what he had no comprehension of. 03:58:07 And I have already cut long passages from my rants before posting, in expectation of using some of them in future rants. 03:58:17 aw, but: Humor can be dissected as a frog can, but the thing dies in the process and the innards are discouraging to any but the pure scientist. --E.B. White 03:58:23 ya gotta love that 03:58:25 ya gotta 03:58:26 You have not been the worst offender of verbiage, jcowan. 03:58:48 saccade__ [n=saccade@VPN-ONE-FOURTEEN.MIT.EDU] has joined #scheme 03:59:10 offby1: Sure, White was a good writer. Especially when he ignored his own rules. As he generally did. 03:59:16 -!- copumpkin [n=pumpkin@c-76-118-10-135.hsd1.ma.comcast.net] has quit [Read error: 104 (Connection reset by peer)] 04:00:04 at least scheme is standardized. 04:00:45 copumpkin [n=pumpkin@166.196.130.94] has joined #scheme 04:00:57 o, and is there a way to get rid of some of the parenthesea... 04:01:05 Don't look at them. 04:02:42 Look at the indentations and pretend it's Python or Haskell, according to taste. 04:03:19 sepult [n=user@xdsl-87-78-129-138.netcologne.de] has joined #scheme 04:04:25 'invisible' sexpressions? 04:04:29 what parenthesea? 04:04:57 dont think invisible, indentation based is a goode idea 04:04:59 the wide sargasso parenthesea 04:05:31 *offby1* slaps copumpkin upside the haid 04:06:10 Riastradh: http://itre.cis.upenn.edu/~myl/languagelog/archives/001604.html on Strunk & White and the Red Sox. 04:06:23 :) 04:06:25 csmrfxX: But to answer your question directly: no. Every ( and ) in Scheme is significant. 04:07:52 For fun.. what if the outer () would be denoted by ending . 04:08:13 And each , would start a new one. 04:10:14 define, fact n, if, = n 0: 1, n *, fact, - n 1. 04:10:36 bit vague, that. 04:11:46 every () is sacred 04:11:49 -!- QinGW [n=wangqing@203.86.89.226] has quit [Connection timed out] 04:14:23 -!- _Pb [n=Pb@75.131.194.186] has quit ["Leaving"] 04:15:05 -!- saccade_ [n=saccade@65-78-24-131.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com] has quit [Read error: 110 (Connection timed out)] 04:16:29 peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has joined #scheme 04:18:22 MichaelRaskin [n=MichaelR@213.171.48.239] has joined #scheme 04:22:32 define fact n, if = n 0: 1, * n, fact - n 1. ...might be possible 04:24:11 arcfide: I could, but it will require some plumbing in C# 04:25:51 Riastradh: who's been the worst offender of verbiage, then? (according to you) 04:28:08 *jcowan* points out that it's important to note that verbiage /= wordage. 04:28:31 "This requires not that the writer make all sentences short, or that he avoid all detail and treat his subjects only in outline, but that every word tell." --Will Strunk 04:30:10 -!- arcfide [n=arcfide@adsl-99-14-211-8.dsl.bltnin.sbcglobal.net] has left #scheme 04:33:01 That's goddamn poetry, not prose. 04:33:20 -!- copumpkin [n=pumpkin@166.196.130.94] has quit [] 04:33:49 -!- Modius_ [n=Modius@24.174.112.56] has quit [Client Quit] 04:34:00 What, synx? The Strunk quote, or what the Strunk quote applies to? 04:34:40 I think I shouldn't mind, in any case, if every message on the r6rs-discuss list were a haiku. That would require of every participant tremendous economy of language. 04:35:01 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 04:35:11 Well, we would get tired of hearing what season it was. 04:35:37 True. I meant only the form, not the essence of haiku. 04:36:04 Maybe parentheses could be eradicated by using capitalization and ending . 04:36:17 then again, it would mean... 04:37:13 Or, to be slightly more practical, perhaps every message should be in iambic pentameter. Everyone would still be forced to carefully consider each word, but perhaps not so debilitatingly as with haiku. 04:37:39 Why not just impose a charlimit 04:37:51 When I wrote Strunk and Cowan I added the phrase "or even use a style entirely free of verbal ornament" as a third alternative 04:38:10 csmrfxX: As I said, verbiage is not measured by word count. 04:38:13 jcowan: i just *knew* his irrational hatred for S&W had to be political in nature: he objects to the spurious masculinization of the generic 3rd person pronoun! 04:38:47 (which is neuter, btw; as any student of the saxon half of anglo-saxony knows) 04:38:58 No, it's not, and never has been in English. 04:39:02 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 04:39:27 "his" for "its", yes, but not "he" or "him" for "it". It's no accident that, just like in the rest of IEland, neuter nominatives and accusatives are identical. 04:39:51 "They" is the 3rd person indefinite singular pronoun in English and has been for centuries at least. 04:40:09 but "his" stems from the german "sein", which is both masculine and neuter 04:40:38 thus, in the OED: "his, poss. pron., 3rd sing. masc. and neut." 04:40:43 QED! 04:41:06 I said it was true for "his"; "its" didn't replace it until the 17th century. 04:41:14 point taken 04:41:25 It isn't *from* "sein", though; "sein", as its initial consonant tells us, is the original reflexive. 04:41:38 OED to the rescue, though: "him, pers. pron., 3rd sing. masc. (and neut.), dat.-acc." 04:41:52 "In OE., on the contrary, the refl. possessive sín was already obsolescent, and usually replaced by his, hire, hira." 04:42:31 interesting 04:42:48 For future correspondences upon / This mailing list, please make your lines of i- / Ambs five apiece, and stray not from your points. 04:43:38 So, wat r u guyse smoking, and where can I get some of it? 04:43:48 lol, languages with standards set by a private organization 04:44:06 It was hard enough to attract IEEE's attention, never mind any other standards body. 04:44:07 I'm sorry, csmrfxX, I can't parse `wat r u guyse'; is it English? 04:44:08 synx: and a public org would be any better? too many cooks, mein freund 04:44:14 W3C is a private organization, if it comes to that. 04:44:18 csmrfxX: ia ia lambda ftagn 04:44:30 klutometis: public accessibility is essential, as is peer review. 04:44:42 synx: i jest, i jest 04:44:50 you can't leave the reading all to the Church after all 04:45:05 lol I got trolled 04:45:53 csmrfxX: http://programming-musings.org/2007/01/29/the-lord-of-the-lambdas-2/ 04:52:03 Poems, not easy. So jaded is the mind. 04:58:00 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 05:05:44 Modius [n=Modius@24.174.112.56] has joined #scheme 05:11:49 jcowan: I read of "They" as a 3rd persion indefinite singular: "This is becoming quite common in spoken English, but it is technically ungrammatical. You should avoid it in written English", in 2nd edition of _Technical Writing and Professional Communication_ by Huckin and Olsen. I think that the Chicago Manual of Style agrees with that too. 05:12:29 Whose turn is it to mention Spivak pronouns and the like? 05:15:31 Riastradh: As you may know, English is not my mother tongue. I thus do my best to learn proper English (considering that he who uses bad grammar does it on purpose and know/knew the correct usage). 05:17:49 -!- sepult [n=user@xdsl-87-78-129-138.netcologne.de] has quit [Connection timed out] 05:18:21 I'm unlikely to use those Spivak pronouns (which I just learnt about on Wikipedia), but if I can refrain from using grammar that most reference book mention as wrong, my English can only get better I guess. 05:18:21 I try to make the english learn mine... 05:19:34 -!- davazp [n=user@56.Red-79-153-148.dynamicIP.rima-tde.net] has quit [Remote closed the connection] 05:19:36 Finnish language doesnt have feminine/masculine 05:20:15 Try Japanese and Korean. There's no plural either. 05:22:21 HG` [n=HG@xdslef015.osnanet.de] has joined #scheme 05:25:28 Using "they/them/their" as singular, it's not that it breaks the rules of grammar that bothers me, it's that it becomes more ambiguous. 05:26:03 I have to specify they, being a group of more than one person, went to the store, to make myself clear. 05:26:51 Sometimes, ambiguity (or rather subsumption) is wanted 05:27:40 Ambiguity between plural and singular is not though. 05:27:46 (as far as sex is concerned. I had misread your sentence, forget my last line) 05:27:53 s/sex/gender 05:28:00 I mean plural is already ambiguous. If everything is a list, it can have 1 or more elements. 05:28:14 Now, now. English has silly ambiguities, too, even when the genitive pronoun indicates whether the referent is singular or plural. For example, you don't know how many apparatus are involved in `his apparatus', whereas in, say, French and Spanish, in which the genitive pronoun is `son' and `su', respectively. 05:28:17 singular is specifically not a list though, only 1 element. A box, at most. 05:28:34 Riastradh: son/sa 05:28:38 ...er, finishing the sentence: In, say, French and Spanish, no such ambiguity exists. 05:28:51 Axioplase, in general, yes; in this case, the word for `apparatus' is masculine. 05:28:55 apparatus is singular, so it'd be only one apparatus. 05:29:02 No, synx. Apparatus is singular and plural. 05:29:18 Riastradh: I meant "I guess that you wrote 'su' instead of 'sa'" 05:29:22 -!- peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has quit [] 05:29:26 So... not like cactus and cactii? ._. 05:29:34 `Cactii' is simply nonsense. 05:29:43 It is simply latin. 05:30:00 I added an extra i sorry 05:30:09 cacti 05:30:10 Axioplase, ah, no, `su' is the Spanish third-person genitive pronoun for a singular modified noun. 05:30:13 synx: no. But we have scenario/scenari, medium/media, etc 05:30:21 Ah, is it? My bad. 05:30:27 I'm fairly sure that words English stole from Latin are pluralized by the Latin rules. 05:30:29 (`Cactii' is nearly as much nonsense as `virii'.) 05:30:45 -um -> -a and -us -> -i 05:30:45 virae 05:31:34 viruses... 05:31:40 Inflected Form(s): plural cac·ti \-t, -()t\ or cac·tus·es also cactus 05:32:11 cactae 05:32:20 From Latin: cardoon, and Greek: kaktos 05:32:34 http://en.wikipedia.org/wiki/Plural_form_of_words_ending_in_-us 05:32:41 anyway so I think that's stupid too. Why inflict the same nonsense on an innocent pronoun? 05:33:06 inanae 05:33:58 synx: so, not like that. Like "this is 'hise' girlfriend" and "this is 'his' boyfriend". By looking at the pronoun, you know that it refers to a masculine or to a feminine word 05:35:00 what do you mean a feminine word? 05:35:54 A gender you don't have in English ^^ 05:36:34 synx, a feminine word like the referent of `her', versus a masculine word like the referent of `him'. English doesn't have gender distinctions except in its pronouns, however. By contrast, in French, for instance, when speaking of the legs of a table, say, one would write `her legs', whereas when speaking of the chalk of a chalkboard, one says `his chalk'. 05:36:48 *Un* garçon (a boy, which happens to be a masculine word). *Une* fille (a girl, a feminine word) 05:37:20 French reminds me of vagin, which is masculine. 05:37:44 -!- ASau [n=user@83.69.240.52] has quit ["off"] 05:37:48 He/she like *son* brother. He/she likes *sa* sister. 05:37:54 So you mean an arbitrary category words go in, to assist with contextual grammar analysis, that has nothing to do with males or females. 05:38:02 yes. 05:38:07 In French, furthermore, not only does every noun have a particular gender (and some might come in pairs -- \'etudiant, a male student, versus \'etudiante, a female student), an adjective must be modified to agree with the gender of the noun it modifies. The same goes for genitive pronouns, which act as adjectives. 05:38:16 English doesn't really have those. 05:38:30 synx: we've been telling you that for a while now ^^ 05:38:53 I know that English doesn't have those. :p 05:39:00 but you still somehow do 05:39:06 A doctor. A doctoress 05:39:14 ...hah. 05:39:34 Perhaps you want `actor' and `actress', Axioplase. `Doctoress' is not a word I've ever heard. 05:39:58 my point is if you allow "their" to be singular, that's like saying (= (list 42) 42) 05:40:00 Its 'doctrines'. 05:40:18 Those are different Axioplase. 05:40:30 Ah, so is a `sardor' a male sardine? 05:40:46 actress must refer to a woman. It's not just a feminine word; it refers only to female people. 05:41:21 synx, there is some overlap between the categories and whether the words in them actually refer to masculine or feminine concepts. 05:41:48 In reality, theres no truth in truth. 05:42:01 Riastradh: That's true enough. I like to try and keep them as separate as possible though, in the interest of gender equality. 05:42:13 Dictionary.com has an entry for "doctoress" though. But yes, actor/actress is more casual. 05:43:00 most people around here just call women actors, waiters and firemen. :> 05:43:15 ok ok ok fire fighter, but I do still hear fireman sometimes. 05:44:06 So, to sum up things: French has words that designate a gender with the same one (an actress is a female person, and a feminine-gendered word), and has words whose gender is just to be learnt by heart. 05:45:27 We almost never mistake genders, beside a very few words (such as 'dumbbell') famous for being tricky. 05:46:48 I even think that you can guess 99% of the genders, should you encounter unknow words (by looking at the etymology and comparing to similar or structurally related words) 05:47:24 Anyway, time for bed, and maybe time for #scheme to return to Scheme. 05:47:35 bah, too much work really. The contextual analysis isn't worth the extra memorization. 05:47:44 I only have so many megabytes of RAM after all. 05:47:47 HA! 05:47:53 Do you speak English, synx? 05:47:59 -!- amttc [n=alex@adsl-190-186-4.asm.bellsouth.net] has left #scheme 05:48:00 And by `speak', I mean that in the literal sense -- do you know how to pronounce English? 05:48:18 Contextual analysis. Duh. I got a proof of contextual equivalence waiting for me 05:48:40 I have pronounced the word "English" before, Riastradh? 05:49:03 No, I mean the English language in general -- can you pronounce and spell English words? 05:49:40 I really don't know if I can say. 05:49:52 synx: I don't believe it is a trick question. 05:50:02 Pronunciation of English varies wildly over a broad geographic area. 05:50:05 I had a hard time with this one: http://www.madore.org/~david/misc/english-pronunciation.html 05:50:17 synx: I think any one dialect will do. 05:50:24 TimMc: try it and tell me if it's not tricky 05:50:31 I'm not asking about any sort of correctness or proper pronunciation, whatever that is, synx. 05:50:33 I don't think I could pronounce English as spoken in Wales. 05:50:51 This isn't a hard question!! 05:50:57 Obviously you can write English. 05:51:00 Can you speak it? 05:51:05 Riastradh: Well then, I can make up any sound I want for each letter? :) 05:51:49 If you can, then I assure you that you have already devoted many times the effort memorizing English pronunciation that French speakers have devoted to memorizing the gender of each word. 05:52:12 speak it? 05:52:26 Axioplase: I quickly read through maybe 8 verses. 05:52:30 It wasn't bad. 05:52:36 mmc [n=mima@cs137104.pp.htv.fi] has joined #scheme 05:52:47 TimMc, you can't just read that poem in your head; you must speak it aloud. 05:52:59 Riastradh: I was reading it aloud in my head. 05:53:08 Next, someone else must read it aloud while you transcribe it. 05:53:19 I can't speak that poem aloud without messing up... English sucks xp 05:53:33 *Axioplase* vanishes 05:53:53 Oh, that's curious. 05:53:54 and you missed your chance to quote Pulp Fiction, Riastradh :/ 05:54:14 That crossed my mind, synx, but it was too late when it did. 05:54:49 Also, I wasn't really interested in rattling your brains just to have fun with them before blowing them out. I actually did want to hear an answer to that question! 05:54:52 Riastradh: I tried reading out loud (actually) and it wasn't any harder. 05:54:56 I'm like "corpse, corps, horps, and worps" 05:55:17 jonrafkind [n=jon@98.202.86.149] has joined #scheme 05:56:03 So a language without gendered nouns subtly biased to segment societal roles by gender, and a language without horrible awful stupid pronunciation rules, that's what I want to speak. 05:56:04 I think I scan farther ahead than most people do when reading aloud. 05:56:31 synx: Have a lojban. 05:56:32 haha "I will keep you, Susy boozey" 05:56:39 I just can't do it xD 05:56:42 It's like a tongue twister. 05:56:58 TimMc: ro ko tavla la lojban 05:57:25 -!- egosh [n=Miranda@94.242.158.114] has quit [Read error: 104 (Connection reset by peer)] 05:57:54 The only stupid thing about lojban are the many arbitrary grammar rules set up by the cmavo. Once you learn those though, the rest is pretty much gravy. 05:58:13 And even cmavo can be grouped into large behavioral categories. 06:03:44 *Elly* bounces around randomly 06:09:16 is it possible to tell jokes in lojban? 06:15:13 sure, but you have to be funny 06:16:11 I heard about an entire conversation written only in cmavo. Hilarious stuff. 06:16:40 *TimMc* invents a language where all jokes (and only jokes) are grammatical. 06:17:01 *TimMc* continues dreaming 06:17:28 cornucopic [n=r00t@202.3.77.134] has joined #scheme 06:17:39 -!- cornucopic [n=r00t@202.3.77.134] has quit [Read error: 54 (Connection reset by peer)] 06:25:33 -!- Modius [n=Modius@24.174.112.56] has quit ["I'm big in Japan"] 06:27:27 Summermute [n=scott@68.34.67.216] has joined #scheme 06:30:57 Axioplase: Unfortunately, guides to English grammar are generally no such things: they are guides to social taboos, generally out-of-date social taboos. To find explanations of English as it is actually spoken and written, you must generally go to scholarly works, though there are a few honorable exceptions like the _Merriam-Webster Dictionary of English Usage_ (available on Google Books) or its sibling the _M-W Concise Dictionary of En 06:30:57 glish Usage_ (available from Amazon). 06:32:49 cornucopic [n=r00t@202.3.77.134] has joined #scheme 06:39:42 -!- HG` [n=HG@xdslef015.osnanet.de] has quit [Client Quit] 06:40:52 -!- mmc [n=mima@cs137104.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 06:50:12 ive just been reading some about common lisp. It has some interesting things like the 'back quote'. For example if you do `(eq 3 ,(+ 1 2)) it would return true. 06:50:31 because of how a ` and a coma work together. 06:50:49 does scheme have any stuff like that? 06:51:11 it would not return true, it would return '(eq 3 3) 06:51:12 no it would not return true on second thought. My mistake. It would return (eq 3 3) 06:51:18 ^ 06:51:27 That's what I meant. 06:51:33 and yes, Scheme has exactly the same backquote (though it's sometimes called quasiquote) 06:51:55 rudybot_: eval `(eq? 3 ,(+ 1 2)) 06:51:56 ecraven: your sandbox is ready 06:51:56 ecraven: ; Value: (eq? 3 3) 06:52:17 I see. Kind of an interesting thing. As someone totally new to programming, it feels at once like something from out of leftfield, sort of very ad hoc, but on the other hand, it seems very potentially useful and flexible. 06:52:54 It is extremely useful when building up list structures, saves much typing 06:53:13 seems like it would also be useful for making macros? 06:53:39 lisp is goin to be my first language, does this ` , thing show up in other languages? 06:54:07 Very much so :) I've never seen it in a non-lisp 06:54:25 Whussit called? 06:54:35 Pure has it, or pretty close. 06:55:03 being able to selectively unquote certain parts of a quoted list is pretty neat. 06:55:46 in common lisp there's also a ,@ 06:56:25 Scheme too. 06:56:33 rudybot_: eval `(eq? 3 ,(+ 1 2) ,@(map (lambda (x) (+ x 1)) '(1 2 3))) 06:56:33 ecraven: ; Value: (eq? 3 3 2 3 4) 06:57:06 There are analogues in other environments. 06:57:07 can rudybot show me the macro-expanded expressions? 06:57:17 Server-side HTML with code embedded in it, for example. 06:57:39 In the Unix shells, double quotes are more or less backquotes. 06:58:03 To me it seems like lisp might be a very natural language from which to manipulate the entirety of the code that creates a webpage all from the server side, with really cool templates 06:58:10 Exactly right. 06:58:27 like a whole new approach to making web sites where you dont even know any html, css, or javascript, but do it all with lisp 06:58:31 lol if it wasnt for the parentheses... 06:58:32 Particularly since there is a natural mapping from XML/HTML to Lisp s-expressions. 06:58:37 you can even use parenscript for your javascript needs 06:58:51 csmrfxX: Just think of them as HTML tags. 06:59:00 and are fat versions of (foo and ) 07:00:50 someone should put together, for lack of a better word, a 'lisp web framework' which would be a totally different approach to making websites/webapps, where one does not ever need to know anything about html, css, or javascript, but generates their websites/webapps entirely through lisp 07:01:08 emma: there are a bunch of those out there ;) ask in #lisp 07:01:37 css in lisp. that would hurt. 07:01:44 why? 07:02:10 lol try it 07:02:27 i did, works fine :) 07:02:31 no, really, why do you think it would be difficult? 07:02:48 I dont see the point. 07:02:58 Just an extra layer. 07:03:05 common syntax for everything? editor support for s-expressions? 07:03:12 if you want to emit a website without writing any actual CSS, you can generate CSS in scheme 07:03:19 that seems desirable to me 07:03:25 it means one less language to know 07:03:29 The point is, btw, to separate the css from the logic and structure 07:03:38 yes 07:03:50 so you have a style layer in lisp that emits the necessary css 07:03:59 And no. YOu will have to know css to make it work. 07:04:12 I disagree with your claim 07:04:27 it could look really neat, and simple, like (background-color blue) (font-size 12) etc 07:04:29 Maybe for trivial webpages. 07:04:55 and then lisp just takes care of generating all the css, html, and javascript. 07:04:58 the person that wrote the framework would need to know CSS 07:05:03 (and HTML) 07:05:27 you would just need to know that, e.g., (body 'background-color "black" (...)) does the right thing 07:05:47 Ie. CSS. 07:05:49 (or really, (body (background-color "black") (...)) or something 07:05:52 no, that isn't CSS 07:05:53 heh 07:06:03 that is lisp that describes the style of the page 07:06:15 it happens to look a lot like CSS when you turn it into a parse tree 07:06:28 but then so does HTML :) 07:06:29 And the values? 07:06:40 They wouldn't be CSS either. :) 07:07:00 it would be a new thing to learn, and it may be no less 'difficult' to learn than CSS but since you are learning the lisp way you can use the lisp you know, and you dont have to learn 4 languages to make a website. 07:07:10 If this basic idea worked we would all be writing programs in english. 07:07:22 no, we wouldn't 07:07:28 Except for some mathematicians.. 07:07:30 English is a terrible language for expressing things concisely and unambiguously 07:07:38 lisp isn't 07:08:05 lisp can be, if you want it to :) 07:08:17 sure, but it doesn't have that as a built-in feature :P 07:08:25 you shouldn't need 4 languages to make a website, if you can even come pretty close to just making it with lisp that would be pretty cool. 07:08:50 XSLT might benefit from being 'lisped' 07:09:04 in the ssax cloud there's something like that 07:09:13 someone should pursue the hell out of this idea, do it right, and make it perfect. It could be the start of a lisp renaissance and change everything. 07:09:16 you mean "XSLT is a bad ripoff of part of lisp", right? 07:09:21 But if you ever have built web apps you know trying to go 'around' CSS will only give you more "#¤"#¤! to deal with. 07:09:29 scheme could do it just as well if not better than common lisp (when i say lisp in this room i am including scheme) 07:09:30 http://www196.pair.com/lisovsky/transform/stx/ 07:10:09 emma: people are doing that, look at Weblocks for example 07:12:00 -!- jonrafkind [n=jon@98.202.86.149] has quit [Connection timed out] 07:15:05 -!- poet [n=poet@unaffiliated/poet] has quit [] 07:16:05 ecraven, does it make sense to ask if weblocks is open source? 07:16:43 LGPL as far as I know 07:17:00 it's CL though, not Scheme 07:17:07 (unfortunately :) 07:17:44 This is the weblocks site -- http://weblocks.viridian-project.de/welcome 07:17:58 does it seem likely to you that the weblocks site has been made with weblocks? 07:18:45 probably, the HTTP header indicates that it runs on hunchentoot 07:19:05 Ive read the Lisovsky paper earlier 07:21:31 What? Weblocks uses ajax for sortable tables?!? Good grief 07:23:57 Well, to recap, give the client what is the clients, and keep your logic where its at. Lisp or whatever is fine for serverside, but I dont see why client-side css or javascript would need to be lisped. Wel. Maybe js is. 07:31:08 -!- tltstc [n=tltstc@cpe-76-168-78-251.socal.res.rr.com] has quit [Read error: 60 (Operation timed out)] 07:41:16 -!- dmoerner [n=dmr@89-151.res.pomona.edu] has quit ["Leaving"] 07:43:13 mmc [n=mima@esprx01x.nokia.com] has joined #scheme 07:44:28 -!- bombshelter13_ [n=bombshel@76-10-149-209.dsl.teksavvy.com] has quit [Client Quit] 07:49:54 ASau [n=user@host10-231-msk.microtest.ru] has joined #scheme 07:58:41 -!- Summermute [n=scott@68.34.67.216] has quit [] 08:04:09 leppie|work [i=52d2e3c8@gateway/web/freenode/x-kyktppthzidvcnrb] has joined #scheme 08:45:08 -!- offby1 [n=user@q-static-138-125.avvanta.com] has quit [Remote closed the connection] 08:46:19 -!- rudybot_ [n=luser@q-static-138-125.avvanta.com] has quit [Remote closed the connection] 08:47:08 rudybot_ [n=luser@q-static-138-125.avvanta.com] has joined #scheme 08:58:59 -!- QinGW1 [n=wangqing@203.86.89.226] has quit [Read error: 54 (Connection reset by peer)] 08:59:14 QinGW [n=wangqing@203.86.89.226] has joined #scheme 08:59:50 -!- proq [n=user@unaffiliated/proqesi] has quit [Connection timed out] 09:04:15 -!- QinGW [n=wangqing@203.86.89.226] has quit [Read error: 104 (Connection reset by peer)] 09:04:59 QinGW [n=wangqing@203.86.89.226] has joined #scheme 09:05:50 HG` [n=HG@xdslgi077.osnanet.de] has joined #scheme 09:08:03 -!- rudybot_ [n=luser@q-static-138-125.avvanta.com] has quit [Remote closed the connection] 09:08:17 rudybot_ [n=luser@q-static-138-125.avvanta.com] has joined #scheme 09:16:13 tltstc [n=tltstc@cpe-76-168-78-251.socal.res.rr.com] has joined #scheme 09:19:56 Narrenschiff [n=ritchie@vpn108.its.manchester.ac.uk] has joined #scheme 09:30:58 Nshag [i=user@Mix-Orleans-106-1-159.w193-248.abo.wanadoo.fr] has joined #scheme 09:54:44 QinGW1 [n=wangqing@203.86.89.226] has joined #scheme 09:59:12 -!- QinGW [n=wangqing@203.86.89.226] has quit [Read error: 60 (Operation timed out)] 09:59:32 -!- Axioplase is now known as Axioplase_ 10:10:54 -!- QinGW1 [n=wangqing@203.86.89.226] has quit [Read error: 60 (Operation timed out)] 10:14:57 -!- Narrenschiff [n=ritchie@vpn108.its.manchester.ac.uk] has quit [Read error: 113 (No route to host)] 10:16:46 masm [n=masm@bl10-7-131.dsl.telepac.pt] has joined #scheme 10:28:19 -!- rudybot_ [n=luser@q-static-138-125.avvanta.com] has quit [Remote closed the connection] 10:37:41 Edico [n=Edico@unaffiliated/edico] has joined #scheme 10:44:41 -!- HG` [n=HG@xdslgi077.osnanet.de] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- Mr_Awesome [n=eric@c-98-212-143-245.hsd1.il.comcast.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- tjafk1 [n=timj@e176209037.adsl.alicedsl.de] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- ski_ [n=md9slj@remote1.student.chalmers.se] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- sladegen [n=nemo@unaffiliated/sladegen] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- Axioplase_ [n=Axioplas@fortigate.kb.ecei.tohoku.ac.jp] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- dfeuer [n=dfeuer@wikimedia/Dfeuer] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- _Jordan_ [n=jcooper@173-45-228-22.slicehost.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- etoxam [n=||||||||@84.79.67.254] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- eli [n=eli@winooski.ccs.neu.edu] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- Adamant [n=Adamant@unaffiliated/adamant] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- nothingHappens [n=nothingh@173-25-176-111.client.mchsi.com] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- jyujin [n=mdeining@vs166245.vserver.de] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- elf [i=elf@antenora.aculei.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- acieroid [n=acieroid@ks23738.kimsufi.com] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- Leonidas [n=Leonidas@unaffiliated/leonidas] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- Riastradh [n=rias@pool-141-154-207-110.bos.east.verizon.net] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- araujo [n=araujo@gentoo/developer/araujo] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- ski [n=slj@c-9011e055.1149-1-64736c10.cust.bredbandsbolaget.se] has quit [anthony.freenode.net irc.freenode.net] 10:44:42 -!- tizoc [n=user@unaffiliated/tizoc] has quit [anthony.freenode.net irc.freenode.net] 10:45:26 HG` [n=HG@xdslgi077.osnanet.de] has joined #scheme 10:45:26 Mr_Awesome [n=eric@c-98-212-143-245.hsd1.il.comcast.net] has joined #scheme 10:45:26 tjafk1 [n=timj@e176209037.adsl.alicedsl.de] has joined #scheme 10:45:26 ski_ [n=md9slj@remote1.student.chalmers.se] has joined #scheme 10:45:26 sladegen [n=nemo@unaffiliated/sladegen] has joined #scheme 10:45:26 Axioplase_ [n=Axioplas@fortigate.kb.ecei.tohoku.ac.jp] has joined #scheme 10:45:26 Adamant [n=Adamant@unaffiliated/adamant] has joined #scheme 10:45:26 Riastradh [n=rias@pool-141-154-207-110.bos.east.verizon.net] has joined #scheme 10:45:26 dfeuer [n=dfeuer@wikimedia/Dfeuer] has joined #scheme 10:45:26 nothingHappens [n=nothingh@173-25-176-111.client.mchsi.com] has joined #scheme 10:45:26 araujo [n=araujo@gentoo/developer/araujo] has joined #scheme 10:45:26 ski [n=slj@c-9011e055.1149-1-64736c10.cust.bredbandsbolaget.se] has joined #scheme 10:45:26 Poeir [n=Poeir@c-98-222-133-165.hsd1.il.comcast.net] has joined #scheme 10:45:26 Leonidas [n=Leonidas@unaffiliated/leonidas] has joined #scheme 10:45:26 eli [n=eli@winooski.ccs.neu.edu] has joined #scheme 10:45:26 acieroid [n=acieroid@ks23738.kimsufi.com] has joined #scheme 10:45:26 etoxam [n=||||||||@84.79.67.254] has joined #scheme 10:45:26 jyujin [n=mdeining@vs166245.vserver.de] has joined #scheme 10:45:26 elf [i=elf@antenora.aculei.net] has joined #scheme 10:45:26 tizoc [n=user@unaffiliated/tizoc] has joined #scheme 10:45:26 _Jordan_ [n=jcooper@173-45-228-22.slicehost.net] has joined #scheme 10:45:58 -!- elf [i=elf@antenora.aculei.net] has quit [Remote closed the connection] 10:46:02 elf [i=elf@antenora.aculei.net] has joined #scheme 10:46:11 -!- _Jordan_ [n=jcooper@173-45-228-22.slicehost.net] has quit [Remote closed the connection] 10:46:14 _Jordan_ [n=jcooper@173-45-228-22.slicehost.net] has joined #scheme 10:48:25 -!- tizoc [n=user@unaffiliated/tizoc] has quit [Remote closed the connection] 10:48:35 tizoc [n=user@unaffiliated/tizoc] has joined #scheme 10:52:03 -!- ski_ [n=md9slj@remote1.student.chalmers.se] has quit ["Lost terminal"] 11:10:57 rudybot_ [n=luser@q-static-138-125.avvanta.com] has joined #scheme 11:15:01 Summermute [n=scott@c-68-34-67-216.hsd1.dc.comcast.net] has joined #scheme 11:36:30 -!- csmrfxX [n=pikseli@cs181133068.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 11:49:10 -!- MichaelRaskin [n=MichaelR@213.171.48.239] has quit [Remote closed the connection] 12:02:27 masm1 [n=masm@bl7-92-228.dsl.telepac.pt] has joined #scheme 12:09:31 mario-goulart [n=user@67.205.85.241] has joined #scheme 12:18:42 -!- masm [n=masm@bl10-7-131.dsl.telepac.pt] has quit [Read error: 110 (Connection timed out)] 12:33:23 csmrfxX [n=pikseli@cs181133068.pp.htv.fi] has joined #scheme 12:34:21 exexex [n=chatzill@85.96.117.147] has joined #scheme 12:36:06 -!- foof [n=user@118-021-204-069.jp.fiberbit.net] has quit [Read error: 110 (Connection timed out)] 12:38:51 annodomini [n=lambda@c-75-69-96-104.hsd1.nh.comcast.net] has joined #scheme 12:39:40 Jafet [n=Jafet@unaffiliated/jafet] has joined #scheme 12:40:33 blackened` [n=blackene@ip-89-102-28-224.karneval.cz] has joined #scheme 13:14:15 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 13:20:33 npe [n=npe@195.207.5.2] has joined #scheme 13:25:09 -!- rudybot_ [n=luser@q-static-138-125.avvanta.com] has quit [Remote closed the connection] 13:26:15 -!- masm1 [n=masm@bl7-92-228.dsl.telepac.pt] has quit [Read error: 54 (Connection reset by peer)] 13:27:51 -!- cornucopic [n=r00t@202.3.77.134] has quit ["so long.."] 13:28:09 masm [n=masm@bl5-107-154.dsl.telepac.pt] has joined #scheme 13:34:38 higepon467 [n=taro@FL1-118-109-84-126.tky.mesh.ad.jp] has joined #scheme 13:35:10 karme [n=user@kallisto.karme.de] has joined #scheme 13:35:42 rudybot_ [n=luser@q-static-138-125.avvanta.com] has joined #scheme 13:38:00 emma: The reason you need 4 languages to write a web site is that each addresses different concerns. 13:38:02 almost weekend, almost 1 week holiday! 13:38:46 (X)HTML is used for data that must be presented in an ordered hierarchy. 13:38:52 TimMc: as long as I dont have the write HTML be hand, im happy 13:38:59 s/be/by/ 13:39:11 -!- rstandy` [n=rastandy@net-93-144-96-233.t2.dsl.vodafone.it] has quit [Read error: 54 (Connection reset by peer)] 13:39:14 CSS is a declarative language associating structural patterns with attributes. 13:39:31 CSS can be fun sometimes 13:39:42 but generally more frustating 13:40:03 JS and whatever your server-side language are need to be (somewhat) imperative languages that can perform actions in their respective environments 13:40:32 emma: In fact, be glad that each concern is addressed by a different language. Ever tried writing a GUI in Java? 13:40:58 leppie|work: What's wrong with writing HTML by hand? That's how I started, and I still do it. 13:41:33 good for you :) I hate it, and pretty much any related web front end stuff 13:42:02 got forced to do it for too long :( 13:43:18 leppie|work: What do you hate about it? 13:43:42 everything 13:43:50 MrFahrenheit [n=RageOfTh@users-120-93.vinet.ba] has joined #scheme 13:44:05 Oh. Well then. 13:44:10 it's always rather boring 13:44:18 nothing challenging 13:44:45 unless you into the creative side, but I do not possess such a thing :p 13:45:12 leppie|work: No, I'm not on the creative/visual design side. 13:45:45 do you really like writing data capture forms? 13:45:48 I would say "frustrating", but never "not challenging". Ever tried to embed Flash video with no-JS fallback in a cross-platform manner? 13:45:50 in HTML, daily? 13:46:47 leppie|work: Well, the irritating part of data entry forms is all in the domain of the backend, in my opinion. 13:46:57 It really depends on how much support it gives you. 13:47:11 well i had to do that and HTML... bad combo I guess 13:47:27 Yeah, and the CSS support for forms is shitty. 13:47:43 Forms are not one of the fun parts, I'll grant you that! 13:48:04 emitting s-expr instead of HTML is already a big forward step for me :) 13:48:32 I can see sexps being useful for XML or HTML. Haven't used it yet. 13:49:20 it's easy, you can write a simple but very usefull transformer in only a few lines 13:49:26 What framework(s) have you used sexp-based HTML in? 13:49:59 reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 13:50:17 -!- reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 13:50:36 I wrote my own stuff 13:50:56 for IronScheme, that runs on ASP.NET 13:51:02 but all in Scheme :) 13:51:54 this is the s-expr to XML transformer (ugly, wrote it very long ago): https://ironscheme.svn.codeplex.com/svn/IronScheme/IronScheme.Console/ironscheme/xml.sls 13:51:58 -rudybot_:#scheme- http://tinyurl.com/ms2jqq 13:52:33 example of usage: https://ironscheme.svn.codeplex.com/svn/IronScheme/IronScheme.Web/views/doc.sls 13:52:33 The *really* fun part is doing (X)HTML->(X)HTML transforms in the language itself, without using yet another language like XSLT. 13:52:35 -rudybot_:#scheme- http://tinyurl.com/mzxnyr 13:53:23 chandler: I have not tried that, but I guess it wont be hard. I have a way to convert an XML document to s-expr too 13:53:54 chandler: Ugh, XSLT... 13:54:14 XSLT is like the syntax-case of XML :) 13:54:22 I once started writing an XSLT doc to display XSLT docs 13:54:33 Yikes. 13:54:34 and then I stopped because it was too ugly. 13:54:42 It summoned Cthulhu, eh? 13:54:51 Pretty much. 13:56:03 luz [n=davids@189.122.90.116] has joined #scheme 13:59:02 hi 13:59:21 rudybot_, eval (/ 0.003 10) 13:59:22 Edico: your sandbox is ready 13:59:22 Edico: ; Value: 0.00030000000000000003 13:59:42 whoot? 13:59:57 Welcome to binary floats! 14:00:33 rudybot_, eval (/ 0.00235 10) 14:00:33 Edico: ; Value: 0.00023500000000000002 14:01:07 annodomini [n=lambda@130.189.179.215] has joined #scheme 14:01:11 how can this be fixed? 14:01:28 Is it broken? 14:01:39 yes it is 14:01:43 Why? 14:01:50 it must be 0.000235 14:02:09 reprore [n=reprore@116.82.73.92] has joined #scheme 14:02:20 rudybot_, eval (/ 0.005 10) 14:02:20 Edico: ; Value: 0.0005 14:02:39 Edico: What does "0.00235" mean? 14:02:51 rudybot_, eval (/ 0.003 10) 14:02:51 Edico: ; Value: 0.00030000000000000003 14:02:59 Quadrescence [n=quad@unaffiliated/quadrescence] has joined #scheme 14:03:09 chandler, is a number 14:03:16 is a floating point number 14:03:41 It denotes a *binary* floating point number in this implementation. 14:04:08 Does 0.00235 have a nonrepeating representation as a binary float? 14:06:06 I don't know 14:06:40 I don't know what is it nonrepeating representation 14:06:57 How would you represent 1/3 as a decimal float? 14:07:19 3.333333333333 14:07:39 Is that *exactly* equal to 1/3, or an approximation? 14:08:00 (I assume you mistakenly shifted the decimal point to the right there.) 14:08:09 is an approximation 14:08:31 *0.33333333 14:08:47 How would you represent 1/2 as a *binary* float? 14:09:04 0.5? 14:09:18 No; that's decimal. 14:09:25 Edico: "5" is not a binary digit 14:09:44 oh! 14:09:58 you mean that number transformed in binary 14:10:13 like 10101? 14:10:30 Yes, I suppose. 14:11:55 I don't know neither that, I know transformations just for integer digits 14:15:12 offby1 [n=user@q-static-138-125.avvanta.com] has joined #scheme 14:15:24 It's "0.1". Do you see why? 14:16:11 It's ten o'clock. Do you know where your children are? 14:16:21 peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has joined #scheme 14:16:33 chandler 01/10? 14:17:01 -!- reprore [n=reprore@116.82.73.92] has quit [Remote closed the connection] 14:17:18 reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 14:17:18 -!- exexex [n=chatzill@85.96.117.147] has quit [Remote closed the connection] 14:17:22 Edico: In base 2, that is correct. 14:18:13 offby1: 10:00 in what base? 14:18:24 :) 14:19:03 -!- ASau [n=user@host10-231-msk.microtest.ru] has quit ["off"] 14:20:38 ok, there is no way to have a "0.000235"? 14:21:48 Edico: To represent that in a binary floating point number, you ultimately have to use an approximation/ 14:22:16 The number you're denoting in decimal has an *exact* representation, though: 235/1000000 14:22:52 When you then try to convert that back to decimal (for display to the user), the truncation shows up as "imprecision". 14:26:08 http://citeseer.ist.psu.edu/goldberg91what.html 14:26:08 dzhus [n=sphinx@95-24-91-139.broadband.corbina.ru] has joined #scheme 14:29:09 Edico: Jafet's link is "What Every Computer Scientist Should Know About Floating Point Arithmetic" 14:30:02 Oh whoops, forgot nick prefix 14:30:42 -!- offby1 [n=user@pdpc/supporter/monthlybyte/offby1] has quit [Remote closed the connection] 14:32:43 -!- rudybot_ [n=luser@q-static-138-125.avvanta.com] has quit [Remote closed the connection] 14:32:44 offby1 [n=user@q-static-138-125.avvanta.com] has joined #scheme 14:32:56 rudybot_ [n=luser@q-static-138-125.avvanta.com] has joined #scheme 14:33:40 TimMc, I followed some of the links but I see nothing relevant 14:34:44 -!- peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has quit [Success] 14:34:52 You find this minuscule, well-hidden `PDF` button and select it 14:35:19 Edico: It's a poorly designed page. Those links are all just papers it cites. 14:35:41 ok, I found it 14:36:20 ok, 78 pages of math ... 14:36:43 Fantastic bedtime reading. 14:37:07 :) 14:37:43 *TimMc* mehs at learning syntax-case 14:38:06 I likes me my x-rename. 14:42:08 4 minutes till beer time! 14:42:12 3 actually 14:44:06 -!- leppie|work [i=52d2e3c8@gateway/web/freenode/x-kyktppthzidvcnrb] has quit ["Page closed"] 14:44:40 beer? he must be in a very different time zone than I am! 14:47:34 ... Yikes. Concurrent LET? 14:51:03 any time is beer time 14:51:12 Breakfast of champions. 14:51:32 (pro tip: if your bread recipe calls for a lager, don't use Guinness) 14:51:36 midnight snack of losers! 14:52:25 -!- mmc [n=mima@esprx01x.nokia.com] has quit [Remote closed the connection] 14:53:03 gnomon: ... Guinness isn't a lager. It's *beer*. 14:56:24 Why can't I (apply foo someList) where FOO is syntax? 14:57:01 Better question: Why is syntax not first-class? 14:57:45 I assume you're asking that question in the context of the expansion phase. 14:58:26 Not sure. 14:58:41 Expansion phase vs. _ phase. <-- What's the other one called? 14:59:01 peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has joined #scheme 14:59:23 `r6rs' calls those phases `run' and `expand', being equivalent to (meta 0) and (meta 1). 15:00:05 Then no, I'm asking the question in the context of the run phase. 15:00:37 I am not sure if allowing running syntax is a good idea 15:01:14 TimMc: What are your expectations for how this should behave at runtime? 15:01:26 I suppose my question actually doesn't make sense. 15:01:45 The transformer would be given values, not forms. 15:02:37 Never mind! 15:02:45 If you haven't already, I would advise you to read about Interlisp FEXPRs (and the reasons why they are not in use today), and on 3-Lisp, a reflective tower of Lisps. 15:05:38 -!- kniu [n=kniu@ELMUNDO.RES.CMU.EDU] has quit [Read error: 145 (Connection timed out)] 15:07:40 chandler: Will do, thanks. 15:08:04 TimMc, well sure, the 4 languages people usually have to know in order to make a website definitely do different things. But I was thinking lisp (and by lisp I include scheme) is flexible enough that a system of web making could be conceived, where one only has to work with lisp, learn one language, and one-new-way to make web pages, and lisp handles those 4 languages for you. 15:09:39 viaweb!! 15:09:44 Phaze [n=PhazeDK@0x5da32b16.cpe.ge-0-1-0-1104.soebnqu1.customer.tele.dk] has joined #scheme 15:10:02 whyaduck!! 15:11:34 -!- mario-goulart [n=user@67.205.85.241] has quit [Remote closed the connection] 15:13:05 -!- ve [n=a@94-193-95-252.zone7.bethere.co.uk] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- nasloc__ [i=tim@kalug.ks.edu.tw] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- yosafbridge [n=yosafbri@ludios.net] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- clog [n=nef@bespin.org] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- joast [n=rick@76.178.178.72] has quit [anthony.freenode.net irc.freenode.net] 15:13:05 -!- rntz [n=rntz@pool-96-235-185-65.cmdnnj.fios.verizon.net] has quit [anthony.freenode.net irc.freenode.net] 15:14:15 -!- npe [n=npe@195.207.5.2] has quit [] 15:14:36 rntz [n=rntz@pool-96-235-185-65.cmdnnj.fios.verizon.net] has joined #scheme 15:15:30 ve [n=a@94-193-95-252.zone7.bethere.co.uk] has joined #scheme 15:15:30 sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 15:15:30 clog [n=nef@bespin.org] has joined #scheme 15:15:30 nasloc__ [i=tim@kalug.ks.edu.tw] has joined #scheme 15:15:30 yosafbridge [n=yosafbri@ludios.net] has joined #scheme 15:15:30 joast [n=rick@76.178.178.72] has joined #scheme 15:16:56 -!- nasloc__ [i=tim@kalug.ks.edu.tw] has quit [Remote closed the connection] 15:17:18 -!- sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has quit [Connection reset by peer] 15:18:19 timchen119 [i=tim@163.16.211.21] has joined #scheme 15:19:16 sphex [n=nobody@modemcable239.185-56-74.mc.videotron.ca] has joined #scheme 15:20:32 kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has joined #scheme 15:30:31 -!- kniu [n=kniu@CMU-284828.WV.CC.CMU.EDU] has quit [Read error: 60 (Operation timed out)] 15:37:21 -!- karme [n=user@kallisto.karme.de] has left #scheme 15:37:36 macr0 [n=vista@71.41.179.131] has joined #scheme 15:46:57 bweaver [n=user@c-68-60-0-190.hsd1.tn.comcast.net] has joined #scheme 15:46:59 emma: There is more to a "language" than syntax. 15:47:27 Your proposal only addresses the syuntax issue, not the semantics and pragmatics. 15:47:38 kniu [n=kniu@ELMUNDO.RES.CMU.EDU] has joined #scheme 15:48:15 Switching to s-expression syntax does nothing to help the beginner learn the specificity cascade of CSS or the inline/block distinction of HTML. 15:48:51 In fact, compared to the semantics and pragmatics, the syntax of CSS and HTML is trivial. 15:49:04 TimMc, perhaps not, but by regularizing the syntax issue it would allow new users to focus on the difficult and deficient parts of CSS semantics... of which, of course, there are many. 15:49:13 Heh. Jinx. 15:49:37 gnomon: I don't dispute that regularizing the syntax could have advantages, incidentally. 15:49:57 Merely that the advantage granted is trivialized by the adoption cost? 15:50:50 I just get irked by people who think that syntax is all there is to learn, à la "Learn $LANG in 24 Hours" 15:51:24 Well, yes; clearly these people and the publishers who enable them all deserve a solid crotch punch. 15:52:15 But then, that list is so expansive, and headed up by so many more deserving candidates... 15:52:46 gnomon: We shouldn't let the magnitude of the task prevent us from at least making progress on the list. 15:53:36 Your unflagging dedication to that solemn task humbles us all, TimMc. 15:55:23 *TimMc* aways again 15:57:34 Fnord? 15:57:43 *gnomon* doesn't see the fnord 15:58:25 How about a lovely fnjord in which to see der m/o/osen! 15:59:46 -!- peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has quit [] 16:01:11 Eek! A moose once bit my sister. 16:04:54 Nø really 16:05:16 Well, yes; clearly these people and the publishers who enable them all deserve a solid crotch punch. <---- I found this amusing. 16:06:54 Classy entertainer, that's me! 16:07:27 now that's comedy 16:08:37 TimMc, the whole paradigm would be different. Presumably the person who *made* the "all-lisp method" of making websites would know all 4 languages very well. Then users would still have to become good at the all-lisp method, and use it wisely, but they would only have one language to learn wisely, instead of 4 to learn wisely. 16:10:35 -!- dzhus [n=sphinx@95-24-91-139.broadband.corbina.ru] has quit [Read error: 104 (Connection reset by peer)] 16:10:46 Again, you are missing TimMc`s point emma 16:11:25 *offby1* sadly agrees with Jafet 16:11:28 You need to learn the grotesque hideousness that is CSS if you want to use CSS, and you cannot expect to change that 16:11:52 You can disguise it as another language X, but then after that you are no longer using CSS, but language X. 16:12:20 weekend (+ holiday) 16:12:39 Whoa!! 16:12:43 AtnNn [n=welcome@x-132-204-254-227.xtpr.umontreal.ca] has joined #scheme 16:13:04 first break for the year of more than 1 day 16:13:35 after performing 3 days of pure miracles, and saving the butt of my team leader 16:14:08 Strong evidence for magnetic monopoles was published in Science yesterday: `Dirac Strings and Magnetic Monopoles in Spin Ice Dy_2 Ti_2 O_7', DOI 10/1126/science.1178868. 16:14:25 wow, you got suckered into that much work leppie? 16:14:45 just tell them it's still compiling and take a break already 16:14:54 Time to revise Maxwell's equations! 16:14:56 no, I just didnt want him to spend a week fixing what he broke, and not doing anything else 16:15:20 9 months without a weekend, jeez 16:15:38 weekends dont count synx, but I did work some of them 16:15:48 You can disguise it as another language X, but then after that you are no longer using CSS, but language X. <---- I thought this was *my* point. Learning lisp instead of CSS. 16:16:01 Oh, well okay then... 16:16:14 Then you cannot write CSS. 16:16:22 If that is what you are after, sure. 16:16:25 No the lisp writes it for you. That's the point. 16:16:49 Then you have to learn language X, written in lisp, that you hope produces the desired CSS. 16:16:59 It goes in circles. 16:17:20 so you are against html-templates in lisp? 16:17:20 that's just syntax, you still need to know the semantic of CSS else it's a waste of effort 16:17:51 why doesn't your same reasoning apply to using entirely lisp to generate the html on your page? 16:17:59 I have no position; I am just saying that your statement `only have to learn lisp, not CSS` is oversimplistic 16:18:00 so that a person can just learn lisp and forget about html? 16:18:31 emma: then you are stuck in what ever framework you are using, and you never know what exactly happens 16:19:04 it will probably work for basic stuff, and require effort for anything else 16:19:12 There is a C++ framework called Wt that tries to do this. It seems to be quite well designed and does its job well. It is simpler than using the web languages directly, and handles layout, sessions, browser issues automatically. Guess why no one uses it. 16:19:33 I would think if I could make a nice website/webapp entirely by coding in lisp/scheme and the lisp/scheme generates all the webserver code that could be a gain. It could be made easier for the human. 16:19:41 Being stuck in a framework can be good if you're talking about something so general as XML 16:20:00 Jafet, why? 16:20:41 synx: but we are talking the web, not a standardized version of XML 16:20:49 Plus it can do server-side syntax checking, whereas if you send them bad XHTML you just have to hope the browser understands what to do. 16:20:51 emma: because they do not want to learn yet another interface to the web, when all they want to do is use the web. 16:21:08 synx, http://bitbucket.org/edd/xsmell/src/tip/readme.txt (C++) 16:21:20 Jafet, then they are kind of irrational since one of the main utilities of this approach is that you learn one interface instead of 4. 16:21:46 generally the browser just displays "Uh sorry me no know broke XML" whereas if you generate the XML using scheme code, if there's an error you can send an error document. 16:23:22 yeah I see why XSMELL isn't widely used. HTML templates suck. 16:23:37 more accurately, mixing two languages in the same document sucks. 16:23:59 emma, again, you are oversimplifying. If the interface is a thin abstraction of the web elements, then there is no point in using it instead of those web languages. If the interface is high-level, people would not use it, because they want to work with the web languages. 16:24:16 So either way, your use case is weak in practice. 16:24:45 synx, requires a modern C++ compiler, Boost libraries, and a good sense of humour 16:25:11 well that too Jafet 16:25:26 Jafet, to me something like 'ajax' seems rather difficult. It seems like a huge learning curve. Scheme also has a learning curve but it does a lot of other stuff. If a person could interact with scheme and have scheme output all the "ajax" that would be neat. 16:26:17 who wants to work with web languages? That's high coupling big time. You want to abstract the web languages out into a clean interface showing what your program is trying to produce. 16:26:20 With some supporting libraries, ajax is quite simple. 16:26:52 ajax sucks. 16:27:04 "This site will not work unless you enable javascript hurr" 16:27:18 That has nothing to do with ajax. 16:27:26 I know a site that can't figure out how to display thumbnails without javascript. 16:27:51 ajax is "asynchronous javascript and XML" 16:28:03 That's not reasonably pertinent to this discussion, synx. There are a squijillion sites on the intarweb that do dumber things than that. 16:28:30 peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has joined #scheme 16:28:35 true gnomon, but they all use javascript to do it. 16:28:41 gah, and Flash... 16:29:00 synx, yes. That has nothing to do with the fact that some websites do not work without javascript. 16:29:35 npe [n=npe@94-224-251-223.access.telenet.be] has joined #scheme 16:30:26 "Hello Mr. Macromedia. Before you sold your soul to Adobe, what possessed you to make the SWF file format?" "Well Susan, I was working on how to make animations using java applets, but then I realized I could make more money if I locked users into my own proprietary format!" 16:31:50 -!- merus [n=merus@pal-175-116.itap.purdue.edu] has quit ["Leaving"] 16:32:42 synx: you create a vector rendering engine like that, and you can marry my fiance 16:33:18 -!- peter_12 [n=peter_12@S0106001310475d12.vn.shawcable.net] has quit [Client Quit] 16:36:06 -!- higepon467 [n=taro@FL1-118-109-84-126.tky.mesh.ad.jp] has quit [Read error: 113 (No route to host)] 16:36:19 -!- AtnNn [n=welcome@x-132-204-254-227.xtpr.umontreal.ca] has quit [Read error: 110 (Connection timed out)] 16:36:24 jonrafkind [n=jon@crystalis.cs.utah.edu] has joined #scheme 16:36:32 leppie: http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Image.html 16:36:42 -!- saccade__ [n=saccade@VPN-ONE-FOURTEEN.MIT.EDU] has quit ["This computer has gone to sleep"] 16:39:10 here's an example: http://toons.artie.com/whack-a-pest/whack-a-gopher.html 16:40:03 only thing that distinguishes Flash is some company spent all that time writing a cartoon editor for it, when they could have been writing the same editor to produce java applets. 16:41:20 look at your CPU usage, then say that again 16:42:25 synx: maybe they didn't like the free advertising for sun in the form of a hot cup of coffee which appears for ten seconds as the jvm churns away during startup 16:42:56 heh zbigniew 16:45:14 the coffee which wears a yellow mask over its face and dwells on the plains of Leng 16:45:25 I just think public standards are important. SWF is obfuscated, obscure, and you're not even allowed to know what it does. 16:45:53 http://www.openmedianow.org/?q=node/21 16:46:39 swf is not obfuscated, the file format is open (well up to some level) 16:49:48 mario-goulart [n=user@67.205.85.241] has joined #scheme 16:49:53 comparing SWF to animated SVG is like comparing toxic waste to slightly unripe plums 16:50:05 java applets I guess would be like day old cold pizza 16:51:41 which is more convoluted: Working with the 4 or so web languages that goes into a website/webapplication or working with scheme and some GUI language like GTK ? 16:51:44 who said anything about animated SVG? 16:52:50 Well it's just you said SWF was "open" 16:52:56 anyways, I dont know the difference in speed, but I am willing to bet Flash is much less intensive 16:53:25 I dunno, java's latest updates are pretty slick. 16:53:31 I know, I have tried to write a decent performing Flash engine in .NET (with all it's fancy GDI+ rendering libraries) 16:53:38 it's always been more memory intensive than CPU intensive anyway. 16:53:42 python is CPU intensive. 16:54:46 I can only imagine the rendering engine in Flash was written is some really clever assembler, and since version 3 (besides video decoding), it has not changed 1 bit (or maybe a few more) 16:55:55 I think the person responsible died or was fired with a really bad non-competing clause 16:56:20 mrsolo [n=mrsolo@209.131.62.113] has joined #scheme 16:57:48 êë 17:00:59 -!- Jafet [n=Jafet@unaffiliated/jafet] has quit [Connection timed out] 17:05:25 -!- antoszka [n=antoszka@unaffiliated/antoszka] has quit ["+++ killed by SIGSEGV +++"] 17:11:45 sepult [n=user@xdsl-87-78-121-47.netcologne.de] has joined #scheme 17:14:03 AtnNn [n=welcome@x-132-204-254-227.xtpr.umontreal.ca] has joined #scheme 17:21:21 -!- jcowan [n=jcowan@cpe-74-68-154-139.nyc.res.rr.com] has quit ["Leaving"] 17:33:51 emma: Have you ever written a website using CSS, JS, HTML, and some backend scripting language? 17:34:05 Hell, have you just written a layout using CSS? 17:34:24 MichaelRaskin [n=MichaelR@195.91.224.225] has joined #scheme 17:35:10 CSS hacking is nice, TimMc. I used to not mind fixing the odd thing the designer did poorly 17:39:29 emma: If you want to get rid of all the nasty details but still want to use standards to build your stuff (but don't mind if it breaks with JS disabled), check out Cappuccino 17:39:41 I've read about it and seen a few very slick demo apps 17:40:18 You can build an app in it almost like you were building an app for the desktop. Unfortunately, it's not Scheme 17:40:50 (it's their own weird ObjC-like language that compiles to JS) 17:41:27 I'm not sure how they handle the server-side 17:43:20 mdmkolbe [n=adamsmd@garner.cs.indiana.edu] has joined #scheme 17:46:39 TimMc, nope! I am trying to learn my first programming language right now -- lisp! That's one of the reasons it seems like a good idea if everything can be done with lisp! 17:47:16 Then make it possible 17:47:52 just if you didn't know emma, this is scheme, not lisp in general... 17:48:15 Fabse [n=mightyfi@wikipedia/Track-n-Field] has joined #scheme 17:48:26 yeah i know. 17:48:49 when i say lisp i mean to include scheme. For some reason I really like the idea of scheme. 17:48:50 erm, scheme is lisp 17:49:05 Im going to try to become competent in common lisp, and then I will switch to scheme. 17:50:31 Whatever works for you. CL is definitely a different beast though. 17:52:47 Common Lisp is unfit for building large programs. Maybe some day it will be fixed, but because Common Lisp is centred about image-global databases and effects, it actively inhibits isolating effects and thereby prevents any system for organizing a program into components from usefully enforcing dependencies between the components. 17:53:24 Also, it smells bad. 17:53:41 Riastradh, then how is maxima doing it? 17:54:34 The consequence is that programs are organized according to their creators' approximate notions of dependencies formalized in some kind of DEFSYSTEM, which happens to arrange effects in the right sequence, whether or not the partial ordering relations that the programmers set down actually make any sense. 17:54:56 sepult` [n=user@xdsl-87-78-31-246.netcologne.de] has joined #scheme 17:55:06 through sheer manliness 17:55:21 I think "unfit" is pushing it a *bit* too far. 17:55:22 maxima is not a man's name! 17:55:26 -!- sepult [n=user@xdsl-87-78-121-47.netcologne.de] has quit [Read error: 60 (Operation timed out)] 17:55:39 emma, like most other Common Lisp systems, probably by a good deal of luck. 17:57:08 My main reason for bothering with common lisp is because maxima is written in common lisp. 17:57:56 I've never used Maxima before... 17:58:08 oddly I seem to have it installed... 17:58:23 -!- sepult` is now known as sepult 17:58:23 It's a computer algebra system. Like the open source answer to mathematica or maple. 17:58:30 Answer? Try predecessor. 17:59:08 Maxima runs on Common Lisp, but I'm not sure about "written in". 17:59:21 What it's written in is closer to Maclisp, for a good chunk of it. 17:59:22 It is old and hairy. 18:00:18 *gnomon* desperately resists making the obvious "yo' mama" crack 18:00:34 What, Maxima is written in yo' mama? 18:01:19 Yo mama so old and hairy, she's, uh, using special variables even when lexicals would suffice? 18:01:20 maybe someone could transfer Maxima into scheme? 18:03:07 I wonder if there are any computer algebra systems written in scheme. 18:03:32 emma, you probably want to look at Aubrey Jaffer's JACAL system. 18:03:35 My motivation to learn lisp was in part by the unlikely but long term dream of maybe helping maxima some day. 18:03:50 (To give you an idea of how old Maxima is, there are still ITS pathnames scattered throughout the source code. #+NIL actually means `read the following code only in JonL White's New Implementation of Lisp.') 18:05:11 -!- sepult [n=user@xdsl-87-78-31-246.netcologne.de] has quit [Remote closed the connection] 18:05:12 So what do I have to learn/do in order to help bring the world an amazing free computer algebra system that is flourishing with developers and users? 18:05:42 Learn just enough lisp to begin a project of rewriting all of maxima into python? 18:06:23 Pay people to write it in Scheme :) 18:07:02 okay 18:07:25 how much money do you think it would take to make that happen? 18:08:42 How long do you think the programming process will take before it halts, and produces such a program? 18:09:11 i dont know. 18:09:14 I have no idea :) Ask some good Schemers and a few mathematicians how much they'd charge 18:09:18 i think maxima is a pretty large program. 18:09:35 one million dollars 18:09:41 ecraven, couldn't a good schemer do it without knowing the math just by looking at the maxima source? 18:09:47 *leppie* does pinky thing 18:09:52 sepult [n=user@xdsl-87-78-31-246.netcologne.de] has joined #scheme 18:10:06 I don't think so, you can't just "rewrite" everything in Scheme 18:10:27 never reinvent the wheel 18:10:36 change the way you use it 18:10:52 Make it octogonal ;) 18:11:01 CL has dynamic scope, whereas scheme has lexical scope, right? 18:11:15 Well it's a little disconcerting if maxima is a stale program written in a stale language that is fundamentally flawed some how. 18:11:17 CL has dynamic scope, but the default scope for local variables is lexical, synx. 18:11:21 karme [n=user@kallisto.karme.de] has joined #scheme 18:11:30 ecraven: in velcro land, that is the preferred way 18:11:58 emma: How is that different from most other programs :) 18:12:54 emma, while it is good to have some goals in mind, I think you are dwelling far too much on starry-eyed ideas for the future once you have accomplished some definite but abstract task of `learning to program'. Instead I recommend that you keep your ideas for the future in the back of your mind, and just start working with Scheme (or Python or Common Lisp or whatever language you want -- pick one at random, or choose whichever on 18:12:56 -!- sepult [n=user@xdsl-87-78-31-246.netcologne.de] has quit [Remote closed the connection] 18:13:00 -!- HG` [n=HG@xdslgi077.osnanet.de] has quit [Client Quit] 18:14:04 symbolic algebra is a Very Difficult problem I think. It isn't something to start with, by any means. 18:14:25 whichever on <--- you got cut off Riastradh 18:14:38 representing equations is fine, but transforming, simplifying and solving them I would think to be pretty difficult. 18:14:42 ...or choose whichever one has the best-coloured web site, or links to the best-typeset book). 18:14:58 emma: a stale program written in a stale language on top of a stale OS written for a stale processor by a stale company that can't stand ... 1 bit of competition? 18:15:22 Riastradh: you ought to get some character counter for IRC :) 18:15:31 leppie, no, IRC ought to get a better protocol! 18:15:41 It's not MY fault that the protocol is stupid. 18:16:40 I am sure that scheme is better than common lisp. But I have started to learn some common lisp and I better keep going. I will learn scheme when I am marginal with common lisp. 18:17:34 incubot: discourse on the hyperspec please 18:17:38 some of us are more interested in getting work done than wanky philosophical discourse :) 18:17:44 fine 18:17:54 I'm not experienced enough in CL to say scheme is better than common lisp. I like it better though. 18:18:10 scheme, that is 18:18:21 black gold, texas tea 18:18:27 Over and over again I worry about what is the best way to start or the right thing to choose. Through serious deliberation I decide to choose X over Y, and then people who are smarter and more experienced give me apparently very good reasons why X is no good. So I switch to Y, and then people who are smarter and more experienced give me good reasons why Y is no good. 18:18:32 arcfide [n=arcfide@adsl-99-14-211-8.dsl.bltnin.sbcglobal.net] has joined #scheme 18:18:49 emma: as michael said, just do it 18:18:54 That has gone on for years, so I never even start X or Y. And I know nothing. It must be better to start poorly than never start. 18:19:05 emma, OK. Stop worrying about what to choose. For that matter, forget what I said about Common Lisp's being unfit for large programs -- that is advice for someone trying to choose a language for a particular large project, not for someone seeking to learn. 18:19:30 Okay 18:19:37 Just hack! 18:19:56 emma: write a simple calculator in Scheme, see how it goes 18:19:58 Personally my recommendation is to begin working through SICP. 18:20:23 *cue people saying not to begin working through SICP* 18:20:45 I put my fiance on 'Simply Scheme' tonite 18:20:47 I see SICP as a bit esoteric, but it couldn't hurt to work through it. 18:20:51 But what's more important than what introductory material you choose to read is that you begin to write some code. 18:21:08 Agreed 18:21:16 imho most important is to have some fun 18:21:18 leppie: you know once you get married she's going to stop humoring you 18:21:27 ... and switch to ruby 18:22:19 lol, no thanks, it's scheme or C#, only things I know and care about 18:22:40 C#, really? 18:22:55 I thought leppie was going to give his fiance to Sun Microsystems for developing a vectorized animation framework also known as AWT. 18:23:19 they always change leppie, for example my wife was a huge scheme fanatic when we were first dating, and now she won't even touch me 18:23:20 yeah 7 years solid :) (except scheme for last 2 years) 18:23:28 wait 18:23:29 I keep reading `finance' rather than `fiance'. Also, if it's a female fiancee, that has two `e's, even if you omit the diacritical mark for transmission in US-ASCII. 18:23:29 What kind of a monster would surrender $SIGNIFICANT_OTHER, or even $NON_JERKY_PERSON, to Sun? 18:23:44 lol zbigniew 18:23:53 synx, see, English does have gendered nouns. 18:23:54 borism [n=boris@195.50.200.72] has joined #scheme 18:24:15 Riastradh: I told her fiancee is with 2 e's! 18:24:21 (Pay no attention to the etymology of the word fiance(e)!) 18:24:47 Riastradh: I now pronounce you spouse and spouse! 18:24:48 well with the e with the thingy 18:25:00 The term is `acute accent', leppie. 18:25:01 I said that too 18:25:07 Riastradh, whö üsés mè äsçì áñÿmôrë? 18:25:24 *zbigniew* brushes his screen off 18:25:24 yeah, I barely passed both my 1st languages at school :( 18:25:29 "mèré", that is. 18:25:39 Dusty in here. 18:25:42 -!- Fabse [n=mightyfi@wikipedia/Track-n-Field] has quit [] 18:25:43 Wow! My elaborate configuration of terminal, ssh, screen, and irssi actually rendered that correctly. 18:25:54 (for some value of `correctly') 18:26:16 Riastradh: Does that mean you intend to lift your stance against non US ASCII in this channel while you're watching? :-) 18:26:22 not surprising, since it's all in iso-8859-15 18:26:37 gnomon: He comes! 18:26:43 Riastradh, that's good: my similarly elaborate configuration of those exact same programs created that monster string in the first place. 18:26:51 synx, Zalgo! ZALGO 18:27:07 It always bugs me when I don't put diacritical marks on words when there should be some. 18:27:20 heck, i use the same config across 3 nested screens and utf8 comes through fine 18:27:23 Especially in English, where there are so few to start with, it seems a shame to not use them when they are proper. 18:27:56 ZALGO 18:28:05 fancy! 18:28:16 synx, also, there are even gendered adjectives! For example, na\"if and na\"ive. 18:28:44 "All that seek the true origin of   ZALG    have experienced spontaneous computer errors and power outages." 18:28:57 synx: ... 18:29:33 -!- reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 18:30:01 ? ,@! 18:30:53 (U+2600 through U+26FF is a gold mine of useless junk - http://www.utf8-chartable.de/unicode-utf8-table.pl ) 18:31:02 reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has joined #scheme 18:31:02 .pl? 18:31:07 Why are you pointing us to a Prolog program? 18:31:16 I, uh 18:31:24 Hey look! Over there! A distraction! 18:31:28 *gnomon* runs 18:31:29 Also, what the heck is a `UTF-8 character table', if that is what `utf8-chartable' expands to? 18:31:58 holy fuck dude 18:32:02 Riastradh, it is a Unicode character table, printed out to your browser with the UTF-8 encoding, presumably for testing purposes. 18:32:10 one of you utterly crashed my terminal 18:32:24 lol it was gnomon 18:32:26 zbigniew, that was probably synx. Er, zalgo. 18:32:31 Zalgo! 18:32:40 by 18:32:46 Again! Again, Blistering Barnacles! Break your terminal again! 18:33:07 o lol, i didnt see that stuff from synx 18:33:49 ... by crash I mean "spew undending junk to Terminal.app even through 3 screen -r attempts until I am forced to open an XTerm to get back in" 18:34:02 heh heh 18:34:04 zbigniew: What are you using? 18:34:05 Oh, Terminal.app. 18:34:08 I mean, deepest apologies 18:34:18 -!- reprore [n=reprore@ntkngw598092.kngw.nt.ftth.ppp.infoweb.ne.jp] has quit [Remote closed the connection] 18:34:24 U+2619 REVERSED ROTATED FLORAL HEART BULLET 18:34:27 ...what? 18:34:27 well done, I guess 18:35:34 well, i'll just wait til the poison scrolls off to resume my Terminal.app session 18:35:39 Unicode "modifier" code points are pretty fucked up it's true 18:36:02 I thought the channel was being flooded for sure 18:36:24 And then there are the existential conundrums (conundra?) raised by pondering the meaning of the zero-width non-breaking space... 18:37:21 i'll non-break the zero-width neck of the next guy to do that 18:43:34 I don't think you have to worry, zbigniew 18:48:11 -!- leppie [n=lolcow@196.210.200.229] has quit [Read error: 131 (Connection reset by peer)] 18:49:07 leppie [n=lolcow@196.210.200.229] has joined #scheme 18:49:13 fascinating--it's actually GNU screen that's the primary culprit 18:49:34 Weird. Screen worked for me. 18:49:37 zbigniew, is it really? I'm running screen here and it seems to be fine. 18:49:43 huh 18:49:51 Maybe screen with Mac OS X's terminfo database, rather than Solaris 9's terminfo database? 18:50:05 (and rather than whatever terminfo database gnomon is using) 18:50:10 unknown, it seems to be a combination of Terminal.app with screen, perhaps 18:50:26 Surely not just screen, for that matter -- since you said you recovered with xterm. 18:50:27 Screen version "4.00.04jw4 (FAU) 2-May-06" here, according to :version. 18:50:28 as I nest screens, the breakage gets worse, until 3 when it is apparently infinite 18:50:49 Nesting screens? 18:50:55 (4.00.02 (FAU) 5-Dec-03 here.) 18:50:57 *gnomon* moves away from zbigniew on the bench, there 18:51:17 I've tried several times to configure screen + irssi + Terminal.app to handle UTF-8 properly, and each time it seems to work for a while and then fail. 18:51:19 gnomon, yeah, like , but with screen instead of Emacs. 18:51:20 I've given up. 18:51:34 Besides, no good can come of UTF-8 besides opportunities for cross-site scripting. 18:51:35 Riastradh: yes, but now I realize I fired up screen in xterm with screen's Unicode support turned off 18:52:00 ... and I was only using 1 screen 18:52:09 chandler, I can't input Unicode text without screwing up the cursor offsets in the input buffer, but aside from that it seems to work OK for me. 18:52:13 -!- arcfide [n=arcfide@adsl-99-14-211-8.dsl.bltnin.sbcglobal.net] has left #scheme 18:52:14 ...oh, Terminal.app. 18:52:16 No, I'm using urxvt. 18:52:54 I'm using PuTTY right now, but elsewhere I usually default to Gnome Terminal. 18:53:03 Or whatever the blasted thing is called. 18:53:42 I'm not sure the cause of my breakage, but eventually, despite my efforts, all non-ASCII characters will be rendered as ? 18:54:15 heh 18:54:45 must be an error in the decoder 18:54:54 yeah, the same thing happens in xterm, but the breakage was magnified by 10.4's terminal.app rendering 18:55:02 UTF-8 is fairly straightforward. It's just impossible to measure how many characters are in it, or to access them randomly. Fine for streaming though. 18:55:20 *Riastradh* blinks. 18:55:22 Impossible? 18:55:29 Methinks you are mistaken, synx. 18:55:38 using 10.5's terminal.app, i get the same results as with xterm--although the modifiers render "correctly" 18:55:38 It is not rocket science to compute the number of code points in a UTF-8 code unit sequence. 18:55:55 code points don't correspond necessarily to characters. 18:56:16 Oh, blargh, we're really going to have this same argument again? 18:56:19 I mean that depending on your definition of "character" you'll get two answers, both correct. I can't really say which is correct. 18:56:24 Define `character', synx. 18:56:33 Here we go. 18:56:59 I don't know how to define `character' ;.; that's why it's impossible to count them... 18:56:59 Default grapheme cluster? That's not impossible, or even rocket science, either. It takes a little more effort than decoding UTF-8 -- but that's independent of UTF-8. 18:57:10 So why did you say something devoid of meaning, synx? 18:57:10 chandler` [n=n@opendarwin/developer/chandler] has joined #scheme 18:57:12 I wonder if I can capture the backlog to a text file so I can check if I fixed the problem. 18:57:22 Can someone please say something Unicodey? 18:57:58 Nö, Ïæm nôt süré Ì cåñ. 18:58:04 Yikes! 18:58:08 1pu 'ob no  18:58:13 That worked. 18:58:27 (I have no idea what I just typed, but it was supposed to vaguely resemble `No, I'm not sure I can.') 18:58:37 IT did. 18:58:57 This is the exact same setup, as far as I can tell, as my long-running screen session. 18:59:07 It works here, but not there. How great is that? 18:59:13 -!- chandler` [n=n@opendarwin/developer/chandler] has quit [Client Quit] 18:59:34 chandler, perhaps you should yank the scrollback from the logs and cat that to a terminal? 18:59:36 Different LC_* settings when you first started screen? 18:59:37 chandler: did you start screen with screen -rU 18:59:38 -!- ponzao___ [n=vesam@xdsl-83-150-86-25.nebulazone.fi] has quit [Read error: 113 (No route to host)] 18:59:40 One moment, please. 19:00:16 zbigniew: No; I haven't touched the -U flag. 19:00:17 The Tunes log server ever so helpfully supports retrieval ranges. I'll narrow the window down a little for you in just a tick. 19:00:18 some versions of screen seem to ignore defutf8/utf8 and force you to resume with -U flag 19:00:34 I just resumed this screen with -U, and it did not help. 19:01:04 and you're only going through 1 screen, correct? 19:01:21 Yes. 19:01:29 chandler, you could use: curl -sr 63200- http://tunes.org/~nef/logs/scheme/09.09.04 19:01:46 mmc [n=mima@cs137104.pp.htv.fi] has joined #scheme 19:02:01 chandler: try TERM=screen screen -r 19:02:16 poe: No, that's not doing it either. 19:02:18 If you have a lot of 2 byte entries, a single byte offset turns it to gibberish. But ASCII letters in utf-8 are 1-byte not 2-byte, so... 19:02:27 Which is beginning to make me believe that the problem is with irssi. 19:02:30 gnomon: thank you 19:03:10 Bother. 19:04:26 synx, you do know that UTF-8 was specifically designed to *not* have exactly the synchronization problem that you're describing, yeah? 19:05:49 synx, have a look through http://www.cl.cam.ac.uk/~mgk25/ucs/utf-8-history.txt 19:06:01 Yep, modifier code points render fine in Leopard Terminal and slightly broken in Tiger terminal--the culprit is screen 19:07:03 (screen 4.00.03 FAU 23-Oct-06) 19:08:52 Oh okay, so utf-8 uses delimiters instead of just variable width characters 19:09:15 zbigniew, are you at liberty to, and interested in, trying tmux as a screen replacement? 19:09:49 synx, no, that's not correct either. Please do read the whole article; I put off doing so for a while, but when I finally got around to internalizing the whole thing, it really opened my eyes. 19:11:08 gnomon: as long as tmux provides a fully-customizable status bar, supports terminal recoding and so on, then sure 19:11:15 I think I tried before and found it lacking 19:11:24 It may yet be, but it's improving rapidly. 19:11:41 gnomon: I'll pass, thanks 19:11:59 Also: scroll speed in tmux in the presence of vertical splits is much faster than screen! 19:12:07 synx, you're missing out, but that's up to you. 19:13:19 gnomon: so i've heard; rather than vertical splits I just use two side-by-side terminals when I need it, and screen -x 19:13:20 gnomon: You should already have known that synx is resistant to learning. 19:13:40 Now now, there's no need to be mean. 19:13:41 on -occasion-, it's not as convenient as a true split, as with horizontal 19:14:02 zbigniew, can you share the screen copy/paste buffer across both terminals that way? 19:14:06 I am resistent to learning. Never denied that. 19:14:20 "resistant" 19:14:31 Gar, sorry. Knee-jerk reflex. 19:14:35 whatever 19:15:03 gnomon: yes. 19:15:19 (Because it's the same screen, just multi-attached) 19:15:33 -!- borism [n=boris@195.50.200.72] has quit [Client Quit] 19:15:37 zbigniew, oho! You have piqued my interest! In what way is that setup less convenient? 19:15:58 heehee, zbigniew 19:16:22 gnomon: There's really only one reason which you are unlikely to encounter. 19:16:46 I beg you to reconsider how often I run into what ought to be unusual circumstances. 19:17:16 Well, you backed away from me on the bench when I mentioned nested screens. 19:18:26 True, true, I did at that; it strikes me as a pretty dirty hack. Would you care to quickly describe what purpose that ungodly arrangement serves? 19:19:11 It's okay I'm a compulsive speller too :) 19:19:12 it's a tricky habit to break 19:21:08 gnomon: that's simple. In my laptop terminal I run screen. Now I ssh to my fileserver. Do I want to ssh one time for each window? No, I want to ssh once, and run screen there. 19:21:59 zbigniew, ah, I see; that does indeed make sense. 19:22:49 Same reason if you're adminning multiple systems -- it would suck to create 40 screen windows, instead you create 8 (one for each system) each running screen on the remote system 19:26:12 Now say you have a long-running screen session on your fileserver which is ssh'ed into a long running screen session on a remote server 19:27:16 Now if you happen to connect into the fileserver from a box running screen, you've now got three nested screen sessions 19:27:30 Admittedly rare, but it happens. 19:27:34 ASau [n=user@83.69.240.52] has joined #scheme 19:31:07 synx, if you pass on learning some basic information about UTF-8, then please don't spout nonsense about it. 19:31:26 Oh, so anyway, without a native vertical split, if you want to vertically split a nested screen you'll need to make another network connection in there, so the "split" (multiattach) occurs one hop before the destination. 19:32:15 Riastradh: This is a losing battle. 19:32:59 you'll notice I'm not spouting nonsense about it 19:33:41 zbigniew, gotcha. Thanks for obliging me with so much detail! 19:34:36 Anyway, it's not bad any more network-wise with ssh session multiplexing. 19:34:53 -!- ASau [n=user@83.69.240.52] has quit [Read error: 104 (Connection reset by peer)] 19:35:18 I've had to tunnel through enough restricted firewalls that what sounds insane is often quite useful. ;) 19:37:36 Slom [n=a@cpat002.wlan.net.ed.ac.uk] has joined #scheme 19:37:54 rstandy [n=rastandy@net-93-144-50-90.t2.dsl.vodafone.it] has joined #scheme 19:40:12 -!- Slom [n=a@cpat002.wlan.net.ed.ac.uk] has quit [Client Quit] 19:43:50 -!- MrFahrenheit [n=RageOfTh@users-120-93.vinet.ba] has quit [Read error: 54 (Connection reset by peer)] 19:44:05 MrFahrenheit [n=RageOfTh@users-120-93.vinet.ba] has joined #scheme 19:45:13 "You're running more than one SSH session? You must be a hacker! *plonk*" 19:51:49 -!- XTL [i=t6haha00@rhea.oamk.fi] has quit [Read error: 131 (Connection reset by peer)] 19:53:43 where is Riastradh's guide to scheme48? 19:54:45 mmc: 19:57:14 ASau [n=user@83.69.240.52] has joined #scheme 19:59:32 metasyntax [n=taylor@75.149.208.121] has joined #scheme 20:00:59 -!- rstandy [n=rastandy@net-93-144-50-90.t2.dsl.vodafone.it] has quit [Read error: 110 (Connection timed out)] 20:03:09 mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has joined #scheme 20:03:10 gnomon: http://3e8.org/pub/contrived.png 20:07:29 XTL [n=t6haha00@rhea.oamk.fi] has joined #scheme 20:08:03 Actually synx, it's more like "you're running an SSH session? *plonk*" 20:10:42 -!- Mr_Awesome [n=eric@c-98-212-143-245.hsd1.il.comcast.net] has quit ["aunt jemima is the devil!"] 20:16:24 -!- metasyntax [n=taylor@75.149.208.121] has quit ["Nichts mehr."] 20:17:38 -!- XTL [n=t6haha00@rhea.oamk.fi] has quit [Remote closed the connection] 20:31:01 saccade [n=saccade@dhcp-18-111-3-86.dyn.mit.edu] has joined #scheme 20:34:25 incubot: Like the whirlpool, Corryvreckan is heady, intense and powerful  its finish is long and deep, leaving the connoisseur with a lingering thought of a mysterious and daring journey. 20:34:29 anyway though, i'm not really a language connoisseur 20:34:29 XTL [n=t6haha00@rhea.oamk.fi] has joined #scheme 20:34:29 -!- XTL [n=t6haha00@rhea.oamk.fi] has quit [Remote closed the connection] 20:43:39 decker [n=chatzill@user-0c9h6n8.cable.mindspring.com] has joined #scheme 20:44:40 -!- mdmkolbe [n=adamsmd@garner.cs.indiana.edu] has quit ["Leaving."] 20:44:41 -!- mejja [n=user@c-49b6e555.023-82-73746f38.cust.bredbandsbolaget.se] has quit [Remote closed the connection] 20:45:21 hi there. so I'm on section 2.4 of sicp, where they discuss "data directed programming". basically they're saying that for each representation of a complex number, you'd give it a tag, i.e. rectangular, polar. 20:45:45 and then based on that tag, you'd look up what operations to perform in some table. 20:45:59 so I guess my question is, why not just package the operations with the data itself? 20:46:36 ha, does that make any sense? 20:46:53 oops, one sec... 20:49:18 maybe I'm just getting ahead of myself and they discuss just that later on in the book? 20:51:49 Maybe the idea is to separate data and logic. 20:53:01 well no, the idea is to have generic operations for complex number that work regardless of how the numbers are implemented 20:53:45 anyhow, the logic would still be seperate in a sense as you'd still be defining the operations somewheres. but then just packaging their names along with the data. 20:53:57 the way I'm thinking about it at least 20:55:45 oh well, guess I'll just move on 20:56:02 ha, or maybe play some poker 21:01:41 merus [n=merus@c-67-175-45-120.hsd1.in.comcast.net] has joined #scheme 21:02:48 Fare [n=Fare@ita4fw1.itasoftware.com] has joined #scheme 21:03:14 -!- Summermute [n=scott@c-68-34-67-216.hsd1.dc.comcast.net] has quit [] 21:03:53 -!- mario-goulart [n=user@67.205.85.241] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 21:04:23 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 21:07:20 yeah, guess I was getting somewhat ahead of myself. 21:11:35 MononcQc [i=MononcQc@modemcable062.225-20-96.mc.videotron.ca] has joined #scheme 21:14:01 Summermute [n=scott@c-68-34-67-216.hsd1.dc.comcast.net] has joined #scheme 21:15:44 ponzao___ [n=vesam@xdsl-83-150-86-25.nebulazone.fi] has joined #scheme 21:18:05 -!- Phaze [n=PhazeDK@0x5da32b16.cpe.ge-0-1-0-1104.soebnqu1.customer.tele.dk] has quit ["Leaving"] 21:18:55 annodomini [n=lambda@wikipedia/lambda] has joined #scheme 21:23:17 So, does anybody actually use SRFI 13's string search procedures? 21:25:20 The KMP search is _weird_ (probably my lack of knowledge & understanding), but string-index is useful at times 21:25:44 What's weird about it? 21:26:12 I just don't understand how to use it 21:28:57 Despite the examples given? It is fairly straightforward. 21:29:27 (You are familiar with the KMP algorithm, right?) 21:30:04 No, I'm not 21:30:54 Anyway, never mind, I'll read up on it some time 21:31:13 Oh, well, it's a fairly straightforward algorithm for fixed-pattern search. The way the main part of the algorithm works is that it steps through each unit of the input in which you seek an instance of the pattern. As you look at each unit of the input, you match it up with an appropriate place in the pattern, using a table you've computed at the beginning to figure out where you should backtrack to if there's a mismatch. 21:31:21 -!- mmc [n=mima@cs137104.pp.htv.fi] has quit [Read error: 110 (Connection timed out)] 21:31:46 It exhibits two noteworthy properties: It runs in O(n + m) time, and it proceeds unit by unit through the input, without needing any kind of lookahead. 21:31:56 katan [n=katan@c-65-96-164-124.hsd1.ma.comcast.net] has joined #scheme 21:32:25 Sorry, the first property is not noteworthy. The noteworthy property I meant to mention is that it runs in O(m) space, where m is the size of the pattern. 21:35:11 By contrast, for example, the Boyer-Moore algorithm is generally faster when you have all your text in a single buffer, because it looks ahead as far as it can. Boyer-Moore also needs a table mapping your units to indices, however. If your units are octets, this is OK -- you can just allocate a 256-element array. But if your elements are Unicode code points, you'll probably need a much heavier-weight hash table. 21:35:47 -!- saccade [n=saccade@dhcp-18-111-3-86.dyn.mit.edu] has quit ["This computer has gone to sleep"] 21:37:44 So KMP is fairly useful when your input comes incrementally. 21:40:12 -!- annodomini [n=lambda@wikipedia/lambda] has quit [] 21:40:16 -!- decker [n=chatzill@user-0c9h6n8.cable.mindspring.com] has quit ["ChatZilla 0.9.85 [Firefox 3.5.2/20090729225027]"] 21:40:27 -!- macr0 [n=vista@71.41.179.131] has quit [Read error: 110 (Connection timed out)] 21:42:44 is a hash table necessary for only a million code points at most, though? 21:43:46 -!- AtnNn [n=welcome@x-132-204-254-227.xtpr.umontreal.ca] has quit ["z"] 21:44:01 65k if you're not crazy 21:44:09 on a desktop or server machine, perhaps not; on a machine on in a Scheme ssystem with a few hundred or dozen kilobytes of memory, well, you might not have much of a choice: a hash table would probably outperform seeking into a table on disk. 21:44:30 s/s(system)/&/ 21:46:31 -!- bweaver [n=user@c-68-60-0-190.hsd1.tn.comcast.net] has quit ["ERC Version 5.3 (IRC client for Emacs)"] 21:46:39 yes, certainly 21:47:09 although that doesn't encompass "probably", imho 21:47:28 jcowan [n=jcowan@cpe-74-68-154-139.nyc.res.rr.com] has joined #scheme 21:49:54 Of course, gnomon, that is precisely the appropriate setting to crunch huge corpora of text. 21:55:32 tali713 [i=tali713@c-71-195-45-159.hsd1.mn.comcast.net] has joined #scheme 21:58:12 "And when we say huge, we mean huuuuuuuuuuuuuuge" 21:59:31 rouslan [n=Rouslan@unaffiliated/rouslan] has joined #scheme 21:59:36 Zoog-bloogle! 22:01:16 *jcowan* raises his eyebrows. 22:01:22 What seems to be the matter? 22:01:54 (BTW, I am somewhat worse off than I expected to be, so the bagels will indeed need to be postponed till next week. My apologies.) 22:02:56 OK, but don't apologize! You are not in the least obligated to send me bagels. 22:03:02 gnomon, however, still owes someone a sandwich. 22:03:17 Like all the best obligations, it is self-imposed. 22:03:28 I felt a great disturbance in the Net, as if millions of Palm Pilot Pros suddenly cried out in terror and were suddenly silenced 22:03:32 sstrickl [n=sstrickl@pool-151-199-62-61.bos.east.verizon.net] has joined #scheme 22:03:36 Just like your obligation to explain to me the merits and demerits of various SRFIs. 22:07:29 kilimanjaro [n=kilimanj@70.116.95.163] has joined #scheme 22:08:47 Riastradh, I do at that. Stupid travel details kept me away from the airport that day. 22:11:33 -!- jonrafkind [n=jon@crystalis.cs.utah.edu] has quit [No route to host] 22:12:33 sstrickl` [n=sstrickl@pool-151-199-62-61.bos.east.verizon.net] has joined #scheme 22:12:47 -!- sstrickl` [n=sstrickl@pool-151-199-62-61.bos.east.verizon.net] has left #scheme 22:12:53 -!- Edico [n=Edico@unaffiliated/edico] has quit ["Ex-Chat"] 22:14:56 sstrickl` [n=sstrickl@pool-151-199-62-61.bos.east.verizon.net] has joined #scheme 22:23:09 -!- katan [n=katan@c-65-96-164-124.hsd1.ma.comcast.net] has left #scheme 22:28:56 -!- sstrickl [n=sstrickl@pool-151-199-62-61.bos.east.verizon.net] has quit [Read error: 110 (Connection timed out)] 22:31:10 -!- sstrickl` is now known as sstrickl 22:45:58 arcfide [n=arcfide@adsl-99-14-211-8.dsl.bltnin.sbcglobal.net] has joined #scheme 22:49:13 -!- MrFahrenheit [n=RageOfTh@users-120-93.vinet.ba] has quit [Read error: 145 (Connection timed out)] 22:52:53 Who can point me to procedure introspection facilities in various Scheme implementations?\ 22:52:53 jonrafkind [n=jon@crystalis.cs.utah.edu] has joined #scheme 22:55:24 Given debugging data, MIT Scheme can reconstruct the lexical environment and the macro-expanded source code of compiled procedures. 22:56:03 Given debugging data, Scheme48 can map byte code program counters to macro-expanded source expressions, and reconstruct the lexical environments of procedures. 22:56:47 What, no PROCEDURE-HALTS? 22:56:49 ?] 22:56:54 No, alas. 22:57:10 Scsh has that, though. 22:57:23 Oh really. 22:57:35 Yep. See scsh/scsh.scm in the scsh source tree. 22:57:49 Or, if you don't have that handy: 22:57:56 ;;; The classic T 2.0 primitive. 22:57:56 ;;; This definition works for procedures running on top of Unix systems. 22:57:56 (define (halts? proc) #t) 22:58:33 It probably should have been called HCF?. 22:58:52 antoszka [n=antoszka@unaffiliated/antoszka] has joined #scheme 22:59:05 (define (procedure-halts? x) (not (eqv? x (lambda () (x) ((lambda (x) (x x))(lambda (x) (x x))))))) 22:59:15 after the familiar assembly-language mnemonic. 22:59:27 -!- Summermute [n=scott@c-68-34-67-216.hsd1.dc.comcast.net] has quit [Read error: 110 (Connection timed out)] 23:01:21 I don't know what can be reconstructed in PLT Scheme. 23:02:37 Thanks. 23:02:38 jcowan: Chez Scheme also has procedure inspection, if that's what you want. 23:03:09 jcowan: Petite Chez Scheme doesn't track as much inspector information, though, so debugging with Petite is less pleasant than in Chez Scheme. 23:04:28 I was actually thinking about simpler, purely run-time things like PROCEDURE-ARITY. 23:04:36 Ah. 23:05:05 jcowan: Chez Scheme also has a means of procedurally introspecting. 23:05:09 MIT Scheme has a simple system for recording procedure arities, which are recorded whether or not debugging information is available: every procedure has a minimum number of arguments and an optional maximum number of arguments. 23:05:18 *jcowan* nods. 23:05:26 Scheme48 has this information, too, although it is a little tricky to get at, and likely to change between versions. 23:05:32 However, this is very approximate information. 23:06:02 Basically, it exists only to ensure that the stack is in a state understood by compiled code before jumping into it. 23:06:09 jcowan: http://www.scheme.com/csug/debug.html#./debug:h4 23:06:09 (This applies both to Scheme48 and MIT Scheme.) 23:06:51 MIT Scheme's library also uses the information sometimes as a conservative approximation of error checking, by signalling an error early if some procedure is known to reqiure too few or too many arguments. 23:08:01 *jcowan* would like an extension to the syntax of lambda to let a Scheme procedure declare how many values it returns. 23:08:49 jcowan: You want to introduce types into Scheme??? 23:08:50 :-) 23:09:08 typed scheme has been done :P 23:09:12 PLT has it 23:10:37 No, except in the sense that (lambda (a b c) ...) has the type "exactly 3 arguments". 23:11:21 And it is worth emphasizing that any question about procedure arity can be answered mechanically only negatively in Scheme, because a procedure can apply arbitrary rules to the list of arguments it accepts. 23:11:23 Just so, (lambda 2 (a b c) (values a b)) would have the type "exactly 3 arguments, exactly 2 values". 23:11:41 Riastradh, can you elucidate? 23:11:56 jcowan: What if I want arbitrary number of return values? 23:12:00 (define (f . x) (if (not (horrible-complex-predicate? x)) (error "Wrong number of arguments!")) ...) 23:12:10 (procedure-arity f) ;Value: ? 23:12:29 arcfide: Omit the number, obviously. 23:12:36 -!- Fare [n=Fare@ita4fw1.itasoftware.com] has quit ["Leaving"] 23:12:53 Naturally what PROCEDURE-ARITY returns can say `accepts any number of arguments', but that's not really true. 23:13:04 Riastradh: That is as much as to say that Scheme procedure types (if we most call them that) fall into two classes: "exactly N arguments" and "N or more arguments". 23:13:17 On the other hand, if you have (define (f x y . z) ...another horrible argument check...), you can say with certainty that one argument is not enough. 23:13:25 I'd say that it does accept them, but it doesn't *approve* of them. Don't ask, don't tell. 23:14:01 What about a procedure that accepts named arguments? It requires, then, that there be an even number of arguments to specify them. 23:14:14 I don't claim it's a completely general mechanism. 23:14:17 This might be formalized in the Scheme system, or it might not be. 23:14:42 So the best you can do in general is to answer questions negatively: Will this procedure take N arguments? Definitely not, or maybe. 23:14:46 But there is an asymmetry (two m's, one s, one t, got it) that could be removed. 23:14:54 I see, yes: negative. 23:14:57 Anyway, it's time for dinner. 23:15:29 but if the question is "does this procedure take exactly N arguments, then yes/no/maybe are all possible answers. 23:21:29 XTL [i=t6haha00@rhea.oamk.fi] has joined #scheme 23:28:03 jcowan: i just don't see what you get from doing that. :-) I don't see the formals syntax of a lambda as dealing with type, but merely a way to bind values to names in a convenient way. 23:28:18 jcowan: Specifying the number of return values doesn't actually give me anything except type information. 23:29:18 I can't, for example say: (let-values ([(a b c ...) (proc ...)]) ...) without actually knowing ahead of time the values that I am going to receive or at least their general form, and specifying that in a Lambda won't help. 23:33:12 Sorry, I don't know this let-values; it is not in R5RS, and therefore hasn't been standardized. :-) 23:33:29 Or I should say, R3RS. 23:35:18 jcowan: So do like a Schemer and read your implementation documentation and the current research. 23:35:19 :-P 23:36:14 A compiler can look up the definition of proc, if known, and complain. 23:36:22 Just so, it can see (car a b) and complain about that too. 23:36:28 s/so,/as 23:40:33 saccade [n=saccade@dhcp-18-111-3-86.dyn.mit.edu] has joined #scheme 23:40:39 jcowan: I don't think that is a good reason for adding new syntax to the language. 23:43:18 -!- karme [n=user@kallisto.karme.de] has left #scheme 23:44:20 Okay; what would count as a good reason? 23:47:21 Because it adds some expressive power to the language that would be cumbersome to achieve without it. 23:47:29 That *might* be a good reason. 23:49:22 Moreover, the responsibility for proving their case should rest heavily on the one who wishes to add the new feature, it's not everyone else's job to demonstrate why they shouldn't add the feature, it's the responsibility of the initiator to convince everyone that it should be added. 23:55:05 -!- saccade [n=saccade@dhcp-18-111-3-86.dyn.mit.edu] has quit [Read error: 104 (Connection reset by peer)] 23:55:11 saccade [n=saccade@dhcp-18-111-3-86.dyn.mit.edu] has joined #scheme 23:56:34 Naturally. The innovator always has the burden of persuasion. Frequently one hindbrain at a time. 23:57:02 There's also the approach of waiting for the conservatives to die off.