00:00:00 that's true, ihope 00:00:07 What it would do behind the scenes is assign x to 5... but everything -else- would be running backwards. 00:00:10 What's true? 00:00:39 ihope: are you making a very bad pun? 00:01:02 No. 00:01:26 Are you saying x is true, true is true, x != true is true, or "that would set x to false" is true? 00:01:26 well, I was referring to what you said immediately before I wrote, then :-P 00:01:38 I mean your general point 00:01:54 that you could get away with it in that restricted instance 00:01:59 in the compiler... "x != 0" would parse out to be "x = 0" And then "if x = 0" would be parsed in the compiler as "if x != 0" 00:02:29 CakeProphet: so, basically invert any equality test involving x (which has some sort of flag set on it)? 00:02:31 By flip-flopping it... it would create the illusion of assigning unequality :D 00:02:58 If both halves of the equality test have their invert flag set, then you don't need to invert it 00:03:18 ? 00:03:26 so ASSIGN x!=5, y!=6; sets the flag on both x and y 00:03:52 -!- CakeProphet has quit (Read error: 104 (Connection reset by peer)). 00:03:54 for the test "x$=0", you invert, for "y$=0" you invert, but for "x$=y" you don't 00:04:00 since the inversions cancel 00:04:10 aaand you've been peer'd 00:04:17 Hmm... 00:04:35 Oh?? What a stable connection. 00:05:09 Just have "might be" and "can't be" as the only relations. 00:05:13 Well, this is starting to make some kind of sense, but I think you need to be taking the right drugs to really appreciate it. 00:05:33 ihope: hehehe 00:05:55 -!- CakeProphet has joined. 00:05:55 f(x,y) might be x, and f(x,y) might be y. 00:06:10 I DARE someone to actually implement this 00:06:15 CakeProphet: what'd you get up to? 00:06:18 f(x,y) can't be z where z can't be x, z can't be y 00:06:29 Oh my. 00:06:34 * GreyKnight digs down on a fountain, splashing water all over the channel. lament drowns! 00:06:40 not(x) can't be x. 00:06:46 hehe 00:06:47 Huh? 00:06:48 There's your not function. 00:06:51 * CakeProphet missed something in disconnection. 00:07:01 CakeProphet: what'd you get up to? 00:07:09 is(a,b) might be true if a might be b 00:07:16 is(a,b) can't be true if a can't be b 00:07:16 Then you can define "might not be" and "must be". 00:07:21 GreyKnight>so ASSIGN x!=5, y!=6; sets the flag on both x and y 00:07:36 -!- CakeProphet has quit (Read error: 104 (Connection reset by peer)). 00:07:46 *clap clap* 00:07:58 is(a,b) must be true if a must be b. 00:08:10 it seems that these 'might be' and 'can't be' have the exact same semantics as 'is' and 'is not' 00:08:39 well, i suppose not. 00:08:44 -!- CakeProphet has joined. 00:08:48 well, "can't" has the same as "is not" 00:08:50 "x might be 3 and x might be 5" is valid, no? 00:08:52 "x might be 2, y might be 2, x+y can't be 4" 00:09:07 GreyKnight: "can't be" is stronger, I think. 00:09:08 GreyKnight>so ASSIGN x!=5, y!=6; sets the flag on both x and y 00:09:13 anyway, shouldn't Prolog already deal with this? 00:09:14 And "might be" is weaker than "is". 00:09:21 for the test "x$=0", you invert, for "y$=0" you invert, but for "x$=y" you don't since the inversions cancel 00:09:21 ie can't you do all this in Prolog trivially 00:09:26 lament: does Prolog have modal logic? 00:09:38 not really 00:09:50 Well... 00:09:51 What's the challenge? 00:09:56 but i'm thinking this is quite easy to convert to the regular old thing 00:10:30 CakeProphet: ihope suggested constructing all the relations out of "can't be" and "might be" 00:10:55 How about modal implication? 00:10:58 -!- oerjanj has joined. 00:10:59 x might imply y. 00:11:11 -!- CakeProphet has quit (Connection reset by peer). 00:11:18 Hmm... maybe x might not imply y. 00:11:26 * GreyKnight just knows this will end up at a dialect of Lisp at some point 00:11:42 By the way, can you define a functor in Prolog that is only true if its argument yields absurdities? 00:11:47 http://www.codu.org/plof/ 00:11:48 :-P 00:11:55 Does Prolog even have absurdities 00:12:10 Prolog IS an absurdity. 00:12:15 -!- CakeProphet has joined. 00:12:30 GregorR-W: your FACE is an absurdity 00:12:38 :-P 00:12:38 ... 00:12:41 actually 00:12:48 does "might be" even mean _anything_? 00:12:58 WHY AM I DISCONNECTING RANDOMLY! 00:13:03 not really! unless it's exclusive, which it's not 00:13:04 GOOD QUESTION 00:13:07 lament: x might be true === x does not lead to an absurdity. 00:13:22 GreyKnight: ;_' 00:13:24 ihope: i'm not sure i understand. 00:13:30 GregorR-W: so aren't you going to add products and ranges, so that you can define a factorial like "fac x = product [1..x]"? 00:13:31 http://en.wikipedia.org/wiki/Uncertainty 00:13:36 "might be" = uncertainty 00:14:05 x might be true == we don't know that x is false. 00:14:07 ihope: Maybe as functions. That is, not with that syntaxd. 00:14:09 *syntax 00:14:28 fac = (x){ product(range(1, x)) }; 00:14:30 GregorR-W: give us a such as 00:14:30 x must be true === it's not possible that x is false. 00:15:42 Also, there are too many people in here starting with "Gre" ;_; 00:15:51 GreyKnight: Hey, I'm using my name :-P 00:15:53 we could always employ some chaos theory ^_^ 00:15:55 My /real/ name. 00:16:05 GreyKnight: so change your nick to GrayKnight, it's less gay anyway. 00:16:13 * GreyKnight reads a blessed scroll of genocide. What class of monsters do you wish to genocide? , Wiped out all newbies. Wiped out all lusers. Wiped out all script kiddies. Wiped out lament. 00:16:15 lament: WOAH WOAH WOAH 00:16:17 Gray is a name. 00:16:19 Grey is a color. 00:16:28 gray is a color 00:16:31 diffierent spellings 00:16:32 GreyKnight: now let's get GreenReaper in here. 00:16:41 CakeProphet: The alternate spelling came from the name. 00:16:42 gray = grey = gray 00:16:57 gray = grey = gray = semantics 00:16:58 gay! 00:17:01 Nowadays, yes, they're all the same. 00:17:04 Gray = gay? 00:17:09 This all sounds like a functional language to me. 00:17:13 lament = gay 00:17:19 your mom! 00:17:19 Oy 00:17:20 Except with built-in pseudo-equality predicates. 00:17:23 /ignore *!*@* 00:17:25 Ahhhhhhhhh 00:17:26 your mom = gay. 00:17:27 Much better. 00:17:27 Your own mum! 00:17:33 therefore... lament = your mom. 00:17:46 /ignore *!*@* 00:17:49 * ihope wins :-P 00:17:51 * CakeProphet huggles the transitive property. 00:17:54 GregorR-12345: but aren't you lonely? 00:18:10 i'm lonely 00:18:14 come to me GayKnight 00:18:24 YourMomKnight? 00:18:26 Hawt man-lurv! 00:18:27 I wouldn't touch you with a ten-foot polearm. 00:18:36 From two squares away. 00:18:41 not even a greased one? 00:18:41 -!- ihope has changed nick to GayKnight. 00:18:44 Hmm... 00:19:10 Nah. 00:19:10 -!- GayKnight has changed nick to ihope. 00:19:10 -!- GreyKnight has changed nick to GreyPaladin. 00:19:10 X_X 00:19:10 *Smite Perversion*! 00:19:10 *lart lart lart* 00:19:10 You caitiff! 00:19:12 -!- GreyPaladin has changed nick to GreyKnight. 00:19:39 My, that was a yummy pancakeprophet! 00:19:55 I think the NH references might be a bit too obscure in here 00:19:55 That uncertainty article explains how uncertainty is measured :D 00:20:50 in terms of h :-P 00:21:33 GreyKnight: at least 3 people understand them, plus Razor-X plays slashem 00:21:40 Something is either certain or uncertain. 00:21:47 then reference away! 00:21:57 * lament dereferences GreyKnight's pointer 00:22:10 ihope: I assume he's talking about Ye Olde Heisenberge Principall 00:22:23 lament: eew. None of that stuff in here, okay? 00:22:25 :-P 00:22:38 So who was it that said it would be funny if the level 30 Knight title were "caitiff"? 00:23:03 your mom. 00:23:41 X_X 00:23:50 You've prevented me from saying anything but X_X 00:23:53 Jackarses. 00:24:06 >_O 00:26:03 time to clean up this channel 00:26:07 * lament bans ihope 00:26:21 B& 00:27:15 Time to flood! 00:27:16 oh 00:27:17 ihope: 00:27:19 range = (x as int, y as int) { 00:27:21 var ret = array(); 00:27:23 n/m 00:27:23 while({x < y}, { 00:27:24 ret[] = x; 00:27:26 x++; 00:27:27 }); 00:27:29 }; 00:27:39 . . . 00:27:47 * GreyKnight mentions something about pastebin 00:27:48 What you say? 00:27:49 Hit the road, Jack, and don't you come back... 00:27:56 I like pastebins. 00:27:58 I just prefer flooding. 00:29:44 * lament bans GreyKnight 00:29:48 i meant GregorR-W 00:29:56 Told you 00:29:58 but since they have such similar nicks, i guess GreyKnight will have to do 00:30:05 Gee, I'm sorry I interrupted your FASCINATING CONVERSATION. 00:30:12 U R ALL B&ZORED 00:30:20 ;-) 00:30:37 i might worry if i knew what that meant 00:30:59 Oh know! Not the banded! 00:30:59 You will be both B and Zored. 00:31:11 ihope = B& 00:31:12 i am already B - i think 00:31:35 To B, or not to B. 00:31:45 That is the zomgwtfquestion 00:31:45 Is that a question? 00:31:49 * pikhq should write an Esolang on his calculator. . . 00:31:55 Actually, nobody's +b'd on #esoteric. 00:32:07 YET 00:32:20 pikhq: aren't calculators pretty esoteric anyway? 00:33:27 ihope: It's a GCC target. 00:33:27 It also has a (somewhat odd) Lisp variant built in. . . 00:33:35 !1 @1 #1 $1 %1 ^1 &1 *1 meh 00:33:38 Huh? 00:33:41 Hmm, fancinating. 00:33:50 s/n/s/ 00:33:50 j00 fail. 00:34:16 I bet it's not the oddest Lisp ever 00:34:36 _1 -1 +1 =1 {1 }1 (1 )1 [1 ]1 |1 1 00:34:40 My #eval script surely qualifies for that 00:34:47 Eh, hmm. 00:34:59 * GreyKnight wonders what ihope's master plan is 00:35:13 '1 :1 "1 ,1 .1 /1 <1 >1 ?1 meh 00:35:23 It's not working! 00:35:29 * ihope kicks his chat client 00:35:36 GreyKnight: What? Reverse Polish Lisp? 00:36:07 0 = (1*1) + ((-1)* 1) + (1* (-1)) + ((-1)* (-1)) = -1 + ((-1)* (-1)) 00:36:09 It's a pretty half-assed implementation 00:36:11 MUHAHAHAHAHAHAHA 00:36:22 a side-effect of which is that it's rather odd 00:36:27 -!- CakeProphet has quit (Read error: 104 (Connection reset by peer)). 00:36:44 0 = 1-1 00:36:46 Try "#eval (lisp (stuff))" to see :-P 00:36:47 Silly. 00:36:58 I think I'll code in C on it, anyways. 00:37:02 bonus points if you hit a function that's actually implemented 00:37:05 #eval (+ 1 2 3 4) 00:37:06 #do eval (+ 1 2 3 4) 00:37:08 #> 10 00:37:28 ihope gets bonus points 00:37:30 -!- CakeProphet has joined. 00:37:35 wd 00:37:41 It's more of "1 2+ 3 4++eval". 00:38:03 That is slightly more odd 00:38:21 #eval ((lambda (x) (x x)) (lambda (x) (x x))) 00:38:28 0 + 1 = (1*1) + ((-1)* 1) + (1* (-1)) + ((-1)* (-1)) = -1 + ((-1)* (-1)) + 1 = -1 x -1 = 1 00:38:39 Yaaaay... I just proved that -1 x -1 = 1 00:38:46 Nice try, ihope :-P 00:38:47 Kinda.. 00:38:53 And it leaves 10 on the stack. 00:39:08 pikhq: I've seen something similar before 00:39:20 GreyKnight: It's an HP calculator. Decidely odd. ;) 00:39:25 0 = 0*1 = 0*1^0 = 0^0 = 1 00:39:47 #eval (* 3 6) 00:39:48 #do eval (* 3 6) 00:39:50 #> 18 00:39:55 #do eval (* 3 6) 00:39:56 #do eval (* 3 6) 00:39:58 #> 18 00:40:15 yep, it's consistent over time, too! 00:40:30 #eval ((lambda (x) x) 3) 00:40:30 #do eval ((lambda (x) x) 3) 00:40:32 1: 18. 00:40:32 #> 3 00:40:34 You want a ban, i'll give you a ban!! 00:40:56 -!- ChanServ has set channel mode: +o lament. 00:40:56 #do eval (do ((x 0 (+ x 1))) ((= x 300)) (display "HI!")) 00:40:57 #do eval (do ((x 0 (+ x 1))) ((= x 300)) (display "HI!")) 00:40:59 #> NIL 00:41:00 #! Error: (998) 'DO' IS NOT A FUNCTION OR A MACRO 00:41:15 ITS BAN TIME!!! 00:41:19 Pfft. It's a special form, bub. 00:41:33 Yeah, we don't have those either :-P 00:41:46 #do eval (bil) 00:41:47 #do eval (bil) 00:41:49 #> NIL 00:41:50 #do eval (display "Waah. I suck") 00:41:51 #! Error: (998) 'BIL' IS NOT A FUNCTION OR A MACRO 00:41:52 #do eval (display "Waah. I suck") 00:41:54 #> NIL 00:41:56 #! Error: (998) 'DISPLAY' IS NOT A FUNCTION OR A MACRO 00:41:59 #do eval (nil) 00:42:00 #do eval (nil) 00:42:01 #> NIL 00:42:03 -!- lament has set channel mode: +b scwizard!*@*. 00:42:03 #! Error: (974) FIRST ITEM IS NOT A SYMBOL OR LAMBDA ('NIL') 00:42:05 -!- CXI has quit (Connection timed out). 00:42:09 Gimme some break, I did well just producing something like this in PHP :-P 00:42:11 POOF! 00:42:16 BANNED! 00:42:20 -!- lament has set channel mode: -o lament. 00:42:29 http://images.amazon.com/images/P/B0000664NI.01._SCMZZZZZZZ_.jpg <- the infamous ban stick! 00:42:30 Pfft. Make a Scheme IRC client, bub. 00:42:34 #do eval (print "printed") 00:42:36 #> "printed" 00:42:52 For what use *that* is 00:42:58 do eval (print "I eat babies") 00:43:05 #do eval (print "I eat babies") 00:43:06 #do eval (print "I eat babies") 00:43:07 #> "I eat babies" 00:43:09 #do eval (print "I eat babies") 00:43:10 #do eval (print "I eat babies") 00:43:10 #do eval (print "I eat babies") 00:43:12 #> "I eat babies" 00:43:14 #do eval (print "I eat babies") 00:43:16 #> "I eat babies" 00:43:18 #do eval ((lambda (x) (list x x)) (lambda (x) (list x x))) 00:43:20 #do eval ((lambda (x) (list x x)) (lambda (x) (list x x))) 00:43:21 #> '(# #) 00:43:23 Can it perform loops? 00:43:26 Oip 00:43:50 It could do recursive calls to a function, but not any of the special looping forms 00:43:57 Ah. 00:44:14 #do eval ((lambda (x) (list x (list (quote quote) x))) (quote (lambda (x) (list x (list (quote quote) x))))) 00:44:15 #do eval ((lambda (x) (list x (list (quote quote) x))) (quote (lambda (x) (list x (list (quote quote) x))))) 00:44:17 #> '((LAMBDA (X) (LIST X (LIST (QUOTE QUOTE) X))) (QUOTE (LAMBDA (X) (LIST X (LIST (QUOTE QUOTE) X))))) 00:44:19 There's a defun, but its results aren't persistent 00:44:43 Oh, so this is CL, bub? 00:44:55 well, something like it 00:45:04 in the sense that centipedes are something like cats 00:45:15 #do eval 00:45:16 #do eval 00:45:18 #> NIL 00:45:22 #do evil 00:45:23 #do evil 00:45:25 Do lambda expressions implicitly execute statements in order? 00:45:25 #@ Nothing returned. 00:45:48 Razor-X: lambda expressions in actual lambda calculus? 00:45:52 come again? 00:45:59 ihope: No, in GreyKnight's odd Lisp dialect. 00:46:00 Razor-X: lambda expressions don't have any statements! 00:46:08 It's 00:43 over here, excuse me if I'm slow 00:46:12 Procedures then, happy? 00:46:36 Ya know, like the Scheme (begin) special form. 00:46:40 * ihope tries this infinite monkey thing 00:46:54 I'm not overly familiar with Scheme 00:46:54 To be or nowiex oqh pziqjw bwqo xpl woxqw sbhqo pjw 00:47:01 Oh, cool, I got... well. 00:47:05 :-P 00:47:19 I can't remember much of the particulars of CL. 00:47:32 But, what I can remember is CL felt much worse to program in than Scheme does :). 00:47:40 :-P 00:48:09 Do you mean that the "body" expressions of the lambda are guaranteed to be executed in the order written? 00:48:15 Yeah. 00:48:22 then yes 00:49:24 If you simply made your IRC client *in* your Lisp dialect, you could get it to excecute its own code with ease ;). 00:49:32 :-O 00:49:52 That'd be some kind of insane programming exercise 00:49:59 I like it! 00:50:00 Why insane? 00:50:13 ERC! 00:50:28 One of the additions I'm adding to my IRC bot in the Scheme rewrite is the fact that I'm going to give a REPL to privileged users. 00:50:46 Plus I'll program in an RC file so I can change portions of the code on the fly. 00:50:59 well, the Lisp code itself is being run as a PHP script, so I mean it'd be an insane number of levels of abstraction 00:51:17 Drop the stupid PHP business :P. 00:51:31 Whoot2PHP 00:51:45 no wai 00:52:00 the whole idea was to see if I could write a Lisp in PHP 00:52:03 PHP - unchallengable in its niche, worthless elsewhere :-P 00:52:15 PHP still has a niche? 00:52:19 * Razor-X gasps. 00:52:20 no. 00:52:27 yeah - implementing random Lisp dialects 00:52:29 If you say "Ruby on Rails" I'll shoot you. 00:52:41 Fine. Shoot me over IRC. 00:52:46 Ruby on Rails. 00:52:52 * GregorR-W shoots Razor-X. 00:52:54 GASP! 00:53:01 * Razor-X bleeds IRC blood. 00:53:06 No amount of nifty 3rd party libraries will make up for the fact that Ruby just plain sucks. 00:53:08 GASP! 00:53:15 * ihope faints 00:53:28 Ruby sucks?! *TRIPLE GASP* 00:53:47 Ruby = ridiculous OO + all the worst parts of Perl (many of which are totally incompatible with the concept of a completely OO language) 00:53:50 * pikhq wonders if Razor-X has implemented the Violence Over IP protocol correctly. . . 00:54:12 heh 00:54:13 Nope. Mine's a bit b0rked. 00:54:20 Let's remember: ASSAHS 00:54:26 -!- ivan` has joined. 00:54:28 A hint: if it's implemented correctly, you should be dead by now. 00:54:32 All Software Sucks, All Hardware Sucks 00:54:37 Python people have tried to develop an internet framework with the ultimate goal of being able to stab people in the face over the internet. 00:54:48 ASS?! AH!(s) 00:54:49 they're not quite there yet, but they're making progress 00:54:55 (Twisted is the framework) 00:55:25 All software sucks. Hardware, also, too. 00:55:38 All P-languages suck. 00:55:39 ASSHAT. 00:55:46 Bing. 00:55:47 Your mom sucks. 00:55:47 O. 00:55:52 What have you to say about T-languages? 00:55:56 So does Plof suck too? 00:56:00 All Software Sucks, Hardware Also, Too 00:56:08 Razor-X: you beat me to it. 00:56:14 Razor-X: Plof is designed to rectify my problems with P-languages ;) 00:56:19 (poor grammar, but the acronym rules) 00:56:22 For that, I will shoot you 999999 times. 00:56:23 P-languages don't suck by nature, it just so happens that they all suck. 00:56:27 Python doesn't suck. 00:56:31 It bites. 00:56:39 it swallows whole. 00:56:48 Python goes beyond sucking. It engorges the universe in its gaping maw. 00:57:08 It goes beyond engorging the universe in its gaping maw. It's goatse. 00:57:09 Scheme and Haskell should rule the world some day. 00:57:12 And with that, I leave. 00:57:13 What if I like Python? 00:57:16 >_< 00:57:20 GregorR-W: GASP! 00:57:20 Mind you, I like Python. 00:57:24 * GreyKnight B& goatse 00:57:25 As P-languages go, it's a good'n. 00:57:27 Anyway 00:57:29 *poof* 00:57:30 -!- GregorR-W has quit ("Chatzilla 0.9.75 [Firefox 1.5.0.2/0000000000]"). 00:57:33 You can jump off a boat in the middle of the Atlantic Ocean, ihope ? 00:58:19 Isn't that a little harsh? Couldn't you just force me to sign a thing stating that I will never have children, except adopted ones? 00:58:20 * GreyKnight larts GregorR in the quitvertisement 00:58:48 Nah. We all know that 99% of people don't actually care about children and only have them because of social pressure. 00:59:09 Also, we know that 100% of all coders are doomed to celibacy. 00:59:24 * CakeProphet likes Python... mainly because it's the only one he can use effectively. 00:59:56 Use Scheme Or Die. 01:00:03 * GreyKnight <3 PHP 01:00:05 Or use Haskell. 01:00:07 * GreyKnight <3 LISP 01:00:14 Die. 01:00:14 Programming languages are basically like politics and religion....... 01:00:16 What does LISP stand for? 01:00:21 * ihope uses Die 01:00:22 list processor? 01:00:23 Wait, what? 01:00:26 Together, they are... horribly deformed gk-Lisp! 01:00:43 Lisp RPN+ RPL= 01:00:46 It's "Lost of Irritating Superfluous Parentheses", isn't it? 01:00:53 * Lots 01:00:56 s/st/ts/ 01:01:03 fizzie: That would just be Lisp with sexps. 01:01:03 IIRC, Lisp stands for nothing, which is why it's Lisp and not LISP. 01:01:32 actually, it was LISP originally 01:01:38 LISt Processing 01:01:41 Lisp stands for lament ihope SimonRC pikhq 01:01:42 what is the syntax of lithp, anyhow? 01:01:45 the original authors of the language 01:01:47 Ah. Alright then. 01:01:58 "LISP: n. 01:01:59 [from ‘LISt Processing language’, but mythically from ‘Lots of Irritating Superfluous Parentheses’]" 01:02:06 (Says the Jargon file.) 01:02:21 yah 01:02:35 I was the one who originally designed the M-expression. 01:02:39 * CakeProphet likes the ()'s 01:02:48 http://en.wikipedia.org/wiki/M-expression 01:02:52 Doubtful. 01:03:07 If I were to make a useful language... I would use ()'s to denote do-this-and-return-a-value-then-continue-on-with-the-expression) 01:03:33 If I were to make a useful language... hmm... 01:03:50 (defun ihope (x) (list x x)) 01:03:57 Let's face it: 01:04:10 if any of use were to make a useful language, we wouldn't be on here :-P 01:04:11 On my to do list for useful languages is a language that is perfect for building onto itself... above and beyond Lisp macros. 01:04:29 CakeProphet: Learn Lisp first. 01:04:31 Lisps *are* perfect for building onto themselves :-P 01:04:32 * ihope pretends to have written a useful language already 01:04:49 GreyKnight, you can always improve. 01:04:53 Pssh 01:04:54 ;) 01:04:57 Lisp is perfection 01:05:07 Haskell + imperative stuff + optional duck typing = this language. 01:05:11 All other languages gradually approach it with each new release 01:05:12 GreyKnight: your mom is perfection. 01:05:14 * pikhq has written *in* a useful language already. 01:05:19 Haskell + imperative stuff?! 01:05:23 What the heck *is* that?! 01:05:27 There is a better language out there... we just haven't made it yet. 01:05:35 Haskell + more support for monads. 01:05:37 I refer you to Greenspun's Tenth. 01:05:39 Uggh. Monads. 01:05:49 Yum, monads. 01:05:53 It's like putting Gates and Stallman in a room together: Two enter, one leaves! 01:05:55 See, monads were what put me off haskell :-\ 01:05:59 MORE MONADS!!! 01:06:08 I don't use Monads too often, but they are annoying. 01:06:10 s/m/g/g 01:06:12 * CakeProphet prefers biads. 01:06:16 sometimes triads... 01:06:22 ....... 01:06:28 *Cough* Moving on then.... 01:06:30 That was a weak pun at best. 01:06:38 :P 01:06:41 * pikhq prefers gonads 01:06:50 * oerjanj would be impressed if he believed cakeprophet new what those were 01:06:53 * Razor-X does not. 01:07:07 It would make more sense if he knew *what* a Monad was. 01:07:09 Yeah. 01:07:20 hm, there is something called triads. 01:07:33 They're Chinese and they'll CUT ya 01:07:34 There is also something called a bifurication. 01:07:57 So yeah. Haskell + more monadic stuff + optional duck typing... pretend the monads aren't there, and you got something nice, aye? 01:07:59 so how do you make an esolang based on triads? 01:08:02 Hmmm.. monads? 01:08:04 "bifurication"? Is that when a furry reproduces? 01:08:11 Monads specify an order for shit to happen. 01:08:13 If it makes you feel happy, yes. 01:08:15 GreyKnight: eew 01:08:25 ihope: I'm assuming it's asexual 01:08:26 @ GreyKnight. 01:08:37 Sweet hairy Moses I hope it's asexual 01:08:49 CakeProphet: Kinda... sorta... not really. 01:08:54 has anyone made an esolang on a gangster theme? 01:09:05 oerjanj: sure, it's called, uh... 01:09:18 Isn't there that one that has the stuff and things? 01:09:25 C 01:09:52 Oh, the stuff and the things? 01:10:37 monads basically give functional programming a state-change-ish-like ability. 01:10:56 I reward your googling. 01:11:01 Thank you. 01:11:02 ETA! 01:11:21 Oh, no. 01:11:27 * CakeProphet enjoys putting "def" inside an if in Python. 01:11:41 ihope: Eat Team Ant? 01:11:42 * Razor-X enjoys using defun syntax in Scheme. 01:11:47 You murderer 01:12:05 GreyKnight: elemental troll Archon, stupid 01:12:07 using if combined with def gives you function-changing-like abilities. 01:12:15 Except... it's annoying to use... and takes up way too much time. 01:12:24 What does def do? 01:12:28 defines a function. 01:12:48 ........................ 01:12:59 WELL 01:13:00 Oh, I see what you mean. 01:13:36 Yes well, that sounds fine and dandy, except I can't see anything but very limited use for that :P. 01:13:48 if this = that: 01:13:50 def wow(pepper, corn): 01:13:51 return pepper + corn 01:13:53 else: 01:13:54 def wow(pepper, corn, cheese): 01:13:56 return pepper - corn + cheese 01:13:57 Yeah it's limited in Python. 01:14:29 limited++ 01:14:32 You can do something similar in Ruby by querying whether the cheese parameter is provided. 01:14:35 Or should that be limited-- ? 01:14:36 Or, in Scheme: 01:14:51 Lisp could do that much better than Python could. 01:15:22 if(condition, {global thefunc = {/* func a */};}, {global thefunc = {/* func b */};}); 01:15:50 (define wow (pepper corn #!optional cheese) (if (default-object? cheese) (+ pepper corn) (+ (- pepper corn) cheese))) 01:16:12 Crazy. I know. 01:16:46 in CL it's &optional instead of #!optional, but otherwise basically similar 01:16:54 Hmmm... actually.. 01:17:01 Python can do arbitrary numbers of arguements too. 01:17:07 Well, there you are. 01:17:15 With * 01:17:17 You can condense that example much smaller then :P. 01:17:59 but but.. 01:18:02 conditionals... are... fun 01:18:04 I like using # better; think I'll use that syntax when I come to add complicated lambda lists to gkdlisp 01:18:05 * CakeProphet cries. 01:18:15 I never grokked why CL uses & there 01:18:37 Doesen't it also use &rest ? 01:18:58 Yep, and &keyword and probably some others I forgot 01:19:12 That's another one of those things I didn't like about CL :P. 01:19:19 You tend to forget most everything about the language. 01:19:32 It's consistent within itself, I just don't know why they suddenly decided to start using & as a syntax character 01:19:47 And I like the fact that Scheme abstracts functions the same way as it abstracts every other definition. 01:19:51 Pfft.. sofixit :D 01:19:52 CakeProphet: But of course conditionals are fun. How else do you do Turing completeness? 01:19:53 Make your own Lisp 01:19:56 well, I have a copy of the HTML spec nicely linked, so I can look things up at a moment's notice 01:19:56 Scheme fixes it. 01:19:58 ;) 01:20:25 Scheme could probably be made better. 01:20:36 You don't need conditionals for Turing-completeness. 01:20:39 gkdlisp fixes it and then trips over its own teeth 01:20:53 I don't see where Scheme can't be made better in Scheme :P. 01:21:19 yeah, the only way a Lisp can be improved is by using its own features or by turning it into another Lisp 01:21:25 I love conditionals so much... my super-in-thenear-future-language-I'll-never-create will intend use exessive amounts of conditionals. 01:21:37 Lisp as a group is the ultimate; there is no perfection beyond Lisp :-P 01:21:48 ihope: Sure. Try doing Brainfuck without any sort of conditional ability. 01:21:49 Bullshit 01:21:54 The only one thing I think Scheme can use is Haskell and OCaML's built-in head-tail things. 01:22:14 Instead of binding head and tail via let, pattern matching is actually pretty nifty. 01:22:18 pikhq: the while loop has a condition. 01:22:22 * pikhq has a vague definition of "conditional", which is more along the lines of "being able to branch" 01:22:32 Of course, I can easily create a macro to *create* pattern matching, so my argument is moot. 01:22:43 ihope: And you just said you can do Turing completeness without conditionals. 01:23:05 Remove []. Is it Turing complete? 01:23:07 pikhq: BF is Turing Complete. Turing Complete is not BF. 01:23:22 Razor-X: what's this pattern-matching head/tail of which you speak? 01:23:33 Remove everything, and add S and K combinators. 01:23:38 Razor-X: A Turing complete language can (theoretically) emulate any other Turing complete language. 01:23:39 Where's the conditional there? 01:23:46 Lisp can do extend onto every aspect of itself... except for moving outside its fundamental syntax. 01:24:02 ...which is perfection 01:24:05 Clever application of the S and K combinators (I have a *very* vague definition of "conditional"). 01:24:18 GreyKnight: In Haskell, you can write a function parameter as a cons'd list. So the head of the list will automatically be assigned to what you assign at its head, and the tail automatically as what you design the tail to be. 01:24:25 * CakeProphet intends to make a langauge that can change its own fundamental syntax. 01:24:26 the much-maligned parentheses are there for a very specific and ingenious reason 01:24:40 Razor-X: Ah yes, I remember now 01:24:42 Yes I know why 01:24:44 That was a neat trick 01:24:44 CakeProphet: just pretend Thubi can. 01:24:55 * CakeProphet isn't bothered by parenthesis. 01:25:27 Lisp can't change its fundamental syntax? *looks* 01:25:35 Not that I can see. 01:25:38 It's basically impossible for the computer to misparse your Lisp code, because the parse tree is there in the language itself ;-) 01:25:50 Unless you change Lisp itself without the use of Lisp to make the change. 01:26:03 Reader macros can accomplish quite a lot syntax-wise 01:26:27 Do they break away from the fundamental syntax? (a.k.a. parenthesis) 01:26:27 I was thinking of MIT/GNU Scheme's Reader and Parser. 01:26:46 You can parse XML using that, among other things. 01:27:18 you can read in pretty much any format you like with the various reader control systems 01:27:34 why you'd WANT to forgo the standard parentheses is beyond me :-) 01:27:59 To create a syntatically different language. 01:28:15 'Cuz I Can (TM). 01:28:22 but "different from Lisp" implies "inferior" :-) 01:28:39 there's something magical about altering your environment to suit your needs in any way possible. 01:28:55 Useful... maybe not... but magical indeed. 01:29:04 Having said that, a setup that reads in Brainf**k would be hilarious :-D 01:29:08 You can with the Reader/Parser.... of course, if you have the time. 01:29:29 Well, my BF interpreter attempted to compile BF to Scheme and then run the Scheme code. 01:29:46 Ah, you're halfway there, then! 01:30:09 Basically... to extend to the language you just need a way to alter the parser via a keyword. 01:30:19 Or am I being overly optimistic about the "attempted" part? 01:30:33 Well, I got bored typing (display) so I gave up :P 01:30:52 And went on to my original reason for re-learning Lisp via Scheme this time around -- to rewrite my Haskell bot. 01:31:23 the IRC bot mentioned earlier, I assume? 01:31:48 Yeah. 01:32:15 Watch what it can do so far: 01:32:43 -!- Blahbot has joined. 01:32:43 -!- Blahbot has quit (Client Quit). 01:32:50 C'razy. 01:32:50 \o/ 01:33:01 I have a bot in a similar stage of development 01:33:16 I have a bot in the "won't compile" stage. 01:33:20 Given 2 hours, I can probably rewrite the bot as it was originally. 01:33:32 It used to be in the "will compile, won't link" stage. 01:33:34 But... I plan on changing quite a few things around in the core. 01:33:50 I'll probably put it back into the "won't parse" stage. 01:34:11 -!- Blarghbot has joined. 01:34:11 -!- Blarghbot has quit (Client Quit). 01:34:13 -!- Blarghbot1 has joined. 01:34:13 -!- Blarghbot1 has quit (Client Quit). 01:34:17 That's the power of Scheme. 01:34:26 Blargbot and Blarghbot1. Yeah. It's beautiful. 01:34:30 Enter rodgebot: 01:34:30 -!- rodgebot has joined. 01:34:46 He can *stay* connected! 01:35:02 Like, does he actually keep the connection alive? 01:35:22 -!- anonfunc has quit. 01:35:24 Yes, I do! 01:35:42 He's using netcat. I know it. 01:35:42 A whole new advance in bot technology. 01:35:48 lua + luasocket 01:35:59 Call now and order your rodgebot today! 01:36:00 You just *love* scripting languages, don't you? :P 01:36:11 rodgebot: you can stop advertising now. 01:36:21 I can do that easily, but, I have to first work on a universal parser for the IRC commands. 01:36:22 I love all languages 01:36:31 rodgebot: what's the number? 01:36:54 Razor-X: yeah, I got that sorted out 01:36:58 rodgebot doesen't respond to my pings :(. 01:37:06 ihope: I'm not allowed to advertise anymore :'( 01:37:20 I just keep pinging him, and NOTHING! :( 01:37:23 Pah. 01:37:28 -!- rodgebot has quit (Read error: 104 (Connection reset by peer)). 01:37:30 Razor-X: CTCP PING? 01:37:36 oops 01:37:37 Yes. 01:37:40 my fault 01:38:00 Note to self: do not press big red button 01:38:28 surrealofy " (sarcasm isend obviously isend = True; isbegin = False;job = index(surrealofication)) (sarcasm isbegin obviously isbegin = True;isend = False;stringstuff = ord(this[index(job:surrealofication))]) 01:38:31 MUHAHAHAHAHAHA 01:38:46 coding in hypothetical languages is fun... it gives me the illusion that I know what I'm talking about. 01:38:46 * pikhq really needs to work on his calculus homework. . . 01:39:18 * GreyKnight works on his lego language 01:41:29 Hooray for base-6 numbers 01:41:58 Not as good as base-pi, but still... 01:42:24 i like the fibonacci base... 01:42:40 It's ok, but a bugger to write down 01:44:25 1 10 100 101 1000 1001 1010 10000 10001 10010 10100 10101 ... 01:44:51 hang about, you're not talking about factorial base 01:45:07 nope i am not although that is nice too 01:45:35 Oh, no 01:45:40 No, it isn't :-\ 01:45:53 essentially there's no limit on the size of the digits in factorial base 01:46:13 much ugliness ensues 01:47:46 in fibonacci base each position represents a fibonacci number 01:47:51 1 2 3 5 8 etc. 01:47:59 yeah, I've seen it before 01:48:08 I just misread "fibonacci" as "factorial" 01:48:23 It's possible I'm overtired and should sleep. 01:48:53 always a possibility 01:49:35 found a link: http://www.mcs.surrey.ac.uk/Personal/R.Knott/Fibonacci/fibrep.html 02:13:25 -!- oerjanj has quit ("Leaving"). 02:13:26 -!- pgimeno has quit (Read error: 104 (Connection reset by peer)). 02:21:25 I should release this 20 page pamphlet of AP Chemistry formulas I have here. 02:21:35 Rather than leaving it on my hard drive to rot uselessly. 02:27:10 bit rot strikes again 02:28:17 Quite. 02:28:27 I'm thinking of a title for my essay. 02:28:48 I think I'll name it ``A hollistic comparison of three books exploring the nature of human thought''. 02:28:56 * holistic 02:28:57 That seems original and it rolls off the tongue. 02:29:01 Errr, yeah. 02:29:12 And is suitably deep-sounding 02:29:14 -!- pgimeno has joined. 02:30:04 Maybe I'll add a PS at the end of it telling my teacher I'm not an arrogant snobbish girl but in fact, I couldn't think of a good title. 02:30:39 or take the opposite tack and have a footnote from the title saying "Yes, I really am that snobbish" 02:30:54 -!- CXI has joined. 02:31:07 I would've done that to my last year's English teacher and she would've understood, but I haven't even seen this teacher yet. 02:31:11 So I'm a bit afraid of doing that. 02:33:15 * ihope plays white noise 02:33:19 Very nice. 02:33:26 Try pink 02:33:41 Yep, that's what I was going to do next. 02:33:59 That sounds quite different. 02:34:24 * ihope plays brown noise 02:34:33 What a mess! 02:34:47 Brown noise, not the brown note. 02:35:10 That sounds... that also sounds quite different. 02:35:36 And blue noise also sounds different. 02:35:41 * ihope compares it to white noise 02:36:23 base phi is fun 02:36:36 it is simmilar to base fibonacci 02:36:37 Blue noise seems to be cleaner. 02:36:44 base one (unary) is no use :-( 02:36:51 and base zero is the LOSE 02:36:52 jix: radix, you mean? 02:37:02 actually, neither of those are "real" bases 02:37:14 What about Base Omega? 02:37:27 unary only represents positive integers, and base zero is... nothing 02:37:39 ihope: uh i guess 02:37:49 Purple noise sounds even cleaner... 02:37:52 I meat babies! 02:37:54 *meant 02:38:14 ;D 02:38:14 o_O 02:38:14 Gray noise is something a person could fall asleep to... maybe. 02:38:29 ihope: these are getting pretty obscure 02:38:39 I have no idea what these noise are. 02:38:54 I only know that someone who assosciates color with sound ended up naming odd sounds according to color. 02:39:12 'salright, ihope is just reading them off a selection menu ;-) 02:39:16 And when people want to sound scientific about audio equipment, they use one of those noises like buzzwords. 02:39:41 "puce noise with chartreuse spots" 02:40:09 unary represents your mom. 02:40:09 I say we should've named the noises according to food. 02:40:09 Pizza noise. 02:40:09 Papaya Noise sounds awful. 02:40:23 -!- ivan` has quit (" HydraIRC -> http://www.hydrairc.com <- The future of IRC"). 02:40:26 We should have named them the same way we name nozzles. 02:40:30 * GreyKnight drinks papaya juice of papower 02:40:38 I could go to sleep to some Flan Noise. 02:40:39 -!- ivan` has joined. 02:41:00 Habanero Noise will wake you up pretty quickly. 02:41:03 Ah, that's it! 02:41:22 That's what grey noise should be called... flan noise. 02:41:38 It should be called lament noise 02:41:43 Well, time for me to abruptly disappear again. 02:41:46 and GreyKnight could be called FlanKnight? 02:41:56 No, we need to name some noise that deals with YourMom lament noise. 02:42:08 * ihope has left irc.freenode.net ("Fooled you!") 02:42:10 What *is* the sound of fat? 02:42:25 The sound of Waikiki Beach? (lame joke) 02:42:29 :( 02:43:17 gray noise is cool 02:43:27 Like flan. 02:43:31 But flan is cooler. 02:44:31 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 02:46:55 -!- CXI has quit ("If you're reading this, it's probably xchat's fault."). 02:46:56 we can't fucking swear in #nethack? 02:47:24 -_- 02:47:25 -!- Sgeo has joined. 02:47:34 Don't make me look down my nose at you 02:47:50 that would be... pretty disgusting. 02:48:19 I have 4 ranks in Furious Glaring and I'm not afraid to use them 02:48:43 BRB 02:48:56 GreyKnight: i didn't know you were female 02:49:20 GreyKnight: asl? wana cybr? 02:49:21 8< 02:49:25 GLARE 02:49:37 that's not a glare, that's scissors, you dumb shit 02:49:55 YOU DO BETTER 02:51:04 (0_0) 02:51:29 ===========================>>>>>> (X_X) <<<<<======================================== 02:51:36 Glaring at you while you get PWNED. 02:51:37 He looks more shocked 02:51:46 I like the special effects on the second 02:51:49 That's RIGHT. Ph33r my ub3r-ASCII art. 02:51:54 GreyKnight: see, a real female glare 02:52:03 GreyKnight: not like your pathetic mockery 02:52:32 When I want your opinion, I'll rip your head off, scoop out what brains I can find, and crap your opinion back into your skull. 02:52:52 :-D 02:53:01 joke's on you, i don't have any brains! 02:53:06 Dot dot dot period 02:53:15 uh-oh 02:53:20 period time-of-the-month 02:53:23 Dot dot dot full-stop 02:53:23 * GreyKnight runs 02:54:45 GreyKnight: New moon tonight! You feel bitchy. 02:55:46 New moon tonight! You talk gently to the succubus... The succubs hits! The succubus scratches! What a bitch! 02:56:44 X Chromosomes: You Need Only One 02:58:37 Your mom had three. 03:00:01 Your ma had two Y chromosomes 03:01:49 Think I've got the definition for this lego language sorted... next, an interpreter. 03:03:52 !gamesby GreyKnight 03:03:56 Huh? 03:04:03 !help 03:04:06 help ps kill i eof flush show ls bf_txtgen usertrig daemon undaemon 03:04:08 1l 2l adjust axo bch bf{8,[16],32,64} funge93 fyb fybs glass glypho kipple lambda lazyk linguine malbolge pbrain qbf rail rhotor sadol sceql trigger udage01 unlambda whirl 03:04:14 Silly lament. 03:04:21 !lambda \x.x 03:04:33 ... 03:04:45 what is this lambda thing? 03:04:51 * lament suspects he might have written it 03:04:58 Oh dear 03:05:02 better not touch, then 03:05:17 It might asplode 03:05:50 !lambda true 03:06:08 !ps 03:06:10 3 lament: ps 03:06:19 Obviously Gregor coded that well. 03:06:30 !lambda \x.y 03:06:46 -!- ivan` has quit (Connection timed out). 03:07:17 :O 03:07:26 There's no hq9+ interpreter! 03:07:31 I remember it working :| 03:07:35 !lambda 8a9oeu98ao8a9g83998glp3 03:07:38 Tokenizer error: Tokenizer can't comprehend '8' 03:07:48 okay. that's a different lambda. 03:08:21 !lambda print "hello world" 03:08:21 !lazyk `1 03:08:26 Parser error: Unbound variable: print 03:08:26 While parsing "./tmp/egobot.l2Rlk5": Invalid character! 03:08:33 ;D 03:08:51 what the hell is this "lambda" and how does it work. 03:08:56 !lambda "hello" 03:08:58 hello 03:09:09 !lambda s 03:09:21 !lambda j 03:09:23 !lambda (\x."hello")"world" 03:09:24 Parser error: Unbound variable: j 03:09:26 hello 03:09:38 !lambda "lol" "lament" 03:09:39 !lambda (\x.x "hello")"world" 03:09:41 lollament 03:09:43 helloworld 03:09:54 !lambda a="hello" 03:09:56 Parser error: list index out of range 03:10:22 what the fuck. 03:10:23 -!- ivan` has joined. 03:10:36 okay i get it. 03:10:48 i did write this. 03:10:48 * GreyKnight sets mode +nerdrage lament 03:11:13 !lambda #list 03:11:16 [and c0 c1 c10 c2 c256 c3 c4 c5 c6 c7 c8 c9 exp fact false fr i i0 i1 if iszero k mult not or plus pred s show succ true y] 03:11:31 !lambda #show iszero 03:11:36 \n.(n \x,x,y.y \x,y.x) 03:11:52 haha \x,x,y 03:12:09 Good job lament. 03:12:13 Can't remember what you even wrote. 03:12:24 Finally figured out how to use your own crappy software 03:12:31 i remember fixing that \x,x,y issue but only offline 03:12:43 anyway it doesn't affect the functionality 03:13:09 !lambda #show iszero c0 03:13:12 \n.(n \x,x,y.y \x,y.x) 03:13:48 !lambda #show iszero c1 03:13:50 \n.(n \x,x,y.y \x,y.x) 03:14:13 !lambda #show (iszero c1) 03:14:16 \x,y.y 03:14:28 \x,y.y? 03:14:34 Why a comma and a period? 03:14:52 comma between arguments, period between arguments and the body 03:15:13 !lambda greyknight = "idiot" ; 03:15:15 \x,y shorthand for \x.\y. pretty much 03:15:30 !lambda greyknight 03:15:32 idiot 03:16:03 there we go. 03:18:33 !lambda (\x.x x)(\x.x x) 03:18:36 Parser error: Unbound variable: x 03:19:03 * pikhq has his Calc work done. :) 03:19:17 parser error why? 03:20:03 !lambda #show y 03:20:06 \f.(\x.(f x x) \x.(f x x)) 03:20:14 oh 03:20:21 parser error because my parser is dumb? 03:20:30 !lambda (\x.x x) (\x.x x) 03:20:32 like author, like program 03:20:32 Parser error: Unbound variable: x 03:20:33 there we go :) 03:20:36 o_O 03:20:42 it works on my local copy 03:20:58 !lambda (\x.(x x))(\x.(x x)) 03:21:03 /bin/bash: line 1: 11535 Segmentation fault ./lambda/lambda.py <./tmp/egobot.7E27T9 03:21:08 o_O 03:21:15 Now *that* takes skill. 03:21:16 O_o 03:21:20 \o/ 03:21:37 * pikhq thinks that EgoBot was *not* meant to handle recursion. ;) 03:21:49 yeah, it segfaults locally on the program you originally gave 03:21:53 Do Not Taunt Happy Fun Ball 03:22:22 (Python segfaults due to running out of stack - one of unpleasant little things about Python) 03:22:44 That's a pretty assy way to handle running out of stack 03:23:14 your FACE is pretty assy. 03:23:23 (also an unpleasent thing about Tcl (although Tcl handles it better *AND* there's a package in Tcllib to do tail call optimisation, so you shouldn't run into it if you're sane)) 03:24:20 (Use Scheme.) 03:24:30 (use gkd-lisp) 03:24:48 (I intend to learn Lisp) 03:24:53 (display "Ew.") 03:25:33 "Reverse Polish Lisp FTW." out 03:41:42 hey, uh- question: could anyone recommend a TCL interpreter for OSX, preferably one with downloadable binaries? 03:41:50 I think I want to learn TCL 03:41:58 First, it's Tcl. 03:42:04 fine 03:42:13 Second, there's only one Tcl interpreter, and that is Tcl. 03:43:47 Can you reccomend a Tcl compiler? 03:44:12 I don't think I'll be venturing out of Scheme for a while, but y'know, just for the awesomeness. 03:44:15 No Tcl compilers (except maybe the bytecode compiler that's part of the interpreter). 03:45:07 * RodgerTheGreat sighs 03:45:20 well, can I get OSX binaries for Tcl anywhere? 03:46:06 http://tcltkaqua.sourceforge.net/ 03:46:26 Remember: google is your friend 03:46:36 awesome 03:46:37 pikhq: AWFUL-O. 03:46:50 http://tcltkaqua.sourceforge.net/ 03:46:59 Razor-X: What? 03:47:02 Is there an echo in here? 03:47:08 GreyKnight: Yeah. 03:47:33 You're supposed to say "...echo in here?" ;-) 03:48:27 pikhq: There's no compiler ;-;. 03:48:41 http://jim.berlios.de/ I lied. There are two implementations. 03:49:07 YOU LIAR. 03:49:19 You dash my hopes and dreams and then tell me you're a LIAR?! 03:49:26 Although Jim is only a subset of it. . . 03:49:28 Oh cruel cruel world of ours! 03:49:38 * RodgerTheGreat senses great anger 03:49:57 I feel your anger, it gives you focus, it makes you stronger! 03:50:00 *can feel 03:51:02 Name that movie! 03:51:05 Hmmm... 03:51:09 I give you all a challenge. 03:51:20 You're changing the subject, BUB! 03:51:23 uhm... 03:51:41 a star-wars, perhaps? 03:51:55 Create the most efficient Ackermann function you can... the person that can return the most results wins. 03:52:13 Unfortunately... you'll have to wait till tomorrow to claim victory... because I'm leaving in a few minutes. 03:52:24 Here's another line from that movie: 03:52:24 By the way..... http://en.wikipedia.org/wiki/Ackermann_function 03:52:46 Make it pre-store the results. :p 03:52:47 She was alive, I felt it!!!!! 03:52:59 And a last line: 03:53:01 Ahhhhhh! 03:53:02 huhm. 03:53:08 I think the last line is the most descriptive one. 03:53:15 I'm thinking Dune, for some reason. 03:53:24 Ackermann function, been there, done that, got the horrible picture 03:53:45 I don't think it's Dune 03:53:50 hm. 03:54:15 A female dies in Dune? 03:54:23 I thought Chani dies in the second (and last one I read) book? 03:54:32 she does. 03:54:35 she dies at childbirth 03:54:38 03:54:42 haha 03:54:45 Yeah. I know. 03:54:47 MY MOON FELL! 03:54:55 That's the only line I really remember from that book. 03:55:01 wha? 03:55:04 And Bene Tleilaxu, because of the horrible sense of spelling. 03:55:08 I couldn't stand Dune, I'm sorry. 03:55:12 Leto II is by far the most badass character in the entire series 03:55:25 -!- CakeProphet has quit (Connection reset by peer). 03:55:29 Who's he? 03:55:30 If you haven't read God Emperor of Dune, you've missed out on his brilliance 03:55:44 The first book was mediocre. The second book was awful. 03:55:56 I thought the baron Harkonnen was a pretty amazing bad guy, and Peiter DeVries is pretty awesome as well. 03:56:19 Leto II knocks the stuffing out of all of 'em, of course 03:56:23 It's no contest 03:56:26 I thought the first was the best, but "God Emperor" is a close second. I haven't read anything after that. 03:56:36 -!- CakeProphet has joined. 03:56:37 I want to read the one about the Butlerian Jihad. 03:57:15 RodgerTheGreat: save yourself time and money; don't 03:57:25 I bought it and pretty soon wished I hadn't. 03:57:33 * CakeProphet demands an Ackermann function from all of you! 03:57:41 Write it in brainfuck... even. 03:57:50 GreyKnight: Really? D: 03:58:18 RodgerTheGreat: They are molesting Herbert Senior's corpse 03:59:48 but the butlerian Jihad itself is such a *great* story topic! How could they go wrong? 04:00:06 By trying to cram everything into a very small space 04:00:51 Basically the premise of the legend books is that every single technological and social detail of the Empire was established at the time of the Jihad, 10 millenia ago 04:01:39 well, to a degree, that makes sense. 04:01:45 I found the machines to be pretty unappealing, too. 04:02:05 in what way? Stereotypical? 04:02:14 bland and tasteless 04:02:34 <:( 04:02:50 No depth to them at all... Star Trek's Lt. Cmdr. Data is a more three-dimensional character, and he sucks starfish. 04:02:55 well, fuck. now I don't have anything lined up to read the next time I have a chance. 04:03:07 -!- CXI has joined. 04:03:07 hold on, I'll get you something: 04:03:13 Have you read the Amber series? 04:03:20 (Roger Zelazny) 04:03:36 did they go the usual retarded "I am an emotionless machine- humans are inefficient and must be destroyed!" route? 04:03:45 no 04:03:51 Pretty much, yes 04:04:00 Well, there's your next read 04:04:01 fuck 04:04:06 ok 04:04:12 I'll look into it 04:04:20 *that* was a good series... the plot is so complex even I get taken by surprise 04:04:46 The characters actually act like they have personalities :-o 04:05:46 but, MAN, that tack is overdone. I've always thought that one of the best approaches to AI programming would involve simulating emotions. Logic in humans is superimposed over emotion, and our emotional responses represent a large number of the elusive things humans are good at. 04:07:10 They do have one Data recolour who's trying to understand emotions, but he gets all whiny because emotion does not compute 04:07:35 Of course, being an evil robot, he kills things, so not a complete copy-and-paste of Data 04:07:56 * RodgerTheGreat sighs 04:08:36 why are robots so rarely sympathetic characters? 04:09:25 well, there's the token robot who works with the "trustee" human slaves and goes all noble and what-have-you 04:09:40 wait, I can answer that myself: people want heroes thay can directly identify with. 04:09:41 but this probably evokes no feeling of surprise in you 04:09:50 well, yeah 04:09:59 that's the other stereotype. 04:10:25 Robots are always either paladins or maniacal killing machines with a pretense of logic. 04:10:45 Token Noble Sacrifice 04:11:09 yeah, 04:11:20 it's just depressingly formulaic. 04:11:42 Amber manages to continually surprise you as well as somehow managing to weave all the complex threads together into a coherent world 04:12:26 what kinda vein is Amber in? Cyperpunk, semi-fantasy, hard sci fi... ? 04:12:40 I say "world", because there's little sense of an actual *story* as such; things are coming and going without so much as a by-your-leave, like real life 04:12:50 It's an odd sort of fantasy 04:13:19 hm. 04:13:28 Technically it incorporates every story ever written, and many that haven't been, but obviously the author can only cover so much of the multiverse ;-) 04:13:36 haha 04:14:26 I wish it was possible to do a proper movie adaptation of Snow Crash. That would be *amazing* if they could be true to the book. 04:20:19 but back on my previous point, I'd like to see more fiction where machines are portrayed more like Asimov did, where they were generally the victims of manipulation at the hands of humans. 04:20:42 they still managed to be heroes, on occasion. 04:22:25 Characters like flatline from neuromancer are pretty good as well. 04:48:01 I managed to come up with a lego-based language that uses black, red, yellow, green, blue, white, and transparent bricks 04:48:14 plus I'd like minifigures for the wandering processors :-) 04:49:21 -!- CakeProphet has quit (No route to host). 04:58:41 -!- Arrogant has joined. 05:00:54 -!- ivan` has quit (" HydraIRC -> http://www.hydrairc.com <- 100,000+ downloads can't be wrong"). 05:01:10 Bye all 05:01:23 -!- Sgeo has quit ("Ex-Chat"). 05:02:51 -!- ivan` has joined. 05:03:07 -!- bsmntbombdood_ has joined. 05:03:35 -!- bsmntbombdood_ has quit (Client Quit). 05:05:17 g'night, all 05:05:40 -!- RodgerTheGreat has changed nick to RodgerTheAfk. 05:41:29 -!- calamari has joined. 06:17:02 -!- anonfunc has joined. 06:22:12 -!- anonfunc_ has joined. 06:22:13 -!- anonfunc has quit (Remote closed the connection). 06:23:02 -!- anonfunc_ has changed nick to anonfunc. 07:46:38 -!- ivan` has quit (" HydraIRC -> http://www.hydrairc.com <- The future of IRC"). 07:50:27 -!- anonfunc has quit. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:26:00 The Ackermann function is *trivial* to define in any Lisp. 08:26:25 It's actually pretty useful for certain situations. (Which I didn't know.) 08:27:06 funny you should mention it, someone in another channel just tried to break my #eval script by running (ackermann 4 4) in it ;-) 08:27:24 Hehe. 08:27:35 execution timeout ftw 08:28:05 Is it useful at all in Mathematics outside of being quaint to prove something? 08:28:06 We were using (defun ackermann (a b) (if (= a 0) (1+ b) (if (< a 0) 0 (if (= b 0) (ackermann (1- a) 1) (ackermann (1- a) (ackermann a (1- b))))))) 08:28:23 Use cond :(. 08:28:31 (cond) is a *lot* cleaner. 08:28:48 Oh wait, you haven't written (cond) have you? :P. 08:29:13 I thought not, butI just checked and it seems I do :-o 08:29:20 :D. 08:30:14 Wikipedia says A is used in time-complexity analysis and for some benchmarking 08:30:31 You should make (if) expand to a (cond). 08:30:44 Oh wait, I don't think you can, because they're both special forms. 08:30:45 It's a good way to test how well your compiler handles massive recursion ;-) 08:30:48 -!- calamari has quit ("Leaving"). 08:31:38 actually, with this half-assery approach I could probably pull it off... 08:31:55 it essentially has only "functions" and "macros" 08:32:59 and isn't anywhere near generic enough to allow users to define the latter :-\ 08:33:35 Still, it keeps me out of mischief 08:35:18 :P 08:36:17 One more error with your function. 08:36:28 O RLY 08:36:36 (if (> a 0) not (if (< a 0) 08:37:02 (if (< a 0) 0 08:37:18 notice that little 0 sneaking in unobserved! 08:37:23 Read the Wikipedia definition. 08:37:33 (> a 0) 08:37:44 The integers are all non-negative. 08:37:53 yah 08:38:11 I just threw that in in case some wise guy decided to pass a negative argument in 08:38:24 Oh :P. 08:38:36 I would else it to 0 then. 08:40:48 (ackermann 6 90) is calculating :P. 08:41:14 ..... And calculating. 08:41:44 (ackermann 6 20) gave me a result, at least, heh. 08:43:05 gkdlisp doesn't store any precalculated values, so I'll not be going anything like that deep :-o 08:43:19 Gkdlisp is horrible. 08:43:20 :D. 08:43:48 I still can't see why CL *insists* on having defun and define. 08:46:22 Nothing listed in the spec for just define, but there are several define- things 08:47:12 scheme<3 08:51:14 -!- CXI has quit (Success). 08:58:21 Well, Scheme is consistent in that (define) maps a result to a symbol (creating state). 08:58:25 Functions too. 09:00:00 ah, so you use (define) to attach *anything* to a symbol? 09:00:21 GreyKnight, yeah. 09:00:45 Makes higher-order functions a lot prettier, for one ;) 09:02:00 I'm sure you could cook up something such in CL, as per our discussion on Lisp readers earlier ;-) 09:02:11 but CL is intended to be *Common*, not perfect 09:02:47 which leads to a few oddities here and there 09:03:58 Hehe. 09:04:18 FSVO "few" 09:04:25 The problem I had with CL in the very beginning was that I couldn't get used to the irregularities and the insane amount of things to memorize. 09:04:41 Scheme feels a lot more fun to me, since I can abstract it all much more cleanly. 09:04:54 I didn't like CL 09:05:05 Yeah. The same here. 09:05:13 I guess that's how you can tell Scheme is a-callin' :P. 09:05:33 Uggh. I hate writing parsers though, and reading fun ABNFs. 09:05:45 *``fun'' 09:06:05 CL seemed like a big mess to me, with a million things to remember. And the multiple namespaces didn't sit right with me. 09:06:22 Heh. Yeah, I got the same feeling. 09:07:03 MIT/GNU Scheme's standard is pretty good. It comes with raw X usage, TCP streams, and all. 09:08:05 By all accounts, though, the world before CL was one of many different, barely intersecting types of Lisp 09:08:14 True. 09:08:27 At least now everyone has something to touch base with, even if only to say why they're better :-P 09:08:47 :P 09:09:01 I love it when a book calls itself a handbook but has 1000+ pages. 09:09:08 1309 actually. 09:09:47 It's a two-handbook 09:10:45 Haha. 09:11:16 In Haskell, I got to steal the IRC parser code from elsewher. 09:11:20 *elsewhere 09:11:26 Now I got to write it myself :(. I hate parsers. 09:12:26 I'm sure I saw some Scheme IRC code somewhere... 09:13:20 I know it exists, if *Haskell* had IRC code, Scheme must have it. 09:14:18 Haskell's only IRC thing out there was for HaskellBot, which was filled with an insane amount of monads, and the Hircules client's ``library'' which was also lumped with a whole bunch of useless GUI functions. 09:14:39 I think I made what can be considered to be the first ``IRC library'' in Haskell, no matter how rudimentary it is. 09:16:21 http://sisc.cvs.sourceforge.net/sisc/contrib/irc/scheme/ 09:18:12 But, I wanna try my hand at the parser myself. 09:18:24 Heh. 09:18:36 Of course, if I need to, I'll just steal SISC's code :D. 10:48:08 [ot] would someone help me make up some words for which "WORD" is an acronym, which imply some rant towards M$ or Word itself? All I could come with is "We Ought to Rant Doubly". 11:07:45 nm 11:08:10 s/acronym/abbreviation/ 11:09:04 er, forget it 11:14:48 -!- Arrogant has quit ("Leaving"). 11:17:39 -!- Arrogant has joined. 11:47:34 -!- jix has joined. 11:53:42 -!- Arrogant has quit ("Leaving"). 12:11:43 -!- jix has quit ("This computer has gone to sleep"). 12:16:17 Wilted Or Rancid Butterflies? 12:16:25 Erm, Dandelions. 12:16:53 Or maybe something like We Overwrite Random Data. 12:23:58 nice one :) 12:24:01 Or Word Overwrites Random Data. 12:27:22 oh, a vijara... 12:27:49 (vijara is just another recursive acronym) 12:28:23 :-) 12:30:10 An AAIARAT is a recursive acronym, then 12:30:20 Aye? 12:32:19 indeed 12:39:18 how would a pangram look like in Japanese? 12:42:15 Long. 12:46:56 oh, there's one in kana: ??????? / ????? / ?????? / ????? / ??????? / ????? / ??????? / ????? 12:52:15 What character encoding would that be? 12:52:41 er, did I forget to switch to utf-8? 12:52:57 oh, there's one in kana: いろはにほへと / ちりぬるを / わかよたれそ / つねならむ / うゐのおくやま / けふこえて / あさきゆめみし / ゑひもせす 12:53:36 that last one was utf-8 12:54:27 very unreadable indeed :/ 12:56:16 pgimeno: IROHANIHOHETOTIRINURUWOWAKAYOTARESOTUNENARAMUUWINOOKUYAMAKEHUKOETEASAKIYUMEMISIWEHIMOSESU? 12:57:36 er, yes, I suppose 14:59:48 -!- puzzlet has quit (Read error: 104 (Connection reset by peer)). 15:02:18 -!- puzzlet has joined. 15:13:49 -!- nickie12 has joined. 15:14:37 Please give me the source of 99 Bottles of Beer in IRP,if yuo do it, it would be lovely 15:17:58 -!- Keina has joined. 15:18:05 !help 15:18:09 help ps kill i eof flush show ls bf_txtgen usertrig daemon undaemon 15:18:11 1l 2l adjust axo bch bf{8,[16],32,64} funge93 fyb fybs glass glypho kipple lambda lazyk linguine malbolge pbrain qbf rail rhotor sadol sceql trigger udage01 unlambda whirl 15:19:42 Can anyone say "hello world" to the channel? That would be lovely 15:20:08 Hello World 15:20:32 Please write it without capitals, OK? 15:21:05 hello world 15:21:16 Thank you! 15:21:51 Now, can anyone say the source code of 99 Bottles of Beer to the channel? 15:22:08 the source code of 99 Bottles of Beer 15:22:22 *rofl* 15:22:35 say *rofl* 15:22:41 *rofl* 15:22:45 lol 15:23:00 Please don 15:23:15 't do a DDoS attack by saying *rofl* 15:26:28 -!- jix has joined. 15:26:36 Hi jix 15:26:38 say hi 15:26:45 please 15:26:47 moin 15:26:50 hi 15:26:58 moin??? 15:27:12 deutsh? 15:27:22 Please give me the answer to this question: Is jix/are you german? 15:27:34 i am 15:27:40 cool 15:27:44 wilkomen im club 15:28:04 dachte hier weren nur englender 15:28:06 wer ist denn noch alles deutsch? 15:28:09 I'm too ^^ 15:28:10 ich 15:28:24 afk 15:28:26 hmm hier waren nochmal 2 andere deutsche... aber die sind glaub ich nicht da 15:29:30 http://www.frappr.com/esolang << here is a map of esolang programmers 15:30:14 Kanns sein, dass "Anders" deutsch ist?(English: Am I right with the belief Anders is german?(Anders is the german word for different)) 15:32:08 If anyone needs it I can post the source code of the "99 Bottles of Beer" song to the channel. 15:35:10 nickie12: according to geobytes.com Anders is from sweden 15:35:18 but according to geobytes.com i'm from italy ^^ 15:35:31 and it would be new to me that bremen is an italian city ^^ 15:35:56 Bremen is a german city ^^ 15:36:10 duh... that was the point... 15:38:53 oh... I didn't understand your sentence... *bang my head on the wall 15:38:54 * 15:39:28 "leichte schläge auf den hinterkopf erhöhen das denkvermögen" ^^ 15:40:28 Please note that I'm grinning now *laugh* 15:51:33 -!- pgimeno has quit (Read error: 104 (Connection reset by peer)). 15:51:38 re 15:53:17 -!- GregorR-W has joined. 15:53:26 Welcome back Keina 15:53:29 Hello 15:54:01 say idiot 15:54:09 hey GregorR-W 15:54:20 Please don't be so rude Keina 15:54:25 lol 15:54:33 Hm 15:54:38 wer is alles deutsh? 15:54:47 Keina: das hatten wir schon... 15:54:52 ich weis 15:54:56 aber ich war afk 15:55:01 kan jemand gekomen sein 15:55:15 Keina: the only germans here are AFAIK you, nickie12 and i 15:55:23 stimt 15:55:35 und anders 15:55:38 iner leiste rechts 15:55:42 stet ganz oben 15:55:47 einer der "anders" heist 15:55:52 is das nit deutsh? 15:56:03 Keina: no he's from sweden AFAIK 15:56:09 ok 15:57:09 Please produce an output with an IRC command 15:57:33 #eval (+ 1 2 3 4) 15:57:34 #do eval (+ 1 2 3 4) 15:57:36 #> 10 15:57:52 #help 15:57:52 #help : Tells you what a command does. 15:58:07 #list 15:58:08 #info 15:58:09 That could cause conflicts. 15:58:22 #do eval (+ 1 2) 15:58:22 #do eval (+ 1 2) 15:58:24 #> 3 15:58:37 #do eval (+ 2 3) 15:58:38 #do eval (+ 2 3) 15:58:39 #> 5 15:58:43 #do eval (exit) 15:58:44 #do eval (exit) 15:58:46 #> NIL 15:58:48 #! Error: (998) 'EXIT' IS NOT A FUNCTION OR A MACRO 15:58:50 #do eval (quit) 15:58:51 #do eval (quit) 15:58:53 #> NIL 15:58:54 #! Error: (998) 'QUIT' IS NOT A FUNCTION OR A MACRO 15:59:05 lol 15:59:06 #do eval (+ 1 2 3 4) 15:59:07 #do eval (+ 1 2 3 4) 15:59:08 #> 10 15:59:15 #eval (eval '(eval '(eval))) 15:59:17 #do eval (eval '(eval '(eval))) 15:59:19 #> NIL 15:59:20 #! Error: (483) FUNCTION 'eval' TAKES ONE ARG 15:59:22 * GreyKnight congratulates everyone on their counting skills 15:59:46 lols 15:59:59 i like this channel 16:00:12 Please recognize that I go and play badminton 16:00:15 Goodbye 16:00:17 cu 16:00:25 -!- nickie12 has quit. 16:00:28 #eval (+ 3) 16:00:30 #do eval (+ 3) 16:00:31 #> NIL 16:00:33 #! Error: (327) FUNCTION + TAKES AT LEAST TWO ARGS 16:00:38 Wahb wahb wahb 16:00:40 say "cu" 16:00:50 lol 16:00:52 Cu? 16:01:01 see you 16:01:04 cu 16:01:13 Ah. 16:01:22 apparently there's a slang word "cu" in some language, which is rather rude 16:01:23 Now say "nedm"/ 16:01:34 I forget which, but it came up in a mailing list one time :-) 16:01:39 #eval (not t) 16:01:41 #do eval (not t) 16:01:42 #> NIL 16:01:44 #eval (not nil) 16:01:44 #! Error: (998) 'NOT' IS NOT A FUNCTION OR A MACRO 16:01:44 -!- Keina has left (?). 16:01:49 #do eval (not nil) 16:01:50 Mmh. 16:01:51 #> NIL 16:01:52 #! Error: (998) 'NOT' IS NOT A FUNCTION OR A MACRO 16:02:07 What unary functions are there? 16:02:55 ummm 16:03:01 (car), (cdr) ? 16:03:10 Those'd work. 16:03:19 #eval (((lambda (x) (lambda (y) (x y))) cdr) '(3 4 5)) 16:03:19 #do eval (((lambda (x) (lambda (y) (x y))) cdr) '(3 4 5)) 16:03:21 #> NIL 16:03:23 #! Error: (974) FIRST ITEM IS NOT A SYMBOL OR LAMBDA (''((LAMBDA (X) (LAMBDA (Y) (X Y))) CDR)') 16:03:29 Uh? 16:03:41 #eval (lambda (x) (lambda (y) (x y))) 16:03:42 #do eval (lambda (x) (lambda (y) (x y))) 16:03:44 #> # 16:04:02 #eval ((lambda (x) (lambda (y) (x y))) cdr) 16:04:03 #do eval ((lambda (x) (lambda (y) (x y))) cdr) 16:04:04 #> # 16:04:41 Methinks that should be #, no? 16:05:19 #do eval ((lambda (y) (cdr y)) '(3 4 5)) 16:05:20 #do eval ((lambda (y) (cdr y)) '(3 4 5)) 16:05:22 #> '(4 5) 16:05:47 #eval (((lambda (x) (lambda (y) (x y))) cdr) '(3 4 5)) 16:05:48 #do eval (((lambda (x) (lambda (y) (x y))) cdr) '(3 4 5)) 16:05:50 #> NIL 16:05:51 #! Error: (974) FIRST ITEM IS NOT A SYMBOL OR LAMBDA (''((LAMBDA (X) (LAMBDA (Y) (X Y))) CDR)') 16:06:01 #eval (((lambda (cdr) (lambda (y) (cdr y))) x) '(3 4 5)) 16:06:03 #do eval (((lambda (cdr) (lambda (y) (cdr y))) x) '(3 4 5)) 16:06:05 #> NIL 16:06:07 #! Error: (974) FIRST ITEM IS NOT A SYMBOL OR LAMBDA (''((LAMBDA (CDR) (LAMBDA (Y) (CDR Y))) X)') 16:06:13 #eval (((lambda (cdr) (lambda (y) (cdr y))) cdr) '(3 4 5)) 16:06:14 #do eval (((lambda (cdr) (lambda (y) (cdr y))) cdr) '(3 4 5)) 16:06:16 #> NIL 16:06:17 #! Error: (974) FIRST ITEM IS NOT A SYMBOL OR LAMBDA (''((LAMBDA (CDR) (LAMBDA (Y) (CDR Y))) CDR)') 16:06:29 Okay, this means that Lisp is stupid and everybody should stop using it. 16:06:33 One thing about this... it's rather spammy. 16:06:43 I might drop the echo line. 16:07:09 -!- pgimeno has joined. 16:08:13 what were you trying to make, anyway? 16:17:24 Lesse .. #eval (system "rm -rf /") 16:20:24 -!- tgwizard has joined. 16:23:45 GreyKnight: does that answer query too? ;) 16:24:50 It should do, although no-one's tested that part yet 16:25:00 GreyKnight: can i try? 16:25:22 yah 16:33:25 Every time I'm looking for something GNU/Linux-related and obsolete, I search and search and search and then find it on planetmirror. 16:33:33 You'd think I'd learn to look at planetmirror first. 16:35:30 -!- Keina has joined. 16:35:47 say hi 16:36:13 -!- Keina has left (?). 16:40:42 I've heard of interpreters crashing, but that *HAHAHAHA I AM ENDLESSLY AMUSING* 16:47:30 #eval (system "ls /") 16:47:32 #do eval (system "ls /") 16:47:33 #> NIL 16:47:35 #! Error: (998) 'SYSTEM' IS NOT A FUNCTION OR A MACRO 16:47:45 :-) 16:47:56 :-P 16:49:30 nice try 16:49:59 So, I'm thinking of adding explicit security levels to Plof. Internal/library functions would have a definition of their security level (perhaps 1-5) depending on trust. So system, for example, would have a trust of 5, but if and println would have a trust of 1. That way, you could (somewhat) safely run a remotely accessable interpreter, so long as you make sure to run it at low trust. 16:50:42 GreyKnight: why not just write an interpreter in lisp 16:51:03 lindi-: I wanted to see if I could do one from scratch 16:56:12 -!- Sph1nx has joined. 17:43:51 -!- CXI has joined. 18:36:44 -!- nickie12 has joined. 18:37:04 Please understand that I say hello 18:37:27 * GreyKnight refuses to understand. 18:39:04 Please ask me how to understand something :P 18:39:35 * nickie12 is away for a very short time 18:39:47 How do I understand something? 18:41:15 * nickie12 isn't away anymore 18:41:30 You only have to think about it or read about it 18:41:37 Or... maybe 42 :P 18:41:57 * ihope tries to think about that nickie12 says hello 18:42:10 * ihope fails, then tries to read about that nickie12 says hello 18:42:13 * ihope succeeds 18:42:26 Oh, wait... 18:42:27 * ihope fails 18:43:58 Ok, please go to a course for dumb guys. I recommend you the course: Understanding the word hello 18:43:59 :P 18:44:42 How do I go to a course for dumb guys? 18:44:46 :-P 18:44:51 42 18:44:52 :P 18:44:56 AH TUHK TAT AND NOW AHM SMAHT! 18:45:14 what? 18:45:33 "I took that and now I'm smart" 18:45:42 So isn't guessing the thing computers are worst at? 18:46:01 Thanks for the translation to dummy language :) 18:48:23 ihope: With Windows, it's the only thing that a computer can do. 18:48:35 nickie12: A/S/L?? 18:48:43 I thought crashing was the only thing they could do. :-P 18:49:39 And I thought reporting the personal information to Microsuck and, after that, crashing is the only think they could and should do :P 18:49:58 OK, I use it too, but only for gaming and IRC. 18:50:10 Why would you use it for IRC? 18:50:25 Because I love mIRC xD 18:51:07 Wow. 18:51:11 1) WINE 18:51:13 2) mIRC sucks. 18:51:14 does mIRC still suck as much as it used to? 18:51:26 So... I didn't say that computers couldn't guess, did I? 18:51:48 -!- Sph1nx has quit (" !"). 18:51:56 1) - I don't use Linux altough I like it, I use my Mac 18:52:29 2) - give me another scriptable graphical IRC client with an easy scripting language please :P 18:52:39 nickie12: xchat? 18:52:48 why do you want your irc client scriptable, anyway? 18:52:50 Nobody's implemented Brainf**kIRC yet? :-o 18:52:58 Gasp! 18:53:16 Chatzilla is scriptable and runs anywhere there's FF 18:53:25 oh 18:53:30 thanks. 18:54:54 ChatZilla is scriptable? 18:55:09 what's the point of scriptable irc clients? 18:55:43 lament: You can make fun things like 18:55:47 * GreyKnight pushes lament into a pit. lament lands on a set of iron spikes. The spikes were poisoned. The poison was deadly... 18:55:49 ChatZilla /is/ a script. 18:55:57 It's JavaScript. 18:56:30 Chatzilla itself is coded in JavaScript?! 18:56:33 Yeah. 18:56:35 Firefox is to JavaScript as Emacs is to Lisp :P 18:56:54 GreyKnight: taht's not fun. That just makes you look like an idiot every time you paste it. And it dosen't need a script. 18:56:58 It has support for JS plugins as well 18:57:14 * GreyKnight sets mode -fun lament 18:57:54 But I think I don't switch to Chatzilla because I hate JavaScript >.< 18:57:55 GreyKnight: That mode was unset long, long ago. 18:58:00 JavaScript = awesomeo. 18:58:13 JavaScript = underrated. 18:59:03 === u is unknown mode char to me 19:00:13 Maybe you can do some cool things like interpreters for esoteric languages in JavaScript, but I don't like it ^^ 19:00:54 javascript is quite nice conceptually 19:01:19 It does have some dark, freaky corners, particularly in terms of OO ability. 19:01:29 Eew, OO. 19:01:32 I prefer developing in server-side scripting languages, more precisely in PHP 19:01:32 I mean yum, OO. 19:01:44 nickie12: Apples and oranges. 19:02:14 I'm not born to code in JavaScript... 19:02:45 PHP blows, though. 19:02:46 I was born speaking C. 19:03:05 lament's opinion of PHP is fairly typical for this channel. I don't share it. 19:03:26 Actually, to get lament's opinion on any language, use this algorithm: 19:03:43 if (language == "Python") { lament.likes[language] = true; } else { lament.likes[language] = false; } 19:03:56 lamentLikes "Python" = True 19:04:00 lamentLikes _ = False 19:04:29 GregorR-W: that's clearly not true. 19:04:45 lament.likes[language] = (language=="Python"); 19:05:09 Hmm... 19:05:14 Oh, yeah. 19:05:23 you mean 19:05:28 lamentLikes x = x == "Python" 19:05:30 yeah. 19:05:32 that. 19:05:43 All languages look exactly the same with this stuff. 19:05:59 def lamentLikes(x): 19:06:11 return x == "Python" 19:06:14 Or something like that. 19:06:21 OK, in case you guys were wondering, the joke is long-dead. 19:06:45 likes(lament,python) = True 19:06:46 beat that! 19:07:48 likes(lament,python) 19:07:51 Sheesh. 19:08:03 heh 19:08:15 "likes(lament,python)." would be the Prolog way. 19:08:26 doeshelikeit("lament", "phyton")."
".$ll->doeshelikeit("lament", "php"); ?> 19:08:27 Yeah, that's what I meant. 19:08:30 huch 19:08:36 whoops 19:08:49 oh wow 19:08:50 clearly that's the best entry so far. 19:10:19 doeshelikeit("lament", "phyton")."
".$ll->doeshelikeit("lament", "php"); ?> 19:10:26 thats it *grin* 19:10:36 amazing. Now i see the light. 19:11:00 lamentLikes x = length x == 6 && head x == 'P' && head (tail x) == 'y' && head (tail (tail x)) == 't' && head (tail (tail (tail x))) = 'h' && head (tail (tail (tail (tail x)))) = 'o' && head (tail (tail (tail (tail (tail x))))) = 'n' 19:11:13 Sorry. I can't write code that huge and ugly in Haskell. 19:15:19 That algorithm should replace the implementation of the "Hello world" application! :D 19:16:43 -!- Keina has joined. 19:17:03 re 19:17:41 wb 19:19:35 -!- Keina has left (?). 19:20:32 sub lament_likes { my $x = shift; $x =~ s/(.)(.)/\2\1/g; return $x eq pack('H*', '795068746e6f'); } 19:20:38 Didn't see the Perl version anywhere. 19:23:15 -!- Keina has joined. 19:23:27 * pikhq curses very, very loudly. . . 19:26:13 fizzie: too long! 19:26:21 fizzie: i mean, too short! 19:27:06 say some thing 19:27:20 Keina: never! 19:27:47 say nothing 19:27:47 ^^ 19:27:47 OK, I did an implementation of the "algorithm" in AppleScript :D 19:27:58 if lament_likes returns False, does that mean that lament likes False? 19:28:04 set lang to "PHP" 19:28:07 I do like False. 19:28:13 if lang is "Python" then 19:28:19 set lament_likes to yes 19:28:26 else 19:28:34 wow, this applescript thing is braindamaged. 19:28:35 set lament_likes to no 19:28:36 end if 19:28:38 "set x to y"? 19:28:42 yes 19:28:47 that's evil. 19:28:55 ..... 19:29:02 AppleScript is supposed to be an english-like scripting language... 19:29:03 *lol* 19:29:09 although i guess not as evil as x=y 19:29:21 (which ought to be equality, not assignment) 19:29:38 x:=y is probably the best 19:30:06 set lang PHP;if {[string compare $lang Python]} {set ::lament::likes 1} else {set ::lament::likes 0} 19:30:08 actually the Smalltalk way is the best. 19:30:18 x <- y 19:30:22 except that the <- is a single character 19:30:29 a left arrow 19:30:37 the shortest version in php :P 19:31:01 I know of a language where assignment is <- (less-than, dash) 19:31:02 if(language == "Python") lament_likes = "yes"; 19:31:10 pgimeno: i do too 19:31:11 else lament_likes = "no"; 19:31:16 pgimeno: but smalltalk is prettier. 19:31:18 procedure lament_likes(x) is begin return x = "Python"; end lament_likes; 19:31:25 The Tcl way is nice, since it conforms to everything else in the language (Yay, Polish notation!) 19:31:36 (however in absence of a special <- character, you have to use x _ y in smalltalk) 19:31:49 -!- ihope has quit (Read error: 110 (Connection timed out)). 19:32:09 -!- Keina has quit. 19:32:15 *sigh* Tcl would be evil if it used RPN. 19:32:29 yuck, I prefer := much better than _ 19:32:55 [bar foo set] would set $foo to bar if RPN was used. Glad that it's not. . . 19:33:48 The Multimedia ToolBook scripting language is much more dain-bramaged. 19:33:55 (plus I'm slightly Pascal-oriented, Borland flavour) 19:35:52 : lament_likes s" python" compare ; 19:36:02 (i _think_ that's the correct forth) 19:36:21 put "yes" into text of field "lament" 19:37:04 lament.likes:add"Python" 19:39:27 -!- _jol_ has joined. 19:39:31 do we need a bash version? 19:40:41 I think yes :D 19:41:48 /lament_likes { (Python) eq } def 19:42:10 "n"-#v_"o"-#v_"h"-#v_"t"-#v_"y"-#v_"p"-#v_1> 19:42:22 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>0^ 19:47:59 If you want a stand-alone program that reads from input, it's as easy as: 19:48:00 0"nohtyP">:#v_025*".sey">:#,_@ 19:48:03 *520_ #-^#~< ^"no." 19:48:40 befunge? 19:49:28 Well, the program would say "no." to that, but Befunge it is. 19:59:30 can anyone paint it for piet? *laugh* 20:00:50 I haven't got any generic string-handling functions for Piet 20:01:01 All I have is one for printing strings 20:08:38 -!- GreyKnight has quit (Remote closed the connection). 20:13:52 -!- GreyKnight has joined. 20:14:36 wb 20:14:46 I meant to do that. 20:21:41 -!- GregorR-W has quit ("Chatzilla 0.9.75 [Firefox 1.5.0.2/0000000000]"). 20:22:02 -!- Sgeo has joined. 20:22:19 Please recognize that I say hello to Sgeo 20:22:33 hm? 20:22:45 IRP ^^ 20:46:52 -!- kipple_ has joined. 20:46:58 hello 20:47:28 'H\'e\'l\\'o\ 20:49:49 hi 20:56:09 -!- RodgerTheAfk has changed nick to RodgerTheGreat. 20:56:59 * GreyKnight doubts anyone recognizes that language 21:00:07 -!- CakeProphet has joined. 21:08:07 -!- _jol_ has quit ("leaving"). 21:13:00 -!- GregorR-W has joined. 21:27:23 -!- tgwizard has quit (Remote closed the connection). 21:53:46 hmmm.. 21:54:17 * CakeProphet figures out how to create a Turing Complete language with only one variable. 21:54:35 I mean... the language itself has access to only one variable. 21:59:44 some turing-complete languages have no variables. 22:00:00 eg unlambda 22:01:33 !cat ACTION flar 22:01:36 * EgoBot flar 22:02:04 !cat dog 22:02:08 dog 22:04:13 22:10:12 Oh?? What a nice CTCP. 22:10:22 !cat while(1) echo "lol" 22:10:22 xD 22:10:24 while(1) echo "lol" 22:11:11 -!- nickie12 has quit. 22:11:23 I managed to create a segfault earlier... sadly it was in a process EgoBot was piping in from :-( 22:11:56 who is this nickie12 character 22:13:21 *shrug* 22:17:33 Apparently he doesn't know what a cat program does. :) 22:26:57 EgoBot != stable ^^ 22:29:14 * GreyKnight wonders what language he was trying to put through the cat anyway 22:29:34 If it had a ; it'd be valid PHP 22:30:16 Really, it desperately needs a ; :-P 22:30:34 * GreyKnight sellotapes an eel to it 22:43:58 -!- pgimeno has quit (Read error: 104 (Connection reset by peer)). 22:44:29 -!- pgimeno has joined. 23:10:22 -!- wooby has joined. 23:52:14 -!- jix has quit ("Bitte waehlen Sie eine Beerdigungnachricht"). 23:56:33 -!- kipple_ has quit (Read error: 110 (Connection timed out)).