00:00:35 GregorR: RodgerTheGreat@gmail.com - it's on my website, too 00:00:55 Only the first line, the rest will be piped into the user. 00:02:26 What the *fuck*? 00:02:42 Oh yes, that thing. 00:02:46 Vista's driver model involves *doing AES-128 on the video layer*. 00:02:56 GregorR: I can use Procs directly, though, can't I 00:03:17 ehird: Shore *shrugs* 00:04:00 * pikhq wonders if they use PGP on all output from the sound drivers, too. :p 00:06:15 -!- kwertii has quit ("bye"). 00:06:19 GregorR: Hmm. If I have a Proc object, what can I *do* with it? Specifically, I want to slurp all output. 00:06:26 I guess I'll just write my own starter. It doesnt' need to be in ps 00:12:07 -!- kwertii has joined. 00:15:07 Okay. Coded the thread. Now to figure out pthreads. 00:19:08 phew 00:19:10 i think that should work 00:19:19 -!- timotiis has joined. 00:20:11 *Parser> parse parseChord "" "C7b9#11" 00:20:12 Right (RootedChord C (fromList [0,1,4,6,7,10])) 00:20:14 <3 00:20:19 GregorR: What's more, it's a compiler option! 00:20:22 lament: Yaey. 00:20:25 err. 00:20:28 Compile-time option. 00:20:32 -DWITH_FORTUNE to enable 00:20:44 i love how if it compiles, it works 00:20:56 (i'm not sure why it compiles though) 00:22:27 lament: yes 00:22:46 lament: there's even libraries for HTML generation that make invalid HTML a type-error 00:23:00 lament: I've always wanted to make one for XML where you can just write some instances corresponding to the schema 00:23:11 * pikhq loves a lot of the HTML renderers out there. . . 00:23:27 And how *trivial* it is to make valid, well-formed HTML that they can't render. 00:23:32 (or even parse) 00:24:00 GregorR: I can't compile EgoBot on this machine because it is linux-specific. D: 00:24:04 GregorR: Can you try my changes? 00:24:09 pikhq: WebKit! WebKit! 00:24:14 (It's open source, so you can't complain.) 00:24:24 KHTML doesn't parse it. 00:24:42 I have yet to find a browser that parses this: http://pikhq.nonlogic.org/test.html 00:24:45 It validates, though. 00:24:57 KHTML is NOT WebKit. 00:25:10 I know. I'm not feeling like installing WebKit yet. 00:25:19 Lemme wait unto KDE 4.1. 00:25:25 until, even. 00:25:27 pikhq: And suprise, it doesn't work. Guess why? *Nobody* uses short closing tags. 00:25:37 But it's valid and well-formed. 00:25:37 And -- shock -- rendering engines are designed to be practical. 00:25:53 If they were a platonic, standards-supporting ideal they wouldn't render invalid pages. 00:26:11 Some claim to attempt to be that ideal. 00:26:23 While they can't parse test.html, they fail epically. 00:26:31 epicly, even. 00:26:56 None claim to be that ideal. 00:27:06 No sane one, anyway. 00:27:15 The standards suck, anyway. 00:28:06 GregorR: No? :( 00:33:02 GregorR: Well, I have a patch if you want it 00:33:08 Well, yeah. That SGML part is a real bitch. ;) 00:33:27 ehird: Remind me tomorrow. 00:35:29 GregorR: Aww. I can't even test it locally, y'see. 00:35:38 LOSAH 00:47:58 -!- kwertii has quit ("bye"). 00:48:12 -!- kwertii has joined. 00:51:20 GregorR: I use a non-Linux system. So yeah. 00:51:51 What do you run? 00:52:25 If it's Windows, install Cygwin. If it's OS X, install the development environment from your install discs. 00:53:36 (insofar as I'm aware, Egobot runs on most POSIX targets) 01:00:17 pikhq: It does not. cpkt. 01:00:30 Relies on linux headers, elf, all that stuff. 01:00:48 GregorR: How dare you? 01:01:09 pikhq: He didn't write cpkt. 01:01:09 Do you do the ELF loading yourself or some such? 01:01:12 Oh. 01:01:16 He just uses it to trace the syscalls or.. something. 01:01:23 It seems to serialize some state or.. actually I don't know what it does. 01:01:24 * pikhq kicks *cpkt* devs instead. :p 01:01:37 Err, pikhq, I don't think it could be portable. 01:01:48 It does pretty deep magic to lodge in to the process. 01:01:53 Oh. 01:01:59 *Why*? 01:02:07 Surely there's a good reason. 01:02:08 pikhq: Because it's the only way to do... whatever it does. 01:02:22 pikhq: aha 01:02:22 ckpt - process checkpoint library 01:02:22 www.cs.wisc.edu/~zandy/ckpt 01:02:22 Copyright (c) 2002-2005 Victor C. Zandy zandy@cs.wisc.edu 01:02:25 process checkpointing. 01:02:30 totally non-portable in every shape or form 01:02:41 pikhq: Basically, it can freeze a running process to disk. 01:02:44 Then thaw it out again. 01:03:03 GregorR: aw, man- that's terrible! 01:03:14 how the fuck do they mess it up that badly? 01:03:49 -!- boily has joined. 01:04:57 Jebus. 01:05:08 I can understand why they have to do such deep magic. . . 01:05:16 But why must *Gregor* use it? 01:05:28 pikhq: I think to remember all the definitions made in the esolangs. 01:05:30 Between runs. 01:05:40 Since they are in a variety of languages 01:05:45 Also, I wonder: can User Mode Linux run on OS X? 01:05:50 I don't think s 01:05:51 o 01:05:53 I remember some guy getting it to work on Cygwin. . . 01:05:55 But I have Parallels and QEMU. 01:06:03 So it isn't hard to get Linux up. 01:06:10 and pikhq: how the FUCK is that supposed to be valid HTML? 01:06:18 RodgerTheGreat: it is valid html 01:06:20 RodgerTheGreat: Read up on SGML. 01:06:22 the feature is inherited from SGML 01:06:25 I call total bullshit 01:06:28 And run it through the W3C validator. 01:06:36 RodgerTheGreat: 'i have never heard of this obscure feature' != 'total bullshit' 01:06:49 unfortunately a lot of people have that preconception. 01:06:53 It gives 4 or 5 warnings, saying basically "This is valid, but nobody *supports* it." 01:06:58 -!- olsner has joined. 01:07:06 And then hands me a "Valid HTML4" button. 01:07:08 -!- Iskr has quit ("Leaving"). 01:07:43 even if it *is* a part of the standard, it's ridiculous. It's unreadable and breaks all the preexisting conventions of the format 01:07:57 No it doesn't. 01:08:05 The preexisting conventions of the format *are* SGML. 01:08:08 RodgerTheGreat: You are incredibly idealistic if you think that HTML has conventions. 01:08:11 Much less reasonable ones. 01:08:15 Here's a hint: that SGML feature predates HTML. 01:08:19 HTML is *unbearably* bad. 01:09:22 pikhq: then it's cruft and should be deprecated 01:09:40 RodgerTheGreat: most of HTML is cruft 01:09:42 In fact, I'd interpret the fact that it's unsupported on sane browsers as deprecation 01:09:58 there is no such thing as a sane browser. they must be insane to read most of the html out there. 01:10:14 It's explicitly deprecated in HTML 4.01. But, most of HTML 4.01 *is*. 01:11:40 -!- timotiis has quit (Read error: 110 (Connection timed out)). 01:11:59 if it's explicitly deprecated, it isn't valid HTML, ergo my original argument stands. 01:12:34 anything that was deprecated and still works is a bonus feature, rather than something you can reasonably test for compliance. Your methodology and argument is flawed. 01:12:53 [01:12] if it's explicitly deprecated, it isn't valid HTML, ergo my original argument stands. 01:12:54 wrong 01:13:01 deprecated != invalid 01:13:17 By the same notion, K&R function declarations are invalid C. 01:13:30 (in fact, they're deprecated but *required* by the ISO C spec) 01:13:30 and for many practical purposes, they are 01:13:43 -!- boily has quit ("Schtroumpf!"). 01:13:44 RodgerTheGreat: wow 01:13:46 what a load of crap 01:13:55 'invalid' is so far apart from 'practical purposes' 01:14:39 BTW, HTML 4.01 itself is considered deprecated. ;) 01:16:08 pikhq: Unfortunately. XHTML is far worse. 01:16:35 True.' 01:16:42 It has some things that are nicer. . . 01:16:47 And an assload of things that are worse. 01:17:04 1. Take horrible markup format rooted in history, arcane things and ad-hoc design. 2. Take *generic* markup format that misused in 90% of cases. 3. Stick them together 01:17:16 And before you say 'XHTML 2', *please* don't. That thing is god-awful 01:17:28 NOW, there is slightly good news 01:17:31 XML *itself* is SGML-based. 01:17:33 ;) 01:17:41 HTML 5 *will be better* than HTML 4.01 01:17:48 It won't be perfect because it's mostly backwards compatible. 01:17:53 But it *is* relatively sane. 01:17:59 Especially the nice, short doctype: 01:18:05 Sure, that's invalid SGML. Who cares? 01:18:20 Basically, they're dropping the SGML base? Whee. 01:18:50 http://www.roesler-ac.de/wolfram/hello.htm#Intercal <- this does not seem correct 01:18:57 pikhq: Yeah. 01:19:17 Slereah: it's correct in a perverse way 01:19:26 Slereah: errors in programs are printed out by the intercal compiler 01:19:30 Slereah: at runtime 01:19:38 :O 01:19:40 and 'NOT' makes a statement not executed unless explicitly enabled 01:19:44 Of course, that is a total cheat. 01:19:56 Yes, but an awesome cheat 01:19:59 pikhq: What I think is the minimal HTML 5 document:

Hello, world!

01:20:21 Hmm. Sane. 01:20:23 pikhq: The reason why it is quite decent is twofold: 01:20:28 Requiring container tags? Glee! 01:20:43 1. The W3C didn't get their paws on it until it was almost done 01:20:46 * pikhq shudders at the

tag 01:20:51 2. The WHATWG did it before that. The WHATWG are clever. 01:20:52 Well, in traditional HTML. 01:21:05 3. Ian Hixie did lots of work on it because he is in the WHATWG. Ian Hixie is *very* clever, and sane. 01:21:11 So threefold! 01:21:17 pikhq: You might be able to drop the

s. 01:21:33 But

isn't too bad. 01:21:39 Semantically it makes sense. 01:21:49 And having some text in the root and others in elements is a bad weird. 01:21:50 But meh. 01:22:41 My problem with

is how it acts in HTML 4.01 and below, actually. 01:22:48 Specifically, it doesn't need to be closed. 01:22:52 http://www.roesler-ac.de/wolfram/hello.htm#Pocket-Calculator 01:22:57 pikhq: Ah, yes. That thing. 01:23:03 I'm not sure if that's still in HTML 5. 01:23:04 With this technique, you cal also write "HELLO BOOB" 01:23:17 HTML 5 is certainly lenient. 01:23:28 So it retains a lot of HTML's quirks. 01:23:35 But on the *overall*, it's sane. 01:53:40 -!- ehird has quit ("This computer has gone to sleep"). 04:01:01 -!- Judofyr_ has joined. 04:01:01 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)). 04:04:01 -!- Deformative has quit (Remote closed the connection). 04:05:01 -!- Deformative has joined. 04:05:37 -!- Deformative has quit (Remote closed the connection). 04:06:16 -!- Deformative has joined. 05:11:04 -!- RodgerTheGreat has quit. 05:11:11 -!- RodgerTheGreat has joined. 05:11:25 -!- RodgerTheGreat has quit (Client Quit). 05:53:35 -!- cmeme has quit ("Client terminated by server"). 05:53:46 -!- cmeme has joined. 05:57:37 -!- sebbu2 has joined. 06:15:05 -!- sebbu has quit (Read error: 110 (Connection timed out)). 06:40:14 -!- Sgeo has quit ("Ex-Chat"). 07:35:33 -!- oklopol has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:03:47 -!- adu has joined. 08:33:03 -!- kwertii_ has joined. 08:38:41 -!- kwertii_ has quit ("bye"). 08:49:05 -!- kwertii has quit (Read error: 113 (No route to host)). 09:08:18 -!- oklopol has quit (Read error: 113 (No route to host)). 09:14:21 -!- oerjan has joined. 09:17:39 -!- Iskr has joined. 09:36:24 -!- oklopol has joined. 09:36:30 -!- oklopol has quit (Remote closed the connection). 09:36:42 -!- oklopol has joined. 10:08:12 -!- adu has quit ("Bye"). 10:15:53 -!- oerjan has quit ("leaving"). 11:11:50 -!- oklofok has joined. 11:12:43 -!- oklopol has quit (Read error: 113 (No route to host)). 11:21:58 -!- Slereah has quit (Read error: 110 (Connection timed out)). 11:23:43 -!- Slereah has joined. 11:33:08 -!- oklofok has quit (Read error: 104 (Connection reset by peer)). 11:33:24 -!- oklopol has joined. 11:42:43 -!- timotiis has joined. 13:21:07 -!- pikhq has quit (Remote closed the connection). 13:21:22 -!- pikhq has joined. 13:48:21 -!- Judofyr has joined. 13:48:21 -!- Judofyr_ has quit (Read error: 104 (Connection reset by peer)). 14:07:00 -!- oklopol has quit (Read error: 113 (No route to host)). 15:01:01 -!- oklopol has joined. 15:12:10 -!- ehird has joined. 15:38:04 logo FAIL: http://www.harveyshopfitters.co.uk/images/menu_01.gif 15:40:15 ehird: that cons cell you created, can i include that with your nick/name in my oklotalk report? would be cool to have something like "user experiences" :D 15:40:57 more impressive if *others* can do something with it than if i can. 15:42:08 oklopol: brb, with you in a sec 15:42:09 and yes 15:42:13 i wanna code some more though too 15:42:14 :D 15:42:26 but for the record, if you didn't know, my name is elliott hird 15:42:32 and please don't get the wrong number of ls and ts 15:42:34 :D 15:42:41 hey, i've always known it. 15:43:25 would be awesome if you did something, i'm trying to get people to write me an stdlib :) 15:43:32 not many are that interested to :O 15:43:59 it's not that i'm too lazy to do it, just that it's a bit useless if i do it 15:44:38 because of course i can do it trivially... well, you too, but i'm also trying to get normal people to write something with it. 15:44:53 normal coders that is 15:44:54 SimonRC, hm? 15:45:11 SimonRC, yes I read it has "shoplifter" first time 15:45:15 naturally i consider #eso guys a few grades up :D 15:45:34 AnMaster: that's not the point, although i did too 15:45:55 what's the point then? 15:46:03 :| 15:46:28 logo 15:46:35 see people in it. 15:46:38 it's a boring logo yes, but boring logos with symbols meaning nothing is rather common 15:47:10 err what? 15:47:26 yeah could be a person using some kind of tool 15:47:30 it's doggie style, receiver laying down 15:47:36 *lying 15:47:36 ... 15:47:37 err 15:47:42 english is too hard 15:47:44 oklopol, you know this qualifies as "inkblot".... 15:47:51 no it doesn't 15:48:14 pervertness then? 15:48:21 or at least dirty minded 15:49:24 well, you know, i'm male 15:50:41 so am I, and? 15:50:59 and I don't think about such things all the time 15:51:40 -!- timotiis has quit (Read error: 110 (Connection timed out)). 15:53:08 well i do admit i'm a sick pervert, but i'm 100% sure that logo can only be conceived as a sex act 15:54:12 oklopol, to me it looks like a person using a "slipmaskin" don't know English word for it 15:54:40 oklopol: looks like front-to-front to me 15:55:07 a handheld device that you put a paper (that got sand glued to it) on. then you use the device to make wood smooth 15:55:11 what's the English word? 15:55:12 ironing board or smth? 15:55:20 no 15:55:23 sander?> 15:55:33 ironing board or smth? <-- that would be making clothes flat 15:55:45 yarr... 15:55:51 if you confuse them your clothes would looks very bad 15:55:54 i didn't know what slip was 15:55:59 very important to not confuse them 15:56:08 oklopol, well slip in Swedish can be other stuff too 15:56:13 SimonRC, possibly 15:56:31 oklopol, something to do with boats I think the other meaning is 15:56:38 (I'm no boat expert) 15:57:23 SimonRC, anyway google images to the rescue: http://www.fynda.se/bilder/londa_slipmaskin_ld1211.jpg 15:57:52 anyway, SimonRC: well, the hands seem to be on the receiver, so i would've said doggie 15:57:59 but stick figures, so go figure 15:58:50 i'm pretty sure sander was right 15:58:55 hmm 15:59:02 or is that like a hone or smth 15:59:02 why not mail the company and ask which one it is 15:59:07 I'm sure they would *love* it 15:59:10 * AnMaster runs 15:59:12 i don't really know this stuff even in finnish 16:00:42 oklopol, well slipmaskin can be for other materials than wood, for example metal 16:00:54 but it seems that "sander" is correct 16:01:19 that is definately a sexual act. 16:01:19 :p 16:01:26 anyhoo 16:01:39 definitely 16:01:41 oklopol: soo i'll write some more okocode if you put otobot in here, or give me an oklotalk interpreter 16:01:45 hehe 16:01:53 i'll put it up :-) 16:01:56 also, if you give me an oklotalk interpreter, i'll even write a special testimonial 16:02:10 to put in the Report on the Algorithmic Programming Language Oklotalk 16:02:15 haha 16:02:22 i can give you the compiled version. 16:02:41 oklopol: i'm on a mac 16:02:45 so that would be thoroughly unhelpful 16:03:16 compiled into pyc, man 16:03:48 meh 16:03:50 endianness 16:03:52 or something 16:03:54 :P 16:04:07 oklopol: i'll add an awesome REPL 16:04:09 and send you a patch 16:04:09 :D 16:04:13 oh 16:04:16 and a debugger 16:04:25 and maybe add continuations 16:04:33 oklopol, I want to see it too so I can see how it works 16:04:38 then I may help writing some code 16:04:57 AnMaster: oklopol's python code uses 1-2 letter variables names and has no comments 16:04:58 and little whitespace 16:05:03 it is only for the hardened obfuscated python editor 16:05:09 there is an awesome repl already 16:05:17 well not awesome, but somewhat working 16:05:18 "hardened obfuscated python editor"? 16:05:38 AnMaster: you need to be really good at editing dense, obfuscated python 16:05:51 well count me out then 16:05:51 oklopol: i will add history that is stored across sesssions, completion, brace matching.. 16:05:57 :D 16:06:00 AnMaster: (hardened ((obfuscated python) editor)) for the parse tree 16:06:06 and the debugger and continuation stuff, of course 16:06:11 oklopol, I suggest you make your code more readable if what ehird said is true 16:06:29 AnMaster: he likes it that way 16:06:30 i do too 16:06:43 oklopol, try something like literate programming, just for a change 16:06:53 it's hard to read code with comments imo :) 16:06:54 eww 16:06:56 literate programming 16:06:57 (though IMO that is going too far in the other direction) 16:07:06 and the shorter the easier to read :) 16:07:06 but maybe they will cancel out? 16:07:08 oklopol: yeah, comments are mostly useless. 16:07:10 but.. 16:07:12 a few of them is alright 16:07:18 and you will end up with something usable 16:07:24 like, instead of # loop through all elements in the array and xor them into the checksum, resulting in a floob 16:07:25 do 16:07:25 well, good comments that just specify stuff like interfaces, can be very nice 16:07:31 comments above the function 16:07:31 so you can just take a quick glance 16:07:34 about what it does 16:07:36 not how 16:07:37 like 16:07:44 # provides a checksum used as a floob 16:07:53 but most of the time good code is self-explanatory 16:07:57 comments can be misleading 16:08:06 good variable names too 16:08:08 they make it easier for someone who doesn't *really* understand the source code to try and edit it 16:08:11 often messing up things subtly 16:08:16 well i have a few comments, but they are mostly useful for myself :P 16:08:22 also, comments are very hard to keep up to date 16:08:35 indeed. 16:08:36 ehird, I agree you shouldn't overdo comments 16:09:01 but you could use good variable and function names 16:09:09 ehird: i might let you play with my implementation once i've submitted it 16:09:12 AnMaster: there's a problem with all that: writing oko-python is fun 16:09:26 ehird, ie, single char ones like i and j should be used for looping nothing else 16:09:30 fuck readability and maintainability, it's fun 16:09:35 dense code helps you get more on the screen 16:09:40 well x and y are ok if you are doing co-ordinates 16:09:55 SimonRC, agreed, but good variable names is still important 16:09:59 very important 16:10:08 AnMaster: you like to stare at code like a work of art 16:10:12 there is a definite maintainability drop as code goes beyond one screenful 16:10:15 i like to have fun when writing it 16:10:21 SimonRC++ 16:10:26 SimonRC, yes that is why you split functions 16:10:31 oklopol: well, ok, give me the pyc 16:10:32 and mark them as "inline" 16:10:36 no 16:10:46 AnMaster: that is not the point 16:10:48 making the code modular is good 16:10:57 I meant there is a definite mainatainability drop as the length of the program goes over one screenful 16:11:05 exactly 16:11:11 ehird, still how much do you save writing "int a" instead of "int sum" 16:11:12 instead of making the current code easy to understand 16:11:19 think of a shorter, more self-describing way to express it 16:11:22 a far better use of time 16:11:28 macros, lots of macros 16:11:31 ehird, as a variable name 16:11:36 AnMaster: well, you use a language that doesn't require stupidly verbose type declarations 16:11:39 so that becomes '' 16:11:41 and you just use a. 16:11:47 AnMaster: however, in the case of C 16:11:52 AnMaster: please read K&R 16:12:00 ehird, even then calling the variable sum is better 16:12:02 their style is *exemplary* C 16:12:08 one- and two- letter variable names help you get most functions on to 1 or 2 lines 16:12:10 and is very short, concise, uses mostly 1-char variable names, 16:12:12 SimonRC, macors do have their place yes, but again it is easy to overdo it 16:12:17 and tries to keep things about one screenful 16:12:21 AnMaster: and how can you argue with K&R? 16:12:25 this is just imo, but usually, if a variable can have a very simple name without being misleading, you are doing a conceptually trivial thing much too verbosely... but i'm prolly wrong, no need to tell me that. 16:12:34 oklopol: yes! 16:12:37 you're right 16:12:38 ehird, because it is not available as a free pdf 16:12:39 you agree? 16:12:42 afaik 16:12:42 niec. 16:12:55 AnMaster: HAHAHAHAHA 16:13:00 that is the funniest thing i've heard all day 16:13:07 ehird, so I haven't read it 16:13:09 also, document the datastructures, not the functions 16:13:15 SimonRC, yes very true 16:13:17 the former is rather more helpful 16:13:29 I bet AnMaster would complain about K&Rs style if he read it. 16:13:37 'how can they make their code so OBFUSCATED' 16:13:42 'these people's C is horrible' 16:13:45 SimonRC, however something like a one line comment above the prototype in the header file is useful 16:13:55 for example, that prototype J interpreter is easy to read once you know what the datastructures are 16:13:57 SimonRC, and if a library for others to use: much more 16:14:02 on the public funtions 16:14:08 AnMaster: yes, and probably yes 16:14:13 SimonRC: yes, that prototype J interpreter is actually quite simple when you read it 16:14:39 the immediate shock reaction is very telling of the bad assumptions programmers make 16:14:51 SimonRC, would you like the man page for fopen to say: "opens a file, read source to see what the parameters are for and what the valid values for the mode parameter is" 16:14:53 if you understand some code immediately because it has tons of comments and all that 16:14:56 you probably understand it wrong 16:14:59 that question is to ehird too 16:14:59 and editing it is dangerous 16:15:04 with a more concise style, you learn the code 16:15:10 and then you learn it PROPERLY, and editing is easier 16:15:28 AnMaster: that is a totally irrelevant question 16:15:37 ehird, oh? it is code documentation 16:15:41 in a way 16:15:53 AnMaster: totally stupid attempt to clutch at straws 16:15:55 :| 16:16:04 ehird, how do you mean? 16:16:09 hmm 16:16:13 AnMaster: run this for me 16:16:15 'man fopen|wc -l' 16:16:35 124 on freebsd 16:16:46 ditto here. do you know how long the gnu version is? 16:16:53 it's god-awful 16:16:57 ehird, yes, 130 lines 16:17:03 so 6 more 16:17:04 AnMaster: that must be an old version 16:17:05 I checked 16:17:12 but anyway, the gnu version *tells you less* 16:17:15 the bsd writing style is better 16:17:21 more concise, and more information packed 16:17:28 ehird, I agree freebsd got better man pages 16:17:29 124 is a bit excessive, it's got bigger over the years 16:17:30 BUT! 16:17:33 if you read the manpage 16:17:41 a LOT of it is stuff to do with standards compliance 16:17:45 and historical stuff 16:17:50 when writing a new app, normally that doesn't apply 16:17:53 ehird, yes I fully agree about comments 16:18:08 SO, if fopen was new and written today 16:18:12 ehird, if you look in cfunge source you won't find a lot of comments, mostly something like "this function does foo" 16:18:14 or such 16:18:15 a good manpage would be much shorter 16:18:22 + the gpl header in each file 16:18:24 that is about all 16:18:31 AnMaster: license headers in each file is so horrid 16:18:32 i hate it 16:18:34 so redundant 16:18:37 but 16:18:41 'this function does foo' 16:18:42 i suggest 16:18:42 'foo' 16:18:44 instead of 16:18:52 'This function calculates the checksum of s' 16:18:53 try 16:18:56 'Calculate the checksum of s' 16:19:06 ehird, you said a lot in fopen man page was about standard 16:19:07 wrong 16:19:21 4 lines are 16:19:21 AnMaster: looks like it to me 16:19:24 oklopol: .pyc plz? 16:19:29 you can dcc it 16:19:33 oh righ. 16:19:34 t 16:19:35 ehird, however man fopen is about three functions 16:19:42 FOPEN(3) FreeBSD Library Functions Manual FOPEN(3) 16:19:42 NAME 16:19:42 fopen, fdopen, freopen -- stream open functions 16:19:44 they share man page 16:19:52 AnMaster: yes, I don't like man(1) anyway 16:19:54 you also get the spec wannabe, so comments on that too 16:20:00 ehird, want info *runs* 16:20:01 for documenting functions i prefer tools that extract stuff out of the source 16:20:05 basically 16:20:11 documentation should be as close as possible to the thing it documents 16:20:14 ehird, well gnu info is worse 16:20:14 yup 16:20:17 otherwise it has a far higher chance of being irrelevant 16:20:18 or out of date 16:20:23 ehird: yup * 2 16:20:34 ehird, well you could use something like doxygen then 16:20:36 SimonRC: :) 16:20:41 AnMaster: doxygen's a bad exampl 16:20:41 e 16:20:42 but if you use that, I just say eww 16:20:43 Sun got that mostly right, with JavaDoc 16:20:46 it's TOO verbose 16:20:50 yes, doxygen sucks 16:20:56 ehird: cli is the repl 16:20:58 good idea, bad implementation 16:21:01 but the idea is alright 16:21:02 it seems it's not coming 16:21:06 exactly 16:21:07 oklopol: ? 16:21:13 okay 16:21:13 hmm 16:21:15 upload it somewhere 16:21:19 perhaps i'm not identified 16:21:19 and send the url to me 16:21:21 ah 16:21:23 i'm not 16:21:26 now i am 16:21:35 ehird, auto generated man pages then? 16:21:47 ehird, there is a gnu tool that can auto generate a man page from --help output 16:21:52 help2man I think the name is 16:22:07 Forth traditionally has one "screen" of pure comments for each "screen" of code. 16:22:15 you need to give it some options to make sure it doesn't add the "see info page for more" crap 16:22:22 but it isn't too bad with the right options 16:22:35 oklopol: trying to figure out how to accept that 16:22:36 :--) 16:22:43 in text files, just have half of the line for comment and half for code I suppose 16:22:45 heh 16:23:04 SimonRC, nah, too much comments, usually I need way less 16:23:05 I really need to get a place to put my thoughts on code 16:23:16 then i can point them to it 16:23:20 instead of wording it badly on irc 16:23:31 however: the more obfuscated the code, the more comments needed 16:23:38 so it is better to give usable variable names 16:23:50 ehird: cli.pyc is a repl, and if you want to do something with context, oklotalk.pyc has a Runner class, which can .run() code, and stores context... and oklotalk.run() runs code 16:24:06 oklopol, what is a "repl"? 16:24:11 AnMaster: read/eval/print/loop 16:24:12 read-eval-print-loop 16:24:14 ah 16:24:16 right 16:24:20 damn ehird and his divine typing skills 16:24:27 in concatenative languages you can express it almost exactly like that 16:24:37 DEFINE loop = read eval print loop. 16:24:45 mhm 16:24:54 (loop (print (eval (read)))), is, of course, ridiculous 16:24:55 :-) 16:25:12 eh? 16:25:26 isn't that the same in "lispy" syntax? 16:25:55 yes 16:25:55 sexps 16:26:00 its totally backwards 16:26:02 :) 16:26:41 in concisative languages, you can write it as readevalprintloop 16:26:51 cise does this easily 16:26:57 it owns so bad 16:27:01 i gotta get on it soon 16:27:08 hmm 16:27:08 oklopol: or rather - 'in ambigious languages' 16:27:09 oh, right 16:27:14 the send failed 16:27:14 specifically, parsing cise is turing complete 16:27:21 hehehe 16:27:22 you need to know the definitions to parse it properly 16:27:23 lol 16:27:25 -!- jix has joined. 16:27:29 ehird: no 16:27:31 oklopol: yes 16:27:35 no. 16:27:40 'readevalprintloop' could be 're adev alpri ntlo op' 16:27:58 the magic is that you need to have those defined already. 16:28:20 yes, oklopol 16:28:23 you need to have explicit tokenization somewhere in file 16:28:24 so it is decided at runtime 16:28:26 oh 16:28:28 i see 16:28:32 so if i use stuff from a library 16:28:34 i have to specify which ones 16:28:37 so it can parse it right 16:28:40 won't that be verbose? 16:29:10 specify which ones? 16:29:18 oklopol: imagine this 16:29:25 'import foolib; readevalprintloop' 16:29:31 foolib could have 're', 'adev' etc 16:29:36 you would have to scan foolib, i guses 16:29:37 *guess 16:30:04 well yes, but i do not have all parsing rules done yet. 16:30:19 all i know is i'll choose something that makes sense 16:30:42 cise isn't at all ready yet 16:30:55 hmm 16:30:59 i'll up the interp btw 16:36:06 ehird: ping 16:36:09 ehird: pingu 16:41:14 back 16:41:24 downloading 16:41:32 okies 16:41:54 oklopol: i guess now i'll decompile it 16:41:54 :D 16:41:59 :D 16:42:12 that wouldn't be very fair, now would it 16:42:19 it wouldn't be readable for one thing 16:42:35 python bytecode would be fun to learn 16:42:42 The only other documented tester of Oklotalk-- is Elliott hird, who implemented a synthetic lisp style cons cell in pure Oklotalk. This was done based on solely the rational number example, implying the language can be picked up in an instance given a basic knowledge of the concepts involved. 16:42:43 :D 16:42:47 it's very high-level, i'm prettu sure you could 16:42:54 :D 16:43:02 well didn't you pretty much do that? 16:43:15 or did i explain much :D 16:43:26 yes 16:43:27 i did 16:43:27 :p 16:43:30 yarr 16:43:39 Hird 16:43:44 i *did* fail your name 16:43:48 haha 16:43:51 credit me as 'ehird' 16:43:57 it's 1337++ 16:44:08 To be exact, also integers, strings and lists are things, but "thing" refers to user-created things (the "{...}" ones) in this document. Atoms aren't, in Oklotalk--, due to their special call behavior. 16:44:22 things are things except when they're not 16:44:23 that's true for this version 16:44:24 and you can have things 16:44:27 which are not like the other things 16:44:29 :D 16:44:57 i put alot of thought into finding a good name for 'em :-) 16:45:05 oklopol: how about 'responder' 16:45:09 :D 16:45:12 haha :d 16:45:13 :D 16:45:16 for Oklotalk, of course. 16:45:20 oklotalk-- is set in stone too much :P 16:45:36 oklopol: oh and i came up with a little 'syntaxful' oklotalk-- variation 16:45:42 do tell 16:45:42 gonna rewrite my cons cell with it 16:46:07 oklopol: hey, i just noticed something 16:46:11 oklotalk doesn't need comments 16:46:13 just use 16:46:13 "strings" 16:47:36 oklopol: http://pb.vjn.fi/p641631565.txt 16:47:37 yes. 16:47:42 i have many more ideas for the syntax 16:47:49 but that's just adding one or two niceties 16:47:51 i like it 16:48:02 well, the thing is, "comments" are in fact just another kind of string. 16:48:11 oklopol: well yeah 16:48:14 but anyhoo 16:48:16 my example 16:48:16 :D 16:48:19 this is actual oklotalk ofc 16:48:39 yarr i thought of that too, acttually 16:48:41 actually 16:48:55 might be nice 16:49:12 oklopol: yeah 16:49:14 basically 16:49:20 it's just adding infix stuff 16:49:21 but 16:49:25 the thing that makes it special is my indentation style 16:49:32 try and read this 16:49:32 (= cons {(-> [h t] {(-> [$pb :] [h t]) (-> $car h) (-> $cdr t) (-> [$setcar h] h) (-> [$setcdr t] t) (-> [$! 0] h) (-> [$! n] (! t (- n 1))) (-> $length (+ 1 (length t)))})}) 16:49:35 even if you add newlines 16:49:36 well i meant the indentation actually. 16:49:37 it's still hard to read 16:49:44 but my style combined with the indentaiton 16:49:50 makes it nice and trivial 16:49:58 well i read it quite easily, but indeed, some might not 16:50:12 yarr, i meant i thought of *the indentation style* 16:50:17 yeah 16:50:17 :) 16:50:29 i assumed infix was just automatic because... well, it usually is 16:50:33 i mean 16:50:37 for single statements 16:50:50 i'm also pondering whether i should add precedence to oklotalk, still 16:51:54 oklopol: you should only add precedence when you write programs 16:51:58 and see where parens crop up 16:52:00 parens are evil 16:52:06 oklopol: actually 16:52:11 i've always wanted to do a language where 16:52:13 2*3 + 4 16:52:14 and 16:52:17 2 * 3+4 16:52:19 graphica! 16:52:20 parse like you would expect 16:52:23 :D 16:52:26 i've come up with that too :) 16:52:38 yes 16:52:38 sexps 16:52:38 its totally backwards 16:52:43 oklopol: but what about multiple spaces 16:52:44 well xml is worse 16:52:50 2 * 3+4 / 2 * 3+4 16:52:52 ehird: well, graphica isn't exactly that 16:52:56 totally epical 16:52:57 S-Expressions > xml 16:52:59 yes, epical 16:53:02 is't sexps + infix if no spaces 16:53:09 AnMaster: no the repl is backawrds 16:53:11 but, same basic idea 16:53:14 *backwards 16:53:15 *it's 16:53:24 ehird, I prefer RPN too 16:53:28 ;P 16:53:36 AnMaster: i just like concatenative languages 16:53:36 ...rpn? :O 16:53:39 not just for the RPN 16:53:42 oklopol: okorpn 16:54:02 befunge is more or less RPN 16:54:02 {$f [$pb :] ->; ...} = cons 16:54:02 heh 16:54:08 AnMaster: but not concatenative 16:54:20 how do you push 20 on the stack? a2* would work in funge98 16:54:37 AnMaster: do you know concatenativity? 16:55:11 oklopol, I know the word and I know forth is such a language 16:55:15 concatenativity is RPN jesus 16:55:18 but not the details indeed 16:55:19 the idea is that if you're point-free (meaning no variables -> no scope), you can just combine functions by combining their sources 16:55:20 AnMaster: forth isn't concatenative 16:55:22 really 16:55:23 hm 16:55:26 but here is the definition 16:55:33 i mean 16:55:34 in applicative languages, the invisible space operator is application 16:55:35 foo bar 16:55:36 is foo(bar) 16:55:38 concatenating their sources 16:55:44 in concatenative languages, the invisible space operator is composition 16:55:45 ehird, yes right 16:55:45 foo bar 16:55:46 is foo . bar 16:55:48 well 16:55:52 pretty much 16:55:52 means bash is a applicative language 16:55:55 err 16:55:58 no it isn't 16:56:01 oh 16:56:01 yes 16:56:02 kind of 16:56:07 myfunction argument 16:56:07 a weird kind of applicative languages 16:56:08 :-) 16:56:09 but 16:56:14 the cool thing about concatenative languages 16:56:18 is that because space = composition 16:56:26 putting two valid programs together is their composition 16:56:28 so what is foo . bar 16:56:28 then 16:56:34 in C syntax 16:56:37 AnMaster: foo . bar is \x -> bar (foo x) 16:56:40 you can't express it in c 16:56:42 it doesn't have closurse 16:56:51 ehird, well then you can't express it so I get it :P 16:56:52 well, actually that's bar . foo 16:56:58 but concatenative languages use it like that 16:57:02 AnMaster: basically 16:57:07 in 'foo . bar' 16:57:10 is a function: 16:57:13 hm 16:57:16 (x) { return foo(bar(x));} 16:57:24 ok 16:57:24 in concatenative languages, 'foo bar' is 'bar . foo' 16:57:29 and 16:57:30 '2' 16:57:33 is a function pushing 2 16:57:40 then you have [...] to make functions 16:57:40 so 16:57:43 2 3 + 16:57:44 is 16:57:51 (x) { return +(3(2(x))); } 16:57:57 and the initial x passed to the program 16:57:58 is the empty stack 16:58:01 and what does that evalute to? 16:58:02 so that program pushes 2 16:58:06 wel 16:58:08 2(x) 16:58:12 is x+[2] 16:58:17 assuming 2 is a function 16:58:22 so, that makes a stack like x but with 2 added to it 16:58:25 then passes that to 3 16:58:28 then passes that to + 16:58:31 ok. 16:58:33 which adds the top two avlues together 16:58:34 now 16:58:36 when you call a function 16:58:38 it gets the current stack 16:58:41 i.e. 'x' gets it 16:58:42 but 16:58:44 at the start of the program 16:58:47 an empty stack is passed 16:58:54 ok 16:58:57 [...] is an anonymous function 16:59:02 so all it does is stack operations? 16:59:03 '[...] i' is '...' 16:59:10 AnMaster: kind of, but stack is an implementation detail 16:59:39 can't see the point of it though really 17:00:11 AnMaster: what's the point of anything really 17:00:16 it's a paradigm 17:00:19 a very interesting one 17:00:22 ok 17:00:28 why is it useful 17:00:40 why is it better than say functional programming 17:00:41 AnMaster: the same way any paradigm is useful over any other 17:01:01 ehird, like? 17:01:35 ehird, and what existing languages are concatenative 17:01:45 and is any of them non-esoteric? 17:01:52 AnMaster: most of them are non-esoteric 17:01:54 well 17:01:58 like? 17:02:07 Joy was created to research the implications 17:02:12 Factor, however, is the prime example 17:02:16 Slava Pestov is its head 17:02:19 author of jEdit 17:02:31 it has a web server, is used to develop apps, has a small but strong community, etc 17:02:36 it has a channel here, #concatenative 17:02:43 factorcode.com 17:04:13 wikipedia call Joy "functional" 17:04:18 hm 17:05:41 yes, functional but concatenative 17:05:43 AnMaster: oh and Cat 17:05:46 Cat is like Joy, but strongly typedf 17:05:56 not man cat? 17:06:01 AnMaster: no 17:06:02 catlanguage.com 17:06:11 cat is certainly "concatenative" though XD 17:06:18 but not turing complete 17:06:48 ehird, not related to lolcode? ;P 17:06:54 no 17:07:02 predates it 17:07:17 er wait 17:07:18 dead link 17:07:44 http://cat-language.com/ 17:08:37 that one is functional too? 17:08:56 yes 17:09:01 are *all* concatenative languages functional? 17:09:05 AnMaster: most are 17:09:07 but 17:09:10 most of them have side-effects 17:09:13 so functional but not purely 17:09:26 but all of them have [...] and use combinators for 'if' and all that stuff 17:09:30 but in e.g. factor 17:09:31 well most functional languages allow side effects, even haskell does it in special contexts iirc 17:09:33 side effects are trivial 17:09:41 and haskell doesn't, it just lets you emulate it 17:09:51 ehird, it lets you do file IO 17:10:07 or how the heck did they write darcs in haskell? 17:10:10 i'm fairly sure a concatenative language has to be functional 17:10:53 because you can't use something like goto for program flow, you have to have a way to nest code... this essentially lets you have functions 17:10:54 AnMaster: it's hard to explain 17:11:00 AnMaster: haskell can be used for very real, IO-doing apps 17:11:05 AnMaster: but it is done in a purely functional way 17:11:14 i'll word-drop... Monads 17:11:14 hmm, i'm assuming a stack here, perhaps a wider consideration of concatenativity might let you be imperative. 17:11:24 AnMaster: basically, the only non-functional part is the small runtime written in c 17:11:25 ehird, yes I heard that word 17:11:29 which is 100% detached from the haskell code 17:11:29 hm 17:11:36 its hard to explain, most newbies misunderstand it 17:11:38 was just about to ask what it meant 17:11:41 but just believe me when i say -- 17:11:48 haskell is 100% purely functional 17:12:01 ehird, file IO is a side effect, right? 17:12:19 AnMaster: yes but the haskell doesn't do it 17:12:25 i told you, it's hard to explain 17:12:27 AnMaster: it doesn't have side-effects, it just has a construct for ordering evaluating, in which case you can have the program receive a conceptual list of inputs that will ever be given, and read from that 17:12:33 this list can only be read sequentially 17:12:36 oklopol: eeeeh, no 17:12:37 and is the IO monad 17:12:39 right, so everyone using darcs just imagined they commited a file 17:12:39 no that's wrong 17:12:40 :) 17:12:42 it really didn't do it? 17:12:42 ehird: no? 17:12:48 AnMaster: ... what an IDIOTIC comment 17:12:57 ehird, yes I'm aware of that 17:13:00 but you make no sense 17:13:00 its not the Haskell that does the IO. 17:13:14 AnMaster: most people have a lot of trouble with monads. i'm not going to explain it over irc. 17:13:17 just trust me. i'm right. 17:13:23 ehird: what's wrong about my explanation? 17:14:14 oklopol: hm 17:14:15 not srue 17:14:32 i'm not saying it's exactly that, but it somewhat corresponds to that :) 17:15:06 you can think of actions that effect the IO monad as taking stuff from the list 17:15:15 and at recursion, passing the tail 17:15:20 because you've used the head 17:16:14 well, you can also do stuff like output, and tell the IO monad how to read, but you can find a similar analogy for that too 17:16:32 how 17:16:33 i mean 17:16:34 what 17:17:28 ehird: did you try the interp? 17:17:31 does it work at all? 17:19:23 oklopol: going to 17:19:46 :: " 17:19:46 } 17:20:10 it seems this is an idle day for me, so i'll be here waiting, i guess! :D 17:20:42 ehird: i haven't tried anything that shouldn't work btw, so don't be surprised if it's trivial to crash 17:20:44 oklopol: well, it works 17:20:45 :P 17:20:55 not much to see really 17:21:02 well, you can't crash it that easily ofc 17:21:10 because it just excepts 17:22:01 anyway, if you find bugs, i may remention you in the report!! 17:22:12 oklopol: there's lots of bugs 17:22:14 just not on valid code 17:22:14 :-) 17:22:19 hehe 17:22:21 oklopol: i find the scoping odd though 17:22:23 here's an example 17:22:24 prolly, prolly 17:22:42 (= ptr {(-> o {(-> $get o) (-> [$set o] o)})}) 17:22:47 you see the o 17:22:48 bound in 17:22:49 [$set o] 17:22:59 i would expect that to be local to that pattern match, and just return the o 17:22:59 and then 17:23:01 on a future get 17:23:04 the get would refer to the objects o 17:23:05 but instead 17:23:10 it somehow 'overrides' the thing's o 17:23:15 is that intentional? 17:23:17 yes. 17:23:20 if so, how is it done consistently? 17:23:30 it's only a problem at recursion 17:23:52 mutable objects and functions at the same time don't really mix 17:23:56 but i wasn't afraid ofc 17:24:06 recursion will remake the scope 17:24:11 nothing else 17:24:54 you see, usually you will not use a *field* in a pattern, you will use new varnames... using field names in a pattern will have the side-effect of changing the field. 17:26:12 if you find problems with it, do tell me. sofar, it seems to have been a good idea 17:27:09 well, apart from the fact it may make it easy to make mistakes; this of course i don't care about at all, oklotalk is supposed to be fun and easy to code, if you *know what you're doing, and are perfect* 17:29:56 oklopol, the bot is offline :( 17:30:01 hmm 17:30:08 otobot I mean 17:30:12 or whatever it's name was 17:31:26 wtdf 17:31:28 wtf 17:31:34 invalid username i=-1 :D 17:31:45 err yes I agree it is invalid 17:31:47 see irc standard 17:32:03 = is not valid in nicks iirc 17:32:06 brb phone 17:32:07 i don't use it 17:34:48 -!- oktabot has joined. 17:35:05 a-ha, cannot have ident and realname be the same as nick, it seems :O 17:35:17 :: (= ptr {(-> o {(-> $get o) (-> [$set o] o)})}) 17:35:17 <<<25877720>>> 17:35:29 :: (= x (ptr 7)) 17:35:29 <<<25884032>>> 17:35:33 :: (= y x) 17:35:34 <<<25884032>>> 17:35:38 :: (set x 5) 17:35:39 5 17:35:42 :: (get x) 17:35:42 5 17:35:43 :: (get y) 17:35:44 5 17:35:51 :: (= x (ptr 8)) 17:35:51 <<<25883472>>> 17:35:56 :: (get y) 17:35:57 5 17:36:01 :: (set y 7) 17:36:02 7 17:36:04 :: (get x) 17:36:05 8 17:36:17 i have no idea why i'm doing this 17:36:29 i'm so goddamn paranoid stuff just stops working out of nowhere :D 17:37:42 [17:35] a-ha, cannot have ident and realname be the same as nick, it seems :O 17:37:44 you can 17:37:45 :< 17:38:11 :: x 17:38:11 <<<25883472>>> 17:38:13 :: (+ x y) 17:38:14 f 17:38:23 :: º·Ë„‰‚·„°)(ÔË°*(Ë—‚Ë_SAO—±ÅÍÚ((((ÆÒ–ºÈËU0(WA*$()£$ 17:38:23 An error: Unmatching parens @ row 1. 17:42:08 ehird: well, i couldn't connect 17:42:09 hmm 17:42:15 i cannot see those chars 17:42:55 oklopol: they're jewnicode 17:43:43 ah eunuchcode 17:46:50 ehird: well i just do whatever happens to happen if unicode is used. it's supposed to be used with ascii atm 17:46:57 :: 9ii09i 17:46:58 ii09i 17:48:07 :: ømgø∂∑†ƒ 17:48:08 ømgø∂∑†ƒ 17:48:11 :: "ømgø∂∑†ƒ") 17:48:12 An error: Unmatching parens @ row 1. 17:48:12 :: "ømgø∂∑†ƒ" 17:48:13 ømgø∂∑†ƒ 17:48:16 :: (length "ømgø∂∑†ƒ") 17:48:16 An error: invalid literal for int() with base 10: '\xc3\xb8mg\xc3\xb8\xe2\x88\x82\xe2\x88\x91\xe2\x80\xa0\xc6\x92' 17:48:17 heh 17:48:19 :| 17:48:25 oklopol: open stdin in unicode mode 17:48:26 same with files 17:48:31 and replace '' with u'' 17:48:35 then it'll be jewnicode 17:48:46 is taht so? 17:49:01 alternatively, you could put the jewnicode into auschwitz 17:49:12 but then you'd be an nascii 17:49:22 :: (length "seher") 17:49:22 An error: invalid literal for int() with base 10: 'seher' 17:49:36 perhaps i should fix that :D 17:49:49 you see 17:49:56 :: (lolimagination "14354") 17:49:58 14354 17:50:13 lmao 17:50:36 long story short, strings can only be int()'d atm 17:51:01 so i saved a few chars ;) 17:52:17 at some point i though i might make oklotalk only do base 16 numbers 17:53:55 they're much more natural 17:54:49 oklopol: hmm, all my esoideas from earlier today have just gone 17:54:57 have gone? 17:55:49 yes 17:55:56 liek how 17:55:59 forgotten? 17:57:49 yes 17:58:42 do you know a set of combinators that are tc given call/cc, but not without? 17:59:06 i'm pretty sure that cannot exist, but... 17:59:18 oklopol: no, i don't think there is any 17:59:18 well 17:59:22 you can implement loops with call/cc. 17:59:28 yeah, somewhat 17:59:31 so maybe 17:59:38 oklopol: like, make a functional equiv. of brainfuck 17:59:39 without loops 17:59:41 then add call/cc 17:59:42 and maybe. 18:19:26 -!- Sgeo has joined. 18:33:20 pikhq, still care about PSOX? 18:33:32 Barely. 18:33:42 If anyone still cares about PSOX, I'm thinking of adding an ASCII mode 18:33:53 pikhq, why only barely? 18:39:01 Because I've got an assload of other stuff to do. 18:40:15 -!- oklofok has joined. 18:46:23 hehehe 18:46:39 Elsenet, some people are playing with a bot called nicknick 18:46:52 it steals nicks whenever anyone changes nick 18:47:02 Sgeo, you didn't answer me yesterday (or was it two days ago?): what use would PSOX be to me as a befunge programmer 18:47:05 to get back, you have to o two more steps 18:47:16 thus resulting in 6 lines of nick changes overall 18:47:23 AnMaster, none I guess 18:47:26 head-spinning stuff 18:47:36 ok thank you 18:47:57 I mean, assuming befunge can access the network and files and stuff 18:48:42 SimonRC: heh 18:48:57 * AnMaster wonders idly about a program that can solve the halting problem for *itself* 18:49:05 actually, a good irc server would make all this nicky stuff automatic 18:49:08 did that make any sense at all? 18:49:13 AnMaster: same as regular halting problem 18:49:14 like 18:49:21 if a nick is online for more than N time 18:49:26 it gets registered 18:49:31 and then... somehow you can claim it 18:49:32 i don't know 18:49:50 ehird, well you need to work somewhat on the details 18:49:52 really irc is far too klunky 18:49:57 but 18:50:01 you could do channel registration easily 18:50:11 to get back, you have to o two more steps 18:50:11 if you go in to an unused channel it's registered to you 18:50:14 well /ns ghost 18:50:15 :D 18:50:22 funny to kill a bot that wya 18:50:23 way* 18:50:32 if the channel dies, then it is dropped 18:50:36 AnMaster: lots of places have no /ns 18:50:48 ehird, right /msg nickserv/userserv/whatever 18:50:49 I guess what IRC needs is a well thought out replacement 18:50:53 if they got services 18:51:03 AnMaster: not all have those 18:51:13 the only bit networks without services these days are efnet and ircnet 18:51:17 big* 18:51:34 ehird, sure some got account based system 18:51:37 or similar 18:52:12 AnMaster: some have none 18:52:32 yes ircnet and efnet these days 18:52:41 as I said all other large network do use services nowdays 18:53:14 does anyone else think irc sucks? ;) 18:54:42 ehird, support Haver! lol 18:54:49 oklopol: oklohi 18:54:55 Sgeo: haver kinda punts on the hard stuff 18:55:17 howso? 18:56:19 it doesn't really do anything new 18:57:28 -!- jix has quit (Nick collision from services.). 18:57:29 -!- oklopol has quit (Read error: 110 (Connection timed out)). 18:57:38 -!- jix has joined. 18:59:14 -!- oktabot has quit (Read error: 110 (Connection timed out)). 18:59:36 -!- oklofok has quit (Success). 18:59:50 NOOOOOOOOOOO 18:59:52 NO MORE OKLOTALK 19:07:05 -!- timotiis has joined. 19:22:34 -!- Judofyr_ has joined. 19:22:34 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)). 19:23:17 -!- Judofyr_ has changed nick to Judofyr. 20:07:03 d 20:07:10 GregorR: so about that egobot patch.. 20:13:53 GregorR: :D 20:20:18 * SimonRC PONDERS 20:20:28 SILC has an interating alternative to nicks 20:20:51 everyone has cryptographic identites, and nikcs are merely decorative 20:21:24 Programs that solve the halting problem for themselves are easy. 20:21:55 obviously, it will always halt, because a halting-problem-solver must 20:22:02 therefore it is just "true" 20:31:44 Can INTERCAL do string processing" 20:31:45 ? 20:36:47 Sgeo: yes 20:36:54 Sgeo: it is turing complete 20:36:58 there is an intercal cgi script 20:37:02 Can it do it well? 20:37:15 Sgeo: you can't do anything 'well' in intercal 20:37:18 every operation is tedious and verbose 20:37:20 but you can do it 20:37:23 it's pretty standard 20:37:45 Sgeo: http://www.muppetlabs.com/~breadbox/intercal/ins/insstart.html 20:37:47 intercal cgi script 20:37:53 Because I'm planning a PSOX-ASCII, which will return argumnts like: 12345,hi,0 20:38:04 I want to know how Intercal would handle stuff like that 20:39:55 Sgeo: Uh, you can do binary in intercal too. 20:40:07 But if you want true INTERCAL support, you have to do input and output in roman numerals. 20:40:11 Since that's all that's standard. 20:40:17 wait, no 20:40:19 input in text numerals 20:40:21 output in roman numerals 20:40:24 input like: 20:40:25 ..PSOX_ASCII is not about to support that 20:40:29 'ONE ZERO NINE FIVE ZERO' 20:40:31 output like 20:40:33 'MXVIIVIVI' 20:40:38 sometimes with bars or underscores 20:40:45 *PSOX-ASCII 20:40:53 Sgeo: Well duh, I could have guessed that. You don't like actually designing things that work.. 20:41:11 character io extensions exist 20:41:13 * Sgeo doesn't want something centered on any language 20:41:15 but they are not standard 20:41:27 Sgeo: PSOX is centered around brainfuck. Stating anything to the contrary is just a lie 20:41:43 ehird, that's why I'm working on PSOX-ASCII 20:42:15 Sgeo: Which will be centered around something else. Yay! 20:42:30 Although I wonder if I should just break it off PSOX entirely to make it much more flexible.. 20:43:05 or just give up psox 20:44:07 ehird, the current spec/codebase, or the idea entirely? 20:46:25 Sgeo: both 21:48:59 -!- timotiis_ has joined. 21:49:47 -!- oerjan has joined. 21:55:58 -!- Judofyr_ has joined. 21:55:58 -!- Judofyr has quit (Read error: 104 (Connection reset by peer)). 22:02:03 -!- timotiis has quit (Read error: 110 (Connection timed out)). 22:07:33 -!- Judofyr_ has changed nick to Judofyr. 22:33:59 -!- Judofyr_ has joined. 22:33:59 -!- Judofyr has quit (Connection reset by peer). 22:51:37 -!- jix has quit ("CommandQ"). 23:32:13 -!- oerjan has quit ("leaving"). 23:32:20 dead day today 23:38:58 -!- pikhq has quit ("REbooting for new kernel").