00:22:45 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 00:30:54 -!- SimonRC has quit ("charset fiddling"). 00:38:52 -!- SimonRC has joined. 00:42:16 no shift needed 00:42:22 erm, oops 00:42:24 * SimonRC goes to bed. 00:54:57 -!- {^Raven^} has quit (herbert.freenode.net irc.freenode.net). 01:05:13 -!- {^Raven^} has joined. 01:19:40 good night 01:19:42 -!- Keymaker has left (?). 02:20:24 -!- GregorR has joined. 02:33:06 hi 03:13:38 -!- CXI has quit (Connection reset by peer). 03:14:51 -!- CXI has joined. 03:23:34 -!- Arrogant has joined. 03:48:57 -!- kipple has quit (Read error: 110 (Connection timed out)). 04:59:37 -!- Sgeo has quit. 06:00:36 -!- CXI has quit (Connection timed out). 06:46:18 -!- puzzlet_ has joined. 07:00:35 -!- GregorR has quit (Remote closed the connection). 07:01:23 -!- puzzlet has quit (Connection timed out). 07:03:20 -!- GregorR has joined. 07:05:17 -!- calamari has quit ("Leaving"). 07:06:48 -!- GregorR has quit (Remote closed the connection). 07:07:21 -!- GregorR has joined. 07:07:29 GAAAAAAAAAAAAR 07:07:33 Stupid connection >_< 07:10:46 Break its face. 07:11:43 The worst part is, I finally got them to turn off the logging, and now the network is crap XD 07:12:39 >< 07:12:47 There're two concerts I want to go to 07:12:55 They're within TWO DAYS of each other 07:12:59 Both are metal. 07:13:04 I don't know if my body can survive both. 07:21:20 -!- GregorR has quit (Remote closed the connection). 07:21:25 -!- GregorR has joined. 07:33:00 Looks like Bart123 wasn't satisfied with our implementation of IRP. 07:33:02 WE NEED TO BUCK UP! 07:33:07 GET A GOOD IMPLEMENTATION GOING! 07:33:10 COME ON, GUYS! 07:42:38 -!- Arrogant has quit ("I AM QUIT HAVE A NICE DAY"). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:02:10 -!- nooga has joined. 08:02:17 hi 08:03:10 hello 08:54:44 hm 09:23:15 -!- nooga has quit. 10:10:51 -!- klutzy has joined. 10:14:33 -!- lirthy has quit (Read error: 104 (Connection reset by peer)). 10:37:33 -!- cmeme has quit ("Client terminated by server"). 10:38:05 -!- cmeme has joined. 11:22:21 -!- Keymaker has joined. 11:22:28 hello 11:57:36 -!- jix has joined. 12:09:26 hey jix, is there specs yet for the new language of yours? 12:10:07 no 12:10:13 ok 12:10:23 i have to write an interpreter first because i'm not sure wether my ideas work or not 12:10:29 ah 13:22:24 it's very difficult to write a lazy interpreter 13:22:40 maybe i'm going to write a rhotor => haskell translator.. that should be easier 13:22:47 and faster 13:22:56 but haskell has a different io system 13:25:51 My god, it's full of monads. 13:26:10 yep 13:26:17 and i'm using a lazy-k like io system 13:26:35 What did lazy-k have? Lazy infinite input/output lists? 13:28:27 yes 13:29:39 is it possible to simulate that in haskell? 13:42:43 I don't really know enough about haskell to answer. Perhaps, but maybe not. Probably at least not without having the IO type everywhere. 13:49:40 -!- Keymaker has quit (Read error: 104 (Connection reset by peer)). 13:50:19 -!- Keymaker has joined. 13:53:09 -!- NoneGiven has joined. 13:54:12 -!- {^Raven^} has quit (Read error: 110 (Connection timed out)). 14:35:04 hello 14:35:12 hi 14:36:23 jix: it is possible 14:36:36 i know 14:36:40 i just did it 14:36:50 getContents is your friend 14:37:03 main = getContents >>= (putstr . runProg) 14:37:07 tada! 14:37:17 (see also: interact) 14:38:00 < lambdabot> System.IO.interact :: (String -> String) -> IO () 14:38:06 (from #haskell) 14:38:41 NARGH i just wrote interact 14:38:50 performOnIO:: (String -> String) -> IO () 14:38:51 performOnIOtransformation= getContents >>= \ contents -> 14:38:51 putStr (transformation contents) 14:51:57 -!- Sgeo has joined. 14:56:27 hi 16:05:15 -!- int-e has joined. 16:05:43 hi int-e 16:05:51 hi 16:06:00 hi 16:06:15 done any brainfuck programs lately? 16:06:21 me? no 16:06:27 i meant int:) 16:07:39 no. 16:07:57 ok 16:09:08 either of you know much Haskell? 16:09:24 how much? 16:10:12 You understand what a typeclass is? 16:10:34 i understand nothing of such languages 16:10:38 I believe I do. 16:10:42 It's just I've found this, which apppears to be a very good idea: http://hackage.haskell.org/trac/ghc/wiki/CollectionClassFramework 16:21:46 I'm not sure. The idea is sound, but there are some performance issues - if you write your code in terms of Collections throughout a lot of optimizations that apply to lists do not apply anymore. 16:23:10 On the other hand that's an implementation problem (for ghc in that case). 16:37:43 Shouldn't ghc substitute enough things at compile time to realise that you haven't changed anything? 16:38:25 Anyway, once the library is distributed with ghc, it can be taught how to optimise it. 16:38:39 SimonRC: within a single module, probably. But there are problems with big functions and separate modules 16:38:56 keep them all together, then. 16:39:09 maybe re=export them from wrapper modules 16:48:48 I think I wouldn't want to use it. 16:51:40 -!- kipple has joined. 16:55:57 hi 17:07:32 i just executed my first rhotor programm (but i had to parse it by hand) 17:08:36 "rhotor"? 17:08:43 my new language 17:08:51 nice name 17:09:02 does it mean anything? 17:09:10 describe... 17:09:49 it was inspired by the rho calculus (i didn't finished reading the article so i don't know wether i implemented the rho calculus or not (i think i didn't)) so i called it rhotor 17:10:03 ok 17:10:12 only the parser is missing 17:13:18 i had to transform this x/>,x into this (Function sa (Application (Function (Cons sb sc) (Application sb (Cons sb sc)) Nill) (Cons (Function (Cons sd (Cons se sf)) (Cons se (Cons se (Application sd (Cons sd sf)))) Nill) sa)) Nill) by hand 17:13:54 and you'll get funny error msgs if you make runtime errors 17:18:22 use Parsec (I assume you're using Haskell). 17:19:48 lol i'm reading the parsec doc atm 17:20:59 -!- ihope has joined. 17:21:10 New programming language: PF-PR 17:21:14 *BF-PR 17:21:36 I probably booched and made it Turing-complete, but... oh well. 17:23:48 It's the primitive recursive functions, with some modifications. 17:24:24 0 and S are replaced with Z (the empty tape), @, <, >, and .. 17:24:39 SimonRC: hmm i'd like to use racc instead of parsec but racc is ruby only 17:24:56 parsec looks very complicated 17:33:22 nha, it's simple to use 17:33:32 find a tutorial 17:33:56 i found one 17:34:06 but my syntax is a very stupid one 17:34:35 mixed left and right associative... stupid operator precedence... some special cases.. 17:34:51 i could change the syntax to make it look like FxAFCsaAsCsaNCFCsCabCaCaAsCsbNxN 17:35:27 no that wouldn't work 17:35:30 it would look like FxEAFCsEaEAsECsEaENCFCsECaEbECaECaEAsECsEbNxEN 17:36:51 -!- calamari has joined. 17:36:57 hi 17:37:04 moin calamari 17:37:18 hi jix, how are you 17:37:44 my rhotor interpreter is working.. but i have no parser and still no final syntax... 17:39:28 jix: you could use a non-derterministic parser, or partially-derterministic. 17:39:43 non-deterministic? 17:39:50 some cases undifined? 17:40:11 no my language has enough undefined cases.... 17:41:00 No, I mean use the <|> operator (or is the <|||> operator) that allows you to backtrack if it goes wrong. 17:41:31 try () ? 17:42:36 maybe that 17:45:41 no i don't want to use parsec 17:45:56 i think i'm going to write my own dedicated parser 17:47:43 my current rhotor implementation (no parser) is less than 120 lines of code 17:48:16 less than 100 *deleted unused code* 17:49:04 87 *deleted even more unused code* 17:49:46 . o O ( 1 line *deleted more unused code* dangit, it stopped working ) 17:50:36 its going to grow soon 17:53:18 jix: Haskel programs tend to shrink like that. 17:53:35 Make them one-liners! 17:53:54 :( parsing FxEAFCsEaEAsECsEaENCFCsECaEbECaECaEAsECsEbNxEN would be very easy.. writing it wouldn't 17:55:03 At least it's not SLOBOL, where programs take A Long Time to parse. 17:55:40 jix: well it *is* an esolang 17:56:19 SimonRC: yes but it's hard enough to write without that syntax 17:58:25 -!- Sgeo has quit. 18:28:39 * SimonRC goes. 18:29:44 Aah! It's exactly the same here as at #haskell! 18:29:58 * ihope runs away screaming 18:34:09 jix: is rhotor your lang? I don't see it on the wiki 18:35:17 Hmm. What does "Tczew reprezentowa? Rhotax" mean? 18:35:43 calamari: it's brand new and under development 18:37:01 cool 18:48:18 YES!! memory pointer too far left! and i've been only working for hours! yay! i'm happy! 18:48:51 Eep! Ack--ooh, argh. 18:50:00 well, looks like it's time to investigate the program instruction by instruction.. 18:50:20 Wait, what? 18:50:38 my brainfuck program has an error somewhere 18:50:47 Ah. 18:52:13 whatcha writing? 18:52:20 surprise :) 18:52:28 you'll see when it's done 18:52:30 hehe 18:52:46 Geh, this computer's booched. 18:57:35 this debugging is so annoying.. 18:57:50 i almost never get my brainfuck program running as supposed on the first try.. 18:58:35 I'd suggest writing it in some other language, then porting it to Brainfuck, but that, eh... 18:58:45 Probably wouldn't work. 18:59:11 that'd be stupid 18:59:20 lame, 18:59:27 hmm? isn't there a basic to brainfuck compiler? 18:59:28 and very hard in this case 18:59:44 yes, but it's memory is finite 18:59:47 etc.. 18:59:59 and i don't want to 19:00:02 that's the main reason 19:01:42 what's the point writing brainfuck in another language? that kind of programs have almost zero value in my eyes 19:02:00 i mean that if someone writes something program in another language and it's just translated to brainfuck 19:02:06 that wouldn't be a real brainfuck program 19:02:08 I agree. Writing a compiler on the other hand ... 19:02:18 (a XXX to Brainfuck compiler I mean) 19:02:35 that'd be a challenge. 19:02:41 yeah 19:03:30 but the produced programs still would be worthless :) 19:03:55 beyond demonstrating that the compiler works. 19:04:32 anyway. where would you draw the line? if anyone uses a macro preprocessor, would that still be ok? 19:04:51 Murp... blorp... computer games! 19:05:09 hmm, dunno.. but using that wouldn't be probably quite suitable to many projects 19:05:14 i mean brainfuck projects 19:05:43 at least if they are going to be made optimized 19:05:49 and elegant 19:06:45 and assume macro preprocessor means like replacing As with ">++[" 19:06:49 *and I 19:06:55 right? 19:07:39 maybe it'd also do stuff like 4+ -> ++++ 19:07:39 in that case i can see no problem if the coder writes the macros, since they are nothing more than just making it less work to type 19:08:30 hmm, perhaps that kind of simple thing is ok, but not while((cell0 + cell1) > 2).. 19:08:49 well. it's a purely hypothetical question for me right now. I'm not planning to write any big brainfuck programs and for a few hundred characters macros will not help, I think. 19:09:02 Keymaker: depending on the code, sometimes I find it convenient to replace >>'s with variable names, then change back later 19:09:28 ok 19:09:47 int-e: yeah 19:09:57 my bf debugger lets you run such programs with the variable names 19:10:08 ah 19:10:32 for me, that was my biggest source of bugs 19:10:42 if I had one too many >'s 19:11:33 of course, if it's more complicated code, that doesn't work so well and just gets more confusing 19:11:45 for example [>>] 19:12:07 yeah 19:12:14 >[>]+<[-<] 19:13:36 if-then-else code tends to get confusing, too. 19:14:04 yeah 19:58:43 ha! works now 20:01:22 although this is only part of the program.. a lot more left.. 20:09:14 bbl, maybe 20:09:17 -!- Keymaker has left (?). 20:40:46 -!- nooga has joined. 20:40:54 hi 20:41:11 * nooga has learned lambda calculus 20:41:18 * nooga is writing scheme interpreter 20:50:32 -!- jix has left (?). 20:50:36 Lambda calculus is nice. 20:51:32 yea 21:35:05 -!- NoneGiven has quit (Remote closed the connection). 22:08:37 -!- jix has joined. 22:13:06 -!- Sgeo has joined. 22:54:32 -!- nooga has quit. 22:56:04 -!- fungebob has joined.