00:20:22 -!- CakeProphet has quit (Read error: 104 (Connection reset by peer)). 00:20:33 -!- CakeProphet has joined. 00:29:45 -!- digital_me has joined. 00:41:12 -!- digital_me has quit ("Lost terminal"). 00:43:31 -!- RodgerTheGreat has joined. 00:49:08 -!- Asztal has joined. 00:49:18 * RodgerTheGreat tips his hat 00:53:36 happy new year! for me, anyway ;) 00:55:17 cool! My new year isn't for a couple of hours. What's it like in the future? 00:55:35 do you have flying cars? 00:57:01 What are cars? Oh, those old things! 01:01:43 New Years loses some of its luster when 99% of the people I talk to online have already been through it :P 01:02:12 Yeah, it's old by the time you have it :( 01:02:45 Oh well, you get Castlevania: Portrait of Ruin 3 months before us 01:02:49 :P 01:05:35 lol 01:07:00 I'm not really sure how you can say a castlevania sequel is worth as much as a glimpse into... THE WORLD OF TOMORROW! 01:24:33 well, for me, a castlevania sequel would be a glimpse into the world of tomorrow 01:25:03 castlevania?!? 01:47:05 -!- Asztal has quit (Read error: 60 (Operation timed out)). 02:24:00 -!- oerjan has quit (sterling.freenode.net irc.freenode.net). 02:24:00 -!- GregorR has quit (sterling.freenode.net irc.freenode.net). 02:24:01 -!- Sukoshi has quit (sterling.freenode.net irc.freenode.net). 02:24:01 -!- tgwizard has quit (sterling.freenode.net irc.freenode.net). 02:24:01 -!- pikhq has quit (sterling.freenode.net irc.freenode.net). 02:24:01 -!- sekhmet has quit (sterling.freenode.net irc.freenode.net). 02:24:02 -!- sp3tt has quit (sterling.freenode.net irc.freenode.net). 02:24:03 -!- mtve has quit (sterling.freenode.net irc.freenode.net). 02:24:03 -!- RodgerTheGreat has quit (sterling.freenode.net irc.freenode.net). 02:24:03 -!- CakeProphet has quit (sterling.freenode.net irc.freenode.net). 02:24:03 -!- cmeme has quit (sterling.freenode.net irc.freenode.net). 02:24:04 -!- puzzlet has quit (sterling.freenode.net irc.freenode.net). 02:24:05 -!- lament has quit (sterling.freenode.net irc.freenode.net). 02:24:05 -!- pgimeno has quit (sterling.freenode.net irc.freenode.net). 02:24:06 -!- SimonRC has quit (sterling.freenode.net irc.freenode.net). 02:24:06 -!- tokigun has quit (sterling.freenode.net irc.freenode.net). 02:24:06 -!- EgoBot has quit (sterling.freenode.net irc.freenode.net). 02:24:06 -!- bsmntbombdood has quit (sterling.freenode.net irc.freenode.net). 02:30:06 -!- mtve has joined. 02:30:06 -!- sekhmet has joined. 02:30:06 -!- sp3tt has joined. 02:30:06 -!- GregorR has joined. 02:30:06 -!- pikhq has joined. 02:30:06 -!- tgwizard has joined. 02:30:06 -!- Sukoshi has joined. 02:30:06 -!- lament has joined. 02:30:26 -!- oerjan has joined. 02:30:29 -!- RodgerTheGreat has joined. 02:30:29 -!- CakeProphet has joined. 02:30:29 -!- cmeme has joined. 02:30:29 -!- puzzlet has joined. 02:30:29 -!- pgimeno has joined. 02:30:29 -!- tokigun has joined. 02:30:29 -!- SimonRC has joined. 02:30:34 -!- EgoBot has joined. 02:30:34 -!- bsmntbombdood has joined. 02:31:21 yay. 02:31:55 gah 02:35:23 -!- oerjan has changed nick to oerjan_. 02:35:50 -!- oerjan_ has changed nick to oerjan. 02:37:15 * CakeProphet writeth a esolang. 02:37:21 BUT IT'S A SECRET SO NO TELL WHAT IT DOES LOLOL 03:05:20 -!- ivan` has quit (Read error: 54 (Connection reset by peer)). 03:06:14 -!- ivan` has joined. 03:21:53 -!- tgwizard has quit (Remote closed the connection). 04:08:34 -!- oerjan has quit ("Good night."). 04:29:11 GregorR, oh? 04:29:13 ha! 04:29:15 You lose. 04:29:33 Can EgoBot have interpreters made in any language? 04:29:48 It executes the interpreters seperately. 04:29:58 Calls exec() and all that. 04:30:33 so... yes? 04:30:37 Yes. 04:30:43 Swell. 04:30:51 You could have interpreters in Brainfuck for all it cares. 04:32:41 When I finish the interpreter for "stew" I'd like to put it on EgoBot... as I'm too lazy to code up an IRC bot at the moment. 04:33:08 Download the EgoBot source code, fiddle with it yourself. 04:33:32 hmmm... I can't read C well, but I'll try that as well. 04:43:26 hmmm... 04:43:39 BF should have syntax highlighting... all the eight characters would be colors of the rainbow. 04:44:17 and... like... brown 04:44:20 add a brown in. 04:44:22 just cause. 04:45:34 -!- calamari has joined. 04:48:15 . . . 04:49:09 . . . 04:49:15 . . . 04:49:17 . . . 04:49:19 . . . 04:49:21 . . . 04:52:12 !!! 04:52:14 Huh? 04:52:24 Teehee. 04:52:43 [Does EgoBot do IRP? No? Okay.] 05:47:35 so... 05:47:42 this is totally brain-warping. 05:48:01 trying to design a stack-of-queues-based language that actually... works. O.o 05:49:06 it is? 05:55:03 ...well, it -was- :D 05:55:07 until I got a great idea. 06:09:19 CakeProphet: I can provide you with a basic IRCbot skeleton for Java, if you want it 06:09:46 I know less of Java than I do C> :D 06:09:59 Java is easier to learn 06:10:17 I think for the moment I'll just bolt it onto EgoBot (once I test it and get it running) 06:10:48 I don't have much of a desire for an IRC bot anyways... except possibly for some odd interpreters. 06:15:29 java is poop 07:34:42 -!- freshness has joined. 07:36:11 -!- freshness has left (?). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:04:46 -!- calamari has quit (Client Quit). 08:12:44 hmmm... weird. 08:13:16 -!- RodgerTheGreat has quit. 08:14:02 Stew needs only about 4 or 5 different commands and some built-in functions... looks pretty lightweight. 08:16:18 hmmm.... 08:17:25 Hello World would be om!"Hello World"!?spam?% 08:17:31 er... 08:17:40 !"Hello World"!?spam? 08:17:43 Huh? 08:17:56 !"Hello World"!?spam?%O 08:17:58 Huh? 08:18:50 om!?spam?"Hello World"%O would work as well 08:19:35 Yay queue-stacks! 09:47:58 To celebrate the new years ... we bought diet coke and mentos ^^ 09:58:01 ... 09:58:03 whoooo... 09:59:18 GregorR, how many? :p 10:36:52 hehe... is it bad taste to include a builtin function in an esolang that executes Python code in a string? :D 10:51:24 -!- anonfunc has joined. 11:36:22 -!- tgwizard has joined. 12:23:55 -!- oerjan has joined. 12:24:06 yay parsing. 12:24:24 oerjan, I found a nifty parsing library for Python that looks almost like BNF 12:24:50 aha 12:26:41 makin' an esolang. 13:35:13 oerjan, eep! 13:35:19 My parser is teh borken. 13:36:21 http://deadbeefbabe.org/paste/3095 13:36:31 See anything in the grammar definitions that's making it fuck up? 13:36:40 on the test program at the bottom... 13:36:45 all the debugging stuff is at the bottom too. 14:24:28 i was away. 14:24:40 lol ya rite 14:24:45 you were laughing at me. 14:24:56 from the shower? :) 14:27:25 ....yes 14:27:31 lolno? :) 14:27:39 SHUTUP 14:27:42 ... 14:27:44 I mean. 14:27:46 yes. 14:27:51 yes that's the name of it. 14:28:02 There needs to be a funky Esoteric Parsing Language. 14:28:46 regular expression are pretty esoteric, really. 14:28:50 *s 14:29:37 They're not esoteric enough. 14:31:00 Thue might work. 14:31:28 I just can't figure out why my grammar is screwing up on the program. 14:31:42 when... looking at it... it seems like it would work fine. 14:32:02 could you give a short example that breaks? 14:32:17 at the very bottom of the pastebin thing. 14:32:25 The Hello World program. 14:32:32 with some debugging shit below it. 14:34:33 In Stew everything is a single character... except for things enclosed in quotes or ?'s 14:35:18 any character that doesn't serve a special purpose is a "symbol"... 14:36:28 -!- jix_ has joined. 14:37:09 and anything in ?'s is a symbol (what a symbol becomes depends on the context... it's a function if possible, otherwise an integer, otherwise a floating point number, otherwise a string) 14:37:22 things in quotes are just strings. 14:40:35 The layout is a stack of queues (a stew)... so all symbols (which are either functions, integers, floats, or strings, or bools) are put into the queue on the top of the stack.... and the builtin commands manipulate values in the stew. 14:41:02 It's like a weird variant of stack based languages. :D 14:50:59 -!- Sph1nx has joined. 14:51:22 -!- Sph1nx has quit (Connection reset by peer). 15:26:56 i haven't solved it, but a minor point: CharsNotIn matches a string, not a single character. 15:33:23 oerjan, I set it to match exactly one. 15:33:28 exact=1 15:33:49 ah. 15:33:58 darn options :) 15:35:06 it looks like it is looking for an exact match size or something. 15:35:16 Like... how does it know it's 8 chars away? 15:35:32 what it _seems_ to me from reading the program, is that the OneOrMore barfs after reading one expression. 15:36:31 yeah... 15:36:36 but, it could be something else. 15:36:52 Group() is supposed to convert the match to a list of all repetitions. 15:37:15 yes, but if OneOrMore has a bug, then it would completely explain the debugging output. 15:39:06 doubt it. 15:39:13 pyparsing is third party... and pretty well used. 15:39:28 ZeroOrMore does the same thing. 15:39:36 and I tried removing Group() to see what happend... same thing. 15:40:35 have you tried replacing ?spam? with a one-character command? 15:40:59 nope. 15:41:09 lemme change the name of the output function to "o" and give it a shot. 15:41:24 and, also try an op definition with just a single expression. 15:41:52 (but not at the same time :) ) 15:42:06 hmmm... same problem. 15:42:10 with o as a function. 15:42:16 * CakeProphet clips off the "hello world" and tries. 15:42:38 ha, it worked that time. 15:43:51 Matched {Suppress:("!") op name op definition Suppress:(";")} -> ['m', ['0', '^']] 15:43:53 ((['m', (['0', '^'], {})], {}), 0, 5) 15:44:32 so... it could possibly the string that's borking it up. 15:44:41 aha 15:45:59 yes, that might do it too, and might give the same errors. 15:47:06 do you think it could be a problem that STRQUOTE is a two-element string? 15:47:35 if QuotedString accepts only a single quotechar 15:48:30 hmmm... I remember saying it could be two. 15:48:37 but... I'll change it to one and see what happens. 15:49:15 Now I'm glad I made big glaring capital letter constants. 15:49:20 makes everything super-easy to modify. 15:49:25 heh :) 15:50:01 hmm... now it parses with just the one quote :D 15:50:26 now the bug-handling is safely back in my realm... 15:50:36 elementary, my dear CakeProphet :) 15:50:47 :P I'm bug-prone. 15:51:47 hah, you should have seen all the syntax and type errors I got after updating IrpBot tonight. 15:52:32 ((['m', (['0', 'Hello World', '^'], {})], {}), 0, 18) 15:52:41 that's a confounding data structure :P 15:52:49 fortunately the Haskell compiler caught most of the bugs. Hooray for static typing. :) 15:53:26 heh... errors involving type are usually pretty easy to fix. 15:53:48 probably. 15:54:20 {'rand': , 'm': !m - 0, '+': , '*': , '-': , '/': , 'lolno': , 'o': , 'in': , 'mod': , '=': , 'round': ...round at 0x00AEFD30>, '^': } 15:54:25 My beautiful operator dictionary. 15:54:37 those {} could need some pruning. Missing some .suppress'es? 15:54:50 the {} are for if I specify names for certain parts. 15:54:55 .setResultsName() 15:55:15 it creates a mapping to them. 15:55:29 aha 15:55:32 good for when you have a bunch of syntical parts with no real position to them. 15:57:35 see... with some names added... my confounding data structure becomes: 15:57:37 ((['m', (['0', 'Hello World', '^'], {})], {'opname': [('m', 0)], 'opdef': [((['0', 'Hello World', '^'], {}), 1)]}), 0, 18) 15:57:41 even more confounding. 15:58:07 not sure what the 0 thereis next to "m"... 15:58:32 ah... position 15:58:54 so if I grab the syntax by name... I have a handy reference to position. 15:59:06 Damn... they should have wrapped all this in a class... it gets easily confusing. 16:01:05 ah... it is. 16:01:10 reading the logs - i am sure someone must have made an irc bot in python you can snatch. 16:01:28 it's just the string representation of the class... so it looks like a crapload of tuples, lists, and dictionaries. 16:06:00 Well, I am out of the house. 16:06:25 alrighty 16:06:29 * CakeProphet waves. 16:06:56 thanks a bunch. 16:07:30 You're welcome. 16:07:42 -!- oerjan has quit ("Leaving"). 16:13:07 -!- RodgerTheGreat has joined. 16:13:34 how's it going everybody? 16:16:11 parsing :P 16:20:39 * CakeProphet is fleshing out an esolang. 16:20:49 once I've finished it and bug tested it I'ma get up on IRC somehow. 16:20:58 easiest way would be right through EgoBot 16:26:52 -!- ivan` has quit (" HydraIRC -> http://www.hydrairc.com <- Leading Edge IRC"). 16:46:47 -!- Asztal has joined. 17:07:00 -!- Sph1nx has joined. 17:28:57 -!- Asztal has quit (Read error: 113 (No route to host)). 17:29:24 -!- Sph1nx has quit (Connection timed out). 17:41:53 -!- Sph1nx has joined. 17:46:53 -!- Sph1nx has quit ("äÏ Ó×ÉÄÁÎÉÑ ×ÓÅÍ!"). 17:55:07 -!- ihope_ has joined. 17:55:12 Oh, rightright. 17:56:40 What's SOAP looking like so far? 17:59:35 there was some discussion of using FORTH to write portions of the kernel. 17:59:50 others want to just write a glass interpreter in C as the kernel 18:00:06 and Gregor has a working bootable BF interpreter 18:00:13 Bootable? 18:00:16 yeah 18:00:43 Hmm. 18:00:55 so, we're making a little progress 18:01:03 Doesn't the kernel go on top of SOAP? 18:01:47 SOAP is the computer, at least in theory. In practice, SOAP is the emulator. 18:03:31 we were thinking of the OS more as an interpreter for an esolang that will be used to host other interpreters. The base interpreter itself is what creates the hardware interface, memory management, etc, and is the kernel 18:04:08 And if we're writing in Glass, SOAP is the basic set of classes. 18:05:08 yes, but they'd be builtins. 18:05:42 you can't really synthesize things like low-level hardware access by writing them *in* glass. 18:07:17 Yes, SOAP would be the builtins. 18:07:42 exactly 18:07:54 SOAP is the builtins, and the OS is the code that uses them. 18:08:19 In essence, we've got the whole OS, kernel and all, in an esolang. 18:08:26 (C is an esolang, IMO. :p) 18:08:30 alright, I guess you could go with that definition. Ultimately they're two parts of a single program 18:08:58 Well, you could have multiple operating systems written for SOAP. 18:09:01 C is an esolang in the same sense as BASIC is an esolang. 18:09:32 If you do horribly evil obfuscations and play with the limitations of your compiler/interpreter, it can be an esolang 18:09:38 Aren't languages only considered esolangs if they're meant to be esolangs? 18:09:52 it ultimately depends on your opinion 18:09:57 Maybe some horrible subset of C that plays with the limitations of your compiler/interpreter... 18:10:21 ihope_: That's the best part of C! 18:10:31 (sorry; I've been doing IOCCC coding recently) 18:10:33 It has horrible subsets? 18:10:36 I don't personally think C is very esoteric... painful, maybe... but the IOCC seems to indicate it can be used as an esolang 18:11:05 It at least includes an esolang. 18:11:19 (if you don't think the preprocessor is an esolang, you've not done esoteric coding) 18:11:36 -!- Arrogant has joined. 18:11:53 How about we call the operating system itself PAOS? 18:12:05 It conveniently ends with "OS", after all. 18:12:44 Standing for? 18:13:00 how about SOS? The eSoteric Operating System? 18:13:14 That too. 18:13:15 Why must OSes end with OS? 18:13:19 and yes, the C preprocessor qualifies as an esolang, even if C proper doesn't 18:13:33 pikhq: hey, if I backronymmed SOAP, I can do it with PAOS! 18:13:43 Does that make C a minsky machine? 18:13:45 CakeProphet: this is why I went the non-acronymic route with my suggestion of "Framework" 18:13:53 Heheh. 18:14:04 having a declaritive phase and an imperitive phase? 18:14:04 doobey 18:14:19 Probably Atrocious Operating System? 18:14:26 C is fun 18:15:06 C is pain. They have a name for people like you- Masochists. 18:15:26 C is fun 18:15:33 this does, of course, describe most esolang enthusiasts as well. 18:15:38 * bsmntbombdood eats some reheated pizza 18:15:42 There should be an esolang with one instruction... and a preprocessor with 90 or so commands. 18:15:59 CakeProphet: mine 18:16:27 CakeProphet: after proprocessing, wouldn't you just end up with a bunch of that one instruction? 18:17:28 Yes. 18:17:40 well... maybe 18:18:04 the preprocessor can do anything it wants to the code before executing the one-instructioned code. 18:18:26 someone should write a C compiler in cpp 18:18:36 But isn't preprocessing done at compile-time? 18:18:38 It *can8 be done. 18:18:52 ihope_, why is that signifigant? 18:18:53 Cpp is, after all, Turing complete. 18:18:56 >:D 18:19:05 ihope_: It can be done seperately. ;) 18:19:05 it is? 18:19:12 it can? 18:19:30 CakeProphet: well, if you want to compile the program every time you run it... 18:19:43 Hmm. 18:19:46 bsmntbombdood: man cpp 18:19:48 info cpp 18:20:17 Maybe the preprocessor actually does just turn the code around, except output is possible via syntax errors. 18:20:57 The preprocessor is a seperate macro language, which happens to be designed to work with C-style syntax. 18:21:14 (as Gregor has proven, it can be applied to more than just that. . . See mbf.) 18:35:23 ...So, should we start thinking about SOAP? 18:36:04 Maybe there's a Device class and a Generator class, and invoking a Generator gives you a random Device. 18:36:21 That is, a Device that represents a random device. 18:37:04 So you just keep invoking the Generator randomly until you find a new device, then you store that device away somewhere. 18:37:23 wtf are you talking about 18:37:35 The classes that should be included in SOAP. 18:37:50 ... 18:38:16 Actually, maybe scrap the Generator and have each Device created be a random one. 18:40:33 ....so the OS would pick random devices to write too when someone wants to write to a decibe??? 18:40:58 Write to a what? 18:41:15 a fooh? 18:41:28 The OS would be constantly pulling random devices and storing them somewhere. 18:41:47 If it ever met a device it already had, it would just throw it away and keep looking for new ones. 18:42:01 jtongue 18:42:54 Am I making any more sense than you are? 18:43:23 baba gnooush 18:43:27 * bsmntbombdood leaves 18:47:33 This manoeuvre, then, is ever precipitate -- and yet in the remotely antique. 18:59:00 The kind fodder takes architects. 18:59:21 (The above sentence was stolen from some bot in some channel on some server belonging to some network.) 18:59:39 The worm had brought me as I had seen in this little opportunity to know her whole of no great beauty. 18:59:55 (Specific(al)ly, Ami in #lobby on irc.aftran.com:9999 of Sine-Waves.) 19:01:28 ¿Por qué me comes? Quiero que comas mi perro. 19:03:14 Truff as had by at one-lessel. I prect, nor A. A my conly unateremoduskips, wered by no, le in you arger some trapen of floss 19:12:59 But alas, my truffles had not yet sprung into routers! If the co-ax need not be run, let my basement fly beside his windmills. 19:24:25 -!- cmeme has quit (Read error: 104 (Connection reset by peer)). 19:24:42 -!- cmeme has joined. 19:25:59 -!- cmeme has quit (Read error: 104 (Connection reset by peer)). 19:27:28 -!- cmeme has joined. 19:42:06 -!- Arrogant has quit ("Leaving"). 20:20:05 -!- calamari has joined. 20:20:12 hi 20:20:55 Ello. 20:20:56 -!- Asztal has joined. 20:22:15 I was thinkin' about the EsoOS ... 20:22:18 And filesystems ... 20:22:21 And Rogue ... 20:22:51 * calamari has rudimentary rendering taking place 20:24:50 GregorR, no. 20:25:04 Rogue? 20:25:06 no rogue 20:25:43 * pikhq has no idea what that is 20:32:48 Visual studio 2005 service pack 1 destroyed my windows install :( 20:33:03 I can code with notepad + msbuild, I guess 20:34:31 Asztal: is Visual Studio a Microsoft product? 20:35:28 Oh come on! 20:35:33 A Rogue-based FS 20:35:36 That would rock :P 20:35:41 Wonderful! 20:35:51 GregorR: What the hell *is* Rogue? 20:35:55 pikhq: a game. 20:36:03 -!- oerjan has joined. 20:36:08 Rogue -> Hack -> NetHack. 20:36:11 ihope_: Very funy. 20:36:24 . . . Seriously? A nethack FS? 20:36:30 Specifically, it's a Roguelike. 20:36:30 WTF is wrong with you, Greg? 20:36:54 GregorR, heh... maybe. 20:37:02 GregorR: didn't you say I was the only one who ever abbreviated your name that way? 20:37:05 if it had little ASCII letters that moved around. 20:37:21 CakeProphet: no, the letters won't be ASCII. 20:37:21 I don't think it make it terribly USEFUL or conceptually 20:37:24 "out there" 20:37:39 is the idea that you'd have to send your guy down to a specific level of the dungeon for him to find your files? 20:37:41 * pikhq imagines a filesystem set up as a series of potentially-interconnected rooms. . . 20:37:54 RodgerTheGreat: well, of course. 20:38:04 They'd be written in the dust on certain unknown levels. 20:38:15 It'd be so damned impossible to write out a traditional path. 20:38:19 So you'd really want levitation. 20:38:20 ...well... we could implement it as a second GUI... for kicks. 20:38:37 There'd be no actual *tree* in such an FS. 20:38:45 pikhq: certainly true. 20:39:00 I thought we were using a flat-ish memory layout? 20:39:18 Don't we want actual hardware access? 20:39:46 I mean really, doesn't SOAP come first? You have to have a language before you can write programs. 20:45:44 -!- oerjan has quit ("leaving"). 20:46:21 -!- tgwizard has quit (Remote closed the connection). 20:50:44 -!- Asztal has quit (Read error: 104 (Connection reset by peer)). 20:51:01 hmm... 20:51:05 I think what we need.. 20:51:17 ...is a spec for SOAP? 20:51:18 to do is lay out a universally agreed design goal. 20:51:41 We seem to be going at this kind of chaotically... without a clear-cut idea in mind. :D 20:52:06 as GregorR said before, we can't make up our damn minds. :P 20:52:43 (on a sidenote: I have some experience in the realm of text-based game programmer... so I could help make a Rogue GUI :D :D :D ) 20:53:17 Not that it's a difficult task... 20:53:23 it's just, I can't do much ofanything else. 20:54:10 In SOAP, your basic classes'll be A, S, V, and D. 20:54:29 A, S and V will be what they are in plain old Glass. 20:55:10 D, when created, will look for a random device that hasn't yet been attached to an object, and then will attach that device to the new object. 20:55:34 Then D will have methods that somehow interact with the device. 20:55:45 Well I mean... before SOAP... we need to figure out what the hell we're doing... with everyone sharing their idea of "how it should work", and then go from there. 20:56:38 There doesn't seem to be much of a set consensus of what to do. 20:57:03 Working on SOAP first doesn't seem like a bad idea to me... 20:57:16 ...we know. 20:58:42 -!- oerjan has joined. 20:58:48 Indeed. 20:59:16 Well, okay then. How the OS'll work. 20:59:48 You know, Glass doesn't really provide any mechanism for loading code and running it. Should we add a class that does that to SOAP? 21:02:31 Basically, we're either going to have to A. totally redefine any esolang we come across or B. write a new one. 21:02:44 It's hard to compromise between high and low level. 21:02:54 and what we need right now low level. 21:04:02 something to write the kernel with... to create all of this interfacing with hardware and stuff.... and then a Glass interpreter to go on top of it. 21:13:40 * pikhq has fun playing SMB3 21:14:15 One person coding the whole thing has a wonderful advantage. ;) 21:17:41 The kernel goes on top of the platform, doesn't it? 21:18:55 The platform's what provides the hardware access in the first place, then the kernel is responsible for loading programs and running them. 21:42:46 That nonsense conversation between ihope and bsmntbombdood gives me a concept idea for an esolang. 21:45:01 a language in which the program _must_ look like a particular style of nonsense (unlike .gertrude where it _can_ do that, but doesn't have to.) 21:46:23 oerjan: wonderful! 21:47:23 On the other hand, making a language that is fairly grammatically correct english, may mean it is AI-complete for the compiler to determine whether it actually is nonsense. 21:49:14 Perhaps it could use a large dictionary organized by subjects, and then demand that your sentences mix completely different subjects. 21:50:24 I suppose that could be organized by having the subject of a word determine its programmatical meaning. 21:51:15 I be thislacket foor of my tilling have theades of litt, in timpetted mommuchin 21:52:12 The aesthetic value of the square root of the area of a butterfly's wing is roughly equal to that of raising a child on motor oil while building a bridge over the Pacific Ocean. 21:52:31 mone tato cour ving the vereffeltondescard sory do an peolooken-ble lumbecame 21:52:49 well, nonexistent words might work too, but they should not be completely prevalent. Besides that might require the dictionary to be enormous just to check that the programmer doesn't cheat by making sense with rare words. 21:54:00 diminutive wings covered with our loophole. 21:56:39 A door and my views rendered sufficiently near proximity; and I fell into unpleasant misrepresentations, and, in the raven-black, the brief r e-sinking into a peep at least I mean Moissart and were right, -- to his voice, which you have I perceived that in the wire so forth. 21:57:43 hm, that dungeon filesystem - abstracting it would mean a filesystem organized as a mainly _undirected_ graph. 21:59:06 fuck trees. 21:59:10 fuck undirected graphs. 21:59:23 Our filesystem will be a big hole. 21:59:36 Just make sure all the verbs are missing the objects they need to make sence. 21:59:39 s/sence/sense/ 21:59:46 with varying degrees of opacity. 21:59:51 oh, and labyrinthesse would mean: Your program can only remember a _limited_ number of exits, which are too few to get back from certain files :) 21:59:57 the further you go into the whole... the more different stuff pops up. 22:00:17 Or they have extra objects that don't make sense. 22:00:29 We drove of the router, but then he threw. 22:00:39 and of course there would be _some_ monsters. 22:01:09 Why did he do from the trees? I don't know through it. 22:01:37 Hm, maybe we could combine the two current subjects. A filesystem that is a dungeon of meaningless connections. 22:02:40 Meaningless connections? 22:03:08 Like the only door from the starting room leading straight into Moloch's sanctum? 22:03:14 To reap the philosopher's stone, first go to the bird's liquorice nest and fiddle the button of doom. 22:03:56 No, I mean that the actions necessary to get from one file to the other would have to be meaningless sentences like my previous one. 22:08:39 haha... so that would be the files "path" ? 22:10:31 Essentially. 22:28:34 -!- jix_ has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 22:58:09 WHOOOO 22:58:15 OOOOHW 22:58:22 After arduous bug fixing... my programming language finally printed its first program. 22:58:45 !m+22^)?spam?^; 22:58:52 prints 4 22:58:57 SUCCESS 22:59:00 * CakeProphet jumps around. 22:59:14 spam 22:59:19 yup. 22:59:32 Now I just need to get it on IRC so I can play around with it here... 23:00:06 Congrats. 23:00:45 Now I have to do Hello World. 23:01:05 * pikhq has a friggin' stupid way of storing directory names. . . 23:01:12 but I'm not sure it's turing complete... it doesn't really have any buiilt-in form of conditional... although there might be an interesting bypass to it. 23:01:14 Just have, on disk, a single root dir. 23:01:20 Story directorys in the pathname. 23:01:24 Err. 23:01:26 File name. 23:01:40 ....I kinda like flat, contiguous layout. 23:02:29 Thus, we've got a hole with directories as an additional abstraction. 23:02:46 psssh 23:02:53 an OS is just an abstraction 23:03:23 Your mom is just an abstraction! 23:04:28 !m?spam?"Hello World"^; works too. :D 23:04:32 Huh? 23:08:32 ...but is it esoteric? 23:11:18 It looks pretty damn esoteric to me. 23:11:43 It's more mishmashy than any stack-based language I've seen. 23:15:30 Looks like it. 23:15:34 Can't be normal. 23:15:51 haha... it should have a quine command. 23:16:03 since the interpreter has the source code stored in it :D 23:16:19 That's cheating though :P 23:16:35 write a quine in my OISC 23:16:40 pikhq, It's a stack-of-queues based language... 23:17:10 Very esoteric. 23:17:19 Next up is a queue-of-stacks based language... 23:17:29 and possibly a mismatch... for swapping between the two witha command. 23:17:30 A quine in OISC? Wow. 23:20:50 oerjan: I don't have one 23:21:25 hmmm... the only problem is that boolean values are Untrue, Unfalse, and Unanything. 23:21:46 but... they just convert directly to True, False, and None in Python... so when you do an output of them... they don't come out in their glorified form. 23:22:44 So define classes for them. 23:22:55 yeah, that's what I was thinking... 23:23:05 but... that's a lot more work than I feel like doing. 23:23:18 hmm? 23:23:26 bool isn't directly subclassable... and it'll take a while to fine-tune all the specifics. 23:24:27 well then, write an output function instead. 23:24:39 ...oh. 23:24:42 duh. 23:24:44 :P 23:24:49 I'll just do some conditionals at the output function. 23:24:54 yeah, really 23:25:27 hmm 23:25:55 sometimes writing a compiler is easier than an interpreter, other times not 23:27:05 I'm assuming this one is an interpreter... I haven't -exactly- figured out the difference. 23:27:22 -!- Metuk has joined. 23:27:45 gah, xkcd.com is crazy today 23:27:52 It reads the entire soure code all at once... but there really isn't much compiling that needs to be done, as most of it is already single-character insructors. 23:27:54 CakeProphet: If it doesn't generate code, then it's an interpreter 23:28:40 The line _is_ blurry though. 23:28:57 In fact... all instructions are implicitly one character long unless surrounded by ?'s, quotes, or its comment (which really isn't an instruction) 23:30:15 oerjan: not really...what's an example where it's unclear? 23:30:43 -!- ihope has joined. 23:30:43 somewhere between generating an AST and generating bytecode. 23:30:46 Lots of "interpreted" languages generate bytecode. 23:31:12 the bytecode is interpreted 23:31:22 ....wha? 23:31:39 -!- ooooo has joined. 23:31:59 basically, what to you call something that compiles into a different form only to run it immediately. 23:32:06 Isn't compiled "broken down into machine-readable instructions before being ran"... while interpreted is "read line by line and performed while reading"? 23:32:10 ooooo, shiny! 23:32:35 indeed, those are the extreme points. 23:32:38 ihope, binla! 23:33:16 except that very few languages are interpreted by that definition. 23:33:16 That's "before being run", isn't it? 23:33:39 Everything's either compiled or in between? 23:33:59 My language is definetely interpreted... there's not much compiling you could possibly do. 23:34:06 I don't even understand how you could compile BF O.o 23:34:11 CakeProphet: sure there is 23:34:18 Easy. 23:34:27 D'oh, I just remembered something. 23:34:28 * pikhq has written a BF compiler 23:34:36 Pointy file systems! 23:34:38 compilation == translation to a different language 23:34:42 isn't compiling and interpreting in BF pretty much the exact same thing. 23:34:55 CakeProphet: absolutly not 23:35:15 A bf compiler is easier than a bf interpreter 23:35:19 Every file has some pointers to other files. The file can only access files it has pointers to. 23:35:27 Explain the difference. 23:35:31 nearly every interpreter has _some_ translation stage, even if it is just to an AST. 23:35:50 Of course. 23:36:02 It would be a pain in the ass to read the raw source for some languages. 23:36:23 CakeProphet: a compiler turns BF into something else, then runs it. An interpreter turns it into a list/tree/thing of instructions and runs through those. 23:36:34 actually compilers don 23:36:42 't necessarily run it. 23:36:48 Well, yeah. 23:36:54 Why would you ever change BF into something different? 23:37:03 CakeProphet: to run it more efficiently? 23:37:05 I mean... it's single-character instructions... what more could possibly be done. 23:37:16 Compilers convert one language to another language. 23:37:20 CakeProphet: let's look at a bf -> c compiler. It only needs to preform simple textual substititution: > to "p++;", + to "(*p)++", etc. 23:37:21 That's it. 23:37:22 Wouldn't you rather add 50 to a number than add 1 to it 50 times? 23:37:42 hmm.... 23:38:01 CakeProphet: A complex BF->C compiler converts 50 "+"s into "*p+=50;". 23:38:14 gcc an optimizing compiler 23:38:24 so it's silly optimization stuff. 23:38:26 s/gcc // 23:38:30 CakeProphet: no 23:38:32 Turning ++++++++++++++++++++++++++++++++++++++++++++++++++ into something more efficient is compilation. 23:38:41 * CakeProphet got it the first time ;) 23:38:48 CakeProphet: optimization of BF is silly? 23:38:49 Turning ++++ into anything else is compilation. 23:38:59 ihope: compilation need not include optimization 23:39:16 heh... then I guess Python is compiled. 23:39:21 by that definition. 23:39:29 Well, yes. 23:39:39 CakeProphet: it is compiled into bytecode, which is then interpreted 23:39:43 It's the degree of compiledness. 23:39:47 another advantage of compilation is that you can run the program without having the compiler present. 23:39:51 bsmntbombdood, ...see that's where you confuse me. 23:40:07 bsmntbombdood, what.. are you supposed to compile the bytecode too? 23:40:11 hoever, python's bytecode interpreter is very complex 23:40:24 which can mean saving space. 23:40:33 CakeProphet: The byte code is never translated into a different language 23:40:48 bsmntbombdood, The byte code -is- a different language. 23:40:59 yes, it is 23:41:13 Python -> bytecode == compilation.... so how is Python not compiled? 23:41:24 it is compiled 23:41:32 but that bytecode is then interpreted 23:41:33 Python -> bytecode -> interpretation == interpretation. ;) 23:41:37 I think the biggie is whether or not it's interpreted. 23:41:43 If it's not interpreted, it's compiled. 23:41:49 The Haskell ghc compiler goes through a chain of up to 5 languages when compiling. 23:41:50 bsmntbombdood, why the "but"... it makes it sound like an objection. 23:42:08 If it's turned into an executable, it's compiled. 23:42:22 compilation ususaly translates into a simpler language python bytecode isn't much simpler than python itself 23:42:38 bsmntbombdood: It's slightly simpler to interpret, though. 23:42:46 Haskell -> System F -> STG machine -> C -> machine code 23:42:47 yes 23:42:49 every language is interpreted 23:42:51 ihope: compilation need not include optimization 23:42:57 calamari: At some point, yes. 23:43:07 so whether it is interpreted isn't a factor 23:43:42 a compiled language is a language for which there exists a compiler to some other form 23:43:51 python execution goes interpret_bytecode(compile(code)) 23:44:15 calamari: isn't x86 machine code generally run directly, if it's on an x86? 23:44:28 ihope: A proccesor is an interpreter 23:44:32 it is interpreted by the hardware :) 23:44:36 ihope: yes, but in that case, the x86 chip is the interpreter 23:44:37 * CakeProphet also notes that Python -does- make compiled versions of the source. 23:44:47 Well, yes, then maybe whether it's interpreted by software. 23:45:02 .pyc files 23:45:13 ihope: You know, there are x86 software interpreters. 23:45:15 CakeProphet: yep.. python is a compiler 23:45:17 I guess even executable files are interpreted to some small degree. 23:45:26 CakeProphet: Python is also an interpreter. ;) 23:45:38 ...damn you people are confusing me. 23:45:44 but the interpretation part of python is much larger/more complex than the compilation stage 23:45:45 some processors have microcode, which is a software used by the processor to interpret the machine code in something simpler 23:45:46 yes, python is both 23:45:51 what's the big deal? :) 23:45:56 ...I don't know exactly... 23:45:57 oerjan: d'oh... 23:46:03 How much wood ... would a woodchuck chuck ... if the wood was moss-flavored ... 23:46:13 it seems like everyone is contradicting themselves afer every other sentence. O.o 23:46:34 That's because it's both. 23:46:44 I'm not contradicting myself, I am claiming that the line _is_ blurry. 23:47:13 it seems pretty straightforward to me 23:47:18 CakeProphet: Executing pythn involves both compilation and interpretation 23:47:27 * CakeProphet nods. 23:47:31 (in cpython, that is) 23:47:58 a very simple compilation stage, and then a much more complex bytecode interpretation stage 23:48:21 Languages that have a linear interpretation are starting to grow on me :D 23:48:35 Especially when I have to write up the parser for them. :P 23:54:38 any language with a eval/exec function is probably going to be classified as interpreted 23:55:35 OK, time for a vote. 23:55:36 exec is fairly useful. :D 23:55:40 Rogue-style FS or no. 23:55:47 Yes. 23:55:47 * GregorR votes yae. 23:56:00 Indifferent. 23:56:02 bsmntbombdood: Lisp can be compiled. It's got an eval function. 23:56:19 To be fair, the eval function *is* a Lisp interpreter. . . 23:56:29 right 23:57:02 So, it's compiled if your code's not being (eval)ed. 23:59:23 -!- NK` has joined. 23:59:34 Yw 23:59:37 yaw 23:59:39 Yw 23:59:41 Ywhw 23:59:50 Sounds like the start of a programing language. 23:59:52 Wait 23:59:55 That's Yhwh