00:09:51 -!- azaq23 has joined. 00:10:08 -!- azaq23 has quit (Max SendQ exceeded). 00:11:20 -!- azaq23 has joined. 00:11:35 -!- Phantom__Hoover has quit (Quit: Leaving). 00:21:16 -!- Nisstyre-laptop has quit (Quit: Leaving). 00:29:26 -!- hagb4rd|lounge has joined. 00:34:20 -!- hagb4rd|lounge has changed nick to hagb4rd. 00:39:25 -!- copumpkin has quit (Ping timeout: 252 seconds). 00:39:55 -!- copumpkin has joined. 00:46:07 -!- TeruFSX has quit (Ping timeout: 246 seconds). 00:53:13 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.90 [Firefox 19.0/20130215130331]). 01:02:12 `olist 01:02:16 shachaf oerjan Sgeo 01:04:35 `cat bin/emptylist 01:04:37 tail -n+2 "$0" | xargs; exit 01:05:33 Burlew's on a roll 01:07:04 As he mentions on the front page. 01:07:49 oerjan, does CReal not count as totally ordered? 01:08:25 Sgeo: well CReal by default cuts off after 40 digits or so 01:08:37 not decidably 01:08:57 but undecidable functions on "computable" reals is fun :( 01:09:28 so by default (==) does return a result. however this result does not respect leibnitzian equality. 01:09:47 *leibnizian 01:10:06 what do you even call equality otherwise 01:10:17 "just-kind-of-saying-so equality" 01:12:34 Bike: well equivalence relations... 01:12:48 it satisfies all the axioms I think 01:12:50 boring 01:12:59 yeah it probably does but it's boring so there 01:13:05 you are also boring tho 01:13:09 :( 01:14:26 hm, having 40 digits in common is probably just bijective with N 01:15:58 `run sed -i 's/^/basename "$0"; /' bin/emptylist 01:16:02 No output. 01:16:03 `emptylist 01:16:05 emptylist 01:16:08 Oops. 01:16:09 `revert 01:16:13 Done. 01:16:34 `run sed -i 's/^/echo -n "$(basename "$0"): "; /' bin/emptylist 01:16:36 `emptylist 01:16:38 No output. 01:16:39 emptylist: 01:16:46 `run sed -i 's/^/echo -n "$(basename "$0"): "; /' bin/olist 01:16:50 No output. 01:16:51 `olist (Sorry!) 01:16:53 olist: shachaf oerjan Sgeo 01:16:56 That's better. 01:17:03 it is? 01:17:05 what just happened what is happening where am i 01:17:17 elliott: Yes, I'm always confused about which list is which. 01:17:23 It's nice to have it all in one line. 01:17:42 (In particular when I /last shachaf and see a list, I want to know which one it is.) 01:17:56 Wait, did I mess it up? 01:17:58 Ugh. 01:18:16 Wait, what happened to olist? 01:18:17 looks fine to me? 01:18:24 It was meant to be an emptylist clone! 01:18:35 `cat bin/olist 01:18:37 echo -n "$(basename "$0"): "; echo shachaf oerjan Sgeo 01:18:38 `run cp bin/{empty,o}list 01:18:42 No output. 01:18:53 `cat bin/olist 01:18:55 echo -n "$(basename "$0"): "; tail -n+2 "$0" | xargs; exit 01:19:02 `run for n in shchaf oerjan Sgeo; do echo $n >> bin/olist; done 01:19:06 No output. 01:19:07 `olist 01:19:09 olist: shchaf oerjan Sgeo 01:19:12 Better. 01:19:21 tip: one of the names is wrong 01:19:27 oopse 01:19:28 protip there 01:19:39 elliott: I never know how to spell that thing anyway. 01:19:49 `run s/shchaf/shachaf/g bin/* 01:19:50 bash: s/shchaf/shachaf/g: No such file or directory 01:19:54 `run sed s/shchaf/shachaf/g bin/* 01:19:56 ​#!/bin/sh \ topic=$(echo "$1" | tr A-Z a-z | sed "s/ *$//") \ topic1=$(echo "$topic" | sed "s/s$//") \ cd wisdom \ if [ \( "$topic" = "ngevd" \) -a \( -e ngevd \) ]; \ then cat /dev/urandom; \ elif [ -e "$topic" ]; \ then cat "$topic"; \ elif [ -e "$topic1" ]; \ then cat "$topic1"; \ else echo "$1? ¯\(°_o)/¯"; exit 1; 01:20:00 * shachaf sighs. 01:20:01 it's because the original is hebrew so the vowels confuse him 01:20:09 `run sed s/shchaf/shachaf/g bin/olist 01:20:11 echo -n "$(basename "$0"): "; tail -n+2 "$0" | xargs; exit \ shachaf \ oerjan \ Sgeo 01:20:16 `run sed -i s/shchaf/shachaf/g bin/olist 01:20:18 One of these days... 01:20:19 No output. 01:20:31 `run cat bin/smlist | rot13 01:20:33 No output. 01:20:40 `run echo hello | rot13 01:20:42 No output. 01:20:44 :-( 01:20:48 `run cat bin/rot13 01:20:50 echo "$@" | tr a-zA-Z n-za-mN-ZA-M 01:21:01 What sort of crazy person makes a rot13 command that doesn't work on stdin? 01:21:07 `rot13 this kind 01:21:09 guvf xvaq 01:21:23 `run echo tr a-zA-Z n-za-mN-ZA-M > bin/r13; chmod +x bin/r13 01:21:26 No output. 01:21:27 `run cat bin/smlist | r13 01:21:29 gnvy -a+2 "$0" | knetf; rkvg \ funpuns \ zbadl \ ryyvbgg 01:21:40 OK, how do you sed just the first line? 01:21:51 Is it just 1s/... or something? 01:22:14 `run sed '1s/^/echo -n "$(basename "$0"): "; /' bin/smlist | r13 01:22:16 rpub -a "$(onfranzr "$0"): "; gnvy -a+2 "$0" | knetf; rkvg \ funpuns \ zbadl \ ryyvbgg 01:22:35 `run sed -i '1s/^/echo -n "$(basename "$0"): "; /' bin/smlist 01:22:40 No output. 01:23:41 By the way, rot13ing to be considerate of me while messing with lists doesn't actually work. 01:23:46 I have a hilight on funpuns. 01:23:47 * shachaf sighs. 01:23:58 I hope «you know who» doesn't have a hilight on zbadl. 01:24:29 `smlist 01:24:31 smlist: shachaf monqy elliott 01:24:57 ? 01:25:00 It's not updated. 01:25:17 `which rot13 01:25:19 ​/hackenv/bin/rot13 01:25:23 -!- nooga has quit (Ping timeout: 255 seconds). 01:25:29 *cough* 01:25:40 `cat bin/rot13 01:25:42 echo "$@" | tr a-zA-Z n-za-mN-ZA-M 01:25:47 oh 01:26:05 pesky argument variations 01:26:21 There should be a standard for bin/ commands. 01:26:31 Such that they look at both $@ and stdin 01:27:09 Someone write a one-liner that checks if $@ is nonempty and if it is reruns $0 with $@ as stdin 01:27:20 And then put it at the beginning of everything 01:27:53 no 01:28:51 elliott: is it bad that while in backscroll i had the exact same idea as shachaf here? 01:28:59 yes 01:29:35 O KAY 01:29:52 hoerjan 01:30:08 having both r13 and rot13 is pretty silly though 01:30:41 oerjan: maybe one of them rotates 13 LEFT and the other rotates 13 RIGHT. 01:32:34 oerjan: I think I've mentioned this idea before. 01:32:35 Maybe not. 01:32:40 Anyway it's how things Should Work. 01:34:03 it should just be something that checks /proc/blah/cmdline and if stdin is closed and that's non-empty then it echos it on stdin 01:34:08 so you can do foo | ... 01:34:22 perhaps it would have been better if HackEgo used EgoBot's convention of passing the command line in stdin 01:34:36 `quine elliott 01:34:39 ​`quine elliott 01:34:54 oerjan: then you couldn't use unix stuff without `run. although you barely can anyway. 01:34:54 hackego's design has led to the most surreal design conversations, i swear 01:35:03 `quine stuff 01:35:04 no 01:35:07 no 01:35:24 elliott: `run would work like EgoBot's !sh then 01:35:27 `quine oerjan 01:35:27 quoerjan 01:35:31 quoerjan 01:36:00 `quine 01:36:01 I'm built just the way I'm meant to be, so stop trying to change who I am! 01:36:22 race condtion!!! 01:36:52 :( 01:37:00 death by race condition 01:37:06 `quine stuff 01:37:08 I'm built just the way I'm meant to be, so stop trying to change who I am! 01:37:23 imo stop botspamming the channel 01:37:30 no 01:37:35 we can't 01:37:39 cuz hackego die 01:37:46 * elliott eyes his scrollback 01:37:57 No output. 01:37:58 No output. 01:38:04 oh welcome back HackEgo 01:39:57 * oerjan rolls his eyes back 01:41:19 -!- GOMADWarrior has joined. 01:43:06 `run (echo '#!/bin/sh'; echo "cd /var/irclogs/_esoteric; cat \$(ls ????-??-??.txt | tail -1) | sed 's/[^>]*> //' | grep '^\`' | tail -1 #Best cheating quine ever?") > bin/quine 01:43:10 No output. 01:43:39 you ruined it :( 01:43:47 `quine No output. 01:43:50 ​`quine No output. 01:44:11 `quine foobar 01:44:11 b 01:44:14 ​`quine foobar 01:44:53 every user in the channel has to test the race condition from now on 01:45:06 `quine 01:45:07 `ugh 01:45:08 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ugh: not found 01:45:09 ​`ugh 01:45:24 elliott passed 01:45:24 thank you for demonstrating elliott 01:45:38 Jafet: hah i didn't think of that, that even works for encrypted quine 01:45:44 Was going to do that, but wanted to copy/paste a newline 01:46:49 it's lost magic though! 01:47:20 * oerjan thinks he will stay neutral on this issue 01:47:41 a good issue 01:52:21 Wait, what was the old `quine command? 01:53:05 probably the same sans the grep? 01:53:48 Ah. 01:54:29 now it's "race condition free" 01:58:39 Hmm. How to fix the race condition: Make HackEgo look for the oldest thing it hasn't replied to? 01:59:29 that has a reverse race condition 01:59:36 like 70% of the point of `quine is to have the race 01:59:40 where the two threads may not see each others' answers 01:59:58 elliott: On the other hand, if we keep tacking on "solutions" to it we'll get an esolang. 02:01:42 an esolang based entirely on misbehaving cheating quines? 02:02:22 Sgeo: I bet you can solve what ais523 said by looking through ps. 02:02:30 Bike: you can't 02:02:36 where to do actual computation you have to make the safeguards fail 02:02:38 `echo $$ 02:02:38 ais523: Shhhhh. 02:02:39 ​$$ 02:02:40 `echo $$ 02:02:42 err 02:02:44 `run echo $$ 02:02:46 `run echo $$ 02:02:52 I'm trying to design an esolang here. 02:03:12 ​$$ 02:03:17 trying to get sgeo to design an esolang here 02:03:23 -!- cantcode has quit (Quit: ragequit). 02:03:27 Sgeo is part of the design. 02:03:31 You are all part of the design. 02:03:36 Welcome... to my museum. 02:03:46 284 02:03:48 285 02:04:24 Use a file as a lock? 02:04:32 I don't really understand HackEgo that well 02:04:33 You see! 02:04:49 Do the different threads each see different environments? 02:05:05 Sgeo: that will work _so_ well with all these timeouts 02:05:47 i don't think they do any longer, something transactions? 02:05:58 they never did afaik 02:10:28 -!- carado_ has quit (Ping timeout: 246 seconds). 02:13:40 -!- cantcode2 has joined. 02:20:26 hmm 02:20:40 I thought I'd got the same value from two simultaneous `run echo $$ before now 02:20:49 `run ps 02:20:51 ​ PID TTY TIME CMD \ 280 ? 00:00:00 init \ 282 ? 00:00:00 sh \ 285 ? 00:00:00 ps \ 286 ? 00:00:00 cat 02:20:58 `run ps 02:21:00 `run ps 02:21:00 ​ PID TTY TIME CMD \ 280 ? 00:00:00 init \ 282 ? 00:00:00 sh \ 285 ? 00:00:00 ps \ 286 ? 00:00:00 cat 02:21:01 ​ PID TTY TIME CMD \ 280 ? 00:00:00 init \ 282 ? 00:00:00 sh \ 283 ? 00:00:00 ps \ 284 ? 00:00:00 cat 02:21:15 perhaps not, those ps runs seem to be aware of each other 02:21:20 `run pgrep ps 02:21:22 No output. 02:21:22 `run pgrep ps 02:21:23 No output. 02:21:27 no pgrep? 02:21:31 `run ps aux | grep ps 02:21:32 `run ps aux | grep ps 02:21:33 5000 282 0.0 0.2 4008 564 ? S 02:21 0:00 sh -c 'env' 'PATH=/hackenv/bin:/opt/python27/bin:/opt/ghc/bin:/usr/bin:/bin' 'HACKENV=/hackenv' 'http_proxy=http://127.0.0.1:3128' 'LANG=en_NZ.UTF-8' '/home/hackbot/hackbot.hg/multibot_cmds/lib/limits' 'bash' '-c' 'ps aux | grep ps' | cat \ 5000 285 0.0 0.5 123840 1460 ? 02:21:34 5000 282 0.0 0.2 4008 564 ? S 02:21 0:00 sh -c 'env' 'PATH=/hackenv/bin:/opt/python27/bin:/opt/ghc/bin:/usr/bin:/bin' 'HACKENV=/hackenv' 'http_proxy=http://127.0.0.1:3128' 'LANG=en_NZ.UTF-8' '/home/hackbot/hackbot.hg/multibot_cmds/lib/limits' 'bash' '-c' 'ps aux | grep ps' | cat \ 5000 285 0.0 0.5 123840 1460 ? 02:21:51 err, hmm 02:21:54 `run ps u | grep ps 02:21:56 `run ps u | grep ps 02:21:56 No output. 02:21:57 No output. 02:22:08 en_NZ? 02:22:15 Gregor: Why en_NZ? 02:22:32 pikhq: that question gets asked all the time 02:22:39 Because it's the cool place to be 02:22:39 my guess is, so people will ask the question :) 02:23:16 pikhq: Because people complained when I set it to zh_TW 02:23:16 Gregor: You have 1 new message. '/msg lambdabot @messages' to read it. 02:24:21 Smartass. 02:25:16 I like hackego being from new zealand 02:25:24 adds some international character to the channel 02:25:59 wait what does NZ even change from like AU or UK 02:26:27 INTERNATIONAL CHARACTER 02:26:37 Technically, a program could have a New Zealand-specific localization. 02:26:54 I bet 100% of programs just use en_US though. 02:28:19 Unicode needs an INTERNATIONAL CHARACTER 02:28:48 -!- wareya has quit (Read error: Connection reset by peer). 02:29:16 petition to make multiocular o the designated international character of unicode 02:29:31 how many signatures do you need for the president to do it 02:29:50 -!- wareya has joined. 02:29:51 Does Unicode have a president? 02:31:06 `quine2 equine too 02:31:06 `run quine2 | rainwords 02:31:08 ​`quine2 equine too 02:31:08 ​`run quine2 | rainwords 02:31:50 Bike: i mean obama 02:32:03 Obama is the president of Unicode? 02:32:19 The president of things which have no presidents 02:32:33 obama is just the president. 02:32:35 I thought that was me. 02:32:41 I mean we already founded the university. 02:32:46 Of dumb professor titles. 02:32:56 I didn't say he was a professor! 02:33:12 Yes but we agreed that I was the founder, which makes me president as well by ancient law. 02:33:47 I am pretty sure hope and change invalidated ancient law in 2008 02:34:46 THANKS OBAMA >:| 02:35:16 Obatman 02:40:42 $ history | tail -n 1 | cut '-d ' -f 4- 02:40:43 history | tail -n 1 | cut '-d ' -f 4- 02:40:52 I made a `quine in bash :) 02:41:11 -!- zzo38 has joined. 02:41:31 btw, that quoting of '-d ' looks really wrong to me 02:41:37 although I guess -'d ' would be worse 02:41:41 (-d' ' doesn't seem wrong to me) 02:43:02 '-'d\ 02:43:28 ais523: Where's the race condition? 02:43:46 At least look in .bash_history instead of running `history` 02:43:50 Give us a chance. 02:43:53 shachaf: that wouldn't make a difference 02:43:58 or, it would 02:44:03 or, hmm 02:44:11 I thought .bash_history only updated when the shell exited 02:44:26 $ tail -n 1 .bash_history 02:44:27 history | tail -n 1 | cut '-d ' -f 4- 02:44:29 yeah 02:45:22 what's the non-word-boundary rainbow command 02:45:30 rb? 02:46:10 ais523: There's an option for it. 02:46:16 You can make it write to .bash_history on every command. 02:47:01 shopt -s histappend 02:47:15 Maybe? 02:47:20 shopt -s histappend && tail -n 1 .bash_history 02:47:38 The point is to keep the race condition around. 02:48:59 but thiw way you can get new and exciting race conditions 03:03:36 -!- abumirqaan has changed nick to muqayil. 03:03:58 quintopia: colorize 03:07:18 thx 03:07:38 `run echo "thoerjan" | colorize 03:07:41 ​thoerjan 03:09:34 Why does it make that many color codes 03:09:56 `run echo "so that zzo38 will ask lots of questions" | colorize 03:09:58 ​so that zzo38 will ask lots of questions 03:10:29 zzo38: it just fills out the line until near HackEgo's limit, i suspect only your client even sees most of them so we haven't bothered to cut them down. 03:10:57 it's a bit of a waste when the line is short originally 03:11:52 i suppose a minimum somewhere could reduce it... 03:11:53 oh does it just randomly insert color codes monte carlo style 03:12:32 it seems you could at least make it not add a color code anywhere its already put one 03:12:34 quintopia: yeah it does a shuffle of a string containing x's and C's, the x'es for original content 03:12:44 quintopia: hm i guess... 03:12:52 `cat bin/colorize 03:12:53 ​#!/bin/sh \ python -c "import random; w=raw_input(); p=list('x'*len(w)+'C'*int((341-len(w))/3+1)); random.shuffle(p); i=(c for c in w); print ''.join(i.next() if c=='x' else chr(3)+'%02d' % random.randrange(2,15) for c in ['C']+p)" 03:14:17 oerjan: so do a /C+/C/ 03:14:38 quintopia: i'm looking up python regexp functions 03:15:45 `url bin/colorize 03:15:48 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/bin/colorize 03:16:39 `which python 03:16:40 ​/opt/python27/bin/python 03:17:02 `which env 03:17:04 ​/usr/bin/env 03:19:16 -!- doesthiswork has quit (Quit: Leaving.). 03:19:24 `fetch http://oerjan.nvg.org/colorize 03:19:31 2013-03-01 03:19:30 URL:http://oerjan.nvg.org/colorize [258/258] -> "colorize" [1] 03:19:42 `run chmod a+x colorize 03:19:46 No output. 03:20:02 `run echo Test | ./colorize 03:20:04 Traceback (most recent call last): \ File "./colorize", line 7, in \ p=re.subst('C+','C',p) \ AttributeError: 'module' object has no attribute 'subst' 03:20:12 oops 03:20:44 `fetch http://oerjan.nvg.org/colorize 03:20:46 2013-03-01 03:20:45 URL:http://oerjan.nvg.org/colorize [256/256] -> "colorize.1" [1] 03:21:14 `run cat colorize.1 >colorize 03:21:18 No output. 03:21:20 `run echo Test | ./colorize 03:21:23 Traceback (most recent call last): \ File "./colorize", line 7, in \ p=re.sub('C+','C',p) \ File "/opt/python27/lib/python2.7/re.py", line 151, in sub \ return _compile(pattern, flags).sub(repl, string, count) \ TypeError: expected string or buffer 03:21:42 now wtf 03:22:11 does python seriously do str->int by turning it into its length? 03:22:23 i guess that's cool? 03:22:37 wat? i have no idea. 03:23:08 where did you get that idea quintopia 03:23:30 Bike: "p=re.sub('C+','C',p)" 03:23:42 where p is a string 03:23:56 that's regex substitution what does it have to do with numbers 03:24:11 the third argument is a count 03:24:18 no it isn't 03:24:27 "re.sub(pattern, repl, string, count=0, flags=0)" 03:24:47 oh 03:24:58 so what is p then 03:25:08 a string, except oerjan actually made it a list 03:25:10 i still have no idea what the error is about 03:25:18 i don't think python lists are strings 03:25:22 i could be wrong, it's been a while 03:25:24 oh duh 03:25:26 aha 03:25:53 str(['a','b']) => "['a','b']" awesome 03:26:11 how the fuck do I do this then... 03:26:29 do a join on the whole list 03:26:34 and then apply the regex 03:26:47 and then split again? how convenient. 03:26:51 nah 03:26:53 -!- GOMADWarrior has quit (Ping timeout: 256 seconds). 03:27:00 you can change the last to loop over chars in the string 03:27:16 or 03:27:19 fuck the regex 03:27:24 quintopia: you do it who actually know python 03:27:39 What if you wrote a python->haskell compiler first? 03:27:42 just add a flag that records whether the last element was a 'C' 03:27:54 and refuses to print a color if so 03:27:59 -!- TeruFSX has joined. 03:28:02 how about write it in haskell instead 03:28:02 quintopia: we are _way_ beyond by patience quota here. 03:28:13 we can get Bike to do it 03:28:15 how about write in haskell instead 03:28:24 we can get elliott to do it 03:28:30 Bike knows haskell 03:28:31 Wait. 03:28:32 Agda. 03:28:34 what do I know about haskell? 03:28:37 `fetch http://oerjan.nvg.org/colorize 03:28:42 2013-03-01 03:28:41 URL:http://oerjan.nvg.org/colorize [235/235] -> "colorize.2" [1] 03:28:56 i=(c for c in w) <-- it's beautiful 03:29:02 `run cat colorize.2 >bin/colorize 03:29:06 No output. 03:29:09 python strings are not lists, but they are both iterable in the same way 03:29:15 so many functions are happy to consume either 03:29:16 haha 03:29:24 kmc: BUT NOT RE.SUB 03:29:44 `run echo Test | colorize #This is just the old one reformatted 03:29:47 ​Test 03:29:57 i wonder if python has a strfry 03:30:00 so at least that won't be lost 03:30:10 `run rm colorize* 03:30:14 No output. 03:32:20 there's random.shuffle 03:32:24 but it wants to shuffle a list in place 03:32:38 that's what colorize uses 03:32:52 `cat bin/colorize 03:32:53 ​#!/usr/bin/env python \ import random \ import re \ w=raw_input() \ p=list('x'*len(w)+'C'*int((341-len(w))/3+1)) \ random.shuffle(p) \ i=(c for c in w) \ print ''.join(i.next() if c=='x' else chr(3)+'%02d' % random.randrange(2,15) for c in ['C']+p) 03:34:27 `run echo Colorize | colorize 03:34:29 ​Colorize 03:34:44 "um cool" 03:35:01 `run cat bin/colorize | colorize 03:35:02 ​#!/usr/bin/env python 03:35:08 purty 03:36:20 `run echo "$(cat bin/colorize)" | colorize 03:36:22 ​#!/usr/bin/env python 03:36:29 `run echo "$(cat bin/colorize)" 03:36:31 ​#!/usr/bin/env python \ import random \ import re \ w=raw_input() \ p=list('x'*len(w)+'C'*int((341-len(w))/3+1)) \ random.shuffle(p) \ i=(c for c in w) \ print ''.join(i.next() if c=='x' else chr(3)+'%02d' % random.randrange(2,15) for c in ['C']+p) 03:36:36 `run sed -i '6ap=list(re.sub('C+','C',''.join(p)))' bin/colorize 03:36:40 No output. 03:36:40 `run echo $(cat bin/colorize) | colorize 03:36:43 ​ File "/hackenv/bin/colorize", line 7 \ p=list(re.sub(C+,C,.join(p))) \ ^ \ SyntaxError: invalid syntax 03:36:51 oops 03:36:53 `revert 03:36:56 Done. 03:37:02 Race coerjan 03:37:06 `run sed -i "6ap=list(re.sub('C+','C',''.join(p)))" bin/colorize 03:37:11 No output. 03:37:22 `run echo Test | colorize 03:37:24 ​Test 03:37:26 yay 03:37:39 zzo38: did that have fewer color codes? 03:37:43 `run echo Colorize | colorize 03:37:45 ​Colorize 03:37:48 shachaf: i'm gonna have to remember that one 03:38:22 seems from the logs like it worked. 03:38:31 (Type coerjan?) 03:40:02 i guess by what kmc said the final list(...) is redundant 03:40:08 but never mind 03:42:34 `run echo xaCtoKniFe | colorize 03:42:36 ​xaCtoKniFe 03:43:13 Bike: Remember whom? 03:49:27 oerjan: Yes how there is only one control code for each letter 03:49:48 darn wikipedia broke wikEdDiff 03:50:10 zzo38: good 03:50:27 Who is the pope now? 03:50:40 no one 03:50:58 the conclave has not started yet 03:51:37 we are in a popeless world 03:53:04 -!- Arc_Koen has quit (Quit: Arc_Koen). 03:55:12 'Today there is no Pope, head of the CIA, or Sec. of Defense. We are so, so close to living John Lennon's dream.' 03:55:17 Bike: they deleted his tweets too 03:55:19 the pope 03:55:20 no! 03:55:35 There's an archive 03:55:44 thank god 03:55:52 kmc: LSD is still illegal though 03:56:13 kmc: are they like mad at him 03:56:15 for tweeting 03:56:38 elliott: dunno 03:56:42 They write his tweets 03:56:44 Jafet: yeah last i checked 03:58:13 * Sgeo is busy downloading all the stuff from sgeo.diagonalfish.net 03:58:41 oh shit have you read growth and form too?? 03:59:04 Forbidden 03:59:05 You don't have permission to access / on this server. 03:59:07 rip sgeo.diagonalfish.net 03:59:24 I can still FTP into it 03:59:29 -!- monqy has joined. 03:59:49 get out while you still can 04:00:54 hi 04:02:34 Let's see if I can log into paranoia-live 04:06:16 http://dl.dropbox.com/u/16240872/12_30_06_device_mania.html 04:08:00 Big computer. 04:13:06 what's this from 04:13:36 kmc: how often do you check 04:13:39 do we need `lsdlist 04:13:52 i'd like to subscribe to `lsdlist on principle 04:14:06 monqy, a Paranoia session I GMed 04:14:07 http://www.creaturescaves.com/downloads.php?section=COBs&view=801 04:14:11 ^^not Paranoia 04:14:45 and what's this 04:15:00 The COBs section 04:15:15 Something I made years ago that was hosted on sgeo.diagonalfish.net 04:15:24 It's been a "lost link" for some time 04:15:26 ah are you going through your old stuff archives 04:15:37 Just today gave malkin permission to post the copy that he had to this site 04:15:38 so 04:15:42 what's happening to the diagonal fish 04:16:38 by any chance would this diagonal fish archive happen to house the fabled “atheism directory„ 04:17:04 Erm, yes. 04:17:23 :0 04:17:24 Ooh that sounds fun. 04:17:34 What is the fabled “atheism directory„? 04:18:24 i've only heard fables 04:18:48 i've only heard people fabling about the fables 04:18:55 (just now, in fact) 04:19:33 Ok. What is my math homework doing in the atheism directory? 04:19:51 I don't know! Maybe it would help if you explained what the fabled “atheism directory„ is. 04:20:10 Just my thoughts/code relating to religion 04:20:22 Code you say. 04:22:04 What are your thoughts/code relating to religion? 04:22:22 Can I just, like, upload a directory to dropbox? 04:23:39 i think so but you might have to do something special to give directory listing permissions?? or you could zip it up and upload that 04:24:46 Or shell archive it in which case it can even work with sprunge 04:27:32 In GCC does including cases with __builtin_unreachable make it not going to be worse than it ordinarily is? 04:30:31 http://dl.dropbox.com/u/16240872/atheism.zip 04:31:27 man i am so pumped for this 04:31:33 are you ready to get your folk theology deconstructed??? 04:31:34 ye 04:32:16 This is all from years ago 04:32:54 One of those was something some religious person gave me to read I think 04:35:07 supregod.pdf 04:35:39 oh that's some kabbalah shit right there son 04:36:07 I hope that it's clear that I never actually believed that, and it was just musings on various possible theologies that would make more sense. 04:36:17 yeah 04:37:27 wow there is actually code. 04:57:47 -!- kallisti has quit (Ping timeout: 260 seconds). 04:59:22 -!- oerjan has quit (Quit: c-ode). 05:03:18 -!- madbr has joined. 05:04:44 I think it's possible to do a CPU that can autovectorize any loop 05:06:02 Maybe, but sometimes vectorizing by compiler would be preferable. 05:06:28 yeah it's essentially applying a vectorizing compilation on the fly 05:06:34 the concepts are the same 05:07:04 you take your 32 register RISC 05:07:10 classic design etc 05:07:33 but you have 4 or 8 or howerver many sub-cores 05:07:48 run the same operations on the 4 or 8 cores 05:08:22 I prefer "worse-is-better" design 05:08:40 if a branch goes different ways on different cores then you invalidate the results on subsequent cores 05:09:01 zzo: what's that? 05:09:24 Simplicity-the design must be simple, both in implementation and interface. It is more important for the implementation to be simple than the interface. Simplicity is the most important consideration in a design. 05:09:31 Correctness-the design must be correct in all observable aspects. It is slightly better to be simple than correct. 05:09:40 Consistency-the design must not be overly inconsistent. Consistency can be sacrificed for simplicity in some cases, but it is better to drop those parts of the design that deal with less common circumstances than to introduce either implementational complexity or inconsistency. 05:09:44 Completeness-the design must cover as many important situations as is practical. All reasonably expected cases should be covered. Completeness can be sacrificed in favor of any other quality. In fact, completeness must sacrificed whenever implementation simplicity is jeopardized. Consistency can be sacrificed to achieve completeness if simplicity is retained; especially worthless is consistency of interface. 05:09:47 That is what it is. 05:11:23 hmmmm 05:12:14 does it have C++ compiled code more or less optimally? 05:12:48 yes -> superscalar 2 issue classic risc architecture we've seen a zillion times 05:12:48 the defining question of our times 05:13:58 no the user can use intrinsics or de-aliasing keywords -> SIMD of some kind 05:14:18 essentially that's what a GPU is, for instance 05:14:40 VLIW of some kind optimized for max throughput 05:14:51 see also: Cell, Larrabbee 05:15:59 no the user will write custom assembly -> DSP of some kind with SIMD 05:16:11 (even more throughput-oriented architecture) 05:22:35 kinda wonder how easily LLVM can 05:22:40 (1) unroll loops 05:22:56 (2) guess which pointers can't alias which others 05:23:37 GPUs aren't particularly VLIW, rather they have different sorts of memory which each have different aliasing behaviour 05:23:43 across threads 05:23:47 if (1) is easy then any loop can be unrolled N times (first step to the kind of auto-vectorization I'm thinking about) 05:24:08 ais: oh 05:25:29 once you have your loop unrolled, say, 4 times, you can try to reorder the instructions to put each set of 4 identical operations together 05:25:38 this is where (2) comes in 05:26:02 if LLVM's alias analysis fails (ie it finds two pointers can alias) 05:26:39 then it can't reorder the memory operations and you'll never be able to combine your sets of 4x identical operations together 05:27:10 (because you'd have to violate memory operation ordering constraints) 05:28:19 however if it passes then you can vectorize any operation 05:28:49 though you'll need special versions of the opcodes that can feedback operands from unit to unit 05:32:10 -!- lambdabot has quit (Ping timeout: 248 seconds). 05:35:26 I guess for DSP and gfx processing loops 05:35:36 your looping condition is going to be N iterations 05:35:41 so that's easy to unroll 05:36:14 the problem with DSP is that while it usually writes in 1 place, it normally reads all over the place 05:36:28 (look up tables, sample data...) 05:38:45 I think LLVM doesn't always need to guess since you can specify explicitly some ways too. 05:38:59 Such as the restrict command and the !tbaa command. 05:43:24 "‘llvm.loop.parallel‘ Metadata" 05:46:45 O, yes, there is that, too! 05:52:43 But LLVM doesn't have a command to change the number of bits in one byte. 05:56:29 what's the interest of doing that? 05:56:49 making the KillComp 9007 a reality 05:58:08 There are computers and virtual machines with different number of bits in one byte. 06:00:19 I've heard of 9, 12 and 36 bit words yes 06:00:51 Yes I mean things such as that 06:01:20 But I also mean including 4-bits and 32-bits and whatever else there might be. 06:01:51 Doesn't CHAR_BIT have to be at least 8? 06:03:14 yeah, it's 8 as a minimum 06:03:15 Bike: In C it must be at least 8 bits. 06:03:16 but can be higher 06:03:19 I think it does in C, and probably should in LLVM too except in cases where the module contains a command explicitly saying otherwise. 06:03:21 In POSIX it must be exactly 8 bits. 06:03:40 weird 06:04:26 In many cases you wouldn't care about POSIX though. 06:04:57 LLVM also dosen't have attributes to indicate commutative and associative function parameters, but maybe it should have 06:05:07 Since it might be useful for some kind of optimizations. 06:07:55 I think it can flag some opcodes as commutative 06:08:16 so actually if it inlines your function it might do that to your additions 06:11:37 Yes I have looked at the source-codes it seems like it does that, but it doesn't mean you can specify that your own function has that property in other cases too (including external functions). 06:14:19 I don't think it's really much of an important avenue for optim 06:15:12 it is if you're doing mapreduce or something, but then why are you doing llvm? 06:17:23 I suppose it is because they don't have other ones. 06:18:00 LLVM also doesn't compile into many targets which GCC supports. 06:19:21 Such as MMIX and ARM2 and so on, so LLVM programs are not as portable as GCC, for now. 06:19:51 Neither LLVM nor GCC supports Z-machine or Glulx, though, as far as I can see. 06:19:58 Shame. 06:21:08 Do either of them compile to naval automatic differential analyzers, for use in aiming cannons? 06:25:17 llvm supports later ARMs no? 06:25:39 Yes LLVM does support later ARMs but not all the old ones too like GCC supports even ARM1 06:26:05 And there are computers other than ARM. 06:26:05 Do you have old ARM machines you need to support? 06:26:47 Yes (mainly due to patent issues). 06:27:47 so, how's the dsp unit design going 06:29:32 Well, I don't actually have the equipment yet but mostly I just think about it, I have various papers I have written ideas on 06:29:56 However mostly now I am working on VGMCK. 06:31:27 (At this time, I am adding support for OPLL, although I eventually intend to have all of them, as well as other additional features.) 06:33:09 anything seem particularly promising? 06:34:25 I don't know yet. 06:35:00 Therefore, I must learn. But I am not working on hardware right now since I have other things to do. 06:38:14 I think I may be evil 06:38:18 I'm back in norn torture mode 06:38:43 no sgeo! resist!!!!! 06:39:15 Actually, it's someone else's norn 06:39:26 I gave them the genetics, but he's observing what the norn is doing 06:39:41 So, kind of out of my hands, unless I scream "PUT THE POOR NORN OUT OF ITS MISERY" 06:40:03 wow so you're a second-degree sociopath 06:40:23 Although actually he's mind controlling the norn to get him to eat, so that's a thing. 06:40:39 monster 06:40:57 It's good. The condition the norn has makes the norn unwilling to eat food after he's eaten food a few times. 06:41:06 Or, well, unwilling to do anything after doing that thing a few times. 06:42:43 Hm, how'd you manage that? 06:42:52 There's a chemical called Punishment 06:43:04 I added a gene that makes sure the norn is always filled with Punishment 06:43:43 Oh. 06:45:54 "post mind-control + tickling, he seems to eat when prompted" 07:00:44 someone give me a backtick plox 07:01:14 ` 07:01:15 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: : not found 07:01:16 0060 ` GRAVE ACCENT 07:01:46 thanks bike 07:02:13 `run touch bin/$(echo) 07:02:14 No output. 07:02:18 ` 07:02:19 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: : not found 07:02:22 `frink 5.5 km/h to mi/h 07:02:23 Aww. 07:02:32 ​[] 07:02:35 `run touch bin/$(echo -n) 07:02:36 No output. 07:02:40 ` 07:02:41 `frink 5.5 km/h to mi/h 07:02:41 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: : not found 07:02:48 ​[] 07:02:59 `frink km/h to mi/h 07:03:07 Error in BasicExpressionFormatter.formatEnumerating in evaluation \ Error in BasicExpressionFormatter.formatEnumerating in evaluation Range operator endpoints are conformal, but require you to specify an conformal step. 07:03:14 awesome 07:03:16 `units 07:03:45 No? ok. 07:03:47 2527 units, 72 prefixes, 56 nonlinear units \ \ You have: 07:04:29 `units '5.5 km/h' 'mi/h' 07:04:30 Unknown unit ''5.' 07:04:46 `units km/h mi/h 07:04:48 ​Definition: 1.4152697e+66 s^2 / kg^2 m^4 07:05:06 Wow. 07:05:22 -!- keb has joined. 07:05:33 -!- keb has quit (Client Quit). 07:06:55 -!- TeruFSX has quit (Ping timeout: 246 seconds). 07:10:38 -!- keb has joined. 07:10:38 -!- keb has quit (Client Quit). 07:28:17 -!- FreeFull has quit. 07:40:58 -!- Bike has quit (Quit: leaving). 07:45:05 K 07:45:07 U 07:45:41 ku 07:47:59 Grah, the Internship website I found is just for students :( 07:53:26 -!- madbr has quit (Quit: Radiateur). 07:56:22 -!- epicmonkey has joined. 07:57:46 Trying not to flip out over an important website in the Creatures Community storing passwords in plain text. 07:59:26 flipping out is sort of a reasonable response to that 08:00:10 otoh, someone storing passwords in plain text is likely to completely miss what the fuzz is about 08:00:11 -!- aloril has quit (Ping timeout: 276 seconds). 08:00:30 Apparently, they originally thought I meant in cookies 08:00:44 Although the conversation was going through an intermediary 08:03:03 -!- epicmonkey has quit (Ping timeout: 245 seconds). 08:13:30 -!- aloril has joined. 08:58:14 -!- md_5 has quit (Quit: ZNC - http://znc.in). 08:59:38 -!- md_5 has joined. 09:11:58 -!- epicmonkey has joined. 09:13:28 -!- DHeadshot has quit (Ping timeout: 245 seconds). 09:14:20 VGMCK is now up to version 0.6. 09:14:36 Eventually it will come up to version 1.0 and then more after that too. 09:55:48 -!- carado has joined. 09:58:44 -!- monqy has quit (Quit: hello). 10:00:10 -!- carado has quit (Ping timeout: 246 seconds). 10:01:10 -!- carado has joined. 10:07:23 -!- zzo38 has quit (Remote host closed the connection). 10:11:14 Someone who uses a different password for each password field would also miss what the fuzz is about. 10:20:39 -!- nooga has joined. 10:26:23 fungot, do you use different passwords and/or even change them often ? 10:26:23 c00kiemon5ter: i can't make 10:39:11 -!- DHeadshot has joined. 10:51:17 -!- DH____ has joined. 10:52:13 -!- DHeadshot has quit (Ping timeout: 245 seconds). 10:56:06 -!- KingOfKarlsruhe has joined. 11:01:13 -!- clog has quit (Quit: ^C). 11:01:27 -!- clog has joined. 11:14:23 -!- ais523 has quit. 11:16:03 -!- hagb4rd2 has joined. 11:18:53 -!- hagb4rd has quit (Ping timeout: 245 seconds). 11:35:33 -!- azaq23 has quit (Ping timeout: 245 seconds). 11:56:34 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.90 [Firefox 19.0/20130215130331]). 12:01:48 -!- sebbu has quit (Ping timeout: 245 seconds). 12:05:37 -!- sebbu has joined. 12:05:37 -!- sebbu has quit (Changing host). 12:05:37 -!- sebbu has joined. 12:20:26 -!- Phantom_Hoover has joined. 12:31:48 -!- sebbu has quit (Ping timeout: 245 seconds). 12:35:40 -!- sebbu has joined. 12:35:40 -!- sebbu has quit (Changing host). 12:35:40 -!- sebbu has joined. 12:38:05 -!- augur has quit (Remote host closed the connection). 12:44:43 -!- sebbu has quit (Ping timeout: 245 seconds). 12:48:03 -!- DH____ has quit (Read error: Connection reset by peer). 13:24:36 -!- TeruFSX has joined. 13:24:47 -!- carado_ has joined. 13:26:11 -!- Taneb has joined. 13:26:36 -!- augur has joined. 13:29:49 -!- carado_ has quit (Ping timeout: 246 seconds). 13:34:20 -!- Taneb has quit (Ping timeout: 240 seconds). 13:34:43 -!- TeruFSX has quit (Ping timeout: 245 seconds). 13:35:26 -!- nooodl has joined. 13:49:56 `resume 13:49:59 résumé 13:57:10 i love the tiny glimpse that command gives into Sgeo's life 14:04:36 -!- nooga has quit (Ping timeout: 248 seconds). 14:06:44 -!- boily has joined. 14:06:51 -!- metasepia has joined. 14:07:00 -!- hagb4rd2 has quit (Ping timeout: 248 seconds). 14:13:04 -!- Taneb has joined. 14:33:19 -!- DHeadshot has joined. 14:35:57 -!- Arc_Koen has joined. 14:42:25 -!- sebbu has joined. 14:42:25 -!- sebbu has quit (Changing host). 14:42:25 -!- sebbu has joined. 14:46:55 -!- sebbu2 has joined. 14:47:28 -!- lambdabot has joined. 14:50:20 -!- sebbu has quit (Ping timeout: 276 seconds). 14:54:10 -!- carado has quit (Ping timeout: 246 seconds). 14:57:03 -!- nollapiste has joined. 15:03:52 -!- sebbu has joined. 15:04:08 -!- sebbu has quit (Changing host). 15:04:08 -!- sebbu has joined. 15:04:36 -!- GOMADWarrior has joined. 15:06:49 -!- sebbu2 has quit (Ping timeout: 256 seconds). 15:08:39 -!- sebbu2 has joined. 15:08:39 -!- sebbu2 has quit (Changing host). 15:08:39 -!- sebbu2 has joined. 15:09:50 -!- sebbu has quit (Ping timeout: 276 seconds). 15:12:03 -!- sebbu has joined. 15:12:03 -!- sebbu has quit (Changing host). 15:12:03 -!- sebbu has joined. 15:13:24 -!- sebbu3 has joined. 15:13:28 -!- sebbu2 has quit (Ping timeout: 245 seconds). 15:13:39 -!- sebbu3 has quit (Changing host). 15:13:39 -!- sebbu3 has joined. 15:16:23 -!- sebbu has quit (Ping timeout: 245 seconds). 15:21:36 That's it. I am fucking DONE with trying to get people to fix their password security 15:21:46 The admin made changes. Those changes are HORRIBLE> 15:22:13 'everyone's password must be "password", so you don't forget it' 15:23:00 Ok, not that bad 15:23:11 But it's a not-well-thought-out password reset 15:23:17 Which obliterates the original password 15:24:44 I find two-columned text oddly hard to read 15:25:24 wehuiofpawuoehfaeruitr 15:25:31 I should stop helping people 15:25:45 People do worse things than they were doing originally when they try to take my advice 15:26:32 Or maybe you're just not helping people enough 15:31:51 The website in question has gone from "There's a theoretical weakness that would make your users' lives worse if the website was hacked into." to "Now there's an actual vulnerability." 15:32:46 Tell the admin this and give him specific recommendations 15:33:22 Told the admin, but I should probably actually recommend something, rather than describing the problem 15:33:29 Only good recommendation is to use a library 15:34:59 -!- AnotherTest has joined. 15:38:53 -!- sebbu3 has quit (Ping timeout: 245 seconds). 15:38:57 -!- sebbu has joined. 15:39:17 -!- sebbu has quit (Changing host). 15:39:17 -!- sebbu has joined. 15:40:54 -!- quintopia has quit (Ping timeout: 264 seconds). 15:41:02 -!- quintopia has joined. 15:44:38 -!- GOMADWarrior has quit (*.net *.split). 15:44:39 -!- jix has quit (*.net *.split). 15:44:39 -!- ion has quit (*.net *.split). 15:44:39 -!- iamcal_ has quit (*.net *.split). 15:45:32 -!- iamcal_ has joined. 15:45:40 -!- GOMADWarrior has joined. 15:45:40 -!- jix has joined. 15:45:40 -!- ion has joined. 16:12:07 -!- Taneb has quit (Ping timeout: 260 seconds). 16:32:59 -!- Taneb has joined. 16:33:38 -!- devin_ has joined. 16:33:52 -!- devin_ has left. 17:08:32 -!- nooga has joined. 17:10:04 -!- sebbu has quit (Ping timeout: 272 seconds). 17:11:30 -!- ared_ has joined. 17:12:11 -!- sebbu has joined. 17:14:28 -!- nollapiste has quit (Ping timeout: 248 seconds). 17:26:25 Sgeo: Creatures as in the Steve Grand game? 17:31:23 -!- nooodl has quit (Ping timeout: 245 seconds). 17:35:36 impomatic, yes 17:36:35 * impomatic tinkers with that occasionally :-) I only have Creatures 2 PC and the Gameboy version though. 17:36:45 I'm still looking for a Norn doll! 17:37:35 impomatic, well, Docking Station is free! 17:37:38 :D 17:39:40 -!- Bike has joined. 17:39:56 -!- FreeFull has joined. 17:53:08 -!- DHeadshot has quit (Quit: Bye). 17:55:45 -!- augur has quit (Remote host closed the connection). 17:58:47 -!- KingOfKarlsruhe has joined. 18:00:42 -!- ared_ has quit (Read error: Connection reset by peer). 18:01:29 -!- ared__ has joined. 18:04:03 -!- ared_ has joined. 18:06:36 -!- ared__ has quit (Ping timeout: 256 seconds). 18:07:48 -!- nollapiste has joined. 18:08:25 -!- ared_ has quit (Ping timeout: 244 seconds). 18:09:29 do i have lambdabot messages 18:09:30 elliott: You have 1 new message. '/msg lambdabot @messages' to read it. 18:09:45 @tell Phantom_Hoover yes 18:09:45 Consider it noted. 18:10:54 long live vietnamese cuisine. 18:11:49 -!- nollapiste has quit (Max SendQ exceeded). 18:13:46 -!- nollapiste has joined. 18:14:43 -!- epicmonkey has quit (Ping timeout: 245 seconds). 18:20:21 -!- ared__ has joined. 18:22:16 -!- nollapiste has quit (Ping timeout: 272 seconds). 18:22:38 -!- ared__ has quit (Max SendQ exceeded). 18:24:01 -!- nollapiste has joined. 18:28:49 -!- nollapiste has quit (Max SendQ exceeded). 18:33:37 -!- Bike has quit (Ping timeout: 246 seconds). 18:34:05 -!- Bike has joined. 18:41:52 -!- Bike_ has joined. 18:43:33 -!- Bike has quit (Ping timeout: 244 seconds). 18:52:50 -!- Bike_ has changed nick to Bike. 18:55:56 * Sgeo nostalgias at http://dl.dropbox.com/u/16240872/Pool2.JPG 19:07:28 it's like shitty minecraft 19:07:28 Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it. 19:07:34 @messages 19:07:34 elliott said 57m 49s ago: yes 19:11:08 -!- nooodl has joined. 19:12:04 -!- FreeFull has quit (Ping timeout: 248 seconds). 19:12:36 -!- Taneb has quit (Ping timeout: 248 seconds). 19:13:13 -!- FreeFull has joined. 19:15:01 -!- monqy has joined. 19:25:32 -!- Nisstyre has quit (Quit: Leaving). 19:51:43 -!- ogrom has joined. 19:52:48 -!- AnotherTest has quit (Quit: Leaving.). 19:56:27 -!- carado has joined. 20:19:04 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.90 [Firefox 19.0/20130215130331]). 20:25:57 -!- Taneb has joined. 20:27:09 -!- oerjan has joined. 20:27:24 :t asin 20:27:27 Floating a => a -> a 20:27:57 > [asin, acos] <*> [-1, 0, 1] 20:27:59 [-1.5707963267948966,0.0,1.5707963267948966,3.141592653589793,1.57079632679... 20:28:06 > [asin, acos] <*> [-1, 0, 1] :: [Float] 20:28:09 [-1.5707964,0.0,1.5707964,3.1415927,1.5707964,0.0] 20:34:04 http://cl.ly/image/170J1K1L280j I suck at DF, therefore I started hacking it 20:35:00 WITH LISP (DIALECT) ! 20:35:23 so that I can nerd while I nerd 20:36:06 -!- augur has joined. 20:37:30 -!- augur_ has joined. 20:37:36 -!- augur has quit (Remote host closed the connection). 20:40:14 ~duck dwarf fortress 20:40:15 Slaves to Armok: God of Blood Chapter II: Dwarf Fortress is a part roguelike, part city-building freeware video game set in a procedurally-generated high fantasy universe in which the player takes control of a group of dwarves and attempts to construct a successful and wealthy mountainhome. 20:40:49 I'm looking at OMeta 20:42:14 -!- sebbu has quit (Ping timeout: 272 seconds). 20:42:22 yeah 20:42:27 it's fucking hard 20:43:50 ~duck ometa 20:43:51 --- No relevant information 20:43:57 ~duck fucking hard 20:43:57 --- No relevant information 20:45:22 uh 20:45:40 FreeFull: i just tried the js version and I don't understand a thing 20:46:31 -!- augur_ has quit (Ping timeout: 244 seconds). 20:46:56 nooga: I'm reading the dissertation 20:47:39 -!- augur has joined. 20:51:02 -!- sebbu has joined. 20:51:03 -!- sebbu has quit (Changing host). 20:51:03 -!- sebbu has joined. 20:53:21 `olist 20:53:25 olist: shachaf oerjan Sgeo 20:55:52 > [x-asin(sin x) | x <- [0 :: Float , 0.1 ..]] 20:55:54 [0.0,-7.450581e-9,0.0,0.0,0.0,0.0,0.0,-5.9604645e-8,5.9604645e-8,5.9604645e... 20:56:11 > [x-asin(sin x) | x <- [0 :: Float , 0.5 ..]] 20:56:13 [0.0,0.0,0.0,-1.1920929e-7,0.8584074,1.8584074,2.8584073,3.8584073,4.858407... 20:57:31 Hmmm... Core War with time travelling processes http://perso.ens-lyon.fr/martin.bodin/timecorewar.html.en 20:57:40 Sgeo: thx 20:57:45 yw 20:58:46 > [x-asin(sin x) | x <- [0 :: Float , pi/4 ..]] 20:58:48 [0.0,-5.9604645e-8,0.0,1.5707964,3.1415923,4.7123885,6.283185,6.283185,6.28... 20:58:50 -!- epicmonkey has joined. 21:06:11 oh that won't be discontinuous, but more like a sawtooth kind of thing 21:08:04 Sgeo: Thanks! 21:08:14 yw 21:25:18 -!- epicmonkey has quit (Ping timeout: 272 seconds). 21:25:56 -!- nooodl has quit (Ping timeout: 248 seconds). 21:26:28 -!- nooodl has joined. 21:32:19 hm seems mezzacotta also has a lovecraft style 21:32:34 fungot: are you secretly mezzacotta's scriptwriter? 21:32:34 oerjan: that would make you... perhaps if you are using. the executables it created; it was written in pl/ 1, 1 21:32:54 ^style lovecraft 21:32:55 Selected style: lovecraft (H. P. Lovecraft's writings) 21:33:17 fungot: explain hyperbolic geometry please 21:33:19 * boily pokes fungot 21:33:19 oerjan: it got wuss araound civil war time, when my friend had attained a size and muscular power not usually found in infants under a full year of age. his motions and even his vocal sounds showed a restraint and deliberateness highly peculiar in an infant, and no previous grave had been disturbed not many months before. on the butcher's shop of the cannibal monster committed from arkham sixteen years before; and upon being re 21:34:23 hm. looks like fungot doesn't like being poked. 21:34:24 boily: the next january gossips were mildly interested in the antiquities he knew so well. he had a characteristic way of ringing the doorbell or sounding the knocker that grew to be a rudimentary eye; whilst in lieu of stairs. the tread was heavy, deliberate tramping in the cottage, and olney heard the windows opening, first on small animals and then on human bodies shockingly obtained. there was nothing anywhere but blackness 21:35:11 maybe it's connected to that heisenbug triggered when fungot produces very long lines 21:35:12 koi{s: " the other gods, who are prone to fnord the details, and far below him on his wedding night." upon that night the wanderers left ulthar, and were impressed by a curious group of half-castes whose frequent meetings and night trips to the woods in a vague fashion; and i felt deeply moved despite my rational beliefs. wilcox, i was on the evening of july fnord, when the intrusion of a single, loosely knit nation or fnord, n 21:36:43 * boily pokes fungot without knowing the poke's velocity 21:36:44 boily: as the men passed the site of his camp. our apprehensions were over what we might find, or fail to find, and proceeded to follow their usual course. with torch flashing intermittently to save the rejected specimen, and would admit no one. i went to fnord for there is no sharp distinction betwixt the real and the unreal; that all things appear as they do. i paint in the cellar laboratory when i learned that i was calmer, 21:36:51 oerjan: indeed. 21:37:32 i _think_ it has the effect of garbling the next line from the channel 21:37:42 and yours was right after mine 21:38:11 garbling with fungot can be quite the problem to debug. 21:38:12 boily: ' and is this what asks so hotly for a reckoning? suppose a man does find it now and then in public assemblies, and who find their greatest consolation in the fawning and fnord attachments of a fnord laundry worker named fnord wolejko had completely vanished from sight. the weather kept fair, and for the searchlight. we often cast a beam of light down the stygian hold. for about ten feet, he saw the hills and converse wi 21:38:15 fungot 21:38:17 oerjan: " that is ultra-violet." he looked curiously at me for a sterner and more lingering end, i saw no living thing nor any light save that of the previous summer, while the slant-eyed merchant was an agent of the darker powers, eager to aid our memory by telling us how we came there, and will be fnord at as obvious impostures, notwithstanding a general resemblance to the vocal organs of man, and had been diligently instruct 21:38:20 fungot 21:38:20 oerjan: " el coyote el fnord el fnord to?" i spoke with the leaders in the soft glow of late afternoon that i first felt the terrible fatigue and short breath which our race through the thin plateau air had fnord but the paintings and rough inscriptions on the peeling walls of most of his tales, being apparently more interested in the ancient house for hundreds of years, but which he would have shewn what he did. 21:38:29 sadly not very fungot 21:38:30 oerjan: it was young danforth who drew our notice to the curious.' when i read in these books or saw in these fields and groves was exactly what we thought we had heard since coming on the camp horror it would have been inconceivable ages ago, when the wind was friendly or adverse, it would appear; though no doubt the meteor had poisoned the soil, but it will have no powers of earth's friendly cats. he knew but a few words of e 21:38:41 doesn't seem to trigger agin 21:38:43 *again 21:39:20 well we only notice it if it garbles either the "fungot" or the nick 21:39:20 oerjan: what had happened. he did not delay the operation. nothing was emitted, and all the loathsome fnord turned from their tasks to stare seaward and cluster round the waterfront. certainly, the emotional cataclysm or revelation which could produce so radical an fnord must be much more considerable than is generally imagined. cabbalism itself, so that the earths internal heat could fnord its habitability for an indefinite pe 21:39:23 I should try to avoid quantum pokes considering the present stellar alignment. 21:40:10 are you saying that the stars are right 21:41:03 fungot: tell me more about el coyote el fnord 21:41:03 olsner: gilman sat in a row six noble forms with the aspect of that city, and the very presence of one in the afternoon i spent much time tracing the walls and bygone streets, and can't tell you, it is the fnord of 21:43:09 -!- carado_ has joined. 21:43:16 -!- carado_ has quit (Client Quit). 21:44:44 oerjan: stars are never right. order is disorder. all hail eris! 21:45:43 i'm not sure whether you are arguing for or against the great old ones returning there 21:46:03 maybe that's part of the madness. 21:47:02 I have sushi planned tonight. the great old ones, I eat them. 21:47:32 i thought sushi was more like the deep ones 21:48:10 I think sushi are the ones in slices with rice under them 21:49:10 there's many types of sushi, the defining factor is the vinegar'd sushi rice 21:49:50 isn't vinegared a word to start with 21:50:31 the rice topped with sashimi (or egg/etc) and wrapped in nori are nigirizushi 21:50:36 let's ask beauregard 21:50:38 the rolls are makizushi 21:59:06 :t (3 :+ 3) 21:59:07 Num a => Complex a 21:59:09 :t (3 :+ 3) + 3 21:59:11 RealFloat a => Complex a 21:59:12 Yeah, "sushi" is literally any dish made with sushi rice. 21:59:32 Why does it become a RealFloat rather than Num if I add an integer? 21:59:50 Actually, adding anything seems to do that 21:59:56 :t (3 :+ 3) + (3 :+ 0) 21:59:58 RealFloat a => Complex a 22:00:30 because of the Complex instance for Num 22:00:35 that's not adding an integer, btw 22:00:40 I have a telephone interview with a company that 22:00:41 "We provide deal execution software, institutional investor data, and market analytics to almost every major investment bank in the world." 22:00:55 :+ is the constructor for Complex, isn't it? 22:01:04 :t (:+) 22:01:06 iirc yes 22:01:06 a -> a -> Complex a 22:01:08 Ah, the Num instance for Complex has a RealFloat constraint 22:01:24 -!- Taneb has quit (Ping timeout: 248 seconds). 22:01:44 And the type constructor doesn't really enforce anything 22:01:51 > 'a' :+ 'b' 22:01:52 'a' :+ 'b' 22:02:52 ... Huh. 22:03:06 > "This is a" :+ "strange Complex value." 22:03:08 "This is a" :+ "strange Complex value." 22:06:08 > 1 :+ 2 + 3 :+ 4 22:06:10 Precedence parsing error 22:06:10 cannot mix `Data.Complex.:+' [infix 6] and `G... 22:07:03 Anyone ever abuse Identity monad to do <$> <*> ? 22:07:15 ? 22:07:28 Should be possible, right? 22:07:49 not sure I understand what you mean 22:07:52 > runIdentity $ (,,) <$> 1 <*> 2 <*> 3 22:07:54 No instances for (GHC.Num.Num (Data.Functor.Identity.Identity a2), 22:07:54 ... 22:08:09 > runIdentity $ (,,) <$> pure 1 <*> pure 2 <*> pure 3 22:08:10 (1,2,3) 22:08:18 Ok, that's hideous 22:08:22 not sure what that buys you over saying (1,2,3)? 22:08:22 anti-golfing. 22:08:28 obviously you can do anything with the Identity monad - the big question is why you'd want to 22:08:30 or in general f <$> pure x <*> pure y --> f x y 22:08:49 pure (f x y)? 22:08:51 elliott, save parens, like a $ with more than one argument 22:09:41 identity is useful as a foundation block for monad stacks. 22:09:44 Sgeo: but you need to say pure (a b c). 22:09:55 infixl ($) works for this purpose -- f $ x $ y -- unfortunately it is not in the Haskell standard 22:12:28 -!- monqy has quit (Quit: hello). 22:18:39 > f `id` x `id` "shocking" :: Expr 22:18:41 f x "shocking" 22:22:26 :t f 22:22:27 FromExpr a => a 22:26:36 oerjan: gross 22:27:10 -!- boily has quit (Quit: Poulet!). 22:27:13 -!- metasepia has quit (Remote host closed the connection). 22:30:41 elliott: btw do you speak from experience when telling not to give edwardk your github account name. 22:31:18 o, cruel, bitter experience 22:31:19 what happens when you do that? 22:31:45 oerjan: that joke doesn't quite make sense if you are not in -lens but yes :P 22:32:01 olsner: i _assume_ edwardk then forks all your projects to use supergeneral CT concepts 22:32:05 no 22:32:15 edwardk's response to bug reports and feature requests generally involves giving you commit access and telling you to go for it 22:32:29 it's amazing how effective it is 22:32:30 aha 22:32:49 no wonder lens is approaching singularity 22:33:24 although the list of modules loaded by ghci when i use import Control.Lens in a program is fearsome. 22:33:37 i assume i could reduce it by importing submodules 22:34:03 *-although 22:36:42 there should be a nice way to make it so that if you have lens and some other package installed at the same time you'll get the lens magic, but so that neither library has to depend on the other 22:37:28 olsner: you can already derive lenses for types you imported from elsewhere 22:37:53 olsner: yes, i think the cabal system needs a way to do optional dependencies 22:38:09 in general, not just for lens 22:38:14 I think optional dependencies normally lead to a different kind of hell though 22:38:49 e.g. where you have to reconfigure every installed package because you realize you want lens support 22:38:50 I think I view optional dependencies as an antipattern. 22:39:38 well, optional modules which can have additional dependencies, then 22:40:41 > f x "shocking" 22:40:43 Ambiguous type variable `a0' in the constraints: 22:40:43 (GHC.Show.Show a0) 22:40:43 ... 22:40:55 FreeFull: you need the :: Expr 22:41:12 f is too overloaded to resolve unambiguously otherwise 22:42:13 :t f 22:42:14 FromExpr a => a 22:42:23 > f x "shocking" :: Expr 22:42:25 f x "shocking" 22:42:39 hmm, can you write a generic function that is whatever djinn would generate for the type you're trying to use it as? 22:43:06 basically if you have a package that gives a type class and a package which gives an unrelated data type which could be an instance of that type class, it _should_ be possible to include the instance in one of the packages without forcing them to depend on each other 22:44:04 and there needs to be a way to make that not have the overhead of an orphan instance, too :P 22:44:56 isn't the biggest overhead with orphan instances that you have to participate in the regularly occuring debate on what to do with them? 22:45:04 MAYBE 22:45:12 * oerjan doesn't usually participate in that 22:45:49 me neither, I barely even haskell in the first place 22:46:29 oerjan: well unfortunately open world assumption makes that fundamentally unsound 22:47:11 elliott: with current haskell, yes. i'm imagining an extension that allows you to do it anyhow. 22:47:19 _without_ violating open world. 22:49:09 basically, either a module defining either the class or one of the involved types would have to contain a declaration where to look for the rest 22:49:21 *-either 22:50:31 i see 22:51:00 maybe if you write "instance Monad in Data.Pony.MonadInstance", anything trying to find an instance of Monad for ponies will import the MonadInstance module 22:53:41 but let's say Monad is a weird type class from an obscure package that few people want to use, and that this line occurs in one of the pony modules 22:56:13 hm i can see a possible problem of this leaking instances _other_ than the one you are trying to provide 22:56:22 the other direction might need something like "instance Monad for Data.Pony in Data.Pony.MonadInstance"? then the compiler knows not to do anything unless you're using types from Data.Pony, even if the Monad library contains a thousand of those instance-can-be-found-in directives 22:57:59 though I suspect something like this may end up trying to import every module that exists, exploding the compiler 23:00:36 -!- doesthiswork has joined. 23:01:09 ...MUST ...RESIST ...TEMPTATION 23:01:15 oerjan: is leaking instances a problem though? 23:02:23 also, what is this temptation you must resist? 23:02:36 the temptation to import every pony at once 23:03:10 olsner: the problem is that if those instances don't have similar declarations, you destroy the efficiency gain of ghc not having to consider the first ones orphans. well maybe. 23:03:25 no, the temptation to say "no it doesn't". hth. 23:04:29 hm i guess you wouldn't, actually 23:05:07 as in, it might not be a bigger problem than without the declarations, anyway 23:05:29 oh hm 23:06:02 the problem is if combining this with the cross-package optional import stuff 23:07:02 because you don't want things to change in code that doesn't mention stuff in a package dependent on whether that package is installed or not 23:07:21 it would be like orphan instances magnified 23:09:43 that is, orphan instances would become _completely_ unmaintainable if they could leak across optional dependencies. 23:09:50 i think. 23:11:59 hmm, I think it should only affect any code that imports both pony and monad, and since everyone shares the same orphan instance it should be fine? 23:12:16 or something, I'm not entirely sure what the "problem" is in the first place 23:23:45 olsner: oh hm i guess your solution does not involve any extra module... 23:25:05 wait it does 23:25:49 olsner: the problem is if Data.Pony.MonadInstance happens to either directly or indirectly export any orphan instances _other_ than the Monad Pony one. 23:26:03 then those would leak 23:26:42 hm still not sure this is worse than the current situation 23:33:53 -!- GOMADWarrior has quit (Ping timeout: 252 seconds). 23:34:01 -!- Nisstyre-laptop has joined.