00:00:01 ​#!/usr/bin/env python \ \ import os \ import sys \ import json \ import urllib2 \ \ proxy_handler = urllib2.ProxyHandler({'http': os.environ['http_proxy']}) \ opener = urllib2.build_opener(proxy_handler) \ urllib2.install_opener(opener) \ \ def lose(): \ print 'You get NOTHING! You LOSE! Good DAY sir!' \ sys.exit() 00:00:08 99 repeats a single digit in base 10. 00:00:17 `learn Monads are just monoids in the category of endofunctors. 00:00:19 I knew that. 00:00:23 `run ln -s wisdom/monad{,s} 00:00:24 ln: creating symbolic link `wisdom/monads': File exists 00:00:25 @quote copumpkin lax 00:00:25 copumpkin says: a monad is just a lax functor from a terminal bicategory, duh. fuck that monoid in category of endofunctors shit 00:00:28 `run ln -s wisdom/monad{s,} 00:00:29 No output. 00:00:33 `learn monad 00:00:34 `paste bin/wl 00:00:35 erm 00:00:35 ​/hackenv/bin/learn: line 4: wisdom/monad: No such file or directory \ I knew that. 00:00:35 fuck 00:00:35 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.3547 00:00:41 `? monad 00:00:42 monad? ¯\(°_o)/¯ 00:00:44 `? monads 00:00:45 Monads are just monoids in the category of endofunctors. 00:00:51 `run ln -s wisdom/monad{s,} 00:00:52 ln: creating symbolic link `wisdom/monad': File exists 00:00:52 oh 00:00:53 duh 00:00:56 what does wl do 00:00:57 `run rm wisdom/monad 00:00:58 No output. 00:01:01 `run cd wisdom; ln -s monads monad 00:01:03 No output. 00:01:05 monqy: wikilates 00:01:05 `? monad 00:01:07 Monads are just monoids in the category of endofunctors. 00:01:13 `run mv wisdom foolishness 00:01:14 No output. 00:01:20 `run mv foolishness wisdom 00:01:21 No output. 00:02:07 `run echo $(($(cat /dev/null)+1)) 00:02:09 1 00:02:12 Excellent. 00:02:34 `run mv wisdom elliott 00:02:35 No output. 00:02:39 `run mv elliott wisdom 00:02:40 No output. 00:02:47 You're encouraging botnonsense mode, shachaf. 00:02:58 `? elliott/u 00:03:00 elliott/u? ¯\(°_o)/¯ 00:03:02 -!- augur has joined. 00:03:08 -!- MSleep has changed nick to MDude. 00:03:46 `> u 00:03:47 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: >: not found 00:03:48 `? u 00:03:50 u monad? 00:03:56 `rm -rf wisdom 00:03:57 rm: invalid option -- \ Try `rm --help' for more information. 00:04:04 `run rm -rf wisdom 00:04:05 No output. 00:04:07 No more nonsense. 00:04:14 `help 00:04:14 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 00:04:18 `run while true; do true; done 00:04:30 shachaf: Do you really think you're going to break the bot? 00:04:34 `revert 318 00:04:35 Done. 00:04:45 `revert 321 00:04:45 Done. 00:04:49 No output. 00:04:49 elliott: No. 00:04:55 I just think I'll encourage the nonsense to stop. 00:04:58 By being part of it. 00:05:01 `run mkdir lib 00:05:02 No output. 00:05:05 o.o 00:05:05 The nonsense is over :P 00:05:46 Do you people ever talk about esoteric languages? 00:05:50 Yep 00:05:58 `fetch http://sprunge.us/MYMX 00:05:59 2011-09-15 00:05:59 URL:http://sprunge.us/MYMX [73] -> "MYMX" [1] 00:06:07 ?bf +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++. 00:06:07 [ 00:06:09 `run mv MYMX bin/karma; chmod +x bin/karma 00:06:10 No output. 00:06:14 `? esoteric 00:06:16 Esoteric is an abbreviation for Esoteric Programming Languages as contrasted with Esoteric languages such as lojban and klingon and contrasted with the occult, however those topics may well be compatible with each other .. according to itidus20 00:06:23 `fetch http://sprunge.us/RDIF 00:06:23 2011-09-15 00:06:23 URL:http://sprunge.us/RDIF [155] -> "RDIF" [1] 00:06:28 ok i just wanted to do it once 00:06:31 `run mv RDIF lib/adjustkarma; chmod +x lib/adjustkarma 00:06:33 mv: cannot move `RDIF' to `lib/adjustkarma': No such file or directory \ chmod: cannot access `lib/adjustkarma': No such file or directory 00:06:42 `run mkdir lib; mv RDIF lib/adjustkarma; chmod +x lib/adjustkarma 00:06:44 No output. 00:06:54 `fetch http://sprunge.us/IVaB 00:06:55 2011-09-15 00:06:55 URL:http://sprunge.us/IVaB [35] -> "IVaB" [1] 00:06:58 `fetch http://sprunge.us/RRje 00:06:59 2011-09-15 00:06:59 URL:http://sprunge.us/RRje [35] -> "RRje" [1] 00:07:07 `run mv IVaB bin/'++'; mv RRje bin/'--' 00:07:08 No output. 00:07:10 shachaf: as a newbie here i am not at liberty to make the comments i made 00:07:15 `run chmod +x bin/'++'; chmod +x bin/'--' 00:07:17 No output. 00:07:21 `run mkdir karma; touch karma/.doorstop 00:07:23 No output. 00:07:24 thats why i added "according to" clause :D 00:07:26 `karma shachaf 00:07:27 cat: karma/shachaf: No such file or directory \ shachaf has karma 0. 00:07:32 Ugh 00:07:55 `fetch http://sprunge.us/SUdf 00:07:56 2011-09-15 00:07:56 URL:http://sprunge.us/SUdf [85] -> "SUdf" [1] 00:08:01 `run mv SUdf bin/karma; chmod +x bin/karma 00:08:02 No output. 00:08:11 `fetch http://sprunge.us/jcDD 00:08:12 2011-09-15 00:08:12 URL:http://sprunge.us/jcDD [167] -> "jcDD" [1] 00:08:17 `ls karma 00:08:19 No output. 00:08:19 `run mv jcDD lib/adjustkarma; chmod +x lib/adjustkarma 00:08:20 No output. 00:08:23 `karma shachaf 00:08:24 -!- Sgeo__ has joined. 00:08:24 shachaf has 0 karma. 00:08:26 `-- shachaf 00:08:27 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: shachaf: not found 00:08:32 Gregor? 00:08:41 Think you have a problem with quoting -- there :P 00:08:44 You want to put -- before all the arguments 00:08:47 To denote end of options, etc. 00:08:50 itidus20: What? 00:09:00 nothing 00:09:40 Gregor: BUUUUUUUUUUUUUUUUUUUGS 00:09:55 `run mv bin/'++' bin/karma'+'; mv bin/'--' bin/karma'-' 00:09:56 No output. 00:10:00 `karma- shachaf 00:10:02 `log esperanto 00:10:02 shachaf has -1 karma. 00:10:05 2007-07-13.txt:21:27:58: pikhq: esperanto isn't that good, judging by what i've read about it 00:10:25 Ugh 00:10:27 `forget esoteric 00:10:27 I forgot to case-normalise karma 00:10:28 Forget what? 00:10:51 `forget esoteric 00:10:52 rm: cannot remove `wisdom/esoteric': No such file or directory \ Forget what? 00:10:53 oops 00:10:55 elliott: ... huh? 00:10:56 `log esperanto 00:10:59 2007-05-31.txt:20:28:35: Ne, ne, ne! Lernu Esperanton. 00:11:00 elliott: Oh 00:11:01 Gregor: You handle `-- incorrectly 00:11:06 `karma+ shachaf 00:11:07 `log esperanto 00:11:08 shachaf has 0 karma. 00:11:10 2006-08-26.txt:01:32:32: ihope: Ne. Esperanto. 00:11:13 -!- Sgeo_ has quit (Ping timeout: 260 seconds). 00:11:14 `fetch http://sprunge.us/FPTI 00:11:15 2011-09-15 00:11:15 URL:http://sprunge.us/FPTI [117] -> "FPTI" [1] 00:11:17 `cat bin/karma+ 00:11:17 `fetch http://sprunge.us/RaVh 00:11:18 2011-09-15 00:11:18 URL:http://sprunge.us/RaVh [211] -> "RaVh" [1] 00:11:18 ​#!/bin/sh \ lib/adjustkarma "$1" +1 \ 00:11:23 `run mv FPTI bin/karma; chmod +x bin/karma 00:11:24 No output. 00:11:30 `log esperanto 00:11:31 `run lib/adjustkarma shachaf +1000 00:11:32 `run mv RaVh lib/adjustkarma; chmod +x lib/adjustkarma 00:11:33 shachaf has 1000 karma. 00:11:33 No output. 00:11:34 2008-06-02.txt:15:08:16: I'd tend to say "Esperanto parolas vin", BTW. 00:11:39 `rm karma/shachaf 00:11:40 No output. 00:11:41 `cat RaVh 00:11:43 cat: RaVh: No such file or directory 00:11:46 `ls 00:11:47 bin \ canary \ karma \ lib \ paste \ quotes \ wisdom 00:11:49 shachaf discovers that in an open-world bot it is possible to adjust any data. 00:11:52 No shit, sherlock. 00:12:05 elliott: I wasn't particularly unaware of it beforehand. 00:12:17 elliott: Fixt. 00:12:22 This wasn't exactly a "zomg guys u have a bug!!!!" 00:12:26 :P 00:12:27 `karma itidus20 00:12:29 itidus20 has 0 karma. 00:12:29 Gregor: Thx, not that I want it to be called `-- 00:12:34 Gregor: But speaking of message handlers 00:12:45 `echo 1337 > karma/elliott 00:12:46 1337 > karma/elliott 00:12:46 Gregor: Can you cause any foo++ and foo-- in a message to run bin/karma+ foo or bin/karma- foo 00:12:48 Thanks 00:12:52 `run echo 1337 > karma/elliott 00:12:53 No output. 00:12:58 `rm karma/elliott 00:13:00 No output. 00:13:11 elliott: /just/ foo++, or anywhere in the message? 00:13:36 Gregor: Anywhere in the message. Actually, you probably want to run it as "karma+ blah; karma+ blah; karma- blah" etc., otherwise it'll spam N lines for N karma adjustments. 00:13:49 Gregor: You might want to special-case C++ and C--... but you might not, it's way more fun if you don't :P 00:13:55 Idonno if I like it being anywhere in the message ... 00:13:57 Gregor: Actually just silence the output. 00:14:06 Gregor: That's how the cool bots do it. 00:14:08 @karma Gregor 00:14:09 Gregor has a karma of 1 00:14:09 It's true. 00:14:12 preflex and lambdabot agree thoroughly. 00:14:12 Gregor++ 00:14:14 @karma Gregor 00:14:14 Gregor has a karma of 2 00:14:19 Oh, do it silently. 00:14:22 Silently works. 00:14:23 karma C 00:14:24 C: 174240 00:14:34 @karma c/c 00:14:35 c/c has a karma of 650 00:14:39 X-D 00:14:40 u mad kmc? 00:14:44 `run lib/adjustkarma elliott -100000 00:14:46 elliott has -100000 karma. 00:14:49 Oops, he's in here. 00:14:51 `run lib/adjustkarma elliott -100000000000000000000000000000000000000000000000 00:14:53 elliott has -6450984253743269536 karma. 00:14:53 Lymee: You're not funny, you're just annoying. 00:14:55 `rm karma/elliott 00:14:56 Okey. 00:14:56 No output. 00:15:05 `ls karma 00:15:06 No output. 00:15:07 elliott: That's true of everyone in this channel. 00:15:14 True. 00:16:12 `run echo '#!/bin/sh' >bin/pastekarma; echo 'for thing in karma/*; do' >>bin/pastekarma; echo ' echo "$thing: $(cat "karma/$thing")"' >>bin/pastekarma; echo 'done | paste' >>bin/pastekarma 00:16:13 No output. 00:16:15 `run chmod +x bin/pastekarma 00:16:16 No output. 00:16:17 `pastekarma 00:16:18 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.7337 \ cat: karma/karma/*: No such file or directory 00:16:22 What. 00:16:26 `url bin/pastekarma 00:16:27 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/pastekarma 00:16:32 Oh, hmm. 00:16:38 What's the right way to do it? 00:16:39 I know that 00:16:42 for thing in `echo karma/*`; do 00:16:46 is meant to be a Useless Use of Whatever. 00:16:54 oh hmm 00:17:00 `run for thing; do echo $thing; done 00:17:01 No output. 00:17:04 huh 00:17:15 Oh 00:17:17 That's for argument processing 00:17:37 LOLOLOL at rather idiotic VirtualBox bug 00:17:43 LOLOLOLOLOLOL UMAD 00:18:03 Try to import ovf file, change the name, and the extension of the disk image changes 00:18:04 `fetch http://sprunge.us/FHcN 00:18:04 2011-09-15 00:18:04 URL:http://sprunge.us/FHcN [94] -> "FHcN" [1] 00:18:09 `run mv FHcN bin/pastekarma; chmod +x bin/pastekarma 00:18:11 No output. 00:18:12 `pastekarma 00:18:14 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.27268 00:18:28 `karma- C++ 00:18:30 C++ has 0 karma. 00:18:33 `karma+ foo 00:18:35 foo has 1 karma. 00:18:35 Huh? 00:18:38 `karma+ bar 00:18:40 bar has 1 karma. 00:18:41 It should become minus one. 00:18:42 `pastekarma 00:18:44 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.8129 00:18:46 `karma- C++ 00:18:48 C++ has 0 karma. 00:18:51 Oh 00:18:54 Gregor: Did you implement it? 00:19:02 Might wanna disable it on lines targeted at HackEgo X-D 00:19:13 elliott: Haven't even started :P 00:19:24 `run rm -r karma; mkdir karma; touch karma/.doorstep 00:19:25 Righty then 00:19:25 No output. 00:19:49 Gregor: When you do, it'd be nice if you routed ?foo, where the ? is at the start of the message, to bin/? foo 00:19:55 But yeah, no big deal :P 00:20:01 TIME TO SIT BACK AND RELAX 00:20:05 `log relax 00:20:08 2008-10-29.txt:14:43:05: Relax, sit back. It'll be alright. 00:20:15 me too 00:20:31 shachaf: Botmadness officially over. 00:20:31 `log horror 00:20:34 2007-04-29.txt:02:44:01: horror? 00:20:46 `log horror 00:20:49 2011-08-13.txt:12:50:59: I'm pretty sure CakeProphet: The Musical would be of the horror tradgedy genre 00:20:50 elliott: erm, ? is lambdabot prefix 00:21:04 oerjan: All the better. 00:21:07 `url 00:21:09 http://codu.org/projects/hackbot/fshg/ 00:21:22 Gregor: Whaddya doin' :P 00:21:24 oerjan: btw 00:21:25 `? welcome 00:21:27 Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page 00:21:28 oerjan: the most useful??? 00:21:28 elliott: EVIL 00:21:35 Gregor: I am sceptical 00:21:41 `log evil 00:21:45 2010-10-30.txt:20:37:16: Well, I can't see why you view it as evil. 00:21:57 -!- Jafet has joined. 00:22:03 -!- oerjan has quit (Quit: Good night). 00:22:15 `log evil 00:22:18 2010-11-17.txt:00:41:04: Vorpal: (If I succumb to you and other evil people's wishes, I'll just put a huge gob of extra code in svmg so it can support start scripts that don't leave a process running around, but it will require donations.) 00:23:02 `karma .doorstep 00:23:03 ​.doorstep has karma. 00:23:05 good old doorstep 00:23:08 um 00:23:08 wait 00:23:09 doorstep 00:23:10 its 00:23:12 meant to be doorstop... 00:23:12 elliott: Doesn't look that way. 00:23:17 `run mv karma/.doorstep karma/.doorstop 00:23:19 No output. 00:23:22 shachaf: This isn't botmadness, this is just botusage. 00:23:25 `log happiness 00:23:28 2011-01-22.txt:11:51:53: well someone could be experiencing happiness in your backyard, so you tell them happiness is not allowed in there, and then he says "but the happinessness of my happiness is so overwhelming i can't control it!" and then you say "the happinessnessness your happiness' happinessness is feeling 00:24:29 `echo abcd > karma/test 00:24:31 abcd > karma/test 00:24:32 `karma+ test 00:24:34 test has 1 karma. 00:24:38 `run echo abcd > karma/test 00:24:39 No output. 00:24:41 `karma+ test 00:24:43 test has 1 karma. 00:24:50 `rm karma/tet 00:24:51 `rm karma/test 00:24:51 rm: cannot remove `karma/tet': No such file or directory 00:24:52 No output. 00:30:12 `? shachaf 00:30:14 shachaf mad 00:30:20 Indeed, HackEgo. Indeed. 00:33:25 Gregor: So what were you actually doing :P 00:34:47 `log mad 00:34:50 2009-10-22.txt:07:54:39: I must now reread your previous comments, madbrain, with that in mind 00:35:05 `log \bmad\b 00:35:09 2007-11-21.txt:18:28:58: "The barbarian messenger spoke: "You profane! You are all mad!" Replied Leonidas: "We are mad? WE ARE SPARTA."" 00:35:39 `log doing 00:35:42 2006-10-21.txt:01:11:47: jix: And why do you need an infinite loop that's doing no calculation? 00:35:48 `log \bmad\b 00:35:52 2010-08-03.txt:03:49:52: My dad has been paranoid about mad cow disease 00:36:49 `log eiffel 00:36:52 2008-08-03.txt:19:13:23: tusho: eiffel is from the USA 00:36:55 `log rabies 00:36:58 2010-10-24.txt:18:01:42: Gregor: Also you have rabies. 00:37:16 `log Lymee 00:37:19 2011-09-13.txt:03:16:33: That explains why every time I try to unbreak my system via sysrq nothing happens 00:37:26 `log \b^_^\b 00:37:30 No output. 00:37:35 `log \b\^_\^\b 00:37:39 2008-01-27.txt:21:49:49: -!- Asztal^_^_ has joined #esoteric. 00:37:44 `log \^___\^ 00:37:47 2007-10-24.txt:02:41:29: hum... sounds like useful one ^___^ 00:37:56 `log \b\^_\^\b 00:37:59 2011-09-15.txt:00:37:39: 2008-01-27.txt:21:49:49: -!- Asztal^_^_ has joined #esoteric. 00:38:06 `log \b\^_\^\b 00:38:06 hahahah 00:38:06 `log \b\^_\^\b 00:38:07 `log \b\^_\^\b 00:38:07 `log \b\^_\^\b 00:38:12 2009-05-29.txt:14:26:50: lereah_: O^_^O 00:38:12 2006-08-25.txt:23:57:49: ^_^_^_^_^? 00:38:12 2008-01-27.txt:22:16:37: -!- Asztal^_^_ is now known as Asztal. 00:38:13 2011-09-15.txt:00:37:59: 2011-09-15.txt:00:37:39: 2008-01-27.txt:21:49:49: -!- Asztal^_^_ has joined #esoteric. 00:38:21 `log \^_\^ 00:38:24 2006-01-16.txt:00:59:08: Figured, short lesson ^_^ 00:38:28 `log \^\^ 00:38:30 `log \ \^_\^\ 00:38:31 egrep: Trailing backslash 00:38:32 2008-06-25.txt:11:46:02: its a 10 minutes program ^^ 00:38:33 `log \ \^_\^ 00:38:37 2010-02-01.txt:00:10:40: wouldn't like me use the quadratic formula ^_^ 00:38:43 `log hugs 00:38:46 2009-04-30.txt:18:54:38: * oerjan hugs fungot 00:38:51 `log hugs 00:38:54 2007-03-29.txt:18:31:11: it's that in Hugs at least 00:39:19 ?elliott 00:39:19 `log hugs 00:39:19 Unknown command, try @list 00:39:21 elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things? 00:39:23 2010-10-28.txt:19:34:01: * Gregor hugs HackEgo 00:39:25 ... 00:39:35 elliott: That good idea seems to be a bad idea :P 00:39:36 Gregor: Dude 00:39:38 oerjan just said 00:39:42 that ? was the lambdabot prefix :P 00:39:46 elliott: I've been implementin', not readin' 00:39:50 Gregor: I propose "\w+\?" 00:39:58 >_O 00:39:59 Then people asking "brainfuck?" might actually get a useful result, even :P 00:40:03 COME ON YOU KNOW IT'S THE BEST. 00:40:09 So ... a postfix :P 00:40:11 Yes 00:40:17 `log karma 00:40:18 That ... is wonderful. 00:40:18 It's less spammy than fungot ;D 00:40:21 2009-01-13.txt:05:41:32: <3 job karma 00:40:26 Gregor: ARE YOU BEING SARCASTIC 00:40:43 poop++ 00:40:45 `karma poop 00:40:46 poop has 0 karma. 00:40:54 rip poop domed to krama 00:41:08 `log krama 00:41:11 2011-09-15.txt:00:41:08: `log krama 00:41:54 elliott: The only problem is that it would give output for all one-word questions, at least in the simplest mode :P 00:42:00 Gregor: That's the POINT :P 00:42:01 `log gobshite 00:42:04 brainfuck? 00:42:04 2011-09-15.txt:00:42:01: `log gobshite 00:42:08 Brainfuck HAS ENOUGH DERIVATIVES 00:42:13 what? 00:42:13 elliott: Gobbledywtflol? 00:42:16 [something witty] 00:42:17 Or "what?" 00:42:23 `log cuddles 00:42:24 Gregor: What? 00:42:25 2009-07-01.txt:00:53:25: * Zuu cuddles ehird ^^ 00:42:28 Gregor: You have ceased to make sense :P 00:42:51 There is literally no way that answering to all one-word questions is the wrong decision... especially since come on they aren't THAT common. 00:42:55 You can make an exception for "what" :P 00:42:58 lol 00:42:59 ?karma poop 00:42:59 poop has a karma of 1 00:43:01 Huh? 00:43:07 ? 00:43:13 ¿Qué? 00:43:15 ? 00:43:17 Oh :P 00:43:21 `log poop 00:43:22 lol? 00:43:23 Gregor: OK fine, huh and what get exceptions :P 00:43:24 2006-10-14.txt:22:29:02: Of course, every other girl loves biology. I mean, who doesen't find pooping, mating, sleeping, and eating interesting? 00:43:28 "lol?" is hardly common. 00:43:30 Why? 00:43:33 OK 00:43:34 huh 00:43:34 what 00:43:35 and 00:43:35 what 00:43:36 erm 00:43:46 Gregor: huh, what, why, when, who, whom, where 00:43:46 Who? 00:43:48 Or is it whom? 00:43:49 THERE 00:43:50 Aw damn :P 00:44:00 THOSE EXCEPTIONS NONE OTHER 00:44:42 my tendencies will trigger the bot a lot, but I do not care 00:45:04 Gregor: And then just make it not say anything if the exit code is one 00:45:04 `log whom 00:45:08 2010-12-21.txt:20:05:08: "Noun, sense 1. An affectionate synonym for 'vagina'. See also gash. Noun, sense 2. Someone with whom you basically just get drunk and/or high and have sex, usually on a short term basis. Compare to "your girl" or "a ho", both are higher on the intimacy ladder." (Urban Dictionary.) 00:45:14 Gregor: To avoid it going HUH WHAT to anything it doesn't know about. :P 00:45:23 If you can't check exit code 00:45:24 `? jfkljlsdfjksdf 00:45:26 jfkljlsdfjksdf? ¯\(°_o)/¯ 00:45:30 just grep for the helpful i dunno lol. 00:46:47 shachaf? 00:46:51 (This is my implementation test.) 00:47:30 http://i.imgur.com/WNTDy.png 00:47:58 Wasn't that on /r/,inecraft like a year ago :P 00:48:00 s/,/m/ 00:55:34 i found it in the log. fizzie was describing the word notch 00:56:10 fizzie. 00:59:50 elliott: ? 00:59:51 * shachaf return 01:00:02 -!- sllide has joined. 01:00:28 shachaf: Yes. 01:00:35 shachaf? 01:00:39 Gregor: I mad. 01:01:54 * shachaf isn't sure what's going on. 01:03:09 shachaf: I mad. 01:03:25 u mad? 01:04:17 elliott: ... bro? 01:04:19 :P 01:04:22 Gregor: Bro. 01:04:24 shachaf? 01:04:26 Gregor: Madness remains. 01:04:35 Yeah, I'mma not deal with that today :P 01:04:38 'cuz lazy 01:04:48 `log u mad 01:04:51 2010-12-06.txt:17:44:08: some of those can't happen with the usage used in cat, e.g. EPIPE wouldn't happen as you use the default SIGPIPE handler, EINVAL wouldn't happen if you made sure you used valid arguments 01:04:56 `log \bu mad 01:04:59 2010-12-27.txt:17:25:49: elliott: u mad 01:05:00 Bu mad. 01:05:03 Ugh. 01:05:07 `log \bu mad 01:05:10 2011-09-15.txt:00:14:40: u mad kmc? 01:05:10 This time give me a non-horrible person. 01:05:15 No. 01:05:17 I said non-horrible. 01:05:19 `log \bu mad 01:05:22 2011-09-14.txt:23:31:27: `learn shachaf heard u mad, so i put all the things in your things so u can mad while u mad? 01:05:26 Ah. 01:05:28 There we go. 01:05:37 Stop highlighting kmc's name. 01:05:41 He did nothing to deserve this. 01:05:42 Oops. 01:06:06 Sorry kmc. 01:07:46 http://ko.wikipedia.org/wiki/HQ9%2B 01:08:56 exceedingly notable 01:09:00 david morgan-mar 01:09:01 erm 01:09:03 davia morgan-mar 01:10:14 http://ru.wikipedia.org/wiki/Feckfeck 01:10:36 `log arse 01:10:39 2010-03-07.txt:11:42:25: olsner, the use case is async threaded funge. And specifically it's funge space. Assuming we have (part of it) implemented as a static non-sparse array, and the rest of it as a tree structure or hash table, then it should be possible I think to only require locking for the the non-static part 01:11:09 feckfeck is notable in russia 01:12:27 and in discussion "Why do I write this article, if it did not understand? Wikipedia - the free encyclopedia, not a handbook for kulturschiny. Either be normal people, and make a story that she was for all, or be assholes, and mess up or delete the article." 01:14:05 `log 01:14:06 2004-06-24.txt:06:22:05: -!- deltab has quit (sterling.freenode.net irc.freenode.net). 01:14:11 `log 01:14:13 2007-02-04.txt:14:05:02: -!- ihope_ has joined #esoteric. 01:14:22 `log 01:14:23 2007-07-15.txt:02:32:03: or linguine! 01:14:57 `log 01:14:59 2010-11-21.txt:20:34:24: Phantom_Hoover: so? 01:15:16 `log 01:15:17 2009-04-12.txt:00:33:15: WHAT IS LOVE 01:15:27 tru 01:16:21 `quote 01:16:22 612) ANOTHER THUNDERSTORM, INDIANA? That's three today. Gregor: It FEELS like it should be a really simple fix :P 01:18:51 `log 01:18:52 2010-08-06.txt:17:45:55: cpressey: In that it doesn't do deep sequencing? 01:20:08 `log Obey Newton's laws or face elongation 01:20:11 2007-08-12.txt:00:05:15: Obey Newton's laws or face elongation! 01:22:19 Ooh yeah, sequence me deep. 01:32:29 `log 01:32:31 2009-09-09.txt:23:08:43: ah, out of memory 01:32:33 `log 01:32:35 2007-03-08.txt:19:32:27: -!- ShadowHntr has joined #esoteric. 01:32:37 -!- sllide has quit (Read error: Connection reset by peer). 01:32:43 ?Gregor 01:32:43 Unknown command, try @list 01:32:49 Gregor: You removed it D: 01:34:10 'course I did :P 01:34:28 `rm bin/.bashrc 01:34:30 No output. 01:34:41 `wl en poop 01:34:44 Traceback (most recent call last): \ File "/hackenv/bin/wl", line 52, in \ q = query(continue_id) \ File "/hackenv/bin/wl", line 44, in query \ response = urllib2.urlopen(url).read() \ File "/opt/python27/lib/python2.7/urllib2.py", line 126, in urlopen \ return _opener.open(url, data, 01:34:49 lol 01:34:51 Gregor what did you do 01:35:07 `wl io Herono 01:35:10 Traceback (most recent call last): \ File "/hackenv/bin/wl", line 52, in \ q = query(continue_id) \ File "/hackenv/bin/wl", line 44, in query \ response = urllib2.urlopen(url).read() \ File "/opt/python27/lib/python2.7/urllib2.py", line 126, in urlopen \ return _opener.open(url, data, 01:35:17 Gregor.....fix it.... 01:35:26 elliott: Waaaaaaaaah 01:35:52 it...worked....before... 01:35:53 you... 01:35:54 BROKE 01:35:54 IT 01:35:57 .:((((((((((((((99 01:39:09 -!- zzo38 has joined. 01:39:28 Tart is designed to be easy to learn, but its also designed to be “expert-friendly”. Like a musical instrument, Tart enables a true master to create “virtuoso performances” of excellence and creative power. 01:39:33 ahahahahahah 01:40:06 elliott: ? 01:40:32 Gregor: ? 01:40:44 elliott: ‽ 01:40:51 Gregor: ‽ 01:41:10 whats tart is it a progragmeing langauge 01:41:14 is it baAaad 01:41:42 monqy put that much better than I could have. 01:41:45 im comment only on that paragraph 01:41:49 but http://code.google.com/p/tart/ 01:42:19 it was a good paragraph 01:42:21 zzo38: Can you write a one-line biography of yourself? 01:43:17 zzo38: And furthermore can you assure that that one-line biography begins with "zzo38 ", then prefix "`learn " to it and write that to the channel? :P 01:43:54 elliot, Gregor: I don't know. I don't think so, though. 01:44:12 If you don't write one, you'll get an even worse one than you'd write, written by me. 01:44:18 And that would be awful. 01:45:10 `learn augur took forty cakes. He took 40 cakes. That's as many as four tens. And that's terrible. 01:45:12 I knew that. 01:45:56 `forget augur 01:45:58 Forget what? 01:46:02 Gregor you are so irresponsible. 01:46:11 :( 01:47:02 So 01:47:03 Irresponsible 01:47:08 :'( 01:47:28 Gregor: :| 01:47:34 i took no cakes 01:48:17 LIES 01:48:56 `learn augur took no cakes. 01:48:57 I knew that. 01:49:06 lol 01:49:13 hows `learn work 01:49:16 what does `learn do 01:49:23 `? augur 01:49:24 augur took no cakes. 01:49:38 `? elliott 01:49:39 elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things? 01:49:44 * Sgeo__ is bored and wants to use VirtualBox for something fun 01:49:46 oh right that entry 01:49:48 `? sgeo 01:49:50 sgeo? ¯\(°_o)/¯ 01:49:57 `? itidus20 01:49:58 itidus20? ¯\(°_o)/¯ 01:50:12 `learn add Sgeo hi 01:50:14 I knew that. 01:50:17 ..? 01:50:21 `? Sgeo 01:50:22 Sgeo? ¯\(°_o)/¯ 01:50:23 `? HackEgo 01:50:24 `? add 01:50:25 HackEgo, also known as HackBot, is a bot that runs arbitrary commands on Unix. See `help for info on using it. You should totally try to hax0r it! Make sure you imagine it's running as root with no sandboxing. 01:50:26 add Sgeo hi 01:50:45 lets just leave that there 01:51:42 Sgeo__: What on earth made you think that was the syntax 01:51:52 `karma- Sgeo 01:51:54 Sgeo has 0 karma. 01:51:57 GAH 01:51:58 `karma- Sgeo 01:52:00 Sgeo has 0 karma. 01:52:01 Having vague recollections of Rodney 01:52:02 I must fix that :P 01:52:12 `cat bin/karma- 01:52:13 ​#!/bin/sh \ lib/adjustkarma "$1" -1 \ 01:52:22 `cat lib/adjustkarma 01:52:24 ​#!/bin/sh \ thing=$(echo "$1" | tr A-Z a-z) \ newkarma=$(($(cat "karma/$thing" 2>/dev/null) $2)) \ if [ $newkarma -eq 0 ]; then \ rm "karma/$thing" 2>/dev/null \ else \ echo $newkarma >"karma/$thing" \ fi \ karma "$1" \ 01:52:28 Hey Gregor, fix it 01:52:40 `learn will demonstrate to sgeo the syntax. 01:52:42 I knew that. 01:52:42 `run echo $(($(cat /dev/null) -1)) 01:52:43 ​-1 01:52:45 `? will 01:52:46 will demonstrate to sgeo the syntax. 01:52:49 `forget will 01:52:51 Forget what? 01:53:06 Oh hmm 01:53:06 itidus20, it wasn't exactly hard to figure out after `? add 01:53:16 `run [ -1 -eq 0 ]; echo $? 01:53:18 1 01:53:23 Hmm 01:53:27 `cat karma/Sgeo 01:53:28 cat: karma/Sgeo: No such file or directory 01:53:29 `cat karma/sgeo 01:53:30 ​-2 01:53:33 `learn easy is figuring out the syntax of the learn command. 01:53:34 `karma+ sgeo 01:53:34 I knew that. 01:53:35 shrug 01:53:36 sgeo has -1 karma. 01:53:43 `forget easy 01:53:45 Forget what? 01:53:53 `ls karma 01:53:54 -!- augur has quit (Remote host closed the connection). 01:53:54 sgeo 01:53:59 `ls wisdom 01:54:01 add \ augur \ c \ elliott \ everyone \ finland \ friendship \ gregor \ hackego \ haskell \ intercal \ monad \ monads \ monqy \ oerjan \ qdb \ qdbformat \ shachaf \ u \ vorpal \ welcome \ wiki 01:54:06 `run echo what > karma/monqy 01:54:07 No output. 01:54:09 `karma monqy 01:54:10 monqy has what karma. 01:54:15 `rm karma/monqy 01:54:16 No output. 01:54:44 `? everyone 01:54:45 Everyone in here is mad. 01:54:48 `run echo stolen elliotts karma >> karma/sgeo 01:54:49 No output. 01:54:55 `karma sgeo 01:54:56 sgeo has -1 \ stolen elliotts karma karma. 01:55:10 derp 01:55:15 `forget everyone 01:55:16 Forget what? 01:55:37 `cat wisom/shachaf 01:55:38 cat: wisom/shachaf: No such file or directory 01:55:43 Wow 01:55:44 wisom 01:55:53 `rm karma/sgeo 01:55:55 No output. 01:56:00 `karma- sgeo 01:56:01 Woo! 0 karma again! 01:56:01 Gregor: Wow what 01:56:01 sgeo has -1 karma. 01:56:02 Damgit 01:56:12 `learn Everyone in here is mad. 01:56:13 I knew that. 01:57:02 `learn ievan is basically http://www.youtube.com/watch?v=4om1rQKPijI 01:57:04 I knew that. 01:57:20 Can we mark all entries itidus20 adds somehow? 01:57:29 sorry 01:57:37 i can just not add entries 01:57:42 i can do that 01:57:54 i have the self control 01:58:09 itidus20, thank you for that video 01:58:20 Sgeo__: what 01:58:23 itidus20: no they are good entries 01:58:26 they just need marking or something 01:58:52 they're not meant to be good really 01:58:52 * Sgeo__ wonders where that old video went 01:59:50 `log itidus `learn 01:59:53 2011-09-15.txt:01:59:50: `log itidus `learn 02:00:07 ok.. closer.. 02:00:20 `log `learn 02:00:23 2011-09-15.txt:01:52:40: `learn will demonstrate to sgeo the syntax. 02:00:29 `log `learn 02:00:32 2011-09-15.txt:01:57:02: `learn ievan is basically http://www.youtube.com/watch?v=4om1rQKPijI 02:00:34 `log `learn 02:00:37 2011-09-15.txt:02:00:29: `log `learn 02:00:39 `log `learn 02:00:40 -!- Jafet has quit (Quit: Leaving.). 02:00:42 2011-09-15.txt:02:00:39: `log `learn 02:00:44 `log `learn 02:00:48 2011-09-14.txt:23:01:30: `learn Esoteric is an abbreviation for Esoteric Programming Languages as contrasted with Esoteric languages such as lojban and klingon and contrasted with the occult, however those topics may well be compatible with each other .. according to itidus20 02:00:59 `log `learn 02:01:02 2011-09-15.txt:02:00:44: `log `learn 02:01:05 `log `learn 02:01:08 2011-09-15.txt:02:00:39: `log `learn 02:01:24 `pastelogs `learn 02:01:28 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.8173 02:01:54 but 'everyone' was someone elses words 02:02:56 i forgot esoteric because of: 02:03:02 `pastelogs esperanto 02:03:06 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.19927 02:05:37 `log friend 02:05:40 2011-09-13.txt:20:28:48: One of my friends lives there 02:06:22 -!- Jafet has joined. 02:07:06 i don't know why i even made that post 02:08:35 `run mv canary pigeon 02:08:36 No output. 02:13:26 i wonder if foreign music is more enjoyable _because_ of not knowing what the words mean 02:15:32 itidus20: I can tell you that English opera is about the worst thing. 02:15:38 itidus20: But also that Italians like Italian opera. 02:15:38 s/English // 02:15:46 Sooooooooo I think that English is just terrible. 02:15:53 yeah 02:16:07 and the language is terrible too 02:17:18 it's this new english that's the problem 02:17:24 have you heard french? now there's a language made of poop 02:17:39 american english is beautiful 02:18:12 hmm 02:19:03 italian is nice enough 02:19:40 theres definitely politics in languages 02:21:22 -!- augur has joined. 02:21:34 like a history told through where parts of the language have been borrowed or stolen 02:31:56 oklopol: one line biography of you plz 02:32:41 \n 02:32:48 pikhq: YOU TOO 02:33:07 no pikhq is uninteresting only oklopol needs biographising 02:33:19 `learn pikhq took forty cakes. He took 40 cakes. That's as many as four tens. And that's terrible. 02:33:21 I knew that. 02:33:31 :D 02:33:41 `forget pikhq 02:33:42 Forget what? 02:33:44 * pikhq takes forty cakes. 02:33:46 `learn Gregor took forty cakes. He took 40 cakes. That's as many as four tens. And that's terrible. 02:33:48 I knew that. 02:33:56 * Sgeo__ ponders doing the Maybe monad in .NET via reflection 02:33:57 >.> 02:33:57 I find this 100% acceptable. 02:34:02 I'm taking 40 cakes. That's as many as four tens. And that's terrible. 02:34:06 Or, well, not sure if it would actually be nice and monadic 02:35:30 pikhq: Sorry, he erased that TRUISM from history. 02:35:52 oklopol 02:35:52 biographise 02:36:44 as if i'd write my own biography 02:37:27 now that would just be douchy. i'm gonna pay someone to do it for me. 02:37:31 `learn oklopol okokoko okloklokoko kokoko oko kook 02:37:32 I knew that. 02:37:57 Gregor: how much do you charge? 02:38:11 oklopol: Sexual favors are my only accepted form of payment. 02:38:27 Gregor: i'll get back to you later 02:38:28 `learn oklopol is one of the two citizens of Finland. He doesn't drive the bus. 02:38:30 I knew that. 02:39:03 http://gbracha.blogspot.com/2011/01/maybe-monads-might-not-matter.html I'm starting to wonder if I should lose a bit of faith in Bracha 02:39:41 he doesn't even mention burritos! 02:39:43 Or I should just read his replies to the criticism instead 02:40:34 "The most important practical contribution of monads in programming is, I believe, the fact that they provide a mechanism to interface pure functional programming to the impure dysfunctional world." 02:40:35 ahahaha 02:41:31 When criticised for that in the comments, he re-emphasizes practical 02:42:02 if you think that makes that statement make any more sense 02:42:08 then you're as ignorant as him 02:43:12 wow, lot of high-profile folks in the comments telling him he's wrong there 02:43:30 sigfpe, tony morris, someone who i assume is lennart augustsson 02:43:48 Funny, I always felt that monadic IO was almost tangential to the niceness of the abstraction. 02:43:56 kmett... it's like #haskell descended at once :D 02:44:12 oh i suspect chris smith is cdsmith 02:44:27 i had a dream that i showered. now i have to shower again. 02:44:30 fuck 02:44:51 Carl said... 02:44:51 Some researchers put forth the thesis that monads could help with concurrency. At this point, it looks like their thesis has failed. 02:44:51 The Actor model (e.g. see ActorScript(TM) extension of C sharp (TM), Java(TM), and Objective C(TM)) is a better foundation for concurrency than monads. 02:44:52 (TM) 02:44:55 (TM) (TM) (TM) 02:45:31 What the what? 02:45:47 ™™™™™™™ 02:45:48 (TM) 02:45:49 (TM) (TM) (TM) 02:45:49 I'm pretty sure actors are monadic. 02:46:01 but that is irrelevant, they say 02:46:19 Actors™ are Mo®onic. 02:46:30 This is the first I'm learning of an actor-monad connection 02:46:32 I don't get it 02:46:51 it starts like this: Actors like burritos ... 02:47:06 Actors honestly have to be the stupidest idea in computing yet. 02:47:08 Stupider than objects. 02:47:24 It takes something special to reinvent functions and claim they solve concurrency. 02:47:40 no, that's Agents 02:47:44 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 02:48:17 aspect: Well, OK, CS. 02:49:18 ok I'll give you that 02:49:35 "the stupidest idea in CS" is a pretty high accolade though 02:50:04 it's not as though the field has experienced a shortage of stupid ideas for the past 30 years 02:51:41 -!- DH____ has quit (Read error: Connection reset by peer). 02:52:18 aspect: Well, OK, stupidest idea that more than a hundred people have taken really seriously. :p 02:52:35 Can I not even make bold statements on IRC without being challenged any more?!?!?! 02:52:48 See: STM 02:53:21 Gregor: What's that meant to mean :P 02:53:37 STM is a reinvention of functions? 02:54:00 No 02:54:10 STM is also way up there for worst possible ideas :P 02:54:21 Whyso 02:54:36 -!- Jafet has quit (Quit: Leaving.). 02:54:42 Obviously it doesn't work very well in languages with mutability and the like, but in functional languages it works pretty great for shared-state concurrency 02:55:18 Certainly it seems to work fine for most people in Haskell 02:57:46 Gregor: I see :P 02:58:13 * Gregor reappears. 02:58:35 ok i see what i need to research next] 02:58:49 So, it only works in places that get around the fact that it's hilariously, untenably slow by not using it much :P 02:59:16 Historically, some mathematicians can be regarded as having foreseen and come close to a modern formulation of the concept of function. Among them is Oresme (13231382) . . . In his theory, some general ideas about independent and dependent variable quantities seem to be present. 02:59:20 Gregor: What makes you say it slow; I know the worst-case is pretty bad, but to my knowledge GHC's implementation performs pretty great in practice 02:59:33 And people use algorithms with terrible worst-cases all day with no problems 02:59:47 s/it/it's/ 03:00:21 As a mathematical term, "function" was coined by Gottfried Leibniz, .. ok so thats the etymology 03:02:35 i can see this is not something wikipedia will answer for me 03:04:31 Gregor: Hokay :P 03:06:01 "Descartes (1596-1650) clearly stated that an equation in two variables, geometrically represented by a curve, indicates a dependence between variable quantities." good for him, the showoff 03:07:33 Gregor's IRC client uses STM, that's why his typing is so slow. 03:07:57 How do I misread a book that badly? Failing to notice that a character was in her bedroom, and thinking she fell asleep on the bus 03:09:58 Why do these C students think that if they just email us the code for their homework, we'll fix it for them and send it back >_< 03:09:59 WHYYYY 03:10:25 Gregor: Should I stop waiting for a reply? :p 03:10:30 Now then, elliott: The "best case" for STM is not accessing any shared state, in which case it's effectively free, but the overhead of accessing any state at all is huge (it has to log everything) 03:11:02 Sure, it has to log it, that's kind of the whole point. That's very different from a demonstration that STM is slow in practice. 03:11:15 Oy vey. 03:11:33 OK, let me go drag out a giant friggin' benchmark suite and compare it to hell knows what :P 03:11:36 Plenty of things "sound" slow but work just fine in practice. 03:12:09 But seriously, if STM was fundamentally unworkably slow, I think all the people working on and using GHC STM over the years would have noticed :P 03:12:40 So, show me the Haskell benchmarks where they implemented something (non-stupidly) with locks and with STM, and STM was faster *shrugs* 03:12:53 (Obviously you could serialize everything and go "Look! STM is faster!") 03:13:06 Dunno of any; if I were the snarky type, I would say that everyone was too busy using them to bother :P 03:13:13 Gregor: But no, I never claimed STM was faster than locking. 03:13:19 so it seems to me a nand gate could be implemented by defining 1 as a closed valve, and 0 as an open valve 03:13:44 err wait no that doesn't 03:13:52 d'oh 03:14:06 elliott: In every benchmark in languages that you have invalidated for having too much shared state anyway (a valid concern), the overhead has been lolhuge. 03:14:08 actually yeah 03:14:28 Gregor: I don't consider locking concurrency to even be an option, it's just not a viable way to program. Certainly a locking program will generally be faster in general, but it's about balancing "humans can actually use this shit" and "it performs well". 03:14:48 Gregor: And yeah, that's the exact reason I discounted languages with traditional state models :P 03:15:53 I haven't used STM myself so certainly I'm not gonna claim to be any kind of expert. 03:16:08 But that being said, STM for Haskell isn't fundamentally different from STM for anything else except insofar as Haskell has so little state that you'd barely touch the STM. Which is to say, you may very well be getting 500% slowdown but never know it because that 500% is in the 2% of code that actually touches state. That is, until you run it on 100 cores. 03:16:09 But certainly lots of things on Hackage use STM and I haven't seen any whining about it. 03:16:33 Gregor: "Haskell has so little state" -- well this is bullshit. 03:16:39 *shared state 03:16:55 Yes, but the WHOLE POINT of STM is to manage shared state :P 03:17:02 Like, if you have unnecessary shared state in another language... that's just a bug. 03:17:11 The amount of state you need to share is independent of language. 03:17:18 In other languages, you have state that it doesn't know is not shared. 03:17:24 So it has to log it, 'cuz wtf does it know. 03:17:35 -!- copumpkin has joined. 03:17:40 (As a slight generalization :P ) 03:18:00 Gregor: So what you're saying is, "if your program is entirely made out of modifications to a huge gob of shared state, STM will be slower than locks". 03:18:19 But seriously, how many programs are like that? 03:18:24 And how many of them actually benefit from concurrency? 03:18:28 Why are you so fucking argh 03:18:30 The kind of locking you'd have to do anyway would be hellish. 03:18:38 No, what I'm saying is, if STM considers your heap to be shared state, which it usually does, then STM will have to log all sorts of ridiculous shit. 03:19:05 But since it DOESN'T in Haskell, due to the nature of state being so defined there anyway, it can get away with much more cleverness. 03:19:06 Yeah, well, that's just a criticism of implementing STM idiotically. 03:19:17 What I was trying to say is -- 03:19:24 HOWEVER even that cleverness won't help you when you get to enough cores that that sharing is all bunched together again. 03:19:27 "STM is slow but maybe it doesn't show up because you don't have much shared state." 03:19:46 is an entirely worthless comment, since it doesn't matter how slow it is to run a bajillion STM operations if you don't NEED a bajillion STM operations. 03:19:49 Yes, that's what I'm saying, but with the giant friggin' caveat that how much it shows up scales with the number of cores. 03:20:20 Gregor: I kind of have my doubts that locks will scale up to a hundred cores either... 03:20:44 Once your computation is made trivial by the amount of iron you have, by definition you're spending all your time doing busywork bookeeping. 03:20:50 s/bookeeping/bookkeeping/ 03:21:57 -!- MDude has changed nick to MSleep. 03:22:28 STM works under the assumption that conflicts are rare. When conflicts occur, sadness (very bad performance and serialized execution) happens. As you scale up your cores, your chance of conflicts scales up, but the amount of time to fix a conflict does not scale down. 03:22:54 Eventually you're at 100% conflicts, and sequentializing everything, because you have too many cores. 03:22:57 Gregor: Locks work under the assumption that conflicts are rare. When conflicts occur, sadness happens. Blah blah blah. 03:23:03 I mean, sure, I agree. 03:23:03 Wrong. 03:23:18 The sadness of lock contention at least scales considerably better. 03:23:51 Classically, when STM conflicts occur, it retries. But this causes livelock in approximately 100% of all systems ever. So instead, when conflicts occur, it explicitly sequentializes them. 03:23:51 This is basically just the "worst case O(n), real-world n=not many" thing again :P 03:24:09 I think GHC actually retries. 03:24:12 Don't quote me on that. 03:24:27 Oh, so even better, as cores scales up, chances of livelock approaches 100% :P 03:24:49 Pretty sure someone will have thought about that at some point in time :P 03:25:01 Yes, they have. That's why they sequentialize when things fail. 03:25:09 I mean someone=GHC developers. 03:25:27 OK, then it sequentializes when things fail :P. Maybe not on first failure, but eventually. 03:25:46 Well, I'm definitely not gonna claim STM scales to a hundred cores. 03:25:50 But I don't think locks will either. 03:26:12 I don't know what will. But I'm also gonna claim that most concurrent programs are not run on a hundred cores today, or within four years :P 03:26:20 " so it seems to me a nand gate could be implemented by defining 1 as a closed valve, and 0 as an open valve" i drew a picture http://oi51.tinypic.com/315zlp2.jpg 03:26:23 Welllllll, my belief is that our current status w.r.t. concurrency is "we're so fucked" 03:26:46 However, the speedup curve of locks should at least be monotonic. 03:26:59 Just ... plateauy. 03:27:01 Gregor: Yeah, but humans can't program lock-based systems, so it's kind of irrelevant. 03:27:18 I mean, we can sometimes make it work now, but when you actually have a hundred cores going, our chances of getting it right are approximately 0. 03:27:25 That's also true :) 03:27:44 OK, I'll revise my former statement as such: 03:27:47 See: concurrency 03:27:52 Hahaha *stabs self* 03:28:03 I concur :P 03:29:29 Here's a wild, unjustified prediction: RAM is getting really cheap. Soon, our computers will have so much RAM that the best concurrency strategy involves treating the computer like a mini-internet, and just having each thread keep its own copy of the state, with explicit "database server" threads handling merging of state whenever an outside entity wants to query the current relevant state. 03:29:29 what wirth failed to understand in his comment the other day is that things operate on multiple levels 03:29:38 order can operate above a level of chaos 03:30:02 That obviously doesn't work when you have a bunch of threads reading the writes of other threads as they happen, but I don't think that's a very common situation. Also this is a wild, unjustified prediction, so I don't have to care about that. 03:30:09 software operates on hardware 03:30:17 elliott: Sooooooooooooo ... ACTORS? 03:30:20 stateless operates above state 03:30:34 Gregor: Har har har :P 03:30:51 Gregor: It's... not quite the same thing. I mean, sure, you could implement that with actors. 03:31:04 But the point is that on some level shared state fundamentally doesn't scale. 03:31:30 But the internet does seems to scale, and it's based on tons of systems with their own private state that synchronise it explicitly when necessary. 03:31:33 A level described by Amdahl :P 03:31:45 The Internet is not a computation. 03:31:50 i am of course thinking of the tcp stack 03:31:54 (I'm gonna regret saying that) 03:31:58 Gregor: It's a substrate on which plenty of computations take place. 03:32:02 So are operating systems. 03:32:04 Gregor: maybe it is? 03:32:11 :)) 03:32:27 Gregor: The basic problem with all this is that you end up with literally thousands of copies of the same basic state with only small parts changed :P 03:32:32 says aloud "no how can it be" 03:32:39 And you can't make it copy-on-write, because that reintroduces ALL THE SAME LOCKING PROBLEMS that you just got rid of. 03:32:47 (OR DOES IT???? Yeah it probably does.) 03:33:04 Naw, it has considerably less locking problems, but is also nasty. 03:33:08 But hey, if you have a hundred gigs of ram, maybe it all works out. 03:33:13 God I hope it does. 03:33:25 Gregor: OK, here's an idea. 03:33:30 How about we all switch to smartphones with one core. 03:33:35 And forget threads ever existed. 03:33:39 Let's just... pretend. 03:33:43 SOUNDS GOOD 03:33:47 what about positioning stateless programming in the computer architecture? 03:33:53 THEN IT'S SORTED 03:33:56 itidus20: Reduceron 03:34:01 Reduceron reduceron reduceron reduceron 03:34:35 i think by the time you get to 4th generation apps like sql (?) the path is lost 03:34:43 but maybe it fits in somewhere 03:35:25 hehdiuewhudiehwui 03:35:35 Gregor: Wow I hate you, I had gone whole days without thinking about concurrency. 03:35:38 what do i know.. that topic is too hard 03:36:17 elliott: what about minecraft being played by the elderly 03:36:21 so i hear these blogs are getting popular, people like writing about their lives and shit. on this thing called the internet which is like a neural network only really stupid. 03:36:25 itidus20: wat 03:36:27 elliott: TEEHEE 03:36:43 its an attempt to distract you 03:36:58 i tried too 03:37:07 ?learn oklopol "so i hear these blogs are getting popular, people like writing about their lives and shit. on this thing called the internet which is like a neural network only really stupid." 03:37:07 http://www.haskell.org/learning.html 03:37:08 this was all too complicated for me 03:37:09 horny 60 year olds having cybersex in minecraft 03:37:12 `learn oklopol "so i hear these blogs are getting popular, people like writing about their lives and shit. on this thing called the internet which is like a neural network only really stupid." 03:37:14 I knew that. 03:37:19 `? itidus20 03:37:21 itidus20? ¯\(°_o)/¯ 03:37:27 `learn itidus20 is horny 60 year olds having cybersex in minecraft 03:37:29 I knew that. 03:37:32 I hope you like your new biographies 03:37:37 i do 03:37:48 i am 03:37:54 Gregor: Say... isn't HackEgo's concurrency mechanism kinda like STM? :D 03:37:58 i uhh 03:38:00 (Note: KIND OF.) 03:38:16 elliott: " so it seems to me a nand gate could be implemented by defining 1 as a closed valve, and 0 as an open valve" i drew a picture http://oi51.tinypic.com/315zlp2.jpg 03:38:28 It logs the changes all the threads make, then cancels the vast majority of them :P 03:38:30 distraction #2 03:38:38 itidus20: It is beautiful. 03:38:55 elliott: Nope, it's more like COW. 03:39:02 i can't quite see it as a complete system though 03:39:24 Gregor: Why didn't you want to make HackEgo locking-based, again? 03:39:28 like i wouldn't know how to take those pieces and make a computer 03:39:45 elliott: Because it was never a question of concurrency, it was a question of atomicity. 03:40:03 Gregor: Okay, now pretend I'm three years old. 03:40:24 elliott: I hear Barney! Barney's on the tellie! Hooray! 03:40:35 Gregor: WHY WON'T YOU MAKE HACKEGO SEQUENTIAL 03:40:53 So that people can't DoS it just by 03:40:55 `sleep 29 03:41:11 Gregor: `kill :P 03:41:25 Ew 03:41:25 No output. 03:41:35 Gregor: You mean like EgoBot used to have? :P 03:42:02 You could hook in to open() and have it block if there's a conflict. 03:42:04 And still run them concurrently. 03:42:09 That's probably a pain with UMLBox though :P 03:42:16 That's a pain any which way. 03:42:34 Not really with LD_PRELOAD. 03:42:53 I mean implementation :P 03:42:59 GIVE ME AN ESOTERIC OPERATING SYSTEM TO RUN IN VIRTUALBOX 03:43:06 Gregor: Weeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeell 03:43:06 Sgeo__: ... ... ReactOS? 03:43:09 what is an esoteric operating system? 03:43:10 It's not that hard, you just need some shared state :P 03:43:16 It would be nice though. 03:43:23 If I implement it will you add it? :P 03:44:35 If it's nonterrible. 03:44:42 But I am the sole judge of nonterrible. 03:44:45 Sgeo__: I have vague plans for one but I am so lazy. 03:44:48 Sgeo__: @ :P 03:44:54 (Not the one I have plans for.) 03:45:09 Gregor: How do you even implement the current system? Copying the whole state before running anything? 03:45:37 elliott, if it was implemented in such a way that I could download it, I would 03:45:37 hg clone 03:45:40 In a heartbeat 03:45:43 Gregor: directnet is a good idea. 03:45:49 Sgeo__: What, @? 03:45:51 itidus20: It /was/ a good idea! :P 03:45:54 Gregor: So, yes, it copies the whole state first :P 03:45:54 Yes 03:46:06 elliott: Yeah, I was just being specific in the means by which it does this. 03:46:31 elliott: I believe, by the way, that UML has a COW hostfs option, which I've considered adding support for to UMLBox. 03:46:33 i was in another chatroom the other day arguing that internets made entirely of wifi routers should be built 03:46:50 Gregor: It really is a pain to do this and still keep the hg history stuff, isn't it >_> 03:46:58 itidus20: Add the word "rogue" and it'll become a good plan. 03:47:05 considered the farmer problem though 03:47:05 elliott: Why yeeeeeeeeeeeees! 03:47:12 Gregor: OH WAIT 03:47:14 a farmer's wifi router is too remote 03:47:21 Gregor: It's actually quite easy, because hg and git use the same terrible history-blind model. 03:47:41 and uh.. someone mentioned mesh-nets which i hadn't heard of before 03:47:58 As is, say, a British router from a router in, say, anywhere on the East Coast of the US 03:48:12 Which means I would no longer be a participant in this channel... 03:48:14 Oh crud 03:48:21 Gregor: On open(): Consult the global table. If there's already this filename open in another thread, block until it's closed. Then, insert this thread into the table as having the file open. Then, /copy the file/ from that thread's FS to this one, and go on to the usual open() path. 03:48:33 but the problem that you can see a list of people with your wifi antenna but not communicate with them trivially is a tough one.. is it bad for privacy or good for society 03:48:34 Sgeo__: What? 03:48:48 You lot would prefer that 03:48:54 I have no idea what you are talking about. 03:48:55 im raambling aye aye 03:49:18 elliott, if I couldn't get to this channel 03:49:22 Gregor: The only problem there is handling other FS operations like moving and unlink and the like :P 03:49:26 But that handles open() perfectly, I think. 03:49:42 And doesn't wait for the entire other command to finish or anything. 03:49:49 Due to separate Eurasian and American internets 03:50:21 elliott: If you don't wait for the other command to finish, you've gotten rid of atomicity. Which, frankly, is fine for this, but there are much simpler solutions that get rid of atomicity. 03:50:40 The concurrency primitive you need is just... oh, it's just a box with a value in it; all you need is f(box,nevwal): block until this box is empty, insert newval into the box, and return the old value in the box. 03:50:56 Gregor: What's a simpler solution that gets rid of atomicity? 03:51:02 And really, it would be fine to block until the other revision changed too. 03:51:10 It would only cause thirty-second waits in really pathological cases. 03:51:57 elliott: Copy-on-open. 03:52:15 (And don't copy while a commit is occurring) 03:52:16 * Sgeo__ opens ReactOS 03:52:18 elliott: as they asked ron gilbert when he was making maniac mansion... does he really need to use the word shithead? they sent him off to think about it 03:52:26 he came back and settled on the word tunahead 03:52:38 Text on buttons is very broken 03:52:41 * Sgeo__ boggles 03:52:47 Gregor: That still leads to e.g. two addquotes at the same time causing an hg conflict. 03:53:03 now what i am thinking is you need to consider will you really enjoy hackbot more if the proposed changes are implemented? 03:53:15 itidus20: Yes. 03:53:18 itidus20: elliott will :P 03:53:24 It's really annoying having the conflicts. 03:53:33 elliott: Oh you're right. Both are nonatomic, but yours is atomic over individual files *shrugs* 03:53:52 oops hackego 03:53:55 Gregor: But yeah OK, here's a simpler, atomic system: 03:54:22 `run echo *hugs elliott* 03:54:24 ​*hugs elliott* 03:54:37 Gregor: On open(): Consult the global table. If there's already this filename open in another thread, block until that thread completes, then restart this command starting from that new revision. 03:54:40 Gregor: ...oh my god, it's STM. 03:54:46 That was completely unintentional :P 03:54:59 And s/already this filename open/this filename was open ever in another thread/ 03:55:04 But w/e, I understand it in my head :P 03:55:11 Thou shalt not STM :P 03:55:32 Gregor: This is actually a good system though >_> 03:55:45 Gregor: It's basically "do things sequentially whenever there's a conflict, otherwise be fully concurrent". 03:55:50 And that actually works for HackEgo :P 03:57:07 * Sgeo__ cannot imagine anything like Active Worlds running well on ReactO 03:57:09 ReactOS 03:57:14 Sgeo__: it's just wine: the os 03:57:26 how about multicore concurrency where only one processor works at a time and the others just like stretch and shit so they'll be faster when their turn comes 03:57:27 Gregor: So how non-terrible is that eh eh eh :P 03:57:31 oklopol: good 03:58:02 so my system would be good for implementing N-ary NAND gates 03:58:23 Sgeo__: It is quite literally WINE with a kernel. 03:58:37 itidus20: cool, i think that's actually an open problem 03:58:49 oklopol: http://oi51.tinypic.com/315zlp2.jpg 03:58:50 pikhq, Sgeo__: Only, with worse software support. 03:58:54 this is what i am talking about 03:58:57 Well, the version of WINE that the latest ReactOS is based off of has trouble displaying text 03:59:00 Gregor: Eh eh eh eh eh eh eh eh :P 03:59:10 I honestly will implement this given approval, I'm sick and tired of conflicts :p 03:59:32 "It is now safe to turn off your computer" 03:59:35 are you making a liquid computer? 03:59:49 oklopol: it is just an idea... i am wondering how far it could go 03:59:58 Hmm, there's /one/ bad feature of it: If you send off two delquotes, one request will go through properly, and the other one will delete a quote off by one from the one you were trying to delete. 04:00:06 The merge case actually handles that correctly, usually. 04:00:08 * Sgeo__ vaguely ponders whether VirtualBox Tools (I don't remember the real name) will help any 04:00:09 But ehhhhhh nobody does that 04:00:13 elliott: You haven't actually seen HackEgo's code, have you :) 04:00:20 Gregor: Try me :P 04:00:22 Gregor: Well, I think they had to do a manual reimplementation of e.g. user32.dll. 04:00:25 elliott: It's bash. 04:00:38 Gregor: I thought it was C. 04:00:45 Only the IRC interface is. 04:00:47 It's multibot. 04:00:53 `info 04:00:54 info: Writing node (dir)Top... \ info: Done. \ File: dir.Node: Top.This is the top of the INFO tree \ This (the Directory node) gives a menu of major topics. \. Typing "q" exits, "?" lists all Info commands, "d" returns here, \ "mCoreutils" visits Coreutils topic, etc. \ Or click mouse button 2 on a 04:00:57 ... 04:00:58 lol 04:01:02 `help 04:01:03 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 04:01:12 Remove "fs" from there for hackbot itself. 04:01:21 http://codu.org/projects/hackbot/hg/index.cgi/file/6a36bc81753b/multibot_cmds/PRIVMSG/tr_3F.cmd 04:01:24 What the fuck is this shit. 04:01:25 oklopol: well i remembered "any gate can be built from nand" so i went to wikipedia, looked at the truth table, and envisioned the picture 04:01:39 but i forget why i did it to begin with 04:01:47 elliott: multibot is an IRC bot that just translates inputs into "run this command kthx" 04:01:59 Yeah but what the fuck is this shit :P 04:02:03 ?commands 04:02:03 Unknown command, try @list 04:02:08 HmmmmmmmmmmMMMMMMmmmmmmmmmmmmmmmm 04:02:13 http://codu.org/projects/hackbot/hg/index.cgi/file/6a36bc81753b/multibot_cmds/PRIVMSG/tr_60.cmd 04:02:15 Wow this is awful. 04:02:20 elliott: When it receives a line that starts with `, it tries PRIVMSG/tr_60.cmd 04:02:25 elliott: Because ` = hex 60 04:02:32 Gregor: I hate that system and I hate you. 04:02:39 (Failing that, it also tries PRIVMSG.cmd) 04:02:53 elliott: It's very versatile :) 04:02:59 Also: awful. 04:03:12 BTW did you ever install gmp. 04:03:16 You misspelled awesome. 04:03:42 Wasn't I only asked to so that you could go on a ridiculous foolhearted quest to build GHC? 04:04:15 Gregor: No, you installed ghc. 04:04:16 `ghc 04:04:21 ghc: no input files \ Usage: For basic information, try the `--help' option. 04:04:23 Uh 04:04:24 `ghci 04:04:27 GHCi, version 7.2.1: http://www.haskell.org/ghc/ :? for help \ Loading package ghc-prim ... linking ... done. \ Loading package integer-gmp ... : can't load .so/.DLL for: libgmp.so (libgmp.so: cannot open shared object file: No such file or directory) 04:04:28 Gregor: But the point is, ghc needs gmp :P 04:04:30 And you ain't got gmp. 04:04:36 Oh 04:04:41 So it's kind of useless :P 04:04:42 I don't recall that request :P 04:04:59 134 # Now commit the changes (make multiple attempts in case things fail) 04:05:00 wjw 04:05:30 Gregor: So, I could actually add another escape sequence to HackEgo? 04:05:46 pikhq: multibot_cmds is not part of the environment it exposes to users :P 04:05:48 Gregor: I like the part where lib/interp is terrible 04:05:52 elliott: So, the name is appropriate? 04:06:00 So, ? 04:06:12 Gregor: Sooooooooo will LD_PRELOAD work with umlbox X-D 04:06:13 Gregor: Okay, "Trivially if I had commit access", then. 04:06:23 Also do you even use slox here. 04:06:42 elliott: It ought to. 04:06:47 elliott: Nope :) 04:06:54 Gregor: It'd be totally awesome if it were that hackable. 04:07:08 If also probably a bad idea to stick on an IRC channel long-term. 04:07:08 Gregor: It ought to? But I thought UML was like... a totally separate system. :x 04:07:31 elliott: It ought to as in it ought to work ... 04:07:49 pikhq: Yes, trivially if you had commit access. I've considered making it that hackable, but decided that the ability to make it barf something to the channel after /every line/ is bad. 04:07:51 Gregor: I'M JUST ASKING WHYYYYYY 04:08:04 elliott: ... UML is just a program ... 04:08:16 Gregor: OK, let me rephrase. 04:08:23 Gregor: He wants it working inside the sandbox. 04:08:26 Gregor: Can I use LD_PRELOAD to override the libc /the program running UNDER UMLBox uses/? 04:08:28 Not *on* the sandbox. 04:08:36 Oh. Sure, of course, why not? 04:08:53 Because why would an entirely separate Linux instance use the host libc? 04:09:11 Because /lib is just a hostfs mount of the host's /lib. 04:09:23 That's not the same thing as an environment variable :P 04:09:44 I don't see the relevance ... if you set LD_PRELOAD in the child, it will preload. 04:09:58 Is there a way to? 04:10:03 OK, I conclude that I can add proper atomic mergeless transactions to HackEgo, but I'm too tired to do it today. 04:10:15 pikhq: A way to what? 04:10:32 pikhq: The very file he was complaining about (lib/interp) adds environment variables to the guest :P 04:10:42 Gregor: Okay, then. 04:10:55 Also, excluding comments and blank lines, that file is 6 lines long :P 04:11:04 -!- Zuu has quit (Read error: Connection reset by peer). 04:12:46 OK, here's the basic plan: 04:13:35 LD_PRELOAD a library which, for every filesystem operation, checks to see if the "dirty files" table (file/whatever) contains the filename mentioned; if so, write out a note "need to restart this command" and kill the process. Otherwise, add it to the dirty files list, and continue as normal. 04:14:16 In the bot: After all threads terminate, run all the commands that need to be restarted with the latest hg tree each time, sequentially. 04:14:22 Then clear the dirty files list. 04:14:25 Tadaaaaaaaaa 04:14:28 elliott, oklopol: here is the improved MK2 model.. actually becoming potentially useful: http://oi56.tinypic.com/kbq1di.jpg 04:14:41 Note: Image is NSFW 04:15:16 it still doesn't quite make sense to me but it seems like a good idea 04:15:19 i don't get how that's a nand 04:15:38 my earlier post before you were here was worded thus 04:15:59 " so it seems to me a nand gate could be implemented by defining 1 as a closed valve, and 0 as an open valve" 04:16:01 -!- Zuu has joined. 04:16:42 maybe thats not how it works though.. it might be better to base this on NOR 04:16:53 i have certainly not thought this through and very unlikely that i ever will 04:18:22 yeah.. actually its best forgotten 04:20:11 one element missing from the diagram though is that 2 valves would flow through some kind of funnel onto one pipe-shaped thing 04:20:35 ugh.. time for mk3 04:25:45 `log now consider that do-stuff might use a gc'd language 04:25:46 ​/hackenv/bin/log: line 1: hr.1: command not found \ /hackenv/bin/log: command substitution: line 6: syntax error near unexpected token `.^.P./KD.J{.' \ /hackenv/bin/log: command substitution: line 6: `.v e.f0+HGm{g1;xz7j(.^.P./KD.J{.(r..N(&؈0y}|y.u#T.. 04:25:55 Gregor: ... 04:26:17 That's pretty good. 04:26:26 ................. 04:26:56 ..........??????????????????????? 04:27:03 Gregor: ????????????/ 04:27:12 I honestly have no answer for you at all :P 04:27:15 `log that was wtfy 04:27:17 ​/hackenv/bin/log: line 1: hr.1: command not found \ /hackenv/bin/log: command substitution: line 6: syntax error near unexpected token `.^.P./KD.J{.' \ /hackenv/bin/log: command substitution: line 6: `.v e.f0+HGm{g1;xz7j(.^.P./KD.J{.(r..N(&؈0y}|y.u#T.. 04:27:20 Hmm 04:27:25 `cat bin/log 04:27:27 ​hr.1 \ "R ;WER{n{̍p.s@#.g.\ws.#e-:..m._'m.b.&.A.Y'3U..Dh7R1..`.v e.f0+HGm{g 04:27:29 Hm 04:27:32 wow 04:27:37 `help 04:27:37 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 04:27:46 Sigh 04:27:47 Lymee: Fuck off 04:27:54 `revert 405 04:27:55 Done. 04:27:56 `log test 04:28:07 `shred --help 04:28:09 Usage: shred [OPTIONS] FILE [...] \ Overwrite the specified FILE(s) repeatedly, in order to make it harder \ for even very expensive hardware probing to recover the data. \ \ Mandatory arguments to long options are mandatory for short options too. \ -f, --force change permissions to allow writing if necessary \ -n, 04:28:11 itidus20: http://www.blikstein.com/paulo/projects/project_water.html 04:28:15 2010-05-29.txt:17:04:22: !c printf("test") 04:28:18 ... huh. 04:28:21 Gregor: Seriously, please remove Lymee's bot access, she has not once done a single thing to the bots that wasn't abusive 04:28:35 And that was in /msg so god knows how long it could have been before someone noticed. 04:28:39 It's really irritating. 04:28:51 Fair 'nuff 04:29:15 -!- Zuu has quit (Ping timeout: 244 seconds). 04:30:21 `echo hi 04:30:21 Mmmmm .... no. 04:30:30 `echo hi 04:30:32 hi 04:30:32 Done 04:31:05 X-D 04:31:07 aspect: before i click i just had to finish off this third diagram: http://oi55.tinypic.com/1231e2b.jpg 04:31:14 Gregor: Bug report: Ellipses have three, not four dots 04:31:57 I still have no idea how that's a nand 04:32:05 elliott: Fixt. 04:32:44 the theory being that the weight of the water could open the valves 04:33:02 elliott: I'm disappointed that you're not running any commands :P 04:33:03 Gregor: Sweeeet 04:33:09 `log I know what this will do. 04:33:09 Mmmm ......................................... no. 04:33:19 I guessed correctly. 04:33:22 :P 04:33:29 `rm bin/EVERYTHING I WROTE 04:33:31 rm: cannot remove `bin/EVERYTHING I WROTE': No such file or directory 04:33:40 Gregor: Is it just random? X-D 04:33:53 No, I removed you from the blocklist :P 04:34:30 :') 04:35:25 aspect: thanks for the link 04:36:03 * Sgeo__ ponders using TinyCore as a desktop 04:36:15 `echo hi 04:36:16 hi 04:36:22 Sgeo__: But how will you run Active Worlds? 04:37:00 elliott: Obviously he'll get a circa '96 Windows machine and a dialup line. 04:44:40 ok final version after spamming the room with it... behold my NAND gate http://oi55.tinypic.com/23sg2ki.jpg 04:46:04 !bf_txtgen oklopol 04:46:08 ​57 ++++++++++[>+++++++++++>+>><<<<-]>+.----.+.+++.+.-.---.>. [319] 04:46:16 oerjan got it waaaaaaaaaaaaaaaaaaay lower 04:46:17 10:03:57: ^bf --[>-<-------]>+.----.+.+++.+.-.---. 04:47:19 what a useless thing i have depicted.. 04:50:25 Looks like oerjan just massaged the loop a little bit. 04:50:50 itidus20: how is that nand 04:51:15 monqy: well.. a stream of water represents a '0' 04:51:34 oh 04:51:44 the stream of water hits the cup and opens the valve.. 04:51:50 Or just did stringout "oklopol" in PEBBLE. 04:51:53 and thus creates another stream 04:51:58 where does the water go? 04:52:19 i think there are certain aspects i am overlooking in this design 04:52:31 the water just leaks onto the floor 04:52:32 source ^stdcons.bfm;@ a;@ b;stringout "oklopol" : b a ;# gets that output. 04:52:34 it still doesn't look quite like nand to me 04:52:43 maybe im confused but 04:52:52 it looks more like and to me 04:53:00 maybe 04:53:07 >.< 04:53:22 but well .. 04:54:03 or perhaps nor 04:54:04 ignoring 0 and 1 it can be described this way 04:54:25 can it? 04:54:26 oh cool a logic gate that can be described without reference to 0 or 1 04:54:30 what does ignoring 0 and 1 mean 04:54:35 * aspect gets some popcorn 04:54:45 if A recieves water, the gate outputs water. if B recieves water, the gate outputs water. if A and B recieve water, the gate outputs water. if neither A nor B recieve water then the gate does not output water. 04:55:00 ^that is the idea 04:55:07 that's the same as 0 and 1 04:55:09 with different names 04:55:29 you need tiny perforations in the bottom of the tobacco-pipe-shaped-things 04:55:35 so the gates don't latch 04:55:36 Would there be anything too wrong with using TinyCore as a preferred distro? 04:55:54 Why did I hate Puppy Linux, I forget 04:56:30 It would be immoral. 04:56:37 And you'd be contributing to global poverty. 04:56:39 itidus20: anyway, with your device: 0, 0 -> 0; 0, 1 -> 0; 1, 0 -> 0; 1, 1 -> 1. looks like and to me 04:56:39 But apart from that, no. 04:56:53 ok 04:57:22 well.. its food for thought at least 04:57:27 itidus20: given 21:51:50 < itidus20> monqy: well.. a stream of water represents a '0' 04:57:49 monqy: i gave up on knowing what represents what :D 04:57:59 I thought a stream of water was a 1 04:58:06 i guess it has to be 04:58:13 if a stream is 1 it's or 04:58:31 still not anything really powerful 04:58:37 darn 04:58:56 it has to be 1 cos if there was a device at the end where the water turned on a switch 04:59:09 you'll also have to deal with gravity porblems if you want to make interesting things 04:59:14 you could always have a device somewhere that emits water while not being given water 04:59:30 like it might have one of those cups complete a circuit for a lightbulb 05:00:09 Patashu: i think africa would like one of those 05:00:18 XD 05:00:55 well it is very absurd thing i have drawn. 05:01:07 Dwarven physics is more practical. 05:03:20 Lymee: *nods* 05:05:02 hi hi hi hi hi ih hiihi hi ih ihih 05:14:27 Man, when did I become such a GC fanatic. 05:15:09 More to the point: Why are there languages that aren't GC'd, and also aren't at the same level as C? 05:15:22 Ohwait, there aren't :P 05:16:41 back 05:17:21 Patashu: one benefit is i can use salt water (except machine will degrade one way or another 05:18:00 Gregor: Python isn't GC'd 05:19:27 Gregor: http://codu.org/ugly.html this is beautiful 05:20:07 Also, lol@anyone who thinks manual memory management is a good idea in any circumstance ever 05:20:14 (Except maybe writing a memory manager :P) 05:20:16 (Or embedded systems) 05:20:27 elliott: It's a wonderful idea in certain contexts. 05:20:52 Those contexts are either comically old or implementation details. 05:22:45 pikhq: Actually it is now, it has a GC as a backup for its wow-whotf-thinks-refcounting-is-good. 05:23:03 elliott: That's my desktop wallpaper at work. 05:23:08 python has had a gc for ages I thought 05:23:11 Gregor: Seriously? X-D 05:23:18 elliott: Really an truly. 05:23:33 Refcounting is utterly great, it combines all the slowness of manual memory management with all the accuracy of manual memory management. 05:23:36 Patashu: "now" doesn't mean "recently" :P 05:23:50 Patashu: As a cyclic-reference breaker. 05:23:51 Gregor: It's been your wallpaper for three years, how are you still alive? 05:23:54 elliott: Actually it's slower and less accurate. 05:24:01 Gregor: Well, yes :P 05:24:10 elliott: Lots of fullscreen windows. 05:24:23 Gregor: ugly.html or just ugly.png? 05:24:27 Oh 05:24:28 Wait 05:24:31 That's tiled?? 05:24:37 It PERFECTLY shows up my TFT's imperfections. 05:24:42 So it combines all the slowness of manual memory management with all the accuracy of manual memory management with all the implementation burden of automatic memory management. 05:24:45 It's a gradient-ish thing here. 05:25:24 elliott: lul 05:25:31 Gregor: http://wellnowwhat.net/trippy.html Make this your background 05:25:46 elliott: That wonderful combination was a non-match given by my color matcher, btw :P 05:26:01 I know, I'm reading the log :P 05:26:09 God trippy.html is hot. 05:26:18 elliott: Also a good wallpaper: http://codu.org/spinners.png 05:26:25 Heh 05:26:37 Nobody ever made my perfect wallpaper :( 05:27:29 Gray? 05:27:58 *Grey 05:28:15 Both are correct. 05:28:26 Mine is better. 05:28:47 No my perfect 05:28:48 wallpaper is 05:28:48 9/10 dentists agree that "grey" is the superior spelling for their patients who chew gum. 05:28:55 Imagine an infinite plane of lines. 05:28:56 Specfiically 05:29:00 Black background 05:29:02 Zebra-style 05:29:07 Black/white/black/white lines vertically 05:29:09 Tiling the whole plane 05:29:13 Now imagine rotating this place 05:29:14 erm 05:29:15 Now imagine rotating this plane 05:29:28 Now imagine taking a screen-sized section of that rotating, animated plane 05:29:32 And making it your desktop background. 05:29:34 Discuss. 05:30:08 would make me dizzy i think 05:30:27 Eh? 05:30:32 How is reference counting slow? 05:30:35 I get the inaccurate part 05:31:24 Sgeo__: One, 05:31:28 Sgeo__: It promotes stack writes into heap writes. It also promotes local heap writes into distant heap writes. Basically, it promotes all writes into "oh and also let's fuck up my cache just for fun". 05:31:30 Because it's basically just like malloc()/free(). 05:31:31 Memory access is slower than you think. No, slower still. 05:31:31 Two, 05:31:41 Because you branch on every ref--. 05:32:14 Also what Gregor said :P 05:32:17 Heh. I focused on caching, elliott focused on branching, and pikhq focused on overutilization. 05:32:25 I think we've covered all the important bases :P 05:32:28 Reference counting: literally the worst possible system. 05:33:09 Can it be modified to be accurate? 05:33:11 Here's a better system than reference counting: free() is never called. Occasionally the interpreter just exits and your service manager restarts your server. 05:33:21 Sgeo__: Yes. It's called a mark and sweep garbage collector. 05:33:32 elliott: Win. 05:33:38 Sgeo__: It's possible to do cyclic reference counting I think, but it's even slower. 05:33:45 And a GC is better in every way. 05:33:58 Heck, manual memory management is better in most every way. 05:34:03 elliott: Every claim to that effect I've seen have been "delayed reference counting", which is a pseudonym for mark and sweep. 05:34:20 Gregor: Delayed reference counting? Lawl. 05:34:24 Gregor: Heh 05:34:37 Gregor: You could replace the reference integer with a list of referencing objects. 05:34:37 Yes. I have seen those words. 05:34:40 Is mark and sweep decent? 05:34:42 And keep a "seen" list or... 05:34:50 Gregor: What I'm saying is, you COULD do it without mark and sweep :P 05:34:57 In the same way that eightebed disproved your claim. 05:35:01 Sgeo__: Not state of the art, but it definitely works. 05:35:05 Sgeo__: It's pretty okay 05:35:24 Do I have a chance in hell of successfully implementing it myself? 05:35:25 elliott: ARGH. That. ARGH. We never defined "GC" precisely enough, it was all of a GC except for actual reclamation :P 05:35:39 Yes, actually. Though you'll probably want to read up on memory management. 05:35:40 what is sgeo doing 05:35:45 is it a bad 05:35:45 Sgeo__: Here's mark and sweep: Start from the current closure. Traverse every pointer you see, set its "mark" bit. 05:35:45 thing 05:35:56 Sgeo__: Then, go through every object in the system, and free() every object without its mark bit set. 05:36:03 And clear the mark bit on every object with a mark bit set. 05:36:04 monqy: No, he's merely inquiring about generalities. 05:36:10 Incidentally, all modern mark-and-sweep collectors have an O(1) sweep :P 05:36:15 Well, I do have a plan in mind... 05:36:16 22:35:59 < Sgeo__> Do I have a chance in hell of successfully implementing it myself? 05:36:21 WRT Second Life stuff 05:36:24 I'm pretty sure this is the Active Wo- 05:36:25 Same thing. 05:36:27 Same goddamn thing. 05:36:28 hehehehehehe 05:36:32 Sgeo__: you should port gggggc to second life 05:36:37 Gregor: Please tell him how easy this will be 05:36:42 elliott: TOO MANY GEES 05:36:44 You'd probably have an even easier time doing a copying GC. Which are pretty silly. 05:36:53 Gregor: OGC 05:37:12 OGC has a meaning other than that logo? 05:37:56 Oligarchical Gregor Collector 05:38:08 Here's copying collection: Start from the current closure. Traverse every pointer you see, copy that object into a new heap, making sure to not copy objects multiple times. 05:38:29 https://github.com/wvanbergen/ogc 05:38:51 * Sgeo__ is a little dizzy trying to follow that readme 05:39:04 Oh, yeah, and you'll probably want a pointer rewrite step there, XD 05:39:22 pikhq: It's Second-Life; he'll already need heap-relative pointers. 05:39:26 Not like they give you C. 05:39:30 Ah, right. 05:39:53 I should start actually thinking this through at some point 05:39:54 Sgeo__: Does Second Life run on Linux? I think you need adult supervision trying to implement a VM. 05:40:01 elliott: Yes, it does. 05:40:12 pikhq: Then the burden falls onto me to be a responsible guardian. 05:40:22 http://secondlife.com/_img/pix.gif 05:40:26 Can you get married if you upgrade to Premium. 05:40:28 Is that what Premium is. 05:40:30 Please say yes. 05:40:35 Oh my god this Flash advert. 05:40:47 http://secondlife.com/_img/pix.gif 05:40:49 styling 05:40:49 oh 05:40:50 its 05:40:53 not the real url of the pix 05:40:53 :'( 05:40:56 :'( 05:41:01 monqy: http://secondlife.com/destination/911-memorial 05:41:08 And it running on Linux even predated them open-sourcing it. 05:41:08 oh god what 05:41:10 911 victims....... looking ghostly 05:41:33 Incidentally, Second Life is horribly written. 05:41:35 its the least classiest marble ive ever seen 05:41:49 they also have a world trade centre memorial. and a rainbow gardens pet memorial centre 05:41:54 http://secondlife.com/destination/lost-lovers-dancing-club---live-events 05:41:55 http://secondlife.com/destination/rainbow-gardens-pet-memorial-center 05:42:00 lost lovers dancing club 05:42:11 monqy: oh sweet jesus 05:42:13 A VIRTUAL memorial: Worst memorial ever? 05:42:15 http://secondlife.com/destination/club-graffiti 05:42:22 Gregor: http://common-flash-secondlife-com.s3.amazonaws.com//new/destinations/en/_img/fullsize/5917.jpg 05:42:23 Best. 05:42:24 club graffiti 05:42:49 Second Life is like... real life, modelled by people who've READ about real life, you know, in books. 05:43:00 elliott++ 05:43:01 `addquote Second Life is like... real life, modelled by people who've READ about real life, you know, in books. 05:43:02 666) Second Life is like... real life, modelled by people who've READ about real life, you know, in books. 05:43:06 "Club re:noize bills itself as "a distorted eargasm for noize-minded souls" and we don't disagree." 05:43:09 OH GOD IT'S SATAN'S QUOTE 05:43:14 I don't either, but only because I have no idea what that means. 05:43:28 I understand it could be put to somewhat more interesting use, but holy fuck most of it is boring. 05:44:14 I'd like to note we're all hypocrites who play a game that offers all the fun of mining with none of the real-world benefits :P 05:44:25 X-D 05:44:32 OK, with slightly less risk, admittedly. 05:44:33 Slightly. 05:44:42 Much greater obesity risk. 05:44:54 elliott: My criticism comes from first-hand experience. 05:44:59 bad person risk 05:45:08 -!- CakeProphet has joined. 05:45:08 -!- CakeProphet has quit (Changing host). 05:45:08 -!- CakeProphet has joined. 05:45:16 speak of the devil 05:45:19 elliott: well it certainly suggests a new way of thinking about mining in general 05:45:22 Step into the grid and get lost in one of the many cyberpunk places in Second Life. 05:45:29 This homage to classic computer games and cyberpunk culture places you "on the grid." Amidst bouncing balls and other surreal experiments, explore the multi-leveled displays — be bold and fly up. Hang out here and you may spot a Torley at work in its digital habitat! 05:45:43 mine trees! mine dirt! 05:45:44 "Cyberpunk" 05:45:46 Spirituality & Belief (26) 05:45:51 YES THIS IS GOING TO BE THE BEST CATEGORY 05:45:56 Suicide City 05:45:56 What terrors await you in this rain-swept, creepy town? Explore the horrors, but bring a friend — you might not be able to make it out alive! 05:45:58 SUICIDE 05:45:58 CITY 05:46:00 Most people who have used that word need a cyberpunch in the face. 05:46:09 Gregor: At least it's not steampunk. 05:46:14 steampunch in the face 05:46:21 "Technology... but with COGS!" 05:46:23 :-? 05:46:25 elliott: I suspect a steampunch in the face would hurt considerably more. 05:46:39 ahh steam power 05:46:44 I have to admit, I was hoping the "Cyber" category would be something else. 05:46:47 What's wrong with cyberpunk and steampunk? 05:46:48 I mean, let's face it, "cyber"technology isn't much on moving parts. 05:46:52 By hoping, I mean for purely comedic purposes. 05:47:04 Visit Duran Duran Universe, the official Second Life presence of the popular band. 05:47:06 I...................... 05:47:13 Duran Duran — Secret Rehearsal Rooms 05:47:13 Practice your musical skills in one of the many secret rehearsal rooms at Duran Duran Universe. 05:47:15 .......................................... 05:47:19 lol 05:47:23 I am completely devoid of words. 05:47:29 i personally think the steampunk world looks the most fun 05:47:31 I have only laughter. 05:47:40 elliott: Linden doesn't much like SL sex, so they make efforts to make it hard to find. 05:47:41 everything is more fun when steam powered. 05:47:44 given the choice between this world, the cyberpunk one, and the steam one 05:47:46 Mud wrestling, arm wrestling and pillow fights. Anything can happen at The Skin Dive in Duran Duran Universe. 05:47:47 From what I understand, this doesn't do much. 05:48:00 how do you even have a pillow fight in sl that has to be like 05:48:03 the most awkward thing ever 05:48:11 more awkward than sl sex 05:48:13 more awkward than metaplace sex 05:48:21 Yes, all physical actions are awkward. 05:48:21 `? Sgeo 05:48:22 Sgeo? ¯\(°_o)/¯ 05:48:23 "wow this scripting sure is neat!" "yeah!" 05:48:27 `learn Sgeo invented Metaplace sex. 05:48:27 Except, like, walking. 05:48:29 I knew that. 05:48:29 i think steampunk is kinda soft-anarcho-primitivism 05:48:37 A good biography. 05:48:48 itidus20: I thought we were an anarchosyndicalist commune. 05:49:01 CakeProphet, that's kind of my main draw to SL >.> 05:49:03 i dont even know what that means`` yet 05:49:10 Or part of it 05:49:17 itidus20: is that kind of like rocktronicelectronintendowavecore? 05:49:24 Duran Duran - TIon Love Chapel 05:49:25 Get hitched at the TIon Love Chapel in Duran Duran Universe. 05:49:27 DURAN DURAN LOVE CHAPEL 05:49:30 CakeProphet: Best thing? 05:49:38 "LGBT Friendly" 05:49:44 So are the other locations in Second Life not LGBT friendly? 05:49:48 CakeProphet: soft- is being used in the sense of "not taken to extremes, or allowing some room for vairance and exceptions" 05:49:52 Set in the present-day urban Southern California, Rejectz immerses you in a bad part of town where anything can happen. This grungy role-playing area is a place for gay males to meet and play. 05:49:57 jesus christ 05:50:09 Learn more information about LGBT civil rights worldwide at the Brokeback Gay Civil Rights Center. This area, which is accessible to age-verified adult residents, also features a club, cathedral, art gallery, memorial park and "Drama Queen Theater." 05:50:16 brokeback gay 05:50:16 Welp, found the sex. 05:50:19 itidus20: oh okay so it's soft punk fusion neo-grime 05:50:26 pikhq: where da straight sex at 05:50:31 Beats me. 05:50:38 Connect with your community and meet new friends at Gay Archipelago, an international LGBT-friendly cluster of 147 sims in Second Life. 05:50:38 I've not cared enough. 05:50:41 garchypelago 05:50:53 "So... It's like porn, but badly animated?" "Yup." "Fuck that." 05:51:06 CakeProphet: i like the idea of human knowledge increasing but technology being more moderate 05:51:12 oh no 05:51:15 theres a steampunk category 05:51:16 * Sgeo__ needs to go eat 05:51:18 There are no destinations in this category with the maturity rating of Any. 05:51:22 hahaha 05:51:24 are they all steampunk sex worlds 05:51:28 yes 05:51:30 amazing 05:51:31 YES 05:51:35 i guess its all the same in the end 05:51:36 YEEESS 05:51:41 Vampire (18) 05:51:42 oh no 05:51:46 There are no destinations in this category with the maturity rating of Any. 05:51:48 itidus20: oh so you're more into abstract glitch-hop fusion? 05:51:49 didn't LGBT get some extra letters? 05:51:57 LITERALLY ALL OF THESE "ROLEPLAYING COMMUNITIES" ARE SEX-BASED 05:52:02 why don't they just say EVERYTHINGEXCEPTNORMALPEOPLE 05:52:12 we can shorten it to N- 05:52:12 im not really thinking things out 05:52:14 :P 05:52:27 dude there's no like, pen and paper SL worlds? 05:52:45 myndzi: Some variants add "allies" to the mix. 05:52:48 What is it with those blacks and, like, hispanics. Can't we just say normal people, and freaks? 05:52:54 Which leaves you including everyone except jerks. 05:52:57 And those asians too. It's too many to remember. 05:53:05 i'm pretty sure i remember one with like 7 letters lol 05:53:10 CakeProphet: there is a problem that if you change the system to give everyone what they want, they will adjust their desires again 05:53:21 monqy: there's a haunted category 05:53:22 looking ghostly 05:53:34 oh my god 05:53:35 im spouked 05:53:40 http://common-flash-secondlife-com.s3.amazonaws.com//new/destinations/en/_img/fullsize/6664.jpg 05:53:44 just 05:53:45 LOLOL 05:53:45 http://common-flash-secondlife-com.s3.amazonaws.com//new/destinations/en/_img/fullsize/6664.jpg 05:53:47 quiltbag 05:53:54 you know it's getting bad when you have to make mnemonics 05:54:03 itidus20: yeah that's the problem with genres like alternative, where the desire is to be something that isn't mainstream. So you give everyone what they want and then they want something alternative again. 05:54:03 http://common-flash-secondlife-com.s3.amazonaws.com//new/destinations/en/_img/fullsize/6664.jpg 05:54:05 monqy: guy inthe middle 05:54:07 looking ghostly 05:54:08 (because) 05:54:09 (he is dead) 05:54:22 itidus20: that's why house is nice because everyone just likes the same four to the floor for hours and hours. 05:54:24 sl murder 05:54:32 Sgeo__: can you kill in sl 05:54:38 CakeProphet: Or you just go so far off the beaten path you're never mainstream ever. 05:54:44 noise. 05:54:52 is never mainstream. 05:55:02 The Corn Field is a region of mythological status where once naughty avatars were sent to think about what they had done. Read more here: http://bit.ly/kmL0EF 05:55:06 elliott, "legally", in certain places, I think. And not so allowed, there is griefing 05:55:31 the corn field? is that a reference to "It's A Good Life"? 05:55:37 quintopia: apparently 05:55:45 dark ambient music such as Voice of Eye: http://www.youtube.com/watch?v=jZ_fUZDeNQo 05:55:46 neat 05:55:46 http://secondlife.com/destination/cyrus-apollo-s-giant-bears 05:55:47 augh 05:55:47 There used to be devices that could send people up billions of meters against their will 05:55:49 is great. 05:55:50 everyone should like it. 05:55:57 monqy: click 05:55:58 that 05:56:00 its augh 05:56:12 augh 05:56:15 who did that 05:56:17 who 05:56:18 would do that 05:56:21 cyrus apollo i 05:56:23 guess 05:56:23 (a genouse) 05:56:25 based on 05:56:26 url 05:56:27 (geniouse) 05:56:31 I mostly stick to the sandboxes 05:56:55 https://d1yjxggot69855.cloudfront.net/images/3/3c/The_Corn_Field.jpg corn field 05:56:59 Oh huh, the place with the bears is apparently near a small sandbox 05:57:32 Romantic Spots (47) 05:57:39 awwww ye 05:58:06 http://common-flash-secondlife-com.s3.amazonaws.com//new/destinations/en/_img/fullsize/5452.jpg 05:58:12 i question the anatomy depicted in this picture 05:59:09 Sgeo__: this is really bad good god 05:59:09 good anatomy 05:59:25 Strange & Mysterious (37) 05:59:31 Third Life community: have fun playing Third Life with your Second Life personas! 05:59:35 Catalan Institute of Nanotechnology 05:59:35 Don't let the name fool you — this ain't a sterile research facility. As you explore this forest of pulsating shapes and shifting structures, the wild textures you see were supposedly derived from actual nanoparticles. 05:59:45 im sterile 05:59:55 I mostly don't get involved with that stuff. Except one of the sandboxes I _used_ to like was a furry sandbox 05:59:57 ACTUAL NANOPARTICLES? 06:00:01 Visit this recreation of Robert A. Heinlein's "Crooked House" by Seifert Surface. Explore the interconnected rooms of the house, which is modeled on a four-dimensional hypercube. Learn more about the story behind the house's creation at http://pdx.be/efe8. 06:00:02 ok that's cool 06:00:07 that is the single cool thing i have seen so far 06:00:54 I don't see how that's possible in Second Life. 06:00:58 Worlds.com sure, but SL? 06:01:00 http://nwn.blogs.com/nwn/2006/06/_and_he_rezzed_.html 06:01:15 http://nwn.blogs.com/wja_hamlet_thumbnail.jpg 06:01:28 YouTube video not working for me 06:01:55 I note there's no furry category in this thing 06:01:57 OPPRESION 06:02:01 Oh, that sort of thing 06:02:11 fursecution 06:02:14 Saw something like it before 06:02:18 @HOOGLE furry 06:02:18 Unknown command, try @list 06:02:24 @hoogle furry 06:02:24 No results found 06:02:27 WHAT? 06:02:38 where the furry furry bondage girls at 06:03:04 zzo made something called furryscript right what is that 06:03:27 I was banned from a furry sandbox 06:03:35 did you try and have metaplace sex 06:03:48 I dropped a cube. 06:03:51 oh 06:04:00 NOOOOOOOOOOOOOOOOoooooooooooooo 06:04:03 Sgeo__: accidental bestiality? 06:04:05 is that furspeak for fuck you 06:04:06 oh. 06:04:12 he "dropped" 06:04:13 a "cube" 06:04:16 if you "know" 06:04:18 what I "mean" 06:04:30 dropped a fat beat 06:04:36 dropped a bat feet 06:04:43 elliott just "dropped" some "knowledge" on these "bitches" 06:04:46 To elucidate: That's a euphemism for expressing anything short of a desire for immediate and ongoing bestiality. 06:04:55 Well, the script in the cube may have violated TOS, as well as being a physical cube that caused some lag 06:04:59 Important: The Google Image Search API has been officially deprecated as of May 26, 2011. It will continue to work as per our deprecation policy, but the number of requests you may make per day may be limited. 06:05:09 (It was a chat transmitter thing) 06:05:17 Gregor: Is there a successor API, I guess you know these things 06:05:20 I suppose I should just screen-scrape??? 06:05:28 i dropped a chat transmitter thing 06:05:31 elliott: There will almost assuredly not be. 06:05:42 Gregor: Google sure like being a closed system, don't they 06:05:49 elliott: They drop APIs whenever they feel it's important enough to their business that exposing it by any non-ad-laden means is bad. 06:06:14 Google business model: You give us all your data --> We use it to profit forever --> The end 06:06:23 --> So much money 06:06:31 --> so mcuch 06:06:47 Oh well, screen-scraping is easy 06:06:56 Stonehenge Rebuilt 06:06:56 This reconstruction of the Neolithic site of Stonehenge attempts to explain its lithology and show how it must have appeared in ancient times. It demonstrates how rays of sun passed between the megaliths during the summer solstice. 06:07:08 oh my god 06:07:09 http://common-flash-secondlife-com.s3.amazonaws.com/new/destinations/en/_img/fullsize/2944.jpg 06:07:18 megaliths reminded me of beedaweeda help 06:07:22 http://common-flash-secondlife-com.s3.amazonaws.com/new/destinations/en/_img/fullsize/2944.jpg 06:07:30 wirdiculous 06:07:34 that smile god damn 06:07:45 oh my god 06:07:54 Looking for a sexy shape for your avatar? Adult Second Shapes features a wide variety of attractive shapes, including curvy and realistic body shapes that will get you noticed. 06:07:54 it would be staring into my soul but instead it is staring into its snout's soul 06:07:58 they literally sell new skins 06:08:00 maybe it has crosseye problems 06:08:29 AKERUKA Italian Creations offers high quality skins for men and women along with shapes created and styled with perfection to suit different types looks, cultures and ages. 06:08:29 skin != shape 06:08:31 so fuckin' classy 06:09:10 http://common-flash-secondlife-com.s3.amazonaws.com/new/destinations/en/_img/fullsize/4188.jpg 06:09:15 Maybe I shouldn't comment on the fact that my current avatar is mostly just a skin 06:09:18 those faces to the right are so disturbing 06:09:56 monqy: Yes I did make something called FurryScript. Someone asked me to type in esolang wiki so I made a user subpage explaining it a bit 06:09:58 its really painful how hard this is trying to emulate consumer culture 06:10:02 (+invisible hair +shape +i forgot the last necessity) 06:10:10 the pain is intense 06:10:40 It kind of is consumer culture, I think 06:10:43 does your avatar have clothes, sgeo 06:10:43 People pay for these things 06:10:52 monqy, no. But the skin isn't human skin 06:11:00 Specifically this document http://esolangs.org/wiki/User:Zzo38/FurryScript 06:11:35 Sgeo__: are you a cube 06:11:43 N 06:11:45 no 06:11:48 are you two cubes 06:12:04 i see no denial 06:12:13 I'll get a pic 06:12:18 oh no 06:12:24 No, that's not my current av 06:12:24 the cube sgeo dropped was his naughty bits 06:12:50 this is why he got banned 06:12:53 https://marketplace.secondlife.com/p/Editing-Appearance-HUD/219015 06:13:09 I think that's considered SFW 06:13:19 it's gross 06:14:33 so what is it you want to do again 06:14:35 calculate sl gravity 06:14:49 more like sl poop 06:14:51 That's a separate project 06:14:51 http://jyte.com/cl/i-have-used-at-least-10-different-programming-languages zzo38 has used at least 10 06:15:06 itidus20: are you stalking everyone from this channel or sth :P 06:15:16 i actually searched for furryscript 06:15:21 oh 06:15:29 so indirect stalking 06:15:35 indiralking 06:15:44 Dear SL Marketplace: I'd appreciate it if you emailed me when I get reviews, like you used to 06:16:38 https://marketplace.secondlife.com/p/Antiposeball-5-SAVE-PRIMS-ON-FURNITURE/219014 I haven't updated this thing since 2007 06:16:40 itidus20: If you want FurryScript please look at article I linked to 06:17:07 "This is good if you only want avs to use ONE position for sitting. I wanted to add a variety and well..that just didnt happen with this, for some reason the instructions to use commas in between names just wasnt enough. Ah well. Not for me , but if you only need a single sit then this is very easy to use and recommended. =)P" 06:17:16 I've been intending to remove those instructions 06:17:16 i was trying to figure out if it was something you made or if it was something you merely documented 06:17:45 and just curious what this furryscript is used for. heh 06:18:06 itidus20: It is something I made. To see some of its use, look at external resources 06:18:07 `? monq 06:18:08 `? monqy 06:18:09 monq? ¯\(°_o)/¯ 06:18:10 monqy dead :( 06:18:15 tru 06:18:47 I used Haskell too since I typed on that Jyte page so I added it now 06:21:27 zzo38: im guessing that furryscript is too useful to be a regular topic :D 06:22:16 it's as if there is a one-to-one correspondancy between source code ascii text and outputted text... 06:22:17 itidus20: Sort of. That is one reason why it is user subpage. It does, however, have a few features which might be considered a bit strange. But, it works well for what it is trying to do, I think. 06:22:23 ^sickening 06:22:56 -!- Zuu has joined. 06:23:09 you can't just write an ascii character in source code and repeat that ascii character as program output!?! what do you think this is 06:23:14 some kind of joke 06:24:07 ahem.. sorry a bit cranky this afternoon 06:24:49 All script are included in here http://zzo38computer.cjb.net/furry/scripts/ If you write your own script, please tell me by writing on [[User talk:Zzo38/FurryScript]] 06:25:47 there is this kind of category of programming languages which doesn't really have much of a good name 06:26:17 that is not esoteric, not mainstream, not done in a university, possibly only a handful of users 06:26:40 post-rock indie programming languages. 06:26:55 punklangs? 06:26:55 TV PLOT is something I found in a very old book but I updated it with more choices 06:27:08 just kidding....! 06:27:35 yeah when programming language categories start to resemble music categories there is great danger 06:27:59 now i must lie down half awake 06:28:01 Or when you categorise chess variants by color 06:28:17 extreme thrash-step bebopcore metal. 06:28:48 dude... 06:28:51 so what if I made a program 06:28:55 that randomly generated genres. 06:29:26 "Retry execution of the current memory transaction because it has seen values in TVars which mean that it should not continue (e.g. the TVars represent a shared buffer that is now empty). The implementation may block the thread until one of the TVars that it has read from has been udpated. (GHC only)" 06:29:32 Gregor: Aww yeah, GHC STM has UDPATED 06:29:40 I guess that's like an update... across UDP. 06:29:45 FurryScript can randomly generate stuff by templates; that was its original use. But it has other features too. 06:30:57 You can see stuff I made in Jyte by viewing the profile http://jyte.com/profile/zzo38computer.cjb.net In case it interest you; to login you simply need OpenID (there is other form to fill, but it is optional; OpenID is sufficient) 06:36:40 What does "The bigger the wheel, the ranger the forest." means? 06:37:07 I've never heard it 06:37:53 itidus20: so you're more into Baroque industrial grimehouse? 06:40:58 Has there ever been a chess game properly notated "12. 0-0-0!!" ? 06:41:25 No but I bet someone's been like "12. !!!???!?!?" 06:44:16 CakeProphet: What is that? 06:44:24 "12. !!!???!?!? *throws table, pieces fly everywhere*" 06:45:34 I thought maybe I could combine programming language categories to make nonsense ones, but then I realized, sadly, that most of them make some sort of sense. 06:46:03 non-strict functional dataflow language. 06:46:05 chess variant: in alternate universes, each of your pieces which can move to a given spot does so. the goal is to win in more universes than your opponent 06:46:45 does this exist? 06:47:18 I think you'd just tie probably? 06:48:03 what makes you think this? 06:48:09 http://i.imgur.com/lqcjm.png minesweeper is pretty hard 06:48:29 well you'd each have the same number of choices. 06:48:34 monqy: if you mean you elect a spot and branch universes into it 06:48:35 Patashu: hot 06:48:46 Patashu: yes 06:48:47 hmm 06:48:49 are those non-grid boards playable 06:48:50 or just the grid one 06:48:51 s 06:48:54 I know of a variant where you elect to make branches however you like 06:49:02 apparently you could force a win as player 1 trivially in it 06:49:03 :( 06:49:10 what? :( 06:49:15 let me see if I can find it 06:49:23 oh right, maybe white would win. 06:49:32 and elliott: every board is playable if you register it 06:49:45 Patashu: including those non-grid ones? 06:49:49 hot hot hot pirate it immediately 06:49:55 http://www.chessvariants.com/large.dir/contest/manyworlds.html http://www.chessvariants.org/index/listcomments.php?itemid=ManyWorldsChess 06:50:24 CakeProphet: i dunno what im into musically 06:50:52 elliott, you can download the trial version and see all the boards available, and have autoplay solve them for you http://www.software3d.com/Mines3D/download.php 06:51:14 pirate pirate pirate then make youtube videos thanks 06:51:52 Boards do not remember which player moved last; there is no rule preventing you from making a move on a given board even if you were the player whose move created the board. 06:52:00 and the goal is to capture the king on any board 06:52:10 so I guess to win as player 1 you just repeatedly move until you get the king? 06:52:28 read the comments 06:52:35 they explain how to mate in 4 as player 1 06:52:35 oh where's that oh there 06:52:39 so your variant should make sure it isn't possible 06:53:24 A ship has crashed on the border between two kingdoms. You must decide where to bury the survivors. -- lol 06:53:32 oh i guess you can only move on one board at a time 06:54:52 THIS REPORT IS ABOUT A INTELLIGENT FAERIE WHO IS A FLOP AT CHESS AND WHO OPPOSES THE GOVERNMENT 06:55:44 btw, if you want some crazy but cool chess variants from a master, look at Ralph Betza's http://www.chessvariants.org/index/mainquery.php?type=Any&orderby=Type&displayauthor=1&displayinventor=1&authorid=RalphBetza&usethisheading=Items+Authored+by+Ralph++Betza 06:55:53 The Game for the Trees and The Game of Nemoroth in particular are great 06:56:25 The Game of Nemoroth has its own -lore- and its own alternate universe chess rules. That's pretty cool 06:56:55 haha halflings 06:57:06 A ship has crashed on the border between two kingdoms. You must decide where to bury the survivors. -- lol <-- where is that from? 06:57:25 It is from one of the files I have for FurryScript 06:57:33 (It is not part of FurryScript itself) 06:57:53 However, that in turn was taken from somewhere else which in turn from somewhere else and so on. 06:59:14 Ad infinitum? 06:59:28 `log godzilla 06:59:31 No, I don't think so 06:59:35 oh well 06:59:40 oh that bot is not about 06:59:48 2010-12-07.txt:21:06:31: I'm Godzilla coming! I want to die! 06:59:54 oh there he is 07:00:20 I think the script needs to convert back from HTML escapes 07:00:22 elliott: ^ 07:00:32 `pastelogs godzilla 07:00:35 Vorpal: What? 07:00:42 2010-12-07.txt:21:06:31: I'm Godzilla coming! I want to die! 07:00:45 that looks wrong 07:00:46 The script does not make any HTTP requests. 07:00:53 The logs are accurate. 07:00:53 elliott: well was it like that in the original? 07:00:55 ah 07:01:06 No output. 07:01:17 `? Vorpal 07:01:18 i will just let hackego rest 07:01:21 Vorpal is really boring. Seriously, you have no idea. 07:01:23 (I forgot what your biography is.) 07:01:26 he seems sleepy 07:01:39 ^run type '?' 07:01:45 `run type '?' 07:01:48 ​? is /hackenv/bin/? 07:01:56 `run file /hackenv/bin/? 07:01:57 `pastewisdom 07:01:58 ​/hackenv/bin/?: POSIX shell script text executable \ /hackenv/bin/k: POSIX shell script text executable 07:01:59 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.22337 07:02:10 `forget add 07:02:12 Forget what? 07:02:34 `pastelogs monster 07:02:40 "��V�>WIד�.��" - c 07:02:47 what was the command to get the url of a file? 07:02:47 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.30032 07:03:01 `url /hackenv/bin/? 07:03:02 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip//hackenv/bin/? 07:03:05 ah yes 07:03:06 `url bin/? 07:03:07 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/? 07:03:11 Except that won't work. 07:03:12 `url bin/? 07:03:13 Obviously 07:03:13 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/? 07:03:17 `run paste bin/'?' 07:03:19 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.25005 07:03:19 That will though. 07:03:28 Except it gets the encoding wrong. 07:03:39 as always 07:03:40 "elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things?" 07:03:40 eh 07:03:42 elliott: what db? 07:03:49 Vorpal: the one you're looking at. 07:03:52 it seems like plaintext 07:03:55 `pastelogs godzilla 07:03:55 Gregor wrote that bio, anyway. 07:04:03 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.840 07:04:07 elliott: right 07:04:15 `? our 07:04:16 Vorpal: So what's new that isn't you not understanding the definition of database? 07:04:17 our? ¯\(°_o)/¯ 07:04:18 Data-base. 07:04:19 Base of data. 07:04:22 `? wiki 07:04:24 The wiki is at http://esolangs.org/wiki 07:04:26 `? the 07:04:27 the? ¯\(°_o)/¯ 07:04:36 `cat wisdom/wiki 07:04:37 The wiki is at http://esolangs.org/wiki 07:04:40 elliott: well okay, yes a flatfile is a db, true. 07:04:42 It... bends the rules a bit. 07:04:57 `pastelogs zombie 07:05:01 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.8534 07:05:37 elliott: anyway you should use sqlite, it is better tested than flatfiles. 07:05:43 `? .doorstop 07:05:44 You do not have the clearance necessary to view this entry. 07:06:12 `karma- Vorpal 07:06:14 Vorpal has 0 karma. 07:06:21 `karma Vorpal 07:06:22 vorpal had karma? 07:06:23 Vorpal has 0 karma. 07:06:25 Gah, what _is_ it with that bug. 07:06:27 `karma- Vorpal 07:06:28 elliott: do you think I care about karma? 07:06:29 Vorpal has 0 karma. 07:06:31 `karma Vorpal 07:06:33 Vorpal has 0 karma. 07:06:36 Come on. 07:06:38 `karma+ Vorpal 07:06:40 Vorpal has 0 karma. 07:06:42 `karma- Vorpal 07:06:44 Vorpal has 0 karma. 07:06:48 elliott: well it seems broken whatever it is 07:06:49 Dear god. 07:06:54 elliott: and I don't really care about karma. 07:06:56 Vorpal: it's a bug I can't figure out. 07:06:57 `karma+ Vorpal 07:06:59 `karma+ Vorpal 07:07:00 Vorpal has 0 karma. 07:07:00 `karma+ Vorpal 07:07:01 Vorpal has 0 karma. 07:07:02 elliott: so that isnt' going to stop me 07:07:02 Vorpal has 0 karma. 07:07:04 `karma- Vorpal 07:07:04 `karma- Vorpal 07:07:05 `karma- Vorpal 07:07:05 `karma- Vorpal 07:07:06 isn't* 07:07:08 Vorpal has 0 karma. 07:07:08 Vorpal has 0 karma. 07:07:08 Vorpal has 0 karma. 07:07:08 Vorpal has 0 karma. 07:07:17 elliott: stop spamming me with highlights though 07:07:20 @karma- vorpal 07:07:20 vorpal's karma lowered to -1. 07:07:26 @karma- Vorpal 07:07:26 Vorpal's karma lowered to -2. 07:07:28 I find this acceptable. 07:07:36 @karma++ Vorpal 07:07:36 Vorpal's karma raised to -1. 07:07:39 @karma+ Vorpal 07:07:39 Vorpal's karma raised to 0. 07:07:41 @karma- Vorpal 07:07:41 Vorpal's karma lowered to -1. 07:07:43 You are all traitors. 07:07:44 @karma+ Vorpal 07:07:44 Vorpal's karma raised to 0. 07:07:45 You are all traitors. 07:07:46 @karma- Vorpal 07:07:46 Vorpal's karma lowered to -1. 07:07:49 @karma- elliott 07:07:49 elliott's karma lowered to 2. 07:07:53 @karma+ elliott 07:07:53 You can't change your own karma, silly. 07:07:57 Silly. 07:08:01 -!- elliott has changed nick to fthepolice. 07:08:03 @karma+ elliott 07:08:04 elliott's karma raised to 3. 07:08:06 -!- fthepolice has changed nick to elliott. 07:08:08 stop the highlight spam though. 07:08:08 @karma- Deewiant 07:08:08 Deewiant's karma lowered to -2. 07:08:16 "Silly" applies to the whole thing above. 07:08:17 O, I thought of that but thought you have to PART first 07:08:18 `echo "a lot of" > karma/monqy 07:08:19 ​"a lot of" > karma/monqy 07:08:20 `karma monqy 07:08:20 -!- itidus20 has changed nick to itidus21. 07:08:21 monqy has 0 karma. 07:08:23 oops 07:08:24 fizzie: agreed. 07:08:26 `run echo "a lot of" > karma/monqy 07:08:27 No output. 07:08:28 `karma monqy 07:08:30 monqy has 0 karma. 07:08:32 oh nooo 07:08:33 `karma+ itidus20 07:08:35 itidus20 has 1 karma. 07:08:41 -!- itidus21 has changed nick to itidus20. 07:09:09 @karma- Vorpal 07:09:09 Vorpal's karma lowered to -28. 07:09:10 -!- itidus20 has changed nick to itidus21. 07:09:17 oh 07:09:20 elliott: messing in /msg too. *shrug* 07:09:26 No. 07:09:29 That was just a really strong -. 07:09:34 -!- itidus21 has changed nick to itidus20. 07:09:36 how do i get a lot of karma 07:09:42 "a lot of" as my karma number 07:09:42 @karma+ monqy 07:09:43 monqy's karma raised to 1. 07:09:44 @karma+ monqy 07:09:44 monqy's karma raised to 2. 07:09:44 elliott: as I said I don't care about it. I'm just annoyed at the highlight spam. 07:09:44 @karma+ monqy 07:09:44 monqy's karma raised to 3. 07:09:52 Vorpal: Sorry, I'll fix the karma. 07:09:53 i do not want numbers i want a lot of 07:09:54 @karma+ Vorpal 07:09:54 Vorpal's karma raised to -27. 07:09:55 @karma+ Vorpal 07:09:55 Vorpal's karma raised to -26. 07:09:55 @karma+ Vorpal 07:09:55 @karma+ Vorpal 07:09:55 Vorpal's karma raised to -25. 07:09:55 Vorpal's karma raised to -24. 07:09:56 @karma+ Vorpal 07:09:56 Vorpal's karma raised to -23. 07:09:58 @karma+ Vorpal 07:09:58 Vorpal's karma raised to -22. 07:09:59 ... 07:10:00 @karma+ Vorpal 07:10:00 Vorpal's karma raised to -21. 07:10:04 @karma+ Vorpal 07:10:04 Vorpal's karma raised to -20. 07:10:06 @karma+ Vorpal 07:10:06 Vorpal's karma raised to -19. 07:10:08 @karma+ Vorpal 07:10:08 Vorpal's karma raised to -18. 07:10:09 glad you like me at least 07:10:10 friendship karma 07:10:30 ?karma-all 07:10:31 "pmichaud" 1018 07:10:31 "moritz" 955 07:10:31 "c/c" 650 07:10:32 "jnthn" 607 07:10:34 "lwall" 530 07:10:36 [3660 @more lines] 07:10:37 Oh dear god. 07:10:45 hahaha 07:10:46 @more 07:10:46 "masak" 457 07:10:46 "pmurias" 404 07:10:46 "g" 400 07:10:46 "Weed" 334 07:10:46 "(" 286 07:10:47 Wow, it really does what it says on the tin 07:10:48 [3655 @more lines] 07:10:49 @more 07:10:50 "+" 257 07:10:52 "br1" 182 07:10:54 "colomon" 175 07:10:56 "ruoso" 164 07:10:56 We can do this, folks. 07:10:58 "+" is well-liked. 07:10:58 "azawawi" 149 07:11:00 We can do this. 07:11:00 [3650 @more lines] 07:11:02 @more 07:11:03 "moritz_" 147 07:11:04 "##c" 146 07:11:06 "putter" 144 07:11:08 "Tinned_Tuna" 143 07:11:09 fizzie: You don't mind me doing this, right? 07:11:10 "diakopter" 135 07:11:12 ... 07:11:12 [3645 @more lines] 07:11:14 @more 07:11:14 "erg0t" 130 07:11:16 "tizoc" 108 07:11:18 "kyle" 107 07:11:20 this is absurd 07:11:20 "jonathan" 102 07:11:22 @more 07:11:22 "TimToady" 95 07:11:24 [3640 @more lines] 07:11:26 Gotta get through them all 07:11:26 "elpolilla" 91 07:11:28 "mberends" 88 07:11:30 "bonnie" 87 07:11:32 "carlin" 85 07:11:34 "Notepad" 81 07:11:36 [3635 @more lines] 07:11:38 @more 07:11:38 "hinrik" 76 07:11:40 "libstdc" 75 07:11:42 "szabgab" 75 07:11:43 lmao @ notepad 07:11:44 > a+4; 07:11:44 "\"C" 74 07:11:46 This should only take a few hours 07:11:46 "Tene" 70 07:11:48 : parse error on input `;' 07:11:49 "\"C" 74 07:11:50 wat 07:11:50 [3630 @more lines] 07:11:53 @more 07:11:56 elliott: make a script 07:11:58 Vorpal: YOU BROKE IT 07:12:02 elliott: :D 07:12:05 coppro: No need for a script, I can just 07:12:07 @karma-all 07:12:08 "pmichaud" 1018 07:12:08 "moritz" 955 07:12:08 "c/c" 650 07:12:08 "jnthn" 607 07:12:08 "lwall" 530 07:12:09 @more 07:12:09 @more 07:12:10 [3660 @more lines] 07:12:10 @more 07:12:10 @more 07:12:10 @more 07:12:10 @more 07:12:11 "masak" 457 07:12:12 @more 07:12:13 > a+4; 07:12:14 "pmurias" 404 07:12:14 @more 07:12:16 "g" 400 07:12:16 :( 07:12:16 @more 07:12:18 : parse error on input `;' 07:12:18 @more 07:12:19 "Weed" 334 07:12:20 @more 07:12:20 elliott: rate-limiting 07:12:22 "(" 286 07:12:22 @more 07:12:23 [3655 @more lines] 07:12:24 @more 07:12:26 @more 07:12:28 @more 07:12:30 Oh dear. 07:12:32 ... 07:12:34 Aw. 07:12:50 well I'll be off soon, someone else have to deal with it. 07:12:59 There's something to deal with? 07:13:04 There's something to deal with that you would be capable of dealing with? 07:13:17 yes and yes 07:13:24 What would that be? 07:13:49 the blackjack dealer 07:14:42 -!- sllide has joined. 07:14:54 itidus20: so something like 12-bar nano-stochastic lumberjack's swing. 07:15:24 it's a joke because of the word dealer used in another sense , and because of the implication that going off to gamble is a sign of not dealing with things very well 07:18:17 oh man you know what would be so awesome? 07:18:23 The various pictures I have sent to Jyte are missing there now. However, I still have copies of it in my computer 07:18:24 3d minesweeper with a projection that lets you see every surface at once 07:18:26 like on maps of the world 07:19:07 wouldn't that be mostly like normal minesweeper but with a different shape? 07:19:24 'different shape' changes a lot about how you play minesweeper 07:19:48 Different shape and presumably some wraparounding. 07:19:54 if a cell can have 7 or 9 or 11 adjacent to it instead of 8 you need new rules 07:20:15 still, saying it's a projection of a 3d surface doesn't really make it anything more than a different shape. 07:20:30 Patashu: ahh so like a continuous minesweeper surface.. some sort of torus? 07:20:34 Patashu: well if cells are squares then they would still have 8 adjacent ones... 07:20:42 http://www.software3d.com/Mines3D/index.php 07:20:43 This game 07:20:45 But change the perspective 07:21:02 CakeProphet, consider a cell in the corner of a cube and count the cells adjacent to it. I count 7, you? 07:21:29 Patashu: following your idea, what about minepsweeper played on a game of life that wraps around horizontally and vertically 07:21:35 been done too 07:21:42 Patashu: ah okay. 07:21:49 http://www.youtube.com/watch?v=7kVEdHSCwmg 07:23:45 the other thing I'd like for that program is, for the boards that have a hole in the middle, a hotkey to move your camera to the center looking outward 07:24:48 why does that when you could play a never-ending game of sierpinski's triangle minecraft. 07:27:57 surely someone has made minesweeper in minecraft... 07:28:25 http://www.youtube.com/results?search_query=minesweeper+minecraft&aq=f apparently so 07:28:38 -!- sllide has quit (Read error: Connection reset by peer). 07:29:20 can i assume you have all seen the minesweeper movie trailer 07:29:28 I have 07:29:34 right on 07:32:34 Why are you really here? 07:32:38 dunno 07:32:40 I want to make this land safe! 07:32:42 what 07:32:52 Why are you here soldier? 07:32:56 Because I'm bored! 07:33:01 Don't you ever forget that. 07:33:23 -!- aspect has left. 07:35:15 you scared away aspect 07:35:27 http://www.youtube.com/watch?v=LHY8NKj3RKs 07:35:57 itidus20: so it's kind of like folk noise pop? 07:36:22 i'm fond of nirvana 07:36:38 that's not folk noise pop. 07:37:03 i like the music in the film pulp fiction 07:37:14 i don't know if that is the same thing as it's soundtrack 07:37:29 well the intro is surfer rock. 07:37:41 dude 07:37:42 surf metal 07:37:47 I'm going to start a surf metal band. 07:38:00 psha 07:38:04 sour cereal band 07:38:58 i like ievan polkka 07:39:26 *distorted latin-influenced guitar licks with double bass pedals tapping out 32nd notes- GRRRRRRRRRRROOOOOOAAAAAAR. 07:39:28 oh uhmm 07:40:02 http://www.youtube.com/watch?v=CVAiGf-fku0 07:40:23 chances of anyone who clicks actually enjoying it are minimal. 07:43:17 *plays rapid palm muted licks while bending his vibrato arm while plugged into a maxed-out tremolo effect pedal* FEEEEEEL THE WAAAAVES ON YOUR SKIIIIIN. FEEEEEL THE SURF BLOOD IN YOUR VEEEEINS. UGH. 07:43:33 I have three arms. 07:45:56 all surf metal guitarists need a minimum of three hands. 07:46:20 it is suggested that drummers use all 8 limbs. 07:50:58 fizzie: You never told me how awful Google markup is. :/ 07:55:54 ?hoogle Maybe a -> [a] 07:55:54 Data.Maybe maybeToList :: Maybe a -> [a] 07:55:54 Data.Foldable toList :: Foldable t => t a -> [a] 07:55:54 Data.Maybe catMaybes :: [Maybe a] -> [a] 07:59:06 fizzie: I suppose your Perl script used gd? :p 08:08:00 Yes, it did. 08:08:28 I anallllized only the thumbnail images, incidentally. 08:11:08 *Main> head `fmap` (getSearchPage "hello world" >>= getThumbnails) 08:11:08 [152,152,152,255] 08:11:12 That looks a bit small, even for a thumbnail. :/ 08:11:38 I suppose I may have fucked up the parsing. 08:12:30 How does one force wget to succeed? I want to see if what I'm getting back is an error pag.e 08:12:31 page. 08:12:59 It's going "oh, this is all http forbidden, I'm not downloading the error page". 08:15:43 Hrm; curl fetches the error pages by default, don't know about wget. 08:15:51 I'll just use curl then. :p 08:17:33 Hrm; it does indeed appear to be the correct search page that's downloaded. 08:18:41 Aha, there we go. 08:18:44 I just had to flush the file. :p 08:21:25 -!- nooga has joined. 08:23:56 http://sprunge.us/BULB 08:23:59 This sure is a thing. 08:24:03 bulb 08:24:03 fizzie: I blame you for this. :p 08:25:09 I wonder if you can use the Google chart API to just give an image of a solid colour. 08:25:15 man Perl sure would be better for this. 08:25:25 It would be nicer than fiddling around with SDL or whatever just to display a solid colour. 08:25:40 CakeProphet: I am incredibly sceptical that Perl could do that in significantly fewer lines. 08:25:44 Ignoring the imports which are a bit excessive. 08:26:20 -!- zzo38 has quit (Remote host closed the connection). 08:30:16 well it would involve either a lot of short regex or some shitty library 08:30:32 but would probably be fewer lines of code, I guess. 08:30:34 -!- ineiros has quit (Remote host closed the connection). 08:31:06 but I wasn't really talking about lines of code. 08:31:40 hmmm, dunno it's probably the same. What you save in terseness with Perl you lose in debugging. 08:32:53 http://chart.apis.google.com/chart?chs=200x200&cht=lc:nda&chf=bg,s,ff00bb <-- that's pretty close to a 200x200 square with that color only. 08:32:54 -!- Jafet has joined. 08:32:57 http://chart.googleapis.com/chart?cht=p&chs=200x200&chf=bg,s,EFEFEF 08:33:06 fizzie: If you use the pie chart, all the border things go away. :p 08:33:14 This MAY be the ugliest hack ever. 08:33:20 So does the :nda suffix to a line chart. 08:33:40 =p is fewer bytes. :p 08:36:39 readImage :: FilePath -> IL (Array DIM3 Word8)Source 08:36:39 Reads an image into an RGBA array. Indices are (row,column,color-channel). 08:36:42 Oh, I just realised how horrific that API is. 08:36:48 Colour channel as the third dimension. :-| 08:39:20 It sounds typicalish; MATLAB image-reading functions tend to return a [height]x[width]x[samples-per-pixel] 'matrix' too. 08:39:22 > showIntAtBase 08:39:23 Overlapping instances for GHC.Show.Show 08:39:23 (a 08:39:23 ... 08:39:25 :t showIntAtBase 08:39:26 forall a. (Integral a) => a -> (Int -> Char) -> a -> String -> String 08:39:46 Bleh, I just want a padded hex. :/ 08:39:55 > ['0'..'F'] 08:39:56 "0123456789:;<=>?@ABCDEF" 08:40:00 D'aww. 08:40:37 > showIntAtBase 16 ("0123456789ABCDEF" !!) 99 "" 08:40:38 "63" 08:40:43 > showIntAtBase 16 ("0123456789ABCDEF" !!) 9 "" 08:40:44 "9" 08:40:49 > showHex 99 08:40:50 Overlapping instances for GHC.Show.Show 08:40:50 (GHC.B... 08:40:59 :t showHex 08:41:00 forall a. (Integral a) => a -> String -> String 08:41:03 "Oh." 08:41:05 > showHex 99 "" 08:41:06 "63" 08:41:06 > showHex 90 "" 08:41:07 "5a" 08:41:14 Very well, then. 08:41:29 Right, it's one of those ShowSeses. Doesn't pad either, of course. 08:43:20 > printf "%02x" 15 :: String 08:43:21 hex n = reverse . take 2 . reverse . ("0" ++) $ showHex n "" 08:43:21 "0f" 08:43:22 "Works." 08:43:27 fizzie: printf is grosse. 08:43:31 So unsafe. :/ 08:43:51 > printf "%02x" (print 99) () "hahaha" :: String 08:43:52 No instances for (Text.Printf.PrintfArg (GHC.Types.IO ()), 08:43:52 ... 08:44:00 OK WELL _THAT_ WOULD FAIL WOULDN'T IT :P 08:44:06 > printf "%02x" [99] () "hahaha" :: String 08:44:07 No instance for (Text.Printf.PrintfArg ()) 08:44:07 arising from a use of `Text.P... 08:44:12 > printf "%02x" [99] 99.999 "hahaha" :: String 08:44:13 Ambiguous type variable `t' in the constraints: 08:44:13 `GHC.Num.Num t' 08:44:13 ari... 08:44:19 > printf "%02x" [99::Int] (99.999 :: Float) "hahaha" :: String 08:44:20 No instance for (Text.Printf.IsChar GHC.Types.Int) 08:44:20 arising from a use of... 08:44:23 Suicide. 08:44:33 > printf "%02x" "foo" :: String 08:44:34 "*Exception: Printf.printf: bad argument 08:44:38 Thank you, sir. 08:45:48 _ <- 08:45:49 createProcess $ 08:45:49 (Process.proc "xdg-open" [chart ++ hex r ++ hex g ++ hex b]) { 08:45:49 std_out = CreatePipe } 08:45:53 What an ugly few lines. :/ 08:46:12 > let p :: Int -> String; p = printf "%02x" in p 8 08:46:13 "08" 08:46:13 > let p :: Int -> String; p = printf "%02x" in p "foo" 08:46:14 Couldn't match expected type `GHC.Types.Int' 08:46:14 against inferred type ... 08:46:21 fizzie: IT'S NOT RIGHT TO EVEN _IMPORT_ SOMETHING THAT BAD 08:46:26 You should totally use Pipe dude 08:46:27 Sure, sure. :p 08:46:34 Deewiant: Mo dependencies mo problems 08:46:53 99 problems but a Pipe ain't one. 08:46:59 Yes. Exactly. 08:47:20 It's less than 100 LOC :-P 08:47:56 100 lines of problem 08:48:07 100 lines of i mad. 08:49:26 elliott: he said *less than* 08:49:42 It'll be a hundred within the week. 08:49:47 oh? 08:50:08 I'll start depending on it and then find out it needs tons more features than it has and then eventually break down and write a patch myself. 08:50:14 -!- ineiros has joined. 08:50:47 elliott: keep it simple and so on 08:50:59 elliott: btw what are you trying to do? 08:51:10 Recreate this thing fizzie had in the logs once. Except it's not quite Perl. 08:51:25 Right now I'm at the exciting stage "wow, I totally don't know how HSV works". 08:51:28 Color name → RGB value via Google Image search. 08:51:56 ah 08:52:54 elliott: anyway I think I read somewhere that HSV -> RGB can be done with matrices. Or was it XYZ -> RGB maybe 08:53:00 It's RGB -> HSV I want to do. :p 08:53:04 Well, and the other way around, I suppose. 08:53:12 http://hackage.haskell.org/package/colour Oh, this looks nice. 08:53:16 well if you can do one with matrices then you could do the other I think 08:53:22 Mo dependencies mo problems? 08:53:26 Except it doesn't actually have HSV, oops. 08:53:33 Deewiant: Mo having to understand colours mo problems 08:53:39 elliott: http://en.wikipedia.org/wiki/HSL_and_HSV#Converting_to_RGB 08:53:39 I understand process spawning 08:53:54 It's a bit messy conversion, I wouldn't be sure it's linear. 08:53:59 http://hackage.haskell.org/packages/archive/colour/2.3.1/doc/html/Data-Colour-RGBSpace-HSV.html 08:54:04 Is that not HSV? 08:54:06 http://www.cs.rit.edu/~ncs/color/t_convert.html 08:54:11 fizzie: right, could have been XYZ -> HSV then maybe? 08:54:11 you're welcome. 08:54:18 Deewiant: That might be HSV. 08:54:46 I mean, it's icky procedural code but I'm sure you can map it to functional code. 08:55:00 Vorpal: Or XYZ <-> RGB; they're sort of related. 08:55:01 fizzie: right, it is XYZ<->RGB that is matrices 08:55:02 yeah 08:55:20 I see the wikipage has the matrix and all. 08:55:36 matrices are wonderful, there are so many cool things that you can do with them. 08:55:55 theres algos around on how to do RGB -> HSL 08:56:07 sorry i just don't like the term V 08:56:10 Mo matrices mo problems. 08:56:18 itidus20: hey look I totally linked one 08:56:18 Luminance is so fitting 08:56:37 HSL != HSV, conventionally. 08:56:43 oh.. shit 08:56:53 They're very close though. 08:56:55 thanks for the protip fizzie 08:57:10 instance Applicative RGB where 08:57:10 pure c = RGB c c c 08:57:10 (RGB fr fg fb) <*> (RGB r g b) = RGB (fr r) (fg g) (fb b) 08:57:12 The most useful instance 08:57:17 I have RGBs with function components ALL THE TIME 08:57:42 elliott: I mean... why wouldn't you? 08:58:24 Deewiant: I like how it doesn't expose any way to go from RGB->HSV or HSV->RGB. :/ 08:58:33 I mean, it has an RGB type, but the only exposed constructor is from HSV. 08:58:34 elliott: see link make your own 08:58:42 elliott: Um 08:58:47 elliott: hsvView :: Rgb a -> (a,a,a) 08:58:53 elliott: hsv :: a -> a -> a -> RGB a 08:58:59 elliott: Modulo spelling and instances 08:59:18 Deewiant: Yes, which will be id 08:59:22 you guys you can't take the remainder of the division of arbitrary words. 08:59:27 MODULO DOESN'T WORK LIKE THAT. 08:59:29 Unless hsvView (hsv h s v) /= (h,s,v) which would be insane. 09:00:17 It might be if they get normalized somehow in between and your initial values aren't 09:00:28 E.g. your h is 360 instead of 0 or something 09:00:42 But anyway, those two functions are exactly RGB->HSV and HSV->RGB 09:01:13 elliott: Why is one function using a tuple and the other not? How inconsistent. 09:01:16 Deewiant: Yes, but /there are no exposed constructors for RGB/. 09:01:32 The ONLY way to get an RGB is by converting it from HSV. The ONLY thing you can get out of an RGB is HSV values. 09:01:47 http://www.cs.rit.edu/~ncs/color/t_convert.html 09:01:48 http://www.cs.rit.edu/~ncs/color/t_convert.html 09:01:49 http://www.cs.rit.edu/~ncs/color/t_convert.html 09:01:54 Prelude Data.Colour.RGBSpace.HSV> hsv 99 99 99 09:01:54 RGB {channelRed = -6271.65, channelGreen = 99.0, channelBlue = -9702.0} 09:01:54 Prelude Data.Colour.RGBSpace.HSV> channelRed (hsv 99 99 99) 09:01:54 :1:1: Not in scope: `channelRed' 09:02:00 I suppose I could extract the data from "show"?????????? 09:02:10 read "RGB 1 2 3" 09:02:20 Oh, that type is exported by Data.Colour.RGBSpace 09:02:21 elliott: Or just impor Data.Colour.RGBSpace? 09:02:21 you could just write these two very simple algorithms in Haskell. 09:02:29 Which is conveniently not mentioned anywhere, and the module /source/ imports a different module 09:02:38 Wooooooooooooooooo /waves a little American flag 09:02:47 god bless haskell america 09:03:19 elliott: :i is your friend. 09:03:35 * elliott continues waving a little American flag 09:03:55 You're not allowed to wave an American flag while working with a module named "colour". 09:04:01 I mean wourking. 09:04:15 Now let's see if repa can go from (Array DIM3 Word8) to (Array DIM2 RGB) without, like, reallocating everything. (Probably: not.) 09:04:18 Actually hmm. 09:04:32 I should probably read my copied fizzie quotes on the actual algorithm to figure out whether I should even be doing that. 09:04:40 http://www.cs.rit.edu/~ncs/color/t_convert.html 09:04:46 * shachaf >>= undefined 09:04:54 CakeProphet: Are you trying to be really irritating? 09:05:03 shachaf: Is that, like, suicide? 09:05:03 elliott: why not just convert it to a spectrum of wavelengths and then to HSV from there? 09:05:07 God bless haskell america. 09:05:13 Vorpal: A practical solution. 09:05:20 elliott: absolutely! 09:05:38 22:34:39: GregorR: The statistics part was very very simple: it just converted all pixels to HSV, did separate histograms for H, S and V values, and interpolated the highest peak out of them histograms. 09:05:41 elliott: anyway why do you need RGB <-> HSV? 09:05:41 elliott: Leaving the Internet for any period of time? Pretty much. 09:05:45 Ah, histograms. The solution to every statistical problem. 09:05:53 Vorpal: Because it's part of The Algorithm. 09:06:09 You don't really need to follow The Algorithm, though. 09:06:09 elliott: the algorithm for what? 09:06:18 fizzie: The Prophets demand it. 09:06:27 fizzie: what algorithm? 09:06:35 The Algorithm. 09:06:38 elliott: histogram = fromListWith (+) . (`zip` repeat 1) 09:06:47 elliott: implementing some esolang? 09:06:58 Vorpal: The one to convert a set of images into a single RGB triplet. 09:07:05 (In some sort of meaningful way.) 09:07:17 elliott: can you do that w ith array thingies? 09:07:23 fizzie: heh? 09:08:11 Vorpal: See, the whole point is to determine the color of "foo" from a hundred or so Google image search results for the word. So you need some way to classify the "most prominent" color of the whole set. 09:08:20 ah 09:08:42 :t find 09:08:43 forall a. (a -> Bool) -> [a] -> Maybe a 09:09:16 fizzie: idea: for each colour, count pixels with that colour, return the colour with most pixels? 09:09:44 elliott: hi am I /ignore'd 09:09:51 sure, #fafafa and #fafafb for example would count as separate, so if you want to avoid that, maybe 09:10:07 Vorpal: That's certainly one way, but the whole 256*256*256-color RGB space will be rather sparsely populated by thumbnail-sized images. 09:10:11 CakeProphet: yes 09:10:26 fizzie: well yes, you could download the originals? 09:11:09 Vorpal: Sure, but that's annoying; it tends to run into all kinds of referer-checks and currently-down servers and whatnot. At least the thumbnails are always available. 09:11:11 ?pl \x -> fmap f (g x) 09:11:12 fmap f . g 09:11:16 true 09:11:22 elliott: I will stop trying to help then. 09:11:24 good night. 09:11:30 f .: g 09:13:27 Vorpal: Anyhow, what I did was to pick the most common H, S and V values for each image separately for each channel, and then take the weighted average over images, with weights derived from the standard deviation of hue, so that "single-colour" images (in some sense) got more weight. 09:15:18 fizzie: ah 09:15:27 fizzie: You lied, that's much more complicated than what you describe in this log. :p 09:15:54 elliott: Possibly I describe only the "color of a single image" case. 09:16:57 nextPageURI :: [Tag ByteString] -> Maybe URI 09:16:57 nextPageURI = 09:16:57 find isNextPageURI >=> 09:16:57 URI.parseURI . ("http://www.google.com" ++) . B8.unpack . fromAttrib "href" 09:16:57 where isNextPageURI link@(TagOpen _ _) = fromAttrib "id" link == "pnnext" 09:16:57 isNextPageURI _ = False 09:16:59 This could be prettier. :/ 09:17:08 If you want the details, for a standard deviation of hue (in degrees) of S, the corresponding weight W(S) = { 1 if S < 10; 0.02 if S > 50; linearly interpolated if 10 <= S <= 50 }. (Parameters selected using the Stetson-Harrison method.) 09:17:09 fizzie: You literally just say 09:17:09 22:34:39: GregorR: The statistics part was very very simple: it just converted all pixels to HSV, did separate histograms for H, S and V values, and interpolated the highest peak out of them histograms. 09:17:19 Yes, well, that's for one image. 09:17:25 Yes. Pah :P 09:17:32 Well, I need to concentrate on actually getting a hundred thumbnails first. 09:17:38 yay histograms 09:19:39 Incidentally, I think the newer MATLAB-dumping code was in order to fine-tune those parameters; I seem to have found a couple of color name lists (rgb.txt and some others), and I vaguely think I was going to use those as known targets to tune the color selection. 09:19:51 Possibly I never got around to it. 09:20:06 The rgb.txt names are somewhat nonsensical anyway. 09:20:58 fizzie: rgb.txt? 09:21:22 The X11 color name list. 09:21:24 ah 09:21:58 yeah those tend to be nonsensical beyond the basic colours iirc. 09:22:32 0,47,167,international klein blue 09:22:32 255,79,0,international orange 09:22:36 Heh. 09:22:45 190 190 190gray 09:22:45 190 190 190grey 09:22:45 211 211 211light grey 09:22:45 211 211 211LightGrey 09:22:45 211 211 211light gray 09:22:46 211 211 211LightGray 09:23:01 It also has spelling variants, sure; and those numbered darker variants. 09:23:06 22:37:05: Hahah, I still have a ~/.gcolor/ directory which has 100 megabytes of them thumbnails -- I was trying to make it better by fetching various lists of defined colors (wikipedia color names, X11 rgb.txt) and using that for training data, so I wanted a local cache of the images. 09:23:12 An remembering blast from the past courtesy past fizzie. 09:23:15 252 252 252 gray99 09:23:15 252 252 252 grey99 09:23:15 255 255 255 gray100 09:23:15 255 255 255 grey100 09:23:33 elliott: Ooh, I seem to have remembered right, then. 09:23:47 ~/.gcolor is gone now, though. 09:24:18 http://sprunge.us/KiUL ;; Well, it's progress. 09:24:30 It can now get the correct number of thumbnails for a given query, as (RGB) image arrays. :p 09:24:35 255,79,0,international orange <-- can't find that, which rgb.txt did you get that from? 09:24:42 Oops, except I forgot to s/100/pics/ in one place. 09:25:10 Vorpal: Like I said, there were multiple sources. Those are from "colors.wikipedia.txt", I don't recall how I collected those. 09:25:18 ah 09:25:26 http://en.wikipedia.org/wiki/List_of_colors maybe? 09:25:33 Yes, probably. 09:25:51 I'm not sure what's so international about that orange. 09:26:16 "Non-photo blue". 09:26:17 fizzie: So how long is your Perl stuff? :P 09:26:24 The one that actually worked, I mean. 09:26:26 Not that MATLAB stuff. 09:26:27 Long. 09:26:46 A specific answer indeed. 09:27:12 Almost 300 lines in all. 09:27:29 Hokay, so I guess I want (Image -> RGB Word8) now. 09:27:42 -!- derdon has joined. 09:27:43 fizzie: Aww, mine might actually end up longer, then. 09:28:30 I wonder what I should do with that pesky alpha channel. 09:28:32 Probably just ignore it. 09:28:49 -!- augur has quit (Remote host closed the connection). 09:28:51 leave it alone 09:32:11 elliott: maybe ignore completely transparent pixels at least? Since those probably aren't part of the "image as such". 09:32:59 Vorpal: Tooo much work. 09:33:06 At least for now. :p 09:34:09 No instance for (R.Elt (RGB Word8)) 09:34:09 arising from a use of `show' 09:34:10 Augh 09:34:17 repaaaaaaaaaaaaaaaaaaaaaaaaaaaa 09:35:29 * elliott just stores arrays of triplse instead 09:35:32 GHETTO. 09:35:35 s/triplse/triples/ 09:39:19 elliott: store it as (array of R, array of G, array of B) 09:39:46 Vorpal: No, that's awful. 09:39:51 right 09:39:53 bbiab 09:40:29 ?hoogle uncurry3 09:40:30 No results found 09:40:59 imageToHSV :: Image -> HSVImage 09:41:00 imageToHSV (Image img) = HSVImage (R.map f img) 09:41:00 where f = word . hsvView . (\(r,g,b) -> RGB r g b) . double 09:41:00 double :: (Word8,Word8,Word8) -> (Double,Double,Double) 09:41:00 double (r,g,b) = (fromIntegral r, fromIntegral g, fromIntegral b) 09:41:00 word :: (Double,Double,Double) -> (Word8,Word8,Word8) 09:41:04 word (h,s,v) = (round h, round s, round v) 09:41:08 fizzie: Behold the ELEGANCE OF HASKELL. 09:43:22 How very. 09:43:23 HASKELLEGANCE. 09:44:01 I'm kind of way to write the (HSVImage -> RGB Word8) enflattener right now, so it shall SIT AND MATURE. 09:44:14 But I shall be back to you very soon, dear code. 09:44:19 s/way to/way too lazy to/ 09:47:36 -!- augur has joined. 09:49:58 elliott: new idea: store it as bitplanes for each colour, like [[(R1,G1,B1),...],[(R2,G2,B2),...],...] 09:51:00 so the first "bitplane" contains the first bit of each colour, the second "bitplane" the second bit of each colour and so on 09:52:37 fizzie: It's too bad the whole thing is so ridiculously IO-bound, or I'd TOTALLY thrash you in the benchmarks. 09:52:52 (Also the "actually works with Google's current page" marks, which might be more important depending on your POV.) 10:00:01 elliott: I guess it would even be pointless to download in the background of processing? 10:00:11 Vorpal: Yes. 10:02:23 Maybe I should just take the mean H, mean S, and mean V rather than bothering with, you know, all that fizzie magic. (My laziness cannot even be quantified.) 10:02:25 -!- ineiros has quit (Remote host closed the connection). 10:04:30 not sure mean of those is all that useful though 10:05:14 At least for hue the regular mean is rather senseless, esp. for red images that straddle the 0/360 boundary. 10:06:11 For the other two the mean value could be something reasonable. 10:07:07 fizzie can't even BEGIN to comprehend how lazy I am. 10:07:57 You do get a color our of it in any case, so in that sense it could work. 10:09:13 [RGB {channelRed = 2.1418661116892126e-2, channelGreen = 2.122740927004503e-2, channelBlue = 2.122735673820327e-2},RGB {channelRed = 1.3108320251177395e-2, channelGreen = 1.2870692910211269e-2, channelBlue = 1.2870641916952748e-2}, 10:09:21 I... suspect something is going wrong. 10:10:17 Sounds quite black. 10:10:21 Unless "hello world" really is just the blackest concept. 10:10:43 it is so dark and grim you can't even begin to imagine 10:10:52 GRIMDARK. 10:11:02 fizzie: where is that from now again? 10:11:13 WH40K 10:11:17 ah right 10:11:29 wasn't there a gamed based on WH40K recently? 10:11:37 computer game I meant 10:11:45 Yes, and even more depending on what you mean by "recently" 10:11:57 Deewiant: like, last 6 months. 10:12:09 One reasonable approach for the image->color case could be to take the mean (possibly in the RGB space, it doesn't have the hue discontinuity problem) of the most likely Gaussian distribution to have yielded the image pixels, considering each pixel as an independent sample. 10:12:30 I think the second expansion to Dawn of War II came out within the last 6 months 10:12:32 Wait, that'd just be the mean. Never mind. 10:12:39 Space Marine came out like a few weeks ago 10:12:48 In the grim dark hello world there is only black. 10:12:58 `addquote One reasonable approach for the image->color case could be to take the mean (possibly in the RGB space, it doesn't have the hue discontinuity problem) of the most likely Gaussian distribution to have yielded the image pixels, considering each pixel as an independent sample. Wait, that'd just be the mean. Never mind. 10:12:58 Deewiant: ah yes I meant "space marine" 10:13:00 667) One reasonable approach for the image->color case could be to take the mean (possibly in the RGB space, it doesn't have the hue discontinuity problem) of the most likely Gaussian distribution to have yielded the image pixels, considering each pixel as an independent sample. Wait, that'd just be the mean. Never mind. 10:13:15 "You slip into the fabled blackdeath trance of the woegothics, quaking all the while in the bloodeldritch throes of the broodfester tongues. You advise the members of your Complacency not to be ala 10:13:15 rmed, as they chronicle the event in tomes bound in the tanned, writhing flesh of a tortured hellscholar, with runes stroked in the black tears bled from the corruption-weary eyes of fifty thousand imaginary occultists. 10:13:17 Thank god mathematics exists to give us more and more complicated ways of defining the mean. 10:13:20 But they fail to not be alarmed. 10:13:21 This is because, as is now painfully obvious to anyone with a brain, you have basically gone completely off the deep end in every way. 10:13:25 You have officially gone grimdark." 10:13:30 Oh no, I interrupted the quote. 10:13:42 OH NO 10:13:44 fizzie: that sounds lovecraftian 10:13:47 I managed to put a newline in the middle of "alarmed", so it was ruined anyhow. 10:14:00 * elliott weeps a tear for the newline. 10:14:03 A tear for the newline, wept. 10:14:15 I don't think "as is now painfully obvious to anyone with a brain" sounds especially Lovecraftian. 10:14:39 Also "basically gone completely off the deep end in every way". 10:14:48 Then this Cthulhu dude came and everyone went WACK. 10:14:59 It was, like, totally insane. Freakin' monster. 10:15:31 fizzie: I meant the bit before 10:15:58 I like how Vorpal devoted sixteen hours of his life to reading something he then promptly forgot and never picked up again. 10:16:13 Would that we all learned to manage time and memory in such a garbage-collection-friendly manner. 10:16:15 elliott: what do you refer to? 10:16:28 Vorpal: It's from the stuckhome. 10:16:36 fizzie: oh right 10:16:47 anyway, bbl university 10:17:27 It occurs to me that maybe my imageToHSV isn't quite right. 10:17:58 Specifically 10:18:03 where f = word . hsvView . (\(r,g,b) -> RGB r g b) . double 10:18:06 That truncation might be a bit iffy. 10:18:11 Anyway, maybe a GMM and then pick the mean of the highest-weight Gaussian, how would that sound like? It's almost like a soft clustering thing then. 10:18:42 I should probably learn what HSV values tend to actually look like. 10:18:50 I'm not a, you know, colour person. 10:19:24 It's not entirely well-established. The S and L components are often either [0, 1] or [0, 100] or [0, 255], while the H tends to be [0, 360]. 10:19:34 I should probably: check. 10:19:39 Or [0, 360) maybe. 10:20:18 (126,1,62),(127,1,78),(131,0,119),(131,0,132),(129,1,57),(128,1,82),(126,0,112),(123,1,82),(116,1,97),(112,1,70),(110,1,76),(114,1,64),(126,1,79),(130,1,52),(125,1,46),(120,1,43),(120,1,18),(120,1,36),(112,0,125),(120,1,33),(120,1,51),(122,0,118),(120,1,39),(124,1,42),(126,0,74),(128,1,32),(120,1,8),(120,1,13),(120,1,25),(113,1,98),(117,1,54),(119,1,80),(120,1,67),(120,1,69),(116,1,46),(120,1,20),(106, 10:20:18 1,34),(100,1,54),(120,1,21),(102,1,68),(110,0,96),(120,1,19),(122,1,57),(123,1,100),(116,1,68),(117,0,95),(124,0,86),(120,1,41),(128,0,102),(128,0,106),(120,1,19),(124,1,44),(118,1,42),(120,1,21),(120,1,32),(120,1,16),(120,1,16),(120,1,24),(120,1,18),(120,1,20),(120,1,12),(120,1,22),(120,1,10),(120,1,11),(120,1,9),(120,1,11),(118,1,25),(120,1,11),(120,1,22),(120,1,14),(120,1,16),(120,1,22),(133,1,64),( 10:20:19 130,1,43),(133,0,107),(132,0,100),(127,1,41),(128,1,77),(128,0,92),(122,1,39),(12 10:20:31 Uh. 10:20:38 Is my S on a different scale to my V? 10:21:05 It certainly looks rather binary. 10:21:05 (Also was it HSL or HSV you actually used, anyway? Da Log says HSV, but you know what past you is like.) 10:21:16 fizzie: Well, it's post-perhaps-unclever-truncation. 10:21:18 HSV probably, though it doesn't really matter all that much. 10:21:28 * elliott makes HSVImages Double-componente. 10:21:29 * elliott makes HSVImages Double-componented. 10:23:02 It's also possible that your hsvView expects to get an RGB constructed from [0,1]-ranged values, while whatever you use for reading the image returns integers in the [0, 255] range. 10:23:26 RGB {channelRed = 12, channelGreen = 57, channelBlue = 16},RGB {channelRed = 123, channelGreen = 122, channelBlue = 78},RGB {channelRed = 71, channelGreen = 95, channelBlue = 100},RGB {channelRed = 225, channelGreen = 227, channelBlue = 207},RGB {channelRed = 73, channelGreen = 181, channelBlue = 154},RGB {channelRed = 128, channelGreen = 123, channelBlue = 120},RGB {channelRed = 168, channelGreen = 17 10:23:26 9, channelBlue = 165},RGB {channelRed = 38, channelGreen = 73, channelBlue = 46},RGB {channelRed = 11, channelGreen = 17, channelBlue = 9},RGB {channelRed = 229, channelGreen = 237, channelBlue = 225},RGB {channelRed = 92, channelGreen = 117, channelBlue = 112},RGB {channelRed = 31, channelGreen = 32, channelBlue = 18},RGB {channelRed = 234, channelGreen = 244, channelBlue = 233},RGB {channelRed = 120, 10:23:27 channelGreen = 133, channelBlue = 63} 10:23:34 Eliminating the rounding seems to make everything 0kay. 10:23:45 Though of course that's still the ridiculous "mean of H, S, V" method. 10:31:50 -!- ais523 has joined. 10:31:56 hi ais523 10:32:33 -!- Phantom_Hoover has joined. 10:33:56 hi Phantom_Hoover 10:34:52 hi people who need hi saying to them 10:35:18 hi 10:36:08 hi ho, hi ho, 10:36:10 hi 10:36:15 hi 10:36:37 monqy, so when are we doing that staring collaboration. 10:36:46 Hisayers are like a more positive breed of naysayers. 10:37:24 all the time 10:37:30 it's a lovely word, hi 10:37:31 really lovely 10:37:37 definitely, one of my top words 10:37:38 in terms of 10:37:40 words that i like 10:37:51 hi is a Good Word 10:38:00 hi 10:38:07 hi 10:38:53 hi 10:42:02 elliott, what are other words that you like? 10:42:08 'Rabbit'? 10:44:08 hi rabbit 10:52:12 -!- ais523 has quit (Read error: Connection reset by peer). 10:53:02 -!- ais523 has joined. 11:08:29 -!- derdon has quit (Remote host closed the connection). 11:11:42 "The safest way through Mogadishu is escorted by Ethiopian and official Somalian troops, or African Union peacekeeping forces;" 11:11:45 Best holiday. 11:17:56 [genuine concern] 11:18:44 elliott: at what? 11:18:51 "The safest way through Mogadishu is escorted by Ethiopian and official Somalian troops, or African Union peacekeeping forces;" 11:18:51 Best holiday. 11:18:56 ah, I see 11:19:24 Something along the lines of "please don't go on holiday there". 11:19:55 Where's oerjan when you need to complain to him about a deficiency in the Haskell report? 11:22:21 ais523: can I have an asterisk? 11:22:34 * 11:22:36 * 11:22:39 thanks 11:22:46 would anyone like to buy an asterisk? I have one spare 11:23:01 Here, have three: ⁂ 11:23:33 Any copy-paste systems around that could select a single asterisk of an asterism? 11:23:55 -!- FireFly has joined. 11:23:59 probably not 11:26:18 darn, I don't think zippers are monads 11:27:29 perhaps not even applicatives 11:36:01 Zippers are the things that tell you where stuff is, right/ 11:36:28 deep 11:36:46 Where are we all, man? 11:37:07 deep 11:39:29 We're all just specks in that great zipper of the universe. 11:39:50 What _are_ zippers, really? 11:39:55 And what _is_ life? 11:40:17 Life is an algebraic data structure, duh. 11:41:05 Thanks, Conway. 11:41:36 I think I remember reading something about zippers and comonads? I forget what or where it was. 11:41:36 Hashlife is the key to existence. 11:41:56 Comonads are monads the other way round, then? 11:42:27 They are the least confusing thing ever, and tutorials on them are so scarce as to be nearly nonexistent. 11:42:32 ?unmtl StaetT s Cont 11:42:32 StaetT s Cont 11:42:39 ?unmtl StateT s Cont 11:42:39 err: `StateT s Cont' is not applied to enough arguments. 11:42:42 ?unmtl StateT s Cont a 11:42:42 err: `Cont (a, s)' is not applied to enough arguments, giving `/\A. (A -> (a, s)) -> (a, s)' 11:42:46 ?unmtl StateT s (Cont r) a 11:42:47 s -> (a -> s -> r) -> r 11:42:55 ?unmtl ContT r (StateT s) a 11:42:55 err: `StateT s r' is not applied to enough arguments, giving `/\A. s -> r (A, s)' 11:43:01 >_< 11:43:03 ?unmtl ContT r (State s) a 11:43:03 (a -> s -> (r, s)) -> s -> (r, s) 11:53:25 * Phantom_Hoover → Ireland 11:53:27 -!- Phantom_Hoover has quit (Quit: Leaving). 11:58:45 -!- oerjan has joined. 11:59:13 hi oerjan 11:59:19 hi elliott 11:59:36 hi oerjan 11:59:51 * oerjan swats elliott -----### 11:59:56 :'( 12:00:01 i mean hi 12:00:28 :'( 12:01:28 :t M.insertWith 12:01:29 forall a k. (Ord k) => (a -> a -> a) -> k -> a -> M.Map k a -> M.Map k a 12:01:32 the beatings will continue until morale improves 12:01:39 :'( 12:01:45 im not going to stop the cry 12:03:16 10:03:57: ^bf --[>-<-------]>+.----.+.+++.+.-.---. 12:03:31 that looks distinctively short for oklopol 12:03:52 !bf --[>-<-------]>+.----.+.+++.+.-.---. 12:03:53 oklopol 12:04:06 oh hm it's using wrapping 12:04:41 division by 7, bf_txtgen doesn't do that sort of thing 12:06:05 so basically it just starts with the optimal 'o', then adjusts that 12:06:57 -!- ineiros has joined. 12:07:02 okokokokok 12:07:04 kokokoko 12:07:06 kpkps 12:07:09 oklopol: im fail 12:09:17 primitive ptr_to_int "unsafePtrToInt" :: a -> Int 12:09:17 bothtruth2:: Bool -> Bool -> Bool 12:09:17 bothtruth2 a b = a `seq` b `seq` (ptr_to_int a - ptr_to_int False) + 12:09:17 (ptr_to_int b - ptr_to_int False) == 12:09:17 2*(ptr_to_int True - ptr_to_int False) 12:09:18 hi oerjan 12:10:19 Where's oerjan when you need to complain to him about a deficiency in the Haskell report? 12:10:22 slepping 12:10:52 YOU'RE a slep 12:12:14 im a slep 12:12:17 -!- monqy has quit (Quit: hello). 12:12:54 rip monqy "a slep" 12:14:45 why can't every OS have @'s IO system :( 12:14:59 -!- oerjan has quit (Quit: Help I'm abducted by the reboot mafia). 12:18:18 ais523: you missed a spam link 12:18:23 in WLaquitaCuevasa 12:18:34 go fix it for me, if you want the page around so much 12:18:41 I'm doing so 12:18:43 I was just letting you know 12:18:58 oh, hmm, actually you didn't 12:19:04 why do you like the page, btw? because it's almost ontopic? 12:19:14 because it's amazing 12:19:19 "However, some builders of Python and other languages disrespect PHP developers and deal with us like children of a lesser God. I have previously witnessed some Python developers particularly engaging in dislike speech towards PHP builders, in all probability because they do not have an understanding of why PHP received so well-known." 12:19:28 i want to know who wrote this pro-php rant 12:19:44 and also, who thought it'd be helpful for spam in any way whatsoever 12:19:49 I think it's the same spambot that was spamming Google 12:19:57 as in, "Google is a search engine http://google.com" 12:20:01 not exactly like that, but close 12:20:04 useful information 12:20:35 -!- oerjan has joined. 12:21:53 helo oerjan 12:21:59 ehlo elliott 12:22:39 -!- Jafet has quit (Ping timeout: 276 seconds). 12:23:11 I should read up on how GHC's event manager thing works, I wonder how similar it is to @ IO 12:24:30 -!- derdon has joined. 12:25:04 that would depend how much you steal from it, i think 12:25:29 oerjan: You might consider only using the EHLO verb if the greeting included the "ESMTP" string, that way you won't hit so many problems with old-fashioned IRCers that don't understand it. 12:25:42 fizzie: ah. 12:26:14 i don't think elliott counts as an old-fashioned IRCer, anyhow 12:26:37 hi 12:26:42 de ho 12:26:57 -!- derdon has quit (Remote host closed the connection). 12:27:38 oerjan: Well, he didn't list the extensions he supported after your EHLO. Though I suppose it could be he only implements the mandatory commands. 12:28:07 ic 12:28:28 whats a really dumb mail server that doesnt know a lot and forgets messages a lot, im that mails erver 12:29:19 If you were often infested by worms, I'd say Sendmail. 12:29:23 o 12:30:42 Maybe "has opinions and is not afraid to share them" qmail could fit. 12:31:04 elliott: cat 12:31:13 admittedly, it's not very good as a mailserver at all 12:31:26 but it succeeds at "really dumb", "doesn't know a lot", and "forgets messages a lot" 12:31:31 i like cats 12:31:57 "cat --herd" should do something. 12:32:07 implementing lambda without lambda is a difficult :( 12:32:41 Uh, GNU cat accepts the options AbeEnstTuv. That's a lot of options for a cat. 12:32:42 elliott: you're getting dangerously close to my current Feather problem there 12:33:12 cat --meow 12:33:21 ais523: well, I think I've managed to do it 12:33:39 what did you implement it in terms of? 12:34:11 vau, if, eq?, quote, (), cons, car, cdr, eval 12:35:06 hmm... you could eliminate quote if you made () self-evaluating :) 12:35:17 what does vau do again? 12:35:19 they should expand to Abel Ernst Tuv so that it sounds like a norwegian name 12:35:59 ais523: construct fexprs; they're like functions, but they receive their arguments as code, not evaluated 12:36:09 or, in other words, a function is an fexpr that receives all its arguments pre-evaluated 12:36:22 aha, so it's a generalisation on top of call by name 12:36:41 it's similar; you can't deconstruct the ast of your argument in most call-by-name languages, though :) 12:36:45 because as well as evaluating 0, 1 or more times, you can choose to do other things instead 12:36:51 oerjan: Unfortunately it would then be AbeElnrstTuv, because they insist on alphabetical order. 12:36:53 and with vau you have to explicitly eval, it's never "implicit" 12:36:57 although that's more of a library thing 12:37:00 um call by name preserves scoping, doesn't it, which is more than passing things unevaluated... 12:37:29 well, vau is hygienic by default in kernel 12:37:32 aha 12:37:38 it gets an environment parameter 12:37:50 obviously you can break the hygiene since you can evaluate anything in the environment 12:37:55 but it doesn't just throw away the scope 12:38:00 I think you can make it unbreakably hygienic 12:38:27 but I'm not sure that pays off 12:38:50 ais523: wow, the IE in Windows 8 isn't going to support plugins 12:39:10 does IE9 in Windows 7 support plugins? IIRC yes but hardly anyone uses them 12:39:13 well, the Metro IE, but afaict Microsoft wants absolutely everyone to use Metro (it's that tablet-esque UI) 12:39:27 ais523: Yes, absolutely nobody uses Adobe Flash or Acrobat Reader. 12:39:32 Oh, wait, sorry, no, everyone does. 12:39:37 oh right, that sort of plugin 12:39:42 I thought you meant add-on, Firefox-style 12:39:45 ah 12:39:59 to be fair, Acrobat works just as well outside the browser as inside, and arguably better 12:40:11 Acrobat works terribly everywhere, but that's not really the point :P 12:40:13 the keyboard controls are much clearer as you don't have two programs competing with each other 12:40:17 * elliott wonders if Microsoft are deliberately trying to annoy as many people as possible 12:40:41 the thing that amuses me about Metro is that Microsoft have seen Ubuntu going down the path of a UI everyone hates, and decided to copy it 12:40:42 I mean, they just disabled Adobe's two most popular products 12:40:52 not completely, but the same sort of idea 12:40:57 Our local Ubuntu installation has changed so that PDFs now open inside the browser; it works for one (1) PDF, after that it only opens a blank window. 12:40:58 it is somewhat annoying that ^W doesn't work inside the reader 12:42:32 Flash is mostly used for video nowadays, rather than its original intended purpose 12:42:59 so I suppose that replacing that with HTML5 could work, but IIRC Microsoft's implementation of HTML5 video is incompatible with other browsers' due to an argument over standards 12:43:02 Damn that PH going off to Ireland, I can't contract him for hire to write my Haskell for me now. 12:43:23 * ais523 vaguely considers a "take that back!" comment 12:43:29 I still see flash-for-navigation-and-content-and-everything sites here and there. 12:43:30 but I think we came to an agreement about that already 12:43:33 ais523 is going to call this excessive, but it is very much deserved. 12:43:38 Aww, too slow. 12:43:48 Sorry PH I take it back your damnation is undone. 12:43:54 You will instead go to puppy heaven. 12:44:03 Why was my first, immediate thought after "Damn that PH going off to Ireland, I can't contract him for hire to" that "oh, it's about an assassination"? 12:44:04 fizzie: I don't, mostly because I literally wouldn't notice 12:44:26 fizzie: Well, it /is/ me. 12:44:38 ais523: I've had the occasion to browse websites of hotels; quite many of those are, with no fallbacks. 12:44:42 the name "Scots" comes from an Irish tribe 12:44:49 fizzie: how bizarre 12:45:13 normally when I come across a site like that, I just think "it's broken", and possibly enable JS experimentally if I really care badly about viewing the site 12:46:43 I suppose I should make a list of what HTML features I consider as "generally makes a website look nicer/easier to read" and "generally annoys me" 12:46:53 I think even is sort-of on the borderline ther 12:46:55 *there 12:47:04 seeing images is important on many sites, but I don't like the unnecessary overuse of them 12:47:15 on most webforums, I use AdBlock Plus to block avatars 12:47:29 -!- MSleep has changed nick to MDude. 12:47:34 most forums let you disable display of avatars natively 12:47:50 that requires having an account there 12:48:09 not necessarily, you could just steal one 12:48:54 *that requires being logged in there 12:50:09 -!- DH____ has joined. 12:51:32 I'm tempted to go all "not necessarily, some may stuff options into a permacookie". 12:51:50 vacuum has some really terrifying types 12:52:42 but at least there's no pressure to make you use them 12:52:54 vacuum :: a -> IntMap HNode 12:52:54 Vacuums the entire reachable heap subgraph rooted at the a. 12:52:54 vacuumTo :: Int -> a -> IntMap HNode 12:52:54 Stop after a given depth. 12:52:54 getClosure :: a -> IO Closure 12:52:56 getInfoPtr :: a -> Ptr StgInfoTable 12:52:58 AHHH YES THANK YOU FOR THE NIGHTMARES 12:53:03 at least getClosure is in IO 12:53:09 -!- ais523 has quit (Remote host closed the connection). 12:53:23 -!- ais523 has joined. 12:53:28 `log deployment 12:53:33 2011-02-02.txt:22:59:14: Ilari: Oh, and there's a set of TeliaSonera "IPv6 Deployment Plans" slides from RIPE-49 (September 2004) that say "We want to have support for IPv6 in all of our IP Networks both Mobile and Fixed within two years". :p 12:53:36 `log deployment 12:53:40 2007-07-18.txt:05:12:03: #esoteric is a channel on irc.freenode.net. The topic is '+++++++++++++++[>++++++>+++++++>+++++++>++<<<<-]>------.>>-.---.>++.<<.+++++.++++++.>.<--.----.<+++++++++++++.>++++++.>++++.++++++.-.<<.>>--.>.<----.<+.<+.>>>.<--.<------.+++. esoteric programming language design and deployment' 12:53:41 `? welcome 12:53:43 Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page 12:53:53 just wanted to make sure I had the wording right 12:54:03 for what? 12:54:18 -!- ais523 has set topic: Freudian armchair psycho-babble | It is the 90s and there is time for an international hub for esoteric programming language design and deployment @ Hel/Finland on 3.10.2011: https://wiki.helsinki.fi/display/lambda/esoteeriset+ohjelmointikielet | god bless haskell america | 12345678!& | http://codu.org/logs/_esoteric/. 12:54:26 !bf +++++++++++++++[>++++++>+++++++>+++++++>++<<<<-]>------.>>-.---.>++.<<.+++++.++++++.>.<--.----.<+++++++++++++.>++++++.>++++.++++++.-.<<.>>--.>.<----.<+.<+.>>>.<--.<------.+++. 12:54:26 The international hub for 12:54:26 the topic had been like that for too long 12:54:57 hah, is the 12345678!& bit in the topic for elliott to copy/paste from? 12:55:19 correct 12:55:20 maybe 12:55:48 !bf_txtgen 1234567*!& 12:55:51 ​66 ++++++++++[>+++++>++++>+++>+<<<<-]>-.+.+.+.+.+.+.>++.>+++.+++++.>. [838] 12:55:58 I wonder what the best algo for bf_txtgenning is 12:56:01 oerjan: Delayed groan. 12:56:05 that one definitely isn't it 12:56:15 fizzie: i thought no one got it... 12:56:30 ais523: pebble does fairly well, I think 12:56:37 there's provably no best algorithm though, I think 12:56:42 also, what was toBogE? I've forgotten 12:56:44 (Delay was due to a visiting supervisor.) 12:56:48 bad 12:56:58 Seems like an evil clone of EgoBot from the mirror universe. 12:56:59 oerjan: i just ignored 12:57:05 O KAY 12:57:33 elliott: well, depends on what you mean by "best" 12:57:33 but yes, brute-force works up to the point your termination-tester stops working 12:57:37 it was immibis, enough said 12:57:37 `? 12:57:39 ? ¯\(°_o)/¯ 12:57:42 I wonder what the best algo for bf_txtgenning is <-- kolmogorob complexity, dude 12:57:45 *v 12:57:51 `? 12:57:52 ? ¯\(°_o)/¯ 12:57:59 ais523: what are you doing? 12:58:01 oh, is that an error message 12:58:05 elliott: trying to get random log lines 12:58:09 ais523: with the learndb? 12:58:11 FAIL 12:58:11 yep 12:58:14 ah, I see 12:58:18 `log 12:58:22 2010-08-23.txt:02:17:05: and i have 0 interest in windows compatibility <--- wait, didn't you say cfunge was stupid because it didn't support windows at one point 12:58:26 `log 12:58:30 2010-08-22.txt:02:29:39: I think the fundamental feature is connecting to the IRC server? 12:58:33 haha, the one from you wasn't even by you 12:58:39 `log 12:58:42 2010-08-31.txt:15:29:35: std, I think. 12:58:53 `log 12:58:56 2010-10-25.txt:19:37:58: Mental note: Punxsutawney: avoid. 12:59:08 !bf +++++++++++++++[>++++++>++>+++++++>+++++++>++++++++>+++++++<<<<<<-]>------.>>-.---.<++.>>.+++++.>----.<<.>>--.<.<----.>>++.>.<<+.-.<.>--.<<.>>>>-.<+.<<+.<.>++++.>+++.+++. 12:59:08 The international hub for 12:59:15 Slightly shorter with "-t 6". 12:59:17 `ls wisdom 12:59:18 augur \ c \ elliott \ everyone \ finland \ friendship \ gregor \ hackego \ haskell \ ievan \ intercal \ itidus20 \ monad \ monads \ monqy \ oerjan \ oklopol \ qdb \ qdbformat \ sgeo \ shachaf \ u \ vorpal \ welcome \ wiki 12:59:33 `? qdb 12:59:35 qdb is used like: `quote regexp; `quote id; `addquote ...; `delquote id; `pastequotes regexp; `pastenquotes [n]; see also qdbformat 12:59:35 ais523: quick, write yourself a one-line biography 12:59:41 !bf ++++++++[->+>++++++<<]>[->.+<] 12:59:42 01234567 12:59:44 does it have to be accurate? 12:59:47 ais523: no 12:59:49 !bf ++++++++[->+>++++++<<]>[->+.<] 12:59:49 12345678 12:59:55 and how do you add qdb entries? 12:59:56 `learn qdb is used like: `quote; `quote regexp; `quote id; `addquote ...; `delquote id; `pastequotes regexp; `pastenquotes [n]; see also qdbformat 12:59:57 I knew that. 13:00:02 ais523: addquote 13:00:15 umm, I meant bio/learndb entries 13:00:24 even though that's not what I said 13:00:43 there is a hint in the past few lines :P 13:00:56 also enlightening: 13:00:58 `cat wisdom/wiki 13:00:59 The wiki is at http://esolangs.org/wiki 13:01:07 (note first word differing from topic) 13:01:10 ah, hmm, you have to echo the file in by hand? 13:01:15 ... 13:01:16 `learn qdb is used like: `quote; `quote regexp; `quote id; `addquote ...; `delquote id; `pastequotes regexp; `pastenquotes [n]; see also qdbformat 13:01:19 you _are_ blind, right? 13:01:24 that explains how to use the qdb 13:01:32 that's not the same thing as the learndb, is it? 13:01:36 /facepalm 13:01:39 oerjan: facepalm time 13:01:43 oh, the see also 13:01:44 synchronised facepalming gogogo 13:01:47 ais523: facepalm 13:01:49 `? qdbformat 13:01:50 qdbformat is: message; * nick action; two spaces between messages; all elisions marked with [...] other than irrelevant intervening messages; for messages separated by elision, one space on each side, not two 13:01:56 wait, no 13:01:57 you have _no idea_ how hard i am facepalming 13:02:07 Three-hand facepalm time? 13:02:11 Yes. 13:02:13 Make it happen. 13:02:28 elliott: whatever you think the obvious clue is, I can't see it 13:02:40 ais523: The "`learn" part, perhaps? 13:02:43 also, there's a subversion of the "two spaces between messages" in there somewhere, I used a sequence of Unicode spaces that added up to two 13:03:02 fizzie: well, HackEgo wasn't responding in any useful way 13:03:28 `learn ais523 ais523 is ais523. This topic may retroactively become more informative if or when Feather is invented. 13:03:30 I knew that. 13:03:34 fail 13:03:46 `? ais523 13:03:48 ais523 ais523 is ais523. This topic may retroactively become more informative if or when Feather is invented. 13:03:54 or is your name "ais523 ais523"? :P 13:04:07 wait, that error message is singularily useless 13:04:11 given that it happens even on success 13:04:14 `learn ais523 is ais523. This topic may retroactively become more informative if or when Feather is invented. 13:04:15 I knew that. 13:04:18 ais523: who says it happens on failure? 13:04:20 `? ais523 13:04:22 ais523 is ais523. This topic may retroactively become more informative if or when Feather is invented. 13:04:26 elliott: it looks like a failure message 13:04:40 ais523: the bug is your preconceptions :) 13:04:51 `forget ais523 13:04:53 Forget what? 13:04:56 `learn ais523 is ais523. This topic may retroactively become more informative if or when Feather is invented. 13:04:58 I knew that. 13:05:00 See, it's very consistent. 13:05:02 pretty much every learndb bot I've ever seen has actually given useful messages 13:05:11 NO THAT DOES NOT COUNT AS USEFUL 13:05:12 ais523: this is #esoteric, we do things differently around here 13:05:59 I still don't think it's reasonable to expect me to deduce how the bot works from a sequence of misleading and unhelpful messages 13:07:13 I think #nethack's qdb and learndb are both better 13:08:05 what's wrong with our qdb? 13:08:22 `learn oerjan, Your future evil overlord, is an expert in lazy computation. 13:08:24 I knew that. 13:08:27 `? oerjan 13:08:29 oerjan is just zis guy, you know? 13:08:32 wat 13:08:41 i thought there was a syntax for that 13:08:46 `? oerjan, 13:08:47 oerjan, Your future evil overlord, is an expert in lazy computation. 13:08:52 `forget oerjan, 13:08:54 Forget what? 13:08:59 oerjan: try echo :P 13:09:11 learn is not going to start parsing punctuation to figure out what you mean 13:09:21 "`run echo '...' >wisdom/x" works for non-standard usage 13:09:27 elliott: i had somehow got the impression it already did 13:09:38 ais523: anyway, what's wrong with our qdb? 13:10:00 well, the one for #nethack (and related channels) is http://qdb.rawrnix.com 13:10:05 which seems to be running the same software as bash.org 13:10:15 so it has things like voting on quotes, etc 13:10:17 ais523: that's clearly inferior to an irc-based system for convenience 13:10:27 there's an IRC-based system linked to it 13:10:28 `run echo "Your future evil overlord oerjan is an expert in lazy computation." >wisdom/oerjan 13:10:30 No output. 13:10:37 `? oerjan 13:10:39 Your future evil overlord oerjan is an expert in lazy computation. 13:10:51 Also "voting", what are we, a democracy? 13:10:53 oerjan: I distinctly prefer the older version :P 13:11:03 elliott: KNEEL, SCUM 13:11:08 fizzie: well, it's more for identifying which are actually good 13:11:17 or rebel, whatever 13:11:18 ais523: we have a system to do that, it's called `delquote 13:11:48 oh 13:11:50 elliott: but there's more shades of good in quotes than true and false 13:11:50 that again 13:11:55 `log 13:11:58 2007-02-22.txt:15:44:55: what is V? 13:12:01 ais523: we specialise in only the best 13:12:11 `pastequotes 13:12:12 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.21755 13:12:14 but the less good ones that are still good can be fun to read too 13:12:25 I wonder if quote one will ever be deleted 13:12:37 it's not very funny, but it would feel wrong 13:12:52 it's more funny than most of them 13:12:58 No it's not. 13:13:04 especially the early ones, most aren't very good at all 13:13:14 The recent ones have been pretty consistently funny, IMO. 13:13:19 I think #nethack's qdb and learndb are both better <-- suddenly ais523 somehow resembles zzo 13:13:32 Anyway, adding new good quotes is far superior to decreasing the visibility of bad ones. 13:13:45 `quote 109 13:13:46 oerjan: You just reminded me of http://www.ozyandmillie.org/d/20020318.html 13:13:47 109) let's put that in the HackEgo quotes files, just to completely mystify anyone who looks back along them in the future 13:13:53 `quote 13:13:55 326) okay see in my head it went, you send from your other number smth like "i'd certainly like to see you in those pink panties again" and she's like "WHAT?!? Sgeo took a pic?!?!?! that FUCKING PIG" 13:13:59 `quote 13:14:00 113) I seem to think of coaxial cables as being omnipotent somehow. 13:14:02 `quote 13:14:04 141) AnMaster: to any airbus plane. 3 passengers sadly died the most awesome thing ever. 13:14:11 See, a fungot quote in three. 13:14:15 That's quality. 13:14:22 `quote 13:14:23 185) Phantom_Hoover: Don't be nasty; he's a lunatic, not a murderer. 13:14:27 fizzie: Also the fungot; where is it. 13:14:28 it's not as good as most of the other fungot quotes in there 13:14:31 `quote 13:14:33 619) I tend to debase64 with perl -MMIME::Base64 -e 'print decode_base64("...");', because at least PERL stands for "PERL ein't-no ruddy-poo lol-GNU". 13:14:41 `quote 13:14:42 609) They're (according to current plans/rumours) going to release a grand total of approximately 1.1 MeeGo devices; the N9, plus the N950 "developers only" phone, which I'm counting as 0.1 because (even though it is a MeeGo device) it's not going to actually be released. 13:14:56 It has gone -> RAW >>> :leguin.freenode.net NOTICE fungot :Server Terminating. Received SIGTERM <<< 13:14:57 well, /I/ laughed 13:15:08 `quote 13:15:09 fizzie: that's, umm, bizarre 13:15:10 67) hmm, this is hard 13:15:13 fungot killed the server? 13:15:14 `quote 13:15:16 446) so about jacuzzis, do they usually have a way to make it it not heat but freeze the water? 13:15:19 `quote 13:15:21 615) I think Perl is a programming language too. [...] 13:15:26 ais523: we just need to filter out all the old quotes 13:15:31 or at least bias heavily against them 13:15:35 `quote 135 13:15:37 135) like, just like I'd mark "Bob knob hobs deathly poop violation EXCREMENT unto;" as English alise: that's great filler ais523: well it contains all the important words in the english language... 13:15:40 /or/, add a bunch of new quotes so that we're more likely to get new ones 13:15:40 the best quote there 13:15:49 ridiculous, there are far better quotes 13:15:50 ais523: Freenode killed the server, I believe. That's a notice from the server to fungot about it. 13:16:08 -!- fungot has joined. 13:16:24 `quote arrow 13:16:25 663) You know how the arrow pierces your skin, rearranging and randomizing vital internal structure? Monads are like that, only worse. 13:16:38 `quote 188 13:16:40 188) "Europe is the national anthem of the Republic of Kosovo." alise: I I was going to say something then your last line floored me 13:16:42 I like that too 13:17:48 `quote 13:17:49 147) alise: mainly it's the fact it blows so hard i cannot avoid hitting the walls of the thing, which completely goes against my basic public toilet hygiene principles 13:17:56 also, we need to get cpressey back in here 13:18:01 `quote 208 13:18:02 208) ais523: my nose feels like a bad heuristic 13:18:03 having time to actually do things be damned 13:18:11 take that back 13:18:27 daming abstract concepts doesn't really make sense at all 13:18:41 daming 13:18:46 making them become dames? 13:18:52 *damning 13:19:14 602) im sampling ultra hip holiday hes the boogie woogie santa clause switching to oktoberfest yes i would love to shop to this 13:19:14 See, these are quality quotes. 13:19:22 `quote 288 13:19:24 288) ais523: Maybe it is better, because I don't think the octopus will live very well in the tree. But the difference is that the Internet is lying and you cannot see such things; you could make modified picture, though, in order to lie more clearly, at least. 13:19:28 that's probably the best zzo one 13:19:29 As long as monqy is here we will have a guaranteed supply of above-average quotes for the rest of our lifetimes. 13:19:50 606) elliott_, oh they are people known in the ruby community? Vorpal: Uh... you mean Hannah Montana? elliott_, yeah. And Zed Shaw. Either they are that or they come from popular culture. 13:19:55 Also, as long as Vorpal is here. 13:20:06 `quote 300 13:20:08 300) My STRN.G detects runoff strings that haven't been terminated but would hit a zero after wrapping and tries to allocate the 16+-gigabyte-stack required 13:20:13 I like that one because of the thought involved 13:20:33 just like implementing the + in HQ9+, but more awesome 13:20:38 648) according to physics and maths can we theoretically have a box with infinite cookies inside? 13:20:38 Also iti. 13:21:58 itidus20: sadly, no. it would collapse into a black hole. 13:22:22 610) game where you flip a coin but it's really really big 13:22:22 GOOD. QUOTES. 13:22:44 are we sure that the accumulator in HQ9+ is program-specific? 13:22:58 coppro: ooh 13:23:05 574) What is it with Cardassians, they're all really nice and then they hit you with a rock. 13:23:06 QUALITY 13:23:07 QUOTES 13:23:08 coppro: oh my 13:23:50 it's all in the "ass" part 13:24:58 coppro: I'm trying to think of a suitable substrate to implement global HQ9+ on, now 13:25:28 I know there's plenty of substrates that let you insert data immutably and address it by hash globally, but are there any that permit a mutable reference? 13:25:41 I mean, that are properly distributed beyond just being "an HTTP server". 13:25:52 I don't think freenet or Tor or anything offer that. 13:27:07 -!- Zuu has quit (Ping timeout: 244 seconds). 13:27:23 V. disappointed that you're not all looking into this for me. 13:28:23 just write it in Network Headache? 13:28:47 (fun question: can an HQ9+ interp be written in Network Headache that always works regardless of what other programs are doing? my guess is no, but I'm not sure) 13:28:55 but there isn't a proper Network Headache implementation, either 13:28:58 it needs the same sort of substrate 13:30:06 just write a self-interp, then push the lack of decentralized control backwards to infinity 13:30:11 (note: wouldn't actually work even in Feather) 13:30:47 `quote 460 13:30:49 460) meanwhile, I've been running a program for over 24 hours (getting close to 48 now) which is calculating digits of pi, in binary so far, it has found four digits I hope it will find the fifth some time this week 13:30:50 ah, the nostalgia 13:30:59 did it? 13:31:05 no, the computer crashed first 13:31:08 nice 13:33:16 `quote 526 13:33:18 526) ais523, how are we supposed to guess before you tell us unless you give us more hints? 13:33:20 secret project reference? 13:33:28 yes 13:33:41 hmm... I think tahoe-lafs may implement the necessary operations to allow Cloud HQ9+ 13:33:46 I need to start working on that again at some point 13:34:02 hopefully implementing UNIX sockets will be enough to get pulseaudio to work 13:34:26 I'm, umm, not sure there's a "main" tahoe-lafs network nowadays though 13:34:41 ISTR the test grid was shut down 13:34:46 `quote 549 13:34:48 549) beautiful summer / fuck fuck fuck fuck fuck fuck fuck / fuck fuck fuck fuck fuck 13:34:50 wow, I remember that 13:34:57 `log beautiful summer / fuck fuck fuck fuck fuck fuck fuck / fuck fuck fuck fuck fuck 13:35:00 2011-09-15.txt:13:34:57: `log beautiful summer / fuck fuck fuck fuck fuck fuck fuck / fuck fuck fuck fuck fuck 13:35:01 maybe because it was mere weeks ago 13:35:07 possibly the best haiku ever mentioned in this channel 13:35:10 HackEgo... 13:35:16 `log beautiful summer / fuck fuck fuck fuck fuck fuck fuck / fuck fuck fuck fuck fuck 13:35:19 2011-09-15.txt:13:34:57: `log beautiful summer / fuck fuck fuck fuck fuck fuck fuck / fuck fuck fuck fuck fuck 13:35:23 oh for chrissakes 13:35:31 `log fuck fuck fuck fuck fuck fuck fuck 13:35:34 2011-09-15.txt:13:34:48: 549) beautiful summer / fuck fuck fuck fuck fuck fuck fuck / fuck fuck fuck fuck fuck 13:35:40 :'( 13:35:41 `log fuck fuck fuck fuck fuck fuck fuck 13:35:44 2011-09-15.txt:13:35:41: `log fuck fuck fuck fuck fuck fuck fuck 13:35:49 oh my god 13:36:06 'quote 590 13:36:09 how did that end up there? 13:36:25 ^[^`]* fuck fuck fuck fuck fuck fuck 13:36:28 `log ^[^`]* fuck fuck fuck fuck fuck fuck 13:36:29 `quote 590 13:36:30 590) (Enigma is two games; one is solving Enigma puzzles, the other is working out how to represent things as Enigma puzzles, preferably with the minimal amount of lua and player-hidden information possible) 13:36:32 2011-09-13.txt:18:02:38: 2010-08-30.txt:16:15:24: I can fix that! Fuck fuck fuck fuck fuck fuck fuck fuck fuck 13:36:50 hmm, tahoe is really complicated :( 13:37:13 `quote 600 has got me laughing in real life, even though it's not all that good 13:37:14 No output. 13:37:21 bleh, I can't give it trailing arguments? 13:37:29 `quote 600 # has got me laughing in real life, even though it's not all that good 13:37:30 No output. 13:37:34 not even if I comment them out? 13:37:39 `quote 600 13:37:41 600) That's the stupidest thing I've heard all morning. (Though I did wake up five minutes ago, so I haven't had a chance to hear very much.) The "Why are you still asleep? I told the cat to wake you up." comment does come pretty close, though. 13:37:58 I laugh every time I remember it, so I think it's fairly objectively good :P 13:38:25 `quote 629 13:38:27 629) monqy: help how do I use lambdabot to send messages to people. [...around half an hour later...] @messages quicksilver said 1y 2m 18d 19h 54m 29s ago: you use @tell 13:38:36 pure awesome there 13:38:54 yeah that was pretty much maximum synchronicity 13:38:59 all downhill from there 13:41:50 ais523: btw, I was going to make the learndb better, but Gregor refused to make HackEgo output multiple lines ever :P 13:41:58 so the multiple-entry possibilities were rather limited 13:43:21 `run quote 600 #maybe like this? 13:43:23 600) That's the stupidest thing I've heard all morning. (Though I did wake up five minutes ago, so I haven't had a chance to hear very much.) The "Why are you still asleep? I told the cat to wake you up." comment does come pretty close, though. 13:43:54 ais523: I have found clear evidence of inferiority of the nethack qdb to ours: http://qdb.rawrnix.com/?357 13:44:01 now I'm wondering if fizzie's cat /tried/ to wake him or her up 13:44:07 you won't see any anti-acehack propaganda in _this_ qdb! 13:44:16 it's a funny statement 13:44:19 * elliott pats himself on the back for a logic well done 13:44:21 also, look at who's saying it 13:44:26 I'm pretty sure you know Wooble 13:44:29 Yes, I have eyes 13:44:36 Well, sometimes 13:44:40 Sometimes I am just an amorphous blob 13:44:43 It depends. 13:44:56 sometimes I fly around in a spaceship :> 13:44:56 focus, elliott, focus 13:45:06 wait, was it a lowercase i? 13:45:11 `log fly around in a spaceship 13:45:12 probably 13:45:14 2009-03-05.txt:16:10:34: FireFly: sometimes I fly around in a spaceship? 13:45:20 `log fly around in a spaceship 13:45:23 2011-09-15.txt:13:45:11: `log fly around in a spaceship 13:45:27 `log fly around in a spaceship :> 13:45:30 2011-08-26.txt:04:14:24: "sometimes i fly around in a spaceship :>" 13:45:32 `cat bin/log 13:45:34 ​#!/bin/sh \ cd /var/irclogs/_esoteric \ if [ "$1" ]; then \ egrep -i -- "$1" ????-??-??.txt | shuf -n 1 \ else \ file=$(shuf -en 1 ????-??-??.txt) \ echo "$file:$(shuf -n 1 $file)" \ fi \ 13:45:34 yep, lowercase i 13:45:43 uh-huh 13:45:49 hi FireFly 13:45:53 Hello 13:45:57 I can't even remember that line 13:46:00 FireFly: the thing about logquoting bots is that they have a tendency to randomly ping people 13:46:05 And I usually remember lines that HL me 13:46:23 2009 was a while ago though 13:46:48 `log 13:46:52 2009-07-31.txt:16:01:46: Well, I like my tabs as they are 13:47:01 equivalent to eight spaces? 13:47:18 (when at a multiple of 8 already) 13:47:38 elliott: oh, I found another tab=to-multiple-of-8 source, it's the Google style guide for INTERCAL 13:47:39 oerjan: op me so that i can institute a beautiful reign of kicking ais523 whenever he goes on about tabs 13:47:54 elliott: but I haven't won this argument yet 13:47:56 I usually go with 4-space tabs, though I prefer actual tab characters to spaces 13:47:59 That's probably what the line refers to 13:48:08 ais523: it's quite hard to win an argument that you've already lost, repeatedly, in the past 13:48:17 I just haven't won it yet 13:48:20 and I have so many sources on my side 13:48:29 /ignore ais523 13:52:03 p 13:52:04 *o 13:52:28 wat 13:53:16 just randomly oing 13:53:28 people don't seem to do that that much any more, not even oklopol 13:53:35 but I typoed and randomly ped instead 13:53:43 ais523: If the cat tried, I did not notice. It's not the most reliable person, so I wouldn't be surprised if it just ignored the task it was given. 13:57:49 OK, I'm laughing harder at http://qdb.rawrnix.com/?470 than any quote we've had here 13:57:55 THIS IS UNACCEPTABLE 14:00:27 wat 14:00:36 oh, nethack 14:00:55 that's surreal humour. it...doesn't quite click but I see how it could 14:01:37 -!- Taneb has joined. 14:02:19 Patashu: it's more the idea of someone cutting off their arm in nethack in /anticipation/ of maybe being able to eat it 14:02:34 I just read "armchair" as "slip" in the topic 14:03:20 Also, hello 14:04:34 hi 14:05:29 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 14:06:44 I never got the hang of nethack 14:08:16 ?src ap 14:08:16 ap = liftM2 id 14:08:20 ?src liftM2 14:08:20 liftM2 f m1 m2 = do { x1 <- m1; x2 <- m2; return (f x1 x2) } 14:09:22 You know that program I wrote in Haskell then everyone helped me improve and fix it? 14:09:32 yes 14:09:52 I translated it back into Python for the hell of it 14:09:56 lol 14:10:02 Haskell is much more readable 14:10:27 And also, Python has no equivalent built in to [1..] unless you import itertools 14:10:57 And I have just had a thought to improve the Haskell version 14:11:42 Nevermind, wouldn't have worked 14:13:44 oerjan: I wish there was a haskell uninliner :( 14:14:35 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .). 14:14:45 that's called refactoring isn't it 14:15:37 oerjan: I mean more like, given an explicit implementation of return/(>>=), and an implementation of (<*>) in terms of them (i.e. ap), a pattern-matching definition is spat out 14:15:45 preferably a flat one i.e. it's just not literally inlining as nested case clauses 14:16:45 I wonder if ~ATH is suitable for the wiki 14:16:53 I mean, we don't do fictional languages 14:16:54 Much 14:32:26 -!- copumpkin has joined. 14:32:44 I could imagine an implementation of it that runs within a virtual world of some sort. 14:33:03 Or set of virtual worlds, I suppose. 14:33:34 ?pl f <*> pure x 14:33:35 f <*> pure x 14:33:43 oerjan: is there really no name for that? 14:34:36 -!- nooga has quit (Ping timeout: 276 seconds). 14:38:07 @hoogle m (a -> b) -> a -> m b 14:38:08 Control.Applicative (<*>) :: Applicative f => f (a -> b) -> f a -> f b 14:38:08 Control.Monad ap :: Monad m => m (a -> b) -> m a -> m b 14:38:08 Control.Applicative (<**>) :: Applicative f => f a -> f (a -> b) -> f b 14:38:29 makeZipper' = gfoldl f Done 14:38:29 where f r h = 14:38:29 case cast h :: Maybe d of 14:38:29 Just h' -> Zip h' (ap r . pure . fromMaybe h . fmap (fromJust . cast)) 14:38:29 Nothing -> r <*> pure h 14:38:30 turns out this doesn't work :P 14:38:48 :( 14:38:52 hmm 14:39:18 elliott: seems that one is missing yeah 14:39:52 *Main> explore (makeZipper' [9,9,9,9] :: Zipper Int [Int]) 14:39:52 Current item: 9 14:39:52 Insert new item or enter to keep: 99999999 14:39:52 [99999999,9,9,9] 14:39:56 that is not how it is supposed to work >:( 14:40:01 :t (.) 14:40:02 forall a b (f :: * -> *). (Functor f) => (a -> b) -> f a -> f b 14:40:09 hmm, I suppose the problem is that it sees the tail as Just Another Subterm 14:40:15 one which happens to not be of type Int 14:40:15 :t flip 14:40:16 forall (f :: * -> *) a b. (Functor f) => f (a -> b) -> a -> f b 14:40:28 *Main> explore (makeZipper' [9,9,9,9] :: Zipper [Int] [Int]) 14:40:28 Current item: [9,9,9] 14:40:28 Insert new item or enter to keep: [] 14:40:28 [9] 14:40:29 heh 14:40:31 elliott: wouldn't you know, it's precisely caleskell's flip :P 14:40:40 oerjan: wonderful :P 14:45:54 ?pl \ff x -> fmap ($x) ff 14:45:54 flip (fmap . flip id) 14:46:33 -!- MDude has quit (Read error: Connection reset by peer). 14:46:48 ?pl \ff x -> ff <*> pure x 14:46:48 (. pure) . (<*>) 14:46:53 Bah 14:51:00 :{ 14:53:09 ?. hoogle type \f g -> (. g) . f 14:53:10 Parse error: 14:53:10 --count=20 "forall a b (f :: * -> *) (f1 :: * -> *). (Functor f, Functor f1) => f1 (a -> b) -> f a -> f1 (f b) 14:53:10 " 14:53:14 Bah 14:53:54 ?. hoogle type \f g -> (Prelude.. g) Prelude.. f 14:53:54 Parse error: 14:53:55 --count=20 "forall b c a a1. (a1 -> b -> c) -> (a -> b) -> a1 -> a -> c 14:53:55 " 14:54:08 ?hoogle (a1 -> b -> c) -> (a -> b) -> a1 -> a -> c 14:54:08 Data.Function on :: (b -> b -> c) -> (a -> b) -> a -> a -> c 14:54:09 Data.Data gmapQl :: Data a => (r -> r' -> r) -> r -> (d -> r') -> a -> r 14:54:09 Data.Data gmapQr :: Data a => (r' -> r -> r) -> r -> (d -> r') -> a -> r 14:54:19 Bah 14:57:08 Deewiant: Pretty sure gmapQr is the thing 14:57:19 Yeah no 14:57:24 ?src on 14:57:24 (*) `on` f = \x y -> f x * f y 14:57:32 ?ty let (*) `on` f = \x y -> f x * f y in on 14:57:33 forall t t1 t2. (t -> t -> t1) -> (t2 -> t) -> t2 -> t2 -> t1 14:57:51 :t flip (curry . second) 14:57:52 forall a b c. a -> (b -> c) -> b -> (a, c) 14:58:03 oops 15:01:29 @djinn (a1 -> b -> c) -> (a -> b) -> a1 -> a -> c 15:01:30 f a b c d = a c (b d) 15:01:49 @pl f a b c d = a c (b d) 15:01:50 f = flip . ((.) .) 15:02:24 most readable 15:03:12 hmm I would _really_ like serialisation of Haskell functions 15:03:14 (not in a portable manner) 15:03:21 well, closures 15:06:27 \a b c d -> a c (b d) = flip (\a c b d -> a c (b d)) = flip (\a c b -> a c . b) = flip (\a c -> (.) (a c)) = flip (\a -> (.) . a) = flip ((.) .) 15:06:44 :t Prelude.flip ((.) .) 15:06:44 forall a b (f :: * -> *) b1. (Functor f) => b1 -> (b1 -> a -> b) -> f a -> f b 15:06:54 :t Prelude.flip ((Prelude..) Prelude..) 15:06:55 forall b c a b1. b1 -> (b1 -> b -> c) -> (a -> b) -> a -> c 15:06:57 Deewiant: Lemme know when you've figured out how to do that 15:07:04 gah 15:07:45 -!- oerjan has quit (Quit: Anyway, later). 15:15:05 elliott: instance Binary (a -> b) where something# 15:18:42 Neat 15:24:57 I wonder if Uniquode, as specified, is Turing-Complete 15:28:45 -!- augur has quit (Remote host closed the connection). 15:50:31 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net). 16:03:48 Deewiant: I don't think that's actually possible... you need to know the types of the stuff in the closure 16:05:02 instance (Typeable a, Typeable b) => Binary (a -> b) where something# 16:05:19 Deewiant: In the closure 16:05:20 Consider 16:05:33 foo :: SomethingRidiculouslyUnserialisable -> Int -> Int 16:05:37 foo x y = y + magic x 16:05:55 Right 16:05:56 (foo x) is (Int -> Int), but its closure carries around a SomethingRidiculouslyUnserialisable that isn't referenced in the type at all 16:07:22 So I think you need to explicitly specify the closure types, which involves just trusting whatever's given... so basically you have to make some TH magic to do it for people and tell them not to use anything more direct :P 16:08:33 What kind of Haskell type would be unserialisable? 16:09:01 Well, in theory anything is serialisable; in practice something like a file handle is not very 16:09:13 For obvious reasons 16:09:41 * tswett doesn't respond to that ping. 16:09:50 A file handle in pure code? 16:10:17 Lymee: Eh? 16:10:38 I don't THINK a Handle carries around any state you can access outside of IO, but certainly other types might. 16:10:42 Consider StableName. 16:10:56 http://www.haskell.org/ghc/docs/latest/html/libraries/base-4.4.0.0/System-Mem-StableName.html 16:11:01 No way you're gonna serialise one of those. 16:11:13 You can't serialize an Internet connection. 16:11:17 And you can hashStableName in pure code. 16:11:21 Even in theory. I think. 16:11:33 tswett: No, but you can serialise the bits representing the socket 16:11:34 elliott, yeah, good point. 16:11:36 It's not just very useful, is all 16:11:52 tswett: Also you totally should be able to serialise internet connections. 16:12:00 Well, I meant connectivity, not connections. 16:12:01 tswett, stateless protocols such as HTTP REST can be serialized. 16:12:20 Start a connection, serialise it, destroy the machine on the other end, deserialise it... magically it still works 16:12:56 I can't serialize the path that radio waves take when traveling betwen my laptop and the router. 16:13:10 I mean, I guess I can. But, like before, it wouldn't be very useful. 16:13:11 tswett: All I'm hearing is flaws in the universe. 16:13:26 neither can you serialize the copper and nickel that the electrons traverse when going from your cpu to your ram. 16:13:27 We should fix those. Quick, donate all your money to the SIAI. 16:34:01 -!- augur has joined. 16:34:01 -!- cheater has quit (Quit: Ex-Chat). 16:35:40 HellO! 16:35:48 hi 16:35:55 hell o 16:36:01 I liked todays IWC 16:36:28 only six until it's over ;D ;D ;D; D 16:36:36 my hobby: trolling iwc fans 16:47:03 -!- nooga has joined. 16:55:40 I've got my Gameboy Advance here 16:56:00 Going to play Pokémon 16:56:12 Dammit, Birch! 16:56:27 Nobody ever calls you the POKéMON PROFESSOR 16:57:33 I'm in a Truck 16:57:46 Taneb: Ruby, Sapphire, or Emerald? 16:57:59 Emerald 16:58:07 Which, from my POV was the first one 16:58:38 it was actually the last third-gen game 16:59:17 It was the first one I got 16:59:26 It was my first Pokémon game 16:59:35 it also has the most abusable RNG in third gen, if you're into that sort of thing 17:00:03 and it's still the easiest to do RNG abuse calculations for, although the actual abuse itself is easier on Black/White 17:00:08 I play these games for fun 17:00:15 so do I 17:00:20 That doesn't in any way exclude RNG abuse 17:00:28 It does if you're me 17:00:35 But you are not me 17:00:38 So it doesn;t 17:01:39 Apparently I'm Taneb, their new next-door neighbour! 17:10:02 Yay, I get a Pokéman 17:10:08 I will name it Deewiant 17:22:47 -!- sllide has joined. 17:28:25 `find 17:28:26 ​. \ ./bin \ ./bin/? \ ./bin/addquote \ ./bin/allquotes \ ./bin/define \ ./bin/delquote \ ./bin/etymology \ ./bin/forget \ ./bin/google \ ./bin/json \ ./bin/k \ ./bin/karma \ ./bin/karma+ \ ./bin/karma- \ ./bin/learn \ ./bin/log \ ./bin/logurl \ ./bin/marco \ ./bin/paste \ ./bin/pastekarma \ ./bin/pastelog \ ./bin/pastelogs 17:30:05 Gregor: ? 17:30:10 hey someone give me a number sign 17:30:35 you mean #? 17:30:38 yes thanks 17:30:45 strange name for it 17:32:33 Yes, it would have been far more obvious to say "give me a sink". 17:33:37 `? shachaf 17:33:38 shachaf mad 17:33:43 `rm wisdom/shachaf 17:33:44 No output. 17:36:24 Hello 17:36:42 I'm training ais523 tge Wingull 17:36:55 * ais523 makes Wingull sound 17:37:10 (and I know what a Wingull sounds like, too...) 17:37:56 Level 6! 17:39:21 waht does wingull sound like :( 17:39:29 eeh-eeh! 17:39:31 `learn shachaf mad 17:39:32 I knew that. 17:39:42 Taneb: Congratulations you just described the sound of like half of all the pokemons. 17:39:52 `rm wisdom/shachaf 17:39:53 -!- sliddy has joined. 17:39:53 No output. 17:39:58 `learn shachaf mad 17:40:00 While being completely true 17:40:00 I knew that. 17:40:01 shachaf: u so mad. 17:40:02 elliott: Could you keep it that way, please? 17:40:04 `rm wisdom/shachaf 17:40:05 No output. 17:40:09 And as accurate as I could 17:40:10 The wisdom cannot be erased. 17:40:28 The wisdom is Eternal. 17:40:36 Eternalsdom. 17:40:39 Wisdeternal. 17:41:35 -!- Zuu has joined. 17:41:35 -!- Zuu has quit (Changing host). 17:41:35 -!- Zuu has joined. 17:42:27 -!- sllide has quit (Ping timeout: 276 seconds). 17:45:49 ais523 is now may highest level POKéMON 17:46:07 POKéMON 17:46:13 HEY GUYS THERE IS SUCH A THING AS A CAPITAL É 17:46:25 Not in the POKéMON font 17:46:31 Gregor: however, the word itself is spelt POKéMON 17:46:36 The correct capitalization is POOKIEMANS 17:46:45 writing POKÉMON is like writing Brainfuck 17:47:03 ais523: you're lucky ph isn't here or he'd whine at you 17:47:17 at what, BF's capitalisation? 17:47:41 he's of the firm opinion that BrainFuck is an abomination but anyone who corrects Brainfuck to brainfuck is a pedantic asshole :P 17:48:24 I think "Pokémon" is a valid capitalization too as of Black/White 17:48:35 This is Emerald 17:48:47 I may make a language called brianfcuk just to confuse everyone 17:49:02 -!- Jafet has joined. 17:49:38 -!- augur has quit (Remote host closed the connection). 17:51:29 I was planning to make a language called brainfuck that was identical to Brainfuck apart from the name 17:51:33 as a parody of bad BF derivatives 17:51:37 It will be as different from brainfuck as possible 17:51:48 but I'm not sure I could do it in a suitably amusing way 17:51:54 umm, swap brainfuck and Brainfuck there 17:52:42 Instead of a tape, have string of Unicode characters 17:53:16 And a character index rather than a pointer 17:53:49 What is a good bF derivative? 17:53:53 Ook! 17:54:20 Ook! would be a pretty bad derivative if it didn't come early enough that it wasn't cliched 17:54:21 It was original, a reference to Discworld, and by David Morgan-Mar 17:54:34 I think PaintFuck was considered a good BF deriv 17:56:27 -!- ive has joined. 17:57:24 wow, generic zippers are a pain to make pretty 18:00:10 brianfcuk is too similar to Haskell. 18:00:14 Not esoteric enough 18:01:03 To the LIST OF IDEAS PAGE 18:02:15 elliott: you still owe me My Name Is Johny, btw 18:03:07 -!- ais523 has quit (Remote host closed the connection). 18:03:38 OR ELSE 18:05:50 -!- augur has joined. 18:21:48 -!- pikhq has quit (Quit: Later). 18:23:31 All my ideas for brianfcuk are lame 18:24:04 did you try renaming the operations 18:24:08 i hear that's cool 18:25:06 -!- oklopol has quit. 18:25:06 we need a language called brainf*** 18:25:41 One of my ideas was essentially a minimalistic notation for lambda calculus 18:25:51 ShaFuck iz da bezt. 18:25:53 Where the predeccessor function is \\\34(\\14(24114))(\24)(\14) 18:27:05 Taneb: um is that not just de bruijn notation 18:27:29 Bijective base 3 de bruijn notation postpended with fours 18:27:56 wow 18:29:25 Told you it was lame 18:30:38 I could use my loadsa combinators 18:30:40 ide 18:30:40 a 18:31:48 Screw this, I'm going to work on Salesman 18:34:21 I don't want to use a stack. I do not like stacks. 18:35:06 I could use an accumulator... 18:36:35 Or two 18:40:22 I do not like green queues and stacks 18:47:44 http://esolangs.org/wiki/User:Taneb/Salesman 18:49:00 The NP-Hard programming language! 18:50:36 -!- ive has quit (Ping timeout: 252 seconds). 18:56:32 Thoughts? 19:00:35 -!- ive has joined. 19:01:58 Sorry, I was too busy writing an eloquent defence and analysis of wikispam. 19:02:00 http://esolangs.org/wiki/User_talk:WLaquitaCuevasa 19:09:27 good lord, I got into HWN /again/ 19:09:29 WHEN WILL MY FAME END 19:10:21 Can you check out salesman now? 19:11:59 I'm a bit tired, 'mafraid. 19:12:07 Perhaps in a minute. 19:16:50 TODO: Optimise Shiro's IPLists 19:17:01 ffffffuuuuu 19:17:16 my USB mouse does not work with macbook pro 19:17:33 or rather, macbook pro doesn't work with the mouse 19:17:43 Search for drivers? 19:19:02 FOR GODDAMN USB MOUSE? 19:19:19 FOR A GODDAMN MAC BOOK PRO 19:20:15 i hate this computer 19:23:42 -!- cheater has joined. 19:26:47 -!- sliddy has quit (Read error: Connection reset by peer). 19:37:13 http://ompldr.org/vYWRiZw thanks duckduckgo 19:40:39 -!- oerjan has joined. 19:41:49 hi oerjan hi hihi i hi hi oerjan hi 19:44:17 elliott seems very hi today 19:47:12 hmm 19:47:42 hindley-milner-mycroft 19:47:55 Another day anticipates the sunrise relative to the frame of reference of my window. 19:49:31 apparently that may not exist, but hindley-milner and milner-mycroft do 19:49:50 `log entertainment 19:49:55 2009-06-21.txt:20:50:59: God, I hate people who say "tl;dr". Because your idiotic soundbites and bits of compacted media and entertainment that you love so much has made your brain incapable to read anything more than a paragraph or two lest your now severe ADHD kick in. 19:49:57 Mycroft as in Holmes? 19:50:03 oerjan: ziepress are hard :( 19:50:06 zierperpzerierps 19:50:08 im 19:50:11 cant type much 19:50:17 its hard to type :'( 19:50:18 and to think 19:50:20 -!- MDude has joined. 19:50:26 but one thing is easy...... 19:50:27 that thing.... 19:50:29 is saying hi 19:50:29 elliott: and to read 19:50:32 oerjan: hi hi hi hi hi hi hi 19:50:37 hi 19:50:38 hi hi 19:50:38 hi 19:50:45 poor elliott, slowly turning into the winslow 19:51:01 hi 19:51:03 it was not how he had envisioned eternal life 19:51:17 what if i want to win quickly, what then 19:51:57 Taneb: no, as in the type theorist 19:52:25 type theory is so gangsta. just saying 19:52:28 Also, I've done some more work on Salesman 19:53:48 mind you i have not yet any real idea what he's done, although "polymorphic recursion" seems a clue 19:54:22 `run echo 'flower. what IS a flower?' >wisdom/flower 19:54:24 No output. 19:54:49 oerjan. what IS an oerjan? 19:54:50 And yet, elliott's said "tl;dr" 92 times according to my logs (and ehird 41 times) 19:54:53 well he cannot be that important, no wikipedia page >:) 19:54:58 hi. hi HI hi hi? 19:55:34 Deewiant: wut 19:55:40 oerjan: i hear he wrote the haskell nientryeight report..... 19:55:43 if we're talking about oerjan 19:55:49 which i guess acutally we were talking about that type theorists 19:55:50 elliott: Re. `log entertainment some 20 lines ago 19:56:00 Deewiant: oh i didn't pay attention, was it something about me 19:56:10 I suppose it could've been something you were quoting 19:56:14 elliott: no i'm trying to find out who mycroft is 19:56:40 how old was it, anything more than like eight months and i ain't even know who that guy that was me is 19:56:52 well it's eight months right now it's kind of variable 19:56:56 2009-06-21 19:57:00 maybe i'll decide i'm completely alienated with my five-minutes-ago self 19:57:04 that would be uh 19:57:04 fun 19:57:12 Deewiant: oh well that's like before i even remember breathing. 19:57:33 In fact, you'd used "tl;dr" several times before that, even. 19:57:55 token laxative; dangerous recall 19:58:10 seems he was milner's student 19:58:37 did he train in the craft of milnering 19:58:48 Milnercraft 19:58:57 Taneb: beat me to it 19:59:10 that's a good kraft 19:59:12 i was about 2 keypresses away 19:59:18 i didn't even think of that 19:59:22 i remain unsmart 19:59:47 what if i want to win quickly, what then <-- i detect insufficient phil foglio exposure 19:59:48 According to Wolfram Alpha, the name Haskell is dying out 19:59:54 elliott: you made the inspiring comment. "craft of milnering" 19:59:59 -!- Gregor has quit (Excess Flood). 20:00:04 -!- Gregor has joined. 20:00:04 you can't self-inspire 20:00:06 oerjan: folio 20:00:10 Gregor: stop flüd 20:00:31 -!- Gregor has changed nick to Guest53387. 20:00:35 oerjan: i hear he wrote the haskell nientryeight report..... <-- well that is _so_ last millennium 20:00:46 you need to keep contributing typofixes 20:00:47 to stay relevant 20:00:48 and hip 20:00:51 :\ 20:02:02 die zauberflüd 20:05:14 spellcraft, morecraft, warcraft, starcraft, minecraft, fortresscraft, fishcraft 20:05:38 poopcraft 20:05:44 mincecraft 20:05:46 it's not entirely clear to me what -craft means in the context of video games 20:06:03 it has about as much meaning as super- 20:06:15 Supercraft 64 20:06:22 Advance 20:06:45 "Using closest Wolfram|Alpha interpretation: sun in moon" "Input interpretation: [ Moon | volume ] / [ Sun | volume ]" "Result: 1.556 x 10^-8" 20:06:56 I keep feeding it nonsense, but at least sometimes I get nonsense back. 20:07:05 W|A is unable to compute the length of the solar day of the Sun. 20:07:29 "Input interpretation: [ Sun | solar day ]" "Result: (data not available)" 20:07:35 fizzie: Is this how you spend your life? 20:07:45 I is a bit tiered at the moment. 20:07:47 Because I mean, I approve. 20:08:08 brb 20:08:38 "tiered sun" => "Using closest Wolfram|Alpha interpretation: ranked sun" => "Input interpretation: [ Sun | rank ]" => "Result: 2228th". 20:09:13 you'da thought it'd rank higher than that 20:09:43 sad sun :( 20:10:03 fizzie: are you looking for the time the sun takes to rotate around itself? 20:10:09 Of course it can't calculate the solar day of the sun. 20:10:13 "floating sun" gives this really complicated "option name: European lookback with floating strike" financial thingamajigger. 20:10:21 there is a band named supercraft 20:10:26 What Oerjan jsut said. 20:10:38 ahh.. "SUPERCRAFT - a up 'n coming Norwegian band in synthpop / futurepop." 20:11:09 I like the comparisons, they're always so sensible. 20:11:38 "Solar rotation is able to vary with latitude because the Sun is composed of a gaseous plasma." 20:11:43 [ Sun | rotation frequency ] => 0.03993 rev / day; comparisons as angular velocity: ~ 0.002 ~ 1/600 x mean angular velocity of slow eye drift movements. 20:11:46 http://en.wikipedia.org/wiki/Solar_rotation 20:12:29 Next time you are having a slow eye drift movement, you can console yourself that the sun rotates only at 1/600th of the speed of your eye. 20:12:40 supercraft at elektrostat http://www.youtube.com/watch?v=r1jbycSRyBY 20:13:11 "lunar day of sun" is inerpreted as [Moon | [this | Sunday]]. 20:13:29 * oerjan ponders if it would have been better as "superkraft" or not 20:13:51 which incidentally is the norwegian word for superpower 20:14:08 the music is actually good though 20:15:38 i suppose with the c it sounds punny 20:16:11 i can relate to the lyrics a bit (maybe) 20:16:21 `log derealization 20:16:24 2011-09-14.txt:00:49:12: monqy: well, theres these feelings of derealization and depersonalization and psychosis which i seem to enter into at times 20:16:42 * oerjan sidles away from itidus20 20:17:08 W|A is also unable to compute the solutions for "a ^ b = b ^ a, a != b". 20:17:23 Input interpretation: M_{sun} (solar mass) / housecat typical mass => 3 x 10^29. 20:17:29 That's how many cats there are in the Sun. 20:17:44 Yes. 20:18:05 MDude: that's strange, probably doesn't parse the question correctly because mathematica has to have a function for that 20:18:46 b*log a = a*log b, b/log b = a/log a 20:20:40 I tried inputing it when I read in Number Freak that and four were the only numbers that could be interchenged like that. 20:20:54 *that two, i assume 20:21:03 and presumably that's integers only 20:21:11 Yes. 20:21:30 because clearly if 2,4 are solutions and b/log b is continuous, there have to be others nearby 20:21:48 oerjan: have you got serialisation of closures working yet thx 20:22:09 elliott: that seems to be outside my area of expertise, but i hear erlang does that 20:22:34 and also there was a haskell project with a modified ghc iirc 20:22:44 maybe that's what that cloud haskell thing does. 20:22:53 I _think_ I can do it with vacuum... it'll just be such a huge unimaginable pain 20:22:55 that sounds about right 20:23:17 yes, vacuum is pretty painful i guess 20:24:44 is that a pun 20:24:52 but of course 20:25:00 :( 20:25:05 Plain "a^b = b^a" gives a ContourPlot[a^b == b^a, {a, 0.36, 6.3}, {b, 0.36, 6.3}] followed by a solution for b; b = -a W(-log(a) / a) / log(a), where W(z) is ProductLog[z], the principal solution for w in z = w e^w. 20:25:29 -!- itidus21 has joined. 20:25:52 oerjan: did you like my analysis of wikispam. 20:26:13 it is beautiful. 20:26:17 if you graph log b / b it is probably obvious that there are only finitely many options 20:26:32 elliott: i haven't got to that tab yet 20:26:39 -> 20:27:15 oerjan: is that you moving tabs 20:28:52 -!- itidus20 has quit (Ping timeout: 276 seconds). 20:31:38 -!- itidus21 has quit (Quit: Leaving). 20:32:21 -!- itidus20 has joined. 20:34:17 -!- itidus20 has quit (Client Quit). 20:34:58 `? oerjan 20:34:59 Your future evil overlord oerjan is an expert in lazy computation. 20:35:04 ok 20:43:50 -!- itidus20 has joined. 20:46:37 -!- itidus20 has quit (Client Quit). 20:50:26 -!- itidus21 has joined. 20:50:50 `? add 20:50:52 add? ¯\(°_o)/¯ 20:50:55 `? Sgeo 20:50:57 Sgeo invented Metaplace sex. 20:51:31 ಠ_ಠ 20:51:51 `? What's all this then? 20:51:52 What's all this then?? ¯\(°_o)/¯ 20:52:36 Also, goodnight 20:52:40 -!- Taneb has quit (Quit: TTFN). 21:00:35 https://github.com/xonatius/linux/commit/bdb25f1ee3bae85433d94e9192f8a18a880b28ac 21:00:37 how not to patch 21:01:09 oh my god people actually started spamming torvalds/linux pull request comments yelling at him for not liking them.......... 21:05:55 -!- nooga has quit (Ping timeout: 260 seconds). 21:06:20 elliott, where are those comments 21:06:34 https://github.com/torvalds/linux/pull/11 21:13:56 -!- sllide has joined. 21:25:27 -!- monqy has joined. 21:27:24 ah, the friendship monqy 21:28:48 oerjan: impart wisdom 21:28:50 hi 21:32:09 `run echo "The friendship monqy is an ancient Chinese mystery; ask itidus21 for details." >wisdom/monqy 21:32:11 No output. 21:32:26 `? monqy 21:32:28 The friendship monqy is an ancient Chinese mystery; ask itidus21 for details. 21:32:36 :-s 21:33:14 elliott: like that? 21:33:18 i do have an extensive collection of english-translated ancient chinese books and ebooks... but i don't know much about it 21:33:57 and my memory is hopeless 21:34:25 although better than your joke detector 21:34:25 -!- augur has quit (Remote host closed the connection). 21:35:39 oerjan: you keep ruining all the 21:35:40 (ok so there may be an oblique reference to the journey to the west in there) 21:35:40 quotes :'( 21:35:42 erm 21:35:44 s/quotes/wisdoms/ 21:35:45 it was 21:35:46 so wisdom before 21:35:47 it was 21:35:50 monqy dead :'( 21:35:55 also 21:35:59 you have anxetraneous 21:36:01 space 21:36:03 :'( 21:36:03 im 21:36:03 cry 21:36:08 `run echo "The friendship monqy is an ancient Chinese mystery; ask itidus21 for details." >wisdom/monqy 21:36:10 No output. 21:36:14 is itidus20 21:36:18 not suitable for asking 21:36:23 must we only ask the upgraded 21:36:26 version 21:36:34 ???? 21:37:39 oerjan: ??? 21:38:19 a complicated question. is his memory getting worse or better with time? 21:38:48 help 21:39:11 is itidus21 using mystery to reverse entropy? 21:39:42 looking ghostly 21:40:44 i don't know the stuff seriously 21:41:11 i do know that leibniz was curious about the i ching 21:41:35 and wolframalpha says that yin yang is like mathematical monad 21:42:17 * elliott logreadnotes to self 21:42:19 -- 21:42:19 -- TODO: Shorten this and other functions by using (~==) from TagSoup, 21:42:19 -- see e.g. http://neilmitchell.blogspot.com/search/label/tagsoup 21:42:19 -- 21:42:43 (for my fizzie-clone :P) 21:43:34 fizzie: what do you feel about being cloned? 21:44:08 oerjan: if you clone your enemy can you find his weaknesses? 21:44:40 some of them, maybe 21:45:00 perhaps having a dna sample of your enemy could give insight into their weaknesses 21:45:13 im not meaning that this is a good thing.. 21:45:23 but seems like an inevitable military application 21:45:50 you could discover allergies they don't know they have 21:46:23 but on the topic of allergies i have heard it might not be genetic.. i dunno 21:47:59 -!- Zuu has quit (Ping timeout: 260 seconds). 21:53:07 back. a topic i am interested in is definitions of difficult and easy 21:54:00 for me easy to difficult is a continuum, easy being involuntary, difficult being impossible 21:54:48 impossible is nothing 21:56:01 i think a task moves towards impossible as the ratio of required materials, time, kilojoules moves away from the available materials, time, kilojoules 21:56:38 but also the capacity to bridge the gap between the required and available affects it 21:57:32 oerjan: are you learning, im learning 21:57:53 you just don't like the word difficult 21:58:05 noone seems to 21:58:43 impossible to me is if any chatter here is not dead within 130 years 21:59:03 i don't believe any amount of science will manage it 21:59:19 because for one thing science requires money 21:59:25 and money is a finite resource 22:00:33 so this time constraint of 130 years may just make it unworkable 22:01:08 sure if you remove constraints then things become possible 22:02:34 -!- DH____ has quit (Ping timeout: 260 seconds). 22:02:56 impossible is also if i held up fingers anyone being able to count them.. 22:03:34 -!- DH____ has joined. 22:04:13 although there is a possibility that someone really does have a camera in place to count them, it is not a real possibility 22:05:07 ok ill go chill out 22:05:10 -!- itidus21 has left ("Leaving"). 22:06:47 -!- itidus21 has joined. 22:07:44 -!- itidus21 has left ("Leaving"). 22:10:09 -!- sllide has quit (Ping timeout: 260 seconds). 22:10:50 -!- itidus21 has joined. 22:12:04 lagging bad 22:12:10 maybe impossible is a limit 22:12:24 which you can only approach,kind of like infinity 22:15:03 ^not that i want to be here in 130 years 22:17:04 `log shenanigan 22:17:09 2011-08-16.txt:12:46:24: For a piece of real hardware, BytePusher's screen is particularly anemic. No sprites, no hardware scroll, no programmable palette, no mid-frame interrupts to do shenanigans, just in general no help from the hardware at all. 22:18:07 `log random 22:18:11 2008-10-31.txt:22:36:45: h = randomColorScheme(h, ...) 22:18:37 `log impossible 22:18:41 2009-07-25.txt:00:36:02: that's impossible 22:18:48 good log 22:19:42 `log world 22:19:45 2008-08-08.txt:12:10:10: optbot: you wanna be on #worlddomination too right? 22:20:00 `log world 22:20:04 2011-02-04.txt:22:36:46: Man, I woke up in a strange new world where "poop" is a swear word. 22:20:40 `log dwarf 22:20:41 -!- elliott has quit (Ping timeout: 252 seconds). 22:20:43 2011-02-01.txt:21:00:17: elliott: I'm trying to make a comment on Dwarf Fortress' astonishing CPU usage 22:20:51 `log hid the body 22:20:54 2011-09-15.txt:22:20:51: `log hid the body 22:21:02 `log hide the body 22:21:05 2011-09-15.txt:22:21:02: `log hide the body 22:21:16 `log the body 22:21:19 2011-03-21.txt:15:30:31: Does the body actually have a "drowning" reflex per se? 22:21:23 darn, my attempt to use the logs to solve crime, thwarted 22:21:24 `log the log 22:21:27 2011-01-21.txt:23:03:59: set it to remember the login 22:21:45 @gregor, yeah.. the reflex is discussed on wiki page of common misconceptions 22:24:03 impossible = talking someone out of doing something malicious to you 22:24:51 sounds quite useless to have a drowning reflex, I can see the use for a non-drowning reflex though 22:25:20 basically the drowning reflex is not social 22:25:29 its not designed to draw others attention 22:25:34 -!- FireFly has quit (Quit: FireFly). 22:25:42 all energy becomes concentrated on survival 22:25:52 unfortunately its quite useless 22:26:37 if drowning reflex worked you wouldn't need bodyguards 22:26:44 ^lifeguards 22:29:47 -!- Patashu has joined. 22:34:28 itidus21: You're responding to RANDOM LINES FROM THE LOG?!?! 22:35:05 hi Guest53387 22:35:42 Guest53387: yeah, except, i must add that it migt be a social thing.. but the point is the drowning reflex is something you could be 5 feet away from someone and not know they're drowning 22:35:50 unless you know what to look for 22:36:26 I'm going to try this responding to random lines from the log thing 22:36:27 `log 22:36:29 2007-05-03.txt:15:29:14: -!- crathman has joined #esoteric. 22:36:34 hi crathman 22:36:36 `log 22:36:38 2006-10-13.txt:23:38:47: RodgerTheGreat: wait, writing all this on the alphasmart thing? 22:36:45 human body is not good at a few things "rotting teeth"... "drowning" 22:36:55 HALLO I AM GUEST 22:37:02 human body is bad at many things 22:37:20 `log 22:37:20 SHALL WE WORSHIP THE GREAT OVERSEER NOW? 22:37:21 2007-11-19.txt:23:09:02: unfortunately people don't seem to be able to learn an alphabet no matter how many memory pegs you give them 22:37:28 i mean we need a dentist industry to avoid chronic tooth pain? its really that bad? 22:37:43 evolution fucked up on the teeth department 22:37:52 :'( 22:38:14 -!- Guest53387 has changed nick to Gregor. 22:38:27 Pfft. You're just being picky... 22:38:41 `log 22:38:43 2005-01-25.txt:05:06:25: -!- calamari has joined #esoteric. 22:38:50 hi calamari 22:38:54 itidus21: evolution may not have foreseen industrial sugar 22:38:57 well i feel bad about my rant before 22:39:12 so im overcompensating :) 22:39:24 As long as you don't care what you look like you rarely need to go to a dentist... 22:39:43 but a toothache won't just stop 22:39:44 To be fair, evolution has no interest. 22:40:05 Evolution cares only enough about you to make sure you get laid. 22:40:11 After that, it leaves you on the curb. 22:40:18 dh_ ok you're right 22:40:21 Evolution is the ultimate wham-bam-thank-you-{ma'am,sir} 22:41:00 -!- ive has quit (Ping timeout: 260 seconds). 22:41:10 Gregor: there _is_ a theory that humans have evolved the ability to be grandparents, you know 22:41:44 oerjan: OK, OK, it's more like "until children are weaned", but basically its influence drops quite fast after your kids are likely to have kids. 22:41:46 * oerjan does suspect Gregor is not entirely serious 22:41:50 I've even heard myths of great grandparents 22:42:07 i think i met my great grandfather once 22:42:24 but i was quite small 22:42:26 :o 22:42:36 ability to be grandparents 22:42:42 thats pretty intense 22:42:45 it's like a superpower 22:42:48 woah, GRANDparents 22:43:00 most animals don't become grandparents? 22:43:31 erm, i mean ability to have a _role_ as grandparents, as opposed to just generally existing (or not) 22:43:50 `log sandwich 22:43:53 2009-02-28.txt:20:19:26: People need to replace the term "GLBT" with "GBLT". Support your local gay bacon lettuce and tomato sandwich. 22:44:03 `log sammich 22:44:06 2009-05-28.txt:21:28:38: !bfjoust make_me_a_sammich (>)*10+>->+[[-]>+] 22:44:19 `log bread 22:44:20 perhaps some other very social animals do too 22:44:23 2007-04-09.txt:00:51:29: but I'm assuming that's what they exist for. 22:44:31 `log toast 22:44:31 Gregor's spelling of sandwich is inconsistent :/ 22:44:34 2010-12-17.txt:19:31:42: elliott: No, but my toaster is. 22:44:48 `log crossaint 22:44:52 2011-09-15.txt:22:44:48: `log crossaint 22:44:53 samwich, sandmich 22:45:06 `log burrito 22:45:09 2011-03-20.txt:22:26:31: aw, i put a burrito in the microwave on defrost and it burst 22:45:18 that happens to me too 22:45:20 `log sandwich 22:45:24 2010-01-17.txt:00:13:34: I am eating a turkey sandwich made with it /right now/. 22:45:24 olsner: not every sandwitch raises to the quality needed to be a sammitch. or so i hear. 22:45:32 *sandwich 22:45:35 `log sandwich 22:45:37 I believe 22:45:39 2010-12-09.txt:19:07:39: Phantom_Hoover: Or lightly-garnished sandwiches. 22:45:40 That the "it" there 22:45:43 oerjan: so you hear, so you hear 22:45:43 Was BACONNAISE 22:45:47 sandwhich 22:46:03 `log sammich 22:46:06 2009-11-13.txt:20:03:58: I found a page on the wiki called [[Sammich]] but it seems it so far is only a example program, do you think anything should be done with that? 22:46:46 sammich is a bad wiki page 22:48:09 sammizdat 22:49:30 -!- nooga has joined. 22:52:19 http://blog.progopedia.com/2011/jul/31/gourmet-programming/ 23:04:06 ok so i was thinking and reading, 23:04:29 it has occured to me that chessboard does not contain an encoding of the rules of chess within itself 23:04:38 yup 23:04:45 this is a terrible situation 23:05:15 so i thought of a possible solution 23:05:50 the quineboard! 23:07:52 Not a cheeseboard for gourmet programming? 23:08:07 There are chess variants about food 23:08:44 i was reading hither and thither 23:09:49 ok this is the general idea http://oi53.tinypic.com/21jtzs5.jpg 23:10:31 someone in here once mentioned to me that some game where each piece was a chessboard of its own 23:11:09 but the idea i am looking at here is each piece is an address of some program section which defines it 23:11:35 * oerjan suddenly is reminded of titan 23:12:03 oh, also shogun 23:12:27 so the chessboard itself i am trying to see as being just a part of a program 23:12:39 although that wasn't every piece, just a smaller board for battles 23:12:55 there are plenty of chess programs 23:13:34 humm.. so how would it work.. it would be 23:14:22 well firstly you might have a data structure representing a chess piece 23:15:08 and each class of chess piece could be some numbers plugged into that data structure 23:16:01 and, so, you could, say each piece was a pointer to a chess piece data structure 23:16:23 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 23:18:00 ok Betza defines a pawn as "mfWcfFimfW2" and Parlett defines a pawn as "o1>, c1X>, io2>" 23:18:20 so you could store "mfWcfFimfW2" at say, address 100 23:18:50 and your row of pawns would then all be pointers to address 100 23:19:50 now if a piece could break out of the board.. and tamper with the definition of a pawn 23:20:03 it could start getting quite interesting 23:23:15 -!- nooga has quit (Ping timeout: 240 seconds). 23:29:39 -!- Jafet has quit (Quit: Leaving.). 23:29:44 Patashu: so the program becomes the board.. and pieces are presumably tracked by some kind of array or list 23:34:36 so when it is your turn you would select a cell from those available in your list of cells, and a desired place to move it, and it would look up the instructions of the piece by following its address 23:34:39 -!- augur has joined. 23:35:05 for example pawns might be described at address 100, and then, if your move is possible it would be made 23:37:05 -!- ive has joined. 23:52:03 itidus21: there is no fenestrated wall in programs. 23:53:11 ^style europarl 23:53:11 Selected style: europarl (European Parliament speeches during approx. 1996-2006) 23:53:14 fungot: you make me fun 23:53:15 CakeProphet: mr president, as a result of this position, which is the accelerated procedure allowing the implementation of the civil aspects of the euro is not just thought about young people we should recognise that we must not allow ourselves to create a specialized, centralized courts in all our countries are going to guarantee the democratic legitimacy of the european union 23:53:30 fungot: you make me fun 23:53:31 CakeProphet: mr president, i should like to start by thanking mr salafranca snchez-neyra has said, i have to say. because development cooperation has been placing increasing emphasis on development by integration into the market of genetically-modified maize modified by fnord, the parameters of the berlin wall, which amounts to resigning itself to a structural reform of its organisation and is asking the commission to consult 23:56:46 there should be a fenestrated wall in programs, so that you can have a defenestrate command. 23:57:58 -!- fungot has quit (Ping timeout: 244 seconds). 23:59:11 ouch