00:00:10 C is a C C. 00:00:18 C is purely functional. 00:00:20 s/ $// 00:00:42 C is purely dysfunctional. 00:00:57 * pikhq should write something that will display a plain text file well. 00:01:25 * cpressey should PLAY MORE GORF 00:01:29 -!- cpressey has changed nick to cpressey_away. 00:01:30 I should write map, foldl, filter and so on for C hm 00:01:36 Y'know what? Actually, screw it. 00:01:41 pikhq: Enjoy the evil algorithms. 00:01:45 using pikhq's closure stuff 00:01:50 I should feed it all to TeX. 00:01:53 AnMaster: boring. 00:02:08 * pikhq imagines HTML->TeX 00:02:12 cpressey_away, gorf? 00:02:54 Hmm. 00:03:02 pikhq: PrinceXML is an HTML to PDF thing written in the prolog esque purely functional Mercury. Apparently it well. 00:03:16 So there's a good HTML typesetter for you. 00:03:48 Closed source and costs lots for commercial use though. 00:03:57 Pity. 00:04:01 *it typesets well 00:05:23 Gorgeous output. 00:05:56 Free for non-commercial use... 00:06:02 Oh, temptation. 00:09:54 pikhq, what is? 00:10:32 * pikhq wishes Project Gutenberg's text was not stuck into ASCII. 00:10:44 With the straight quotes... 00:10:58 Makes it more of a pain to force into TeX. 00:11:34 The only non-obsolete character set for transport encoding is UTF-8. :-) 00:11:49 pikhq, as long as there are no nested quotes there should be no issues 00:11:51 :) 00:12:37 AnMaster: Still... 00:12:55 Basically I'll need to write a freaking parser. 00:13:12 pikhq: I have a beautifully typeset The Metamorphosis. 00:13:30 LaTeX with memoir class, Garamond. 00:13:38 * pikhq looks at Wikisource to see if it's less painful. 00:13:39 My own work. 00:13:45 aliseiphone: Mmm. 00:14:28 *Still* straight quotes there. 00:14:29 Gah. 00:15:18 Also annoying: One needs to essentially manually handle chapters and headings. 00:16:55 -!- benuphoenix has joined. 00:17:00 aliseiphone: So, how'd you manage that typesetting? 00:17:33 pikhq, why do straight quotes hurt? 00:17:45 pikhq, Swedish use the same slanted quotes for both opening and closing for example 00:17:47 AnMaster: For input to TeX. 00:17:56 pikhq, well you can escape the quotes 00:18:07 Am I wanted here? If not, I'll leave on my own. 00:18:11 -_-' 00:18:16 benuphoenix: You're not *un*wanted. 00:19:19 i assume that's a good thing? 00:22:04 i accidently returned to my former nature as "destroyer of conversations" earlier today on a different channel, different network, so I don't wanna make the same mistakes here. 00:22:37 here goes my question: 00:23:19 * AnMaster waits 00:23:22 Has anyone here used a c/c++ interpreter? 00:23:35 I don't think I have 00:23:55 doesn't sound that esoteric either. A bit messy at most 00:24:25 write one in C then compile it to bf with gcc-bf 00:25:15 considering that hello world from gcc-bf is over 1 MB, that should be fun 00:26:16 one meg for a hello world? 00:26:32 yes. 00:26:38 benuphoenix, runlength encoded that is 00:26:49 so >>>>> turned into >*5 00:26:58 that helped a lot for it 00:27:06 * Sgeo cuts and pastes some code 00:27:10 of course hello world can be a lot shorter 00:27:16 !bf_txtgen Hello world! 00:27:23 * AnMaster prods EgoBot 00:27:26 112 ++++++++++[>+++++++>+>++++++++++>+++<<<<-]>++.>>+.+++++++..+++.>++.<++++++++.--------.+++.------.--------.>+.<<. [542] 00:27:33 okay that is a long one 00:27:40 there are many shorter 00:28:28 -!- MigoMipo has quit (Remote host closed the connection). 00:28:36 !bf_txtgen a 00:28:39 39 ++++++++++[>++++++++++>+>><<<<-]>---.>. [27] 00:29:08 !bf_txtgen b 00:29:11 38 +++++++++++[>+++++++++>+>><<<<-]>-.>-. [39] 00:29:28 Java enforces one public class per file? 00:29:37 benuphoenix, this uses some genetic algorithm building on the basic for 00:29:39 That's one rule that I should have stuck to here 00:29:52 Sgeo, it does? eww 00:30:03 AnMaster, I may be entirely mistaken 00:30:38 benuphoenix, a human writng the code my hand will likely be more efficient. Oh and it appends a newline at the end 00:32:20 bbl 00:32:27 aliseiphone: Ohmygoodness enabling historical ligatures produces awesome output. 00:32:29 brb 00:34:16 -!- Wamanuz4 has quit (Ping timeout: 276 seconds). 00:35:28 pikhq: In what? 00:35:31 TeX? 00:35:45 XeTeX. 00:35:58 Also, I used the Gutenberg Metamorphosis and manually did the quotes. 00:36:15 Mmmm. 00:36:26 And how'd you get ahold of Garamond? 00:36:52 Oh. Right. OS X. 00:38:48 i'm downloading a brainfuck compiler 00:39:21 i don't know why i didn't have one installed on this machine... 00:40:36 it's called nbfc 00:40:52 any good? 00:44:13 i mean, which is better: hs-brainfuck or nbfc? 00:45:08 or bf2c 00:46:58 aliseiphone: Anyways. XeTeX is absolutely wonderful. 00:49:42 benuphoenix: Should all be reasonable. 00:51:44 pikhq: A modified urw Garamond 00:51:49 I don't use x 00:51:58 And xetex is inferior to tex 00:52:10 *use OS X 00:52:21 aliseiphone: How so? 00:53:11 See microtype package for all the fancy stuff xetex can do without it. Therefore xetex is basically only good for Unicode, not typography. 00:53:35 Microtype makes TeX handle Opentype fonts? 00:53:37 TeX proper knows more about it's fonts rather than xetex since it "natively" supports them 00:53:52 No. But you don't want it to. 00:54:10 Meanwhile, http://en.m.wikipedia.org/wiki/Ted_(word_processor) 00:54:28 Anyway. I must go. 00:54:28 Bye. 00:54:30 -!- aliseiphone has quit (Quit: Get Colloquy for iPhone! http://mobile.colloquy.info). 00:56:19 -!- jillsmitt_ has quit (Remote host closed the connection). 00:58:48 -!- FireFly has quit (Quit: swatted to death). 00:59:12 -!- jillsmitt has joined. 00:59:35 -!- BeholdMyGlory has quit (Remote host closed the connection). 01:01:13 -!- MizardX has quit (Ping timeout: 276 seconds). 01:14:45 -!- SphinX777 has joined. 01:16:32 -!- SphinX777 has quit (Client Quit). 01:20:14 !bf_txtgen a 01:20:17 39 ++++++++++[>++++++++++>+>><<<<-]>---.>. [52] 01:20:53 -!- Oranjer has joined. 01:22:08 -!- sftp has quit (Remote host closed the connection). 01:23:23 -!- iamcal has quit. 01:31:03 -!- cal153 has joined. 01:35:16 is "+[]" an infinite loop? 01:38:02 Yes. 01:39:56 -!- nooga has quit (Ping timeout: 248 seconds). 01:40:58 benuphoenix, did you get my msg? 01:42:49 -!- augur has quit (Remote host closed the connection). 01:43:01 -!- augur has joined. 01:47:11 Sgeo: I've been AFK 01:48:49 ls 01:49:12 -!- benuphoenix has quit (Quit: leaving). 02:14:53 -!- Mathnerd314 has joined. 02:49:55 -!- oerjan has joined. 02:57:27 -!- augur has quit (Remote host closed the connection). 02:57:33 -!- augur has joined. 03:43:59 -!- Oranjer has left (?). 03:55:10 -!- Phantom_Hoover has joined. 03:55:47 Hi, everybody! 03:58:40 -!- Zuu has quit (Ping timeout: 276 seconds). 04:05:26 -!- Zuu has joined. 04:05:26 -!- Zuu has quit (Changing host). 04:05:26 -!- Zuu has joined. 04:09:45 -!- GreaseMonkey has joined. 04:10:07 Hmmmm 04:10:30 If somebody was to go back over my profile pictures, they would have to conclude that I have for some reason taken up the habit of wearing pink ties every day. 04:10:54 -!- oerjan has quit (Quit: Lost terminal). 04:36:20 Random technical question: How do OSes detect things like attempts to access illegal addresses? 04:39:09 Phantom_Hoover: Page fault. 04:39:33 You access an unmapped page, the kernel gets told, the kernel discovers it's a page that's not supposed to be mapped, SIGSEGV. 04:39:39 Ah. 04:40:14 And yes, this means if you access an unallocated address that *happens* to be mapped, the kernel doesn't notice. 04:41:47 * pikhq comes to the conclusion that there is no such thing as a good computer typesetting tool 04:42:03 TeX is the closest, but it's not perfect for non-Western scripts. 04:43:05 Paging is machine level, isn't it> 04:43:10 Yes. 04:43:16 Yep... 04:50:57 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds). 04:56:26 I think I actually need to record another WIPP. 04:56:28 I've added like a minute. 04:57:28 -!- sebbu2 has joined. 04:58:11 -!- sebbu has quit (Ping timeout: 245 seconds). 04:58:11 -!- sebbu2 has changed nick to sebbu. 04:59:01 -!- Mathnerd314 has quit (Ping timeout: 245 seconds). 05:00:46 -!- Mathnerd314 has joined. 05:40:32 -!- coppro has joined. 05:41:47 I wan a vim OS 05:42:38 Once, when my computer was not working, I remember reading that some people almost consider emacs to be an OS 05:42:55 I was wondering if I could just put the emacs disc in and boot from there 05:43:06 [I was a kid back then, and have never heard of a LiveCD] 05:43:33 !bf ++++[>++++[>++++<-]<-]>>+. 05:43:36 A 05:43:37 ^^not mine 05:43:53 benuphoenix's 05:44:14 Emacs is very much an OS. 05:45:09 -!- aschueler has joined. 05:46:55 -!- coppro has quit (Remote host closed the connection). 05:49:59 -!- coppro has joined. 06:06:36 -!- Wamanuz4 has joined. 06:12:04 "The common law of England, insofar as it is not repugnant to the principles of the Bill of Rights and Constitution of this Commonwealth, shall continue in full force within the same, and be the rule of decision, except as altered by the General Assembly." -- Virginia constitution. 06:12:12 English law applies in Virginia. 06:16:27 -!- Gregor has quit (Ping timeout: 252 seconds). 06:30:43 common law 06:36:46 Yes. 06:37:04 For a few centuries that's all the law there was. 06:37:12 ;) 06:37:56 not really 06:39:22 Okay, okay. And the king's word. 06:40:52 what I find interesting, though 06:41:05 is that it does not specify a temporal restriction 06:41:27 meaning that one could use modern English court cases in Virginia 06:41:38 (but not, apparently, Scottish ones) 06:41:58 Scotland doesn't have common law, anyways. 06:42:06 (they run a civil law system) 06:42:33 ssh 06:43:02 I find the legal framework under which the UK runs very, very odd. 06:43:46 also old 06:43:55 which may be a reason for the oddness 06:44:16 I should specify: the one that makes it a United Kingdom, rather than nations sharing a monarch. 06:45:08 oh 06:45:11 yeah, that's bizarre 06:45:21 I wonder if England will devolve 06:45:38 Partly did. 06:45:40 See Ireland. 06:45:48 no, England 06:45:53 honestly, the UK needs major constitional reform 06:46:14 Oh. Partly did. See how England does not have its own parliament. 06:46:35 fine, I'll rephrase 06:46:40 I wonder if England will get its own parliament 06:46:51 *Ah*. 06:46:59 I wonder. 06:47:10 And yeah, the UK needs major constitutional reform. 06:47:15 Such as "having a constitution". 06:47:54 while we're at it, fixing the Succession Act would be peachy 06:48:31 :P 06:49:02 that would be pretty incredible to do, though 06:49:18 Hmm. If a *court* in the UK were to randomly declare that not having gay marriage were against the US constitution, I think that would legalise gay marriage in Virginia. 06:49:32 pikhq: Nah, that's not common law 06:49:37 just interpretation of statue law 06:50:01 (common law is stupid) 06:50:06 Ah, right. 06:50:15 Common law is crazier than that. 06:50:52 common law is law that was made up by the courts before statutes were invented, then reinterpreted and remodeled into something vaguely consistent 06:50:53 Okay, okay. Randomly declare that the punishment for being a Virginian in Virginia shall be a fine of 1 pound per second. :P 06:58:33 -!- coppro has quit (Quit: brb). 06:58:51 -!- jillsmitt has quit (Remote host closed the connection). 06:59:39 -!- coppro has joined. 07:00:16 1 pound on the butt? 07:02:54 * Sgeo watches his Reddit alt hit his head on the spam filter 07:05:53 -!- jillsmitt has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:24:26 -!- augur has quit (Ping timeout: 245 seconds). 08:26:10 -!- augur has joined. 09:19:32 -!- augur has quit (Remote host closed the connection). 09:38:08 -!- aschueler has quit (Quit: leaving). 09:45:47 -!- jillsmitt has quit (Ping timeout: 260 seconds). 10:05:56 -!- tombom has joined. 10:12:45 -!- cal153 has quit (*.net *.split). 10:12:46 -!- mycroftiv has quit (*.net *.split). 10:12:48 -!- dbc has quit (*.net *.split). 10:12:55 -!- Ilari has quit (*.net *.split). 10:14:39 -!- nooga has joined. 10:15:43 -!- mycroftiv has joined. 10:17:12 -!- dbc has joined. 10:19:04 -!- cal153 has joined. 10:19:04 -!- Ilari has joined. 10:20:09 -!- MigoMipo has joined. 10:30:42 -!- Slereah has quit (Ping timeout: 260 seconds). 10:35:53 -!- Slereah has joined. 10:57:14 -!- coppro has quit (Remote host closed the connection). 11:16:38 -!- BeholdMyGlory has joined. 11:23:07 -!- GreaseMonkey has quit (Quit: I'm using NO SCRIPT WHATSOEVER - Download it at file:///dev/null). 11:30:43 -!- jillsmitt has joined. 11:44:59 -!- MigoMipo has quit (Read error: Connection reset by peer). 11:49:29 -!- MizardX has joined. 11:56:27 -!- MigoMipo has joined. 12:13:38 -!- jillsmitt_ has joined. 12:14:18 -!- jillsmitt has quit (Ping timeout: 246 seconds). 12:14:40 -!- jillsmitt_ has quit (Client Quit). 12:15:10 -!- jillsmitt has joined. 12:35:47 -!- ais523 has joined. 13:01:40 -!- ais523 has quit (Read error: Connection reset by peer). 13:02:55 -!- ais523 has joined. 13:27:47 -!- FireFly has joined. 13:47:21 -!- jillsmitt has quit (Remote host closed the connection). 14:00:51 -!- Mathnerd314 has quit (Ping timeout: 240 seconds). 14:03:28 -!- Mathnerd314 has joined. 14:08:03 -!- Mathnerd314 has quit (Ping timeout: 252 seconds). 14:17:59 -!- augur has joined. 14:25:02 -!- jillsmitt has joined. 14:43:06 -!- Gregor-L has joined. 15:04:14 -!- kar8nga has joined. 15:14:53 -!- Gregor-L has changed nick to Gregor. 15:30:16 -!- ais523 has quit (Ping timeout: 245 seconds). 15:35:24 -!- augur has quit (Remote host closed the connection). 15:35:39 -!- augur has joined. 15:38:32 -!- relet has joined. 15:38:59 -!- Mathnerd314 has joined. 15:42:23 -!- ais523 has joined. 15:47:17 -!- augur has quit (Remote host closed the connection). 15:47:28 -!- augur has joined. 15:49:15 -!- nooga has quit (Ping timeout: 252 seconds). 16:08:20 -!- sebbu has quit (Quit: reboot). 16:12:48 -!- ais523 has quit (Read error: Connection reset by peer). 16:14:03 -!- ais523 has joined. 16:14:18 -!- Gregor has quit (*.net *.split). 16:21:39 -!- sebbu has joined. 16:26:08 -!- leBMD has joined. 16:26:15 Howdy, folks. 16:26:30 hi 16:27:00 Well, I'm late to the party, but I only just now started using Befunge. 16:27:12 everyone has to learn sometime 16:27:16 otherwise, they'd never learn at all 16:27:18 and that would be really boring 16:27:19 true. 16:27:41 I'm pretty happy with my self, because I've already made hello world and an odd or even program. 16:28:20 a self-restarting odd or even program, that is. 16:29:02 fungot: say hi to leBMD 16:29:03 ais523: so you'll have cpan. perl5 has no macros and continuations?... is preserved to be passed in from the wild blue yonder and smacked into 9 millions of years ago 16:29:08 fungot's written in Befunge too 16:29:09 ais523: try doing the odbc, but quickly decided not to pursue mit. :) :( ( font issues)? xpdf? 16:29:16 it's one of the better esolangs for large projects 16:29:22 nice 16:29:31 what interpreter do you use? 16:29:45 when I use Befunge, mostly FBBI or Cfunge 16:29:50 I've got Wasabi and BeQunge, but I've been using Wasabi, because BeQunge is a little too flashy for me. 16:29:53 umm, CBBI 16:30:02 *CCBI 16:30:02 cool 16:30:05 I'll get the name eventually 16:30:15 unless Deewiant corrects me first 16:30:44 lol 16:30:57 I won't 16:31:13 did I actually get it right in the end? 16:31:17 Yep 16:31:36 do you combine that with an ide, or do you just use notepad? 16:31:41 FBBI is the cat's-eye one 16:32:00 leBMD: mostly Emacs 16:32:06 nice 16:32:08 notepad is woefully inadequate for most programming 16:32:16 ocne upon a time I had emacs 16:32:36 once* 16:32:36 Wasabi's 93-only, right? 16:32:41 yeah... 16:33:04 I generally use Notepad++ for such things as asciiportal mapping, so I'll use it for befunge. 16:34:35 BeQunge's interpreter is buggy, I don't recommend it 16:34:42 k. 16:36:43 For -98 interpreters, the properly working ones are CCBI, cfunge, and pyfunge; the mostly good ones (for "normal uses") are Language::Befunge, Rc/Funge-98, and Stinkhorn 16:38:21 hm, when I drag my program over CCBI, it flashes onto the screen and dissapears again. 16:38:28 oh! I've got it! 16:38:35 Command-line programs tend to do that 16:38:53 there, I just put & before @ 16:39:06 Yes, that's the lazy solution :-P 16:39:56 does emacs have a plugin or script (or whatever) that automatically inputs spaces into your file so that you don't have to be like "okay, this is going down...SPACESPACESPACESPACESPACE"? 16:41:12 ais523: This one's for you 16:41:22 -!- kar8nga has quit (Remote host closed the connection). 16:41:51 Deewiant, what do you use? 16:41:55 Vim 16:42:09 hm, I've never heard of it. I'll have to look into that. 16:43:08 It works differently to most other editors and therefore has a bit of a learning curve; some people like it, others don't 16:49:33 O_o, I opened up gvim and I have no idea what's going on... 16:50:42 You should open vimtutor first 16:50:58 there is no vimtutor 16:51:04 There should be 16:51:08 On MS-Windows you can find it in the Program/Vim menu. Or execute 16:51:08 vimtutor.bat in the $VIMRUNTIME directory. 16:51:48 oh wait, I forgot to get resources. XD 16:51:58 NOW I know what the problem is. 16:52:31 runtime files8 16:52:35 * 16:53:19 IIRC $VIMRUNTIME is under the directory you installed it on Windows, called "vim72" 16:53:37 So typically program files\vim\vim72 16:53:47 k 16:53:49 -!- Mathnerd314 has quit (Ping timeout: 276 seconds). 16:54:06 I didn't use the installer, though. So, I'm just going to shove my way through and see what happens. 16:54:22 Fair enough 16:54:49 -!- Mathnerd314 has joined. 16:56:19 -!- swilde has joined. 17:02:13 -!- zzo38 has joined. 17:04:15 Well, I've got it working just fancy. 17:04:35 Do you use any macros or anything for when you make befunge files? 17:06:38 Nothing special like that, no 17:08:03 is there a way to just move around regardless of lines or spaces? 17:10:07 Visual block mode (ctrl-V) allows inserting and selecting stuff like that 17:11:03 :set virtualedit=all 17:11:21 Is what you're looking for, I believe 17:11:28 looks like it 17:12:25 I haven't used it myself, although it probably would've been handy sometimes 17:13:36 I've got Wasabi and BeQunge, but I've been using Wasabi, because BeQunge is a little too flashy for me. <-- no idea about the first one. But the second one is definitely not standard compliant 17:13:52 k 17:14:26 It's probably a fine editor though 17:14:47 It's just its interpreter you shouldn't use 17:15:32 does emacs have a plugin or script (or whatever) that automatically inputs spaces into your file so that you don't have to be like "okay, this is going down...SPACESPACESPACESPACESPACE"? 17:15:39 maybe you mean M-x picture-mode? 17:15:56 sure...(whatever that means) 17:16:11 leBMD, well picture-mode lets you write in all cardinal directions 17:16:16 and iirc diagonals too 17:16:22 oh, cool 17:16:24 I guess yeah 17:16:35 leBMD, iirc vim doesn't have anything like it. 17:16:41 Correct 17:16:42 k 17:16:44 not for diagonals at least 17:16:55 Or for the cardinals, except east 17:17:03 heh 17:17:14 -!- Phantom_Hoover has joined. 17:17:18 Even notepad has it for east though, AFAIK :-P 17:17:25 :P 17:17:51 Deewiant, so how does vim handle right-to-left languages? 17:18:00 No idea 17:18:10 It has reverse insert, not reverse replace, as I've said before 17:18:35 right 17:19:25 -!- leBMD has quit (Quit: ChatZilla 0.9.86 [Firefox 3.0.13/2009073022]). 17:20:33 You can probably write funge-mode for Emacs, in any case. 17:20:58 well yes obviously 17:26:41 When trying to prevent the ball from entering the left Game Over hole, don't push it so much so that the ball goes in the right Game Over hole instead. 17:27:37 ... 17:27:47 Well yes obviously 17:27:53 zzo38: have I missed something? 17:27:55 -!- cpressey_away has changed nick to cpressey. 17:28:45 Phantom_Hoover: I don't know? 17:29:00 -!- AnMaster has quit (Read error: Operation timed out). 17:29:32 zzo38: no, it looks like you just said that out of the blue. 17:30:10 Phantom_Hoover: Yes because I was playing a pinball game and I got game over so I typed that 17:30:59 -!- Phantom_Hoover has quit (Quit: Page closed). 17:31:33 http://zzo38computer.cjb.net/img_12/jigglebox.png Probably you can see the game over hole? 17:32:17 If the ball goes into one of the holes labeled "game over", then it is instantly game over, and you do not get to play the remaining balls. 17:32:59 But if you hit all of the trop targets on the top, the game over holes change to 500. 17:33:42 Have you ever build a pinball game? 17:35:42 -!- CakeProphet has joined. 17:49:08 Does PCS count? 17:49:31 Or, does Pachinko count? 17:49:42 Oh Pachinko. 17:50:22 I built a Pachinko board in grade 6. A lame one, but, yeah. 17:51:00 -!- cheater has quit (Ping timeout: 240 seconds). 17:58:22 -!- Geekthras has quit (Quit: leaving). 18:02:29 -!- swilde has quit (Quit: ERC Version 5.3 (IRC client for Emacs)). 18:03:22 -!- cheater has joined. 18:09:15 There's a RUBE example playfield which is basically a Pachinko board. Americans might be more familiar with it as "Plinko" from 'The Price is Right". 18:10:07 hmm, who hosts The Price Is Right in the US? 18:10:33 Used to be Bob Barker. Last I saw, though, it was... Drew Carey? 18:10:37 ah 18:10:44 in the UK, it was famously Bruce Forsythe 18:11:00 when it was still running 18:11:03 I didn't even know there was a UK version. 18:11:27 I was vaguely surprised there was a US version, because it was so closely linked to the host in the UK 18:12:01 according to Wikipedia, it was in the US first but has ended up all over the world 18:12:01 Eeenteresting 18:12:40 I want to build a pachinko one day. But I haven't done so yet 18:13:15 -!- cheater has quit (Quit: Leaving). 18:13:25 -!- oerjan has joined. 18:14:58 A special kind of pachinko game, "kaitenmono", with you can turn it a few degrees from directly vertical, and push buttons to put electric charges on the metal pins, which also stops the slot machine spinning when you push a button, but you cannot electrify if is not spinning. Entering a hole also stops spinning all slotwheels. And then depending which hole is lit, you might get bonus points. Each hole worth different number of points (lit=doub 18:15:19 -!- cheater99 has joined. 18:15:29 And then if you match three numbers on slot machine you get another double 18:16:39 -!- ais523 has quit (Remote host closed the connection). 18:21:51 CWEB has two modes, Tangle mode and Weave mode, but Enhanced CWEB should have a third mode for makefile mode. 18:22:15 Which is used in place of the "make" command and in place of normal makefiles. 18:22:46 Kaitenmono, BTW: "spinning thing". 18:22:57 (回転物) 18:23:22 -!- oerjan has quit (Quit: Reboot). 18:28:11 -!- zzo38 has quit (Remote host closed the connection). 18:46:34 So, my CE would look like this. It's based on an extremely general rewriting language (like Treacle). But the implementation is based on only the *efficient subset* of that language, which contains only those rewriting rules that would be appropriate for e.g. Scheme. And this subset would look a lot like a mini pure Scheme. Probably without lambdas. 18:47:53 One level up, a "reactor" pattern wraps these terms, resulting in something like Erlang processes sending each other asynchronous messages. And every device in the system is modelled as a process which sends and receives asynchronous messages. 18:52:09 The devices that are available depend on the system that it's running on, of course. The most basic device would be a virtual teletype, which corresponds pretty closely with Unix's stdin/stdout. 18:58:07 -!- ais523 has joined. 19:02:18 Then, somewhere along the way, there's a compiler that reduces terms in the excessively-general rewriting language, to terms in the efficient subset of that language. (Modern compilers for rewriting languages do similar things when compiling to native code.) 19:03:27 Going this route because one of the problems with the excessively-general rewriting language is that there is very little established work on "how to write usual programs in an excessively general rewriting language". That is to say, it's still being figured out, and it doesn't come naturally to me. 19:05:53 -!- aschueler has joined. 19:08:40 now you're making me wonder what efficient compilation of Thutu would look like 19:10:38 ais523: If you can get a copy of "Constraint Programming Languages: Their Specification and Generation" -- it describes the compilation of rewriting rules to efficient code that I'm thinking of. Basically it looks at all the rules head-first and makes a state machine, IIRC. 19:11:25 hmm, Thutu uses regexps, which could make it rather harder 19:12:14 Maybe a bit. 19:13:05 But I don't think it alters the theory much. One sec, there's an interesting article on this. 19:13:55 http://swtch.com/~rsc/regexp/regexp1.html 19:14:06 You may have already seen it, I suspect. 19:14:40 actually, the main inefficiency in Thutu is the rewriting itself, because there's a defined order to try the rules in 19:16:11 cpressey: I'm not sure if I've seen that exact webpage before 19:16:16 but I'm aware of the general principle 19:22:36 ais523: I can't see anything offhand about Thutu that would make the rewriting itself inefficient, but of course I've only skimmed the esowiki page. If by the rewriting itself you mean everything that happens after a pattern has matched, it's usually just a couple of pointer adjustments and possibly memcpy's. 19:22:50 cpressey: it's the memcpy that's the issue 19:22:59 it basically makes everything worse by an order of n 19:23:04 Well, if you're forced to have them, yes. 19:23:30 I know there are algorithms for "optimal term sharing" that provably minimize the number of memcpy's you need when making a substitution of terms. 19:23:51 That's getting into scary stuff though, at least for me. 19:25:53 Anyway, in the world of "modern programming" (read: object oriented or scripting languages), people are constructing objects all the time, often as copies, without thinking about it. But if you care about that comparison, the original reason to make an efficient implementation loses a lot of steam anyway. 19:28:26 Ah, my kingdom for a Sufficiently Clever Compiler[tm]. 19:54:43 -!- teuchter has quit (Ping timeout: 265 seconds). 20:01:32 So, an audit of all our websites at work, because of a gigantic refactor to the codebase I made. 20:02:40 Well, "because" is too strong a word. It's more like the constant stream of phantom issues have a plausible scapegoat now. 20:09:36 (Just trying to make myself feel better, because I KNOW the code is less of a horrific mess now, and there was enough unknown crap floating around that it was high time for an audit anyway.) 20:11:37 Speaking of efficient regex-matching, flex (and its ilk) is also pretty good at that; it builds a single DFA (minimized, I believe; at least it does some NFA clean-up via equivalence classes; the DFA can still of course blow up exponentially, but usually doesn't) so that it can find the longest-matching-text regex without having to test them one by one. 20:16:03 I have to say I had absolutely no clue there *was* a "widespread belief that recursive backtracking is the only way to simulate an NFA"; certainly different ways to simulate a NFA, and algorithms for NFA-to-DFA conversion and DFA minimization (even in the context of regular expressions) were covered by the "introduction to theoretical computer science" course that I think is/was mandatory for most of our CS specialization choices. 20:17:24 The article is a little yippy in that respect, yes. 20:17:39 "Perl is naughty and wrong." 20:18:20 Perl has the "lots of features" excuse there; the regexps aren't very "regular" any more. 20:24:47 Bit of fun is finding explict class of n state NFAs, such that they will blow up to 2^n states when converted to DFAs and minimization fails to remove any states. 20:24:58 I think the "widespread belief" idea is that programmers think in terms of the libraries available to them (i.e. pcre) and not in terms of the CS they've learned. 20:26:23 -!- augur has quit (Remote host closed the connection). 20:26:31 -!- augur has joined. 20:28:04 Oh, the article (or part three, at least) is partially about Google's code search; that's quasi-interesting too. I've wondered a couple of times whether there's some trickery involved there; no matter how good their regex library is, I still refuse to believe they can just match every submitted regex against all the code there is in the world, without doing some indexing-ish trickery. 20:28:59 fizzie: there's an article about how Google made a regex library that had known worst-case performance, pretty much for that reason 20:29:03 but I have no idea where it is 20:30:33 "that reason"? 20:30:34 I believe that is exactly that "third part" of cpressey's linked article I mentioned. 20:30:51 Ooh, I misunderstood what ais523 said 20:31:08 (At least it's what's linked from RE2's (the library) code.google.com intro-page.) 20:31:11 Misread it as "performs horribly" instead of "we know that it will be this bad, and no worse" 20:31:20 heh 20:32:41 So, I have some webspace provided by a friend. I recently discovered that all of the html pages I uploaded had mysterious