00:00:00 `addquote oerjan: Comonads? shachaf: no, feather 00:00:04 895) oerjan: Comonads? shachaf: no, feather 00:00:15 What's feather? 00:00:18 Bike: no, graphical environments aren't lightweight 00:00:27 shachaf: please retroactively unask that question 00:00:51 Fascist! 00:00:53 ais523: i'm sure feather will have perfectly adequate analogy to functional reactive programming 00:00:57 *+a 00:01:23 oerjan: if Feather doesn't have a feature you need, just retroactively add it :) 00:01:26 that's the whole point, really 00:01:41 "does Feather have a debugger?" "no but you can have had one if you needed it" 00:02:17 > 523 + 1 00:02:19 524 00:02:32 does feather have real love 00:32:25 You too can have had real love during your formative years, retroactively, with Feather. (A great marketing advantage.) 00:32:47 @quote feather 00:32:47 No quotes match. I've seen penguins that can type better than that. 00:32:54 that does seem useful 00:33:03 it should appear in a wikipedia table of comparing programming languages 00:35:44 @quote table 00:35:44 chrisdone says: Production of two-handed use langes Schwerts with long flambard blades and heavily category-theoretically decorated guards, katzbalgers, axes, mail and Macedonian quality defence 00:35:44 pikes. Lambda Knights need to be prepared for the inevitable battle against success. 00:36:20 fungot: what about that, hm? 00:36:21 kmc: that is, the parts inside use only binom and some comparison functions 00:37:43 fungot: what? 00:37:44 shachaf: people used to put a space at the end ( the first one. they turn out to be equivelent to?! 00:38:04 monqy: they turn out to be equivelent to?! 00:38:17 hi 00:38:36 `quote monqy.*hi 00:38:38 318) my most fresh dream is one where I'm at a soup contest and a chicken really wants to participate but he's disqualified so he becomes the judge. when all the soups are done and he's ready to taste them he just stares at the soup and then I become the chicken and I really want to make soup \ 321) `quote django ​352) 00:38:41 `quote monqy.*\bhi\b 00:38:43 733) Sgeo: I used to have strict requirements for when I said hi but then everyone started saying hi and it all got weird \ 757) hack and back? works on anything much slower than you at the cost of: guilt, hating yourself, me sending you the message "hi" am I also forbidden to cast mephitic cloud and cb 00:38:56 hi????? 00:39:13 racket's plotting lib looks cool: http://docs.racket-lang.org/plot/index.html 00:39:22 monqy: btw compliments on your quit message. best quit message. 00:39:28 thanks... 00:39:38 what's PLoT stand for 00:39:45 PLT plot 00:40:23 genius 00:41:01 Bike: Pretty Lousy ploTs. (The idea came from PGP.) 00:41:25 genius 00:42:18 Racket used to be PLT Scheme 00:42:28 yeah i knew that 00:42:36 i'm just curious about the inevitable ridiculous backronym 00:42:46 Pretty Lousy ploT 00:43:00 hi mnoqy 00:43:08 i'm running out of semiironic intensifying formatting here 00:43:11 genius 00:43:24 genus 00:43:29 Bike: This channel allows colors. 00:43:34 Wait, you're not British, are you? 00:43:39 It doesn't allow colours. 00:44:01 yeah but i can never remember the codes, and not to mention, what does being colored some ugly shade of green convey? is that "intensifying", really?! 00:44:06 doom 00:44:08 everyone knows Scheme is useless academic nonsense, but this new Racket language sounds hip -- dynamically typed, continuation-based programming, etc. 00:44:18 totally webscale 00:44:38 kmc you need to vent your sarcasm tubes occasionally or you'll overheat 00:44:46 isn't that what i'm doing here, all the time 00:45:03 alternately "and that's why i'm banned from mcdonald's" 00:45:05 01:01:44 "Blub combines the theoretical beauty of Haskell with practical, real-world features like lightweight concurrency, scalable multithreaded IO, a C function interface, Unicode support, and a large base of libraries" 00:45:10 pretty sure kmc is just here to trololo until we mad 00:45:11 ugh kill me 00:45:11 yes 00:45:18 because you said trololo 00:45:19 yes 00:45:26 my people will talk to your people 00:45:28 in re: killing you 00:45:35 I know that's obviously a dumb way to think about things, but I can't help but wonder if subconsiously there is an influence on me 00:45:36 also is "continuation-based programming" seriously a buzzword 00:45:52 Of "Racket" vs "PLT Scheme" 00:46:01 i know it's used in some web frameworks but i didn't think anybody used them 00:46:15 kmc: my people will grudgingly accept the necessity 00:46:30 "event-based programming" is a huge buzzword 00:46:35 and is based on explicit continuation passing style 00:46:36 yeah 00:46:40 oh shit is it now 00:46:42 we're doomed 00:46:45 Bike: have you seen node.js code 00:46:48 it's nested three miles deep 00:46:51 because it is all CPS transformed 00:46:57 three mile island 00:46:59 because that is how they do everything 00:47:06 it's blockless you see 00:47:09 if you just had a ; it'd be slower 00:47:41 the only javascript overlanguage i've looked at is Caterwaul and that's because it's some abominable mix of haskell and APL 00:47:52 node.js is actually just libraries 00:47:53 and a runtime 00:47:55 Bike, node.js is raw Javascript 00:47:59 Not a language on top 00:48:05 fsvo raw 00:48:05 Bike: yeah the main idea is that you call like httpRequest(url_to_fetch, function_to_call_with_the_result) 00:48:12 rather than result = httpRequest(url) 00:48:16 If there was another language on top, presumably it could do CPSing automatically 00:48:27 and that lets it return control to the event-based IO manager 00:48:34 , function_to_call_if_you_couldn't_fetch_the_result 00:48:45 i.e. a thing that calls select() over and over and calls callbacks 00:49:16 do they actually refer to them as continuations at some point? 00:49:36 Doesn't C# have some automatic CPS-ing asyncish thing? 00:49:49 Coroutines would be good enough for almost everything people tend to want continuations for. 00:49:58 i think i might have a similar attitude to "continuation" as haskellers seem to have to "monads" 00:50:51 mocontinuations, moproblems? 00:51:01 shachaf, unless the coroutines use an idiotic model like Python's used to and I think C# still does? or did around 3.5? 00:51:21 Erm, not "modeL" 00:51:38 It's funny how Ruby "for x in xs; f(x); end" and Python "for x in xs: f(x)" are doing two completely different things. 00:51:58 continuations are overrated -- OLEG KISLEYVO 2012 00:52:08 *undelimited 00:52:34 than kyou sgeo 00:52:37 for correcting me on what oleg said 00:52:43 i had no idea as my incredibly serious citation indicates 00:53:04 Well, I've read his discussions a while ago 00:53:17 So I just get the impression as to his general attitude 00:53:39 -!- monqy has quit (Ping timeout: 276 seconds). 00:55:21 -!- monqy has joined. 00:56:10 um. does anyone here know semiconductor stuff well? 00:56:51 try ##electronics? 00:56:55 it's kind of a wild place 00:57:03 people may attempt to bite you 00:57:07 * Sgeo_ vaguely wonders if Kernel could be sensibly implemented as a Racket language 00:57:12 does it have Feather 00:57:26 Sgeo_: you can redefine function application, right? that oughta be it 00:57:27 i'm interested to hear the question even if i won't know the answer 00:57:34 Bike, yes 00:57:51 so just make an "operative" class/type/whatever and do the obvious from there 00:58:16 I was looking at the ITRS roadmap stuff on sort of a tangent from reading a paper about domain wall spintronics neuromorphic stuff that was way over my head 00:58:20 http://i.imgur.com/yTE7M.png 00:58:24 and I was wondering 00:58:34 Bike, although you can only do so lexically: You can't take a higher-order function defined outside of your language and expect it to use the new function application semantics 00:58:35 1) why are logic gates so much bigger than sram cells... even though they have fewer transistors? 00:58:47 2) why are dram cells 10 times smaller than sram cells, even though 1T1C isn't 10 times less than 6T? 00:58:49 As in, Racket's map won't just work 00:58:54 for example 00:59:44 Sgeo_: kernel's map doesn't work on operatives anyway. 01:00:21 Sgeo_: but i suppose you could meld it into racket by adding operatives and defining unwrap on racket functions 01:00:50 so um, that's sort of the question 01:01:06 (the origin of this was I wanted to know how much smaller the domain-wall magnets used for time-domain integration in the paper were compared to the capacitors in DRAM) 01:01:37 and then I kind of got lost in ITRS documents 01:01:55 is it because DRAM cells pack better? 01:02:12 maybe? but like, I'd want to know why >_< 01:02:17 is it the actual area of a cell or the average area of n cells for large n, including interconnect? 01:02:34 basically fiora wants someone to talk at her for a few minutes, i think 01:02:37 http://www.itrs.net/Links/2011Winter/1_ORTC_Allan.pdf page 15 01:02:43 um... . possibly bike <_<; 01:03:06 it's "area per bit" so I'd guess it's average area of n cells 01:03:32 yeah i definitely don't know enough about this 01:03:32 sorry 01:03:41 yeah I didn't expect anyone to <_> but I have no idea where I'd learn this 01:03:48 semiconductors are black magic 01:08:04 z 01:08:05 nooga: You have 2 new messages. '/msg lambdabot @messages' to read them. 01:08:46 `welcome nooga 01:08:48 nooga: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 01:09:20 I need help not falling asleep. 01:09:26 shachaf? :F 01:10:00 Fiora: seriously, you draw mysterious patterns on a crystal and then bathe it in dangerous potions 01:10:09 Bike: zepto's map worked on operatives 01:10:12 and this allows you to animate dead matter 01:10:14 more reasons zepto is the greatest 01:10:16 kmc: Isn't that just regular magic? 01:10:26 wtf is zepto 01:10:39 @google zepto 01:10:40 http://zeptojs.com/ 01:10:41 Title: Zepto.js: the aerogel-weight jQuery-compatible JavaScript library 01:11:06 Bike: zepto 01:11:08 "UglifyJS" 01:11:17 monqy: tell the people about the zepto 01:11:39 uh 01:11:46 zepto is elliott 's department 01:12:16 -!- TeruFSX has joined. 01:12:30 -!- ais523 has quit. 01:13:20 hm, you know, i don't know why kernel's map doesn't work on operatives anyway 01:15:06 my map literally just consed up like 01:15:15 (list (f firstelem) (f secondelem) (f thirdelem)) 01:15:17 and evaluated that 01:15:25 so it would work if you redefined list and work no matter what f is 01:15:51 no it wouldn't, if f was an operative it would pass "firstelem" literally 01:15:53 unless i misunderstand 01:16:15 yeah that's trouble 01:16:26 Bike: right 01:16:27 that's the point! 01:16:35 so if you had an operative that like evaluated its argument twice and returned the second result 01:16:45 (map dothat '((print 1) (print 2) (print 3))) 01:16:46 would work 01:16:53 is this a horrific mess? no. fuck you. it's zepto 01:17:02 the (define call (f x) (f x)) (call quote) => x example from a paper linked in shutt's thesis was pretty great 01:17:35 (define call (f) (f x)), no? 01:17:41 oh, yes 01:17:50 Bike: oh right iirc my "eval" also used the "map" in scope 01:17:55 so if you redefined map, eval's behaviour would change 01:17:56 and shutt's just like "well that's a type problem" 01:18:03 -!- nooga has quit (Ping timeout: 276 seconds). 01:18:15 so basically the implementation details of absolutely everything were exposed 01:18:23 awesome, i love implementation details 01:29:28 Would it be better to try to implement pure Kernel or just a Kernel-like language 01:29:33 If it were to be a Racket language 01:30:05 i dare you to implement guard-continuation 01:30:07 double dog dare you 01:30:42 I don't remember Kernel that well 01:32:20 it's like usual try/catch or unwind-protect or dynamic-wind or whateverthefuck, except you can have it work backwards too! 01:39:06 -!- Gracenotes has quit (Remote host closed the connection). 01:40:37 What does guard-continuation mean? 01:42:55 the spec entry's a few paragraphs long so i'll leave it to you to check the spec yourself 01:46:33 What kind of commands would you expect that a second kind of C preprocessor should include? 01:55:24 -!- Gracenotes has joined. 02:17:11 -!- Arc_Koen has quit (Quit: The struct held his beloved integer in his strong, protecting arms, his eyes like sapphire orbs staring into her own. "W-will you... Will you union me?"). 02:26:55 -!- oerjan has quit (Quit: Ribbit). 02:34:12 -!- oerjan has joined. 02:43:46 -!- Phantom__Hoover has joined. 02:43:56 -!- Deewiant_ has joined. 02:44:38 -!- Phantom_Hoover has quit (*.net *.split). 02:44:39 -!- Deewiant has quit (*.net *.split). 02:55:31 @ask ais523 what if you synchronized on a cell two away, leaving a blank cell next to the flag? it will take the enemy one extra cycle to get to the flag because it has to test the empty one. 02:55:31 Consider it noted. 02:56:08 zzo38, I don't want to think about C preprocessing 02:56:26 Why would I want to write in C? 02:56:39 Well, I guess there are some circumstances 02:58:24 Wait, Kernel uses call/cc? 02:58:25 :/ 02:58:56 well yeah, it's based on scheme innit 02:59:11 i guess shutt hasn't yet heard the gospel of oleg 03:40:51 -!- Phantom__Hoover has quit (Ping timeout: 248 seconds). 03:44:14 -!- SirCmpwn has joined. 03:44:44 working on some code in brainfuck that's not quite working properly 03:45:00 https://gist.github.com/d57c7a6722a736127c06 03:45:11 a second pair of eyes would be useful 03:46:31 the loop is designed to get all values to the nearest power of ten 03:46:49 and after saying that, I immediately realized my problem and fixed it. 03:52:58 http://translate.google.com/#en/fr/filled%20with 03:53:26 ah, so that makes its way here 03:53:29 very good 03:53:55 monqy: oh no 03:53:58 am i "late 2 the party" 03:54:12 idk i just heard about it earlier today 03:54:17 and by heard about i mean heard 03:55:06 with your ears?? 03:55:07 -!- carado has quit (Ping timeout: 246 seconds). 03:55:13 yeah 04:02:40 shachaf: um what's the point of it? the only thing i can think of is that it looks _slightly_ like empty 04:04:34 -!- copumpkin has quit (Ping timeout: 260 seconds). 04:04:38 * oerjan sees "rempli d'" as the translation, fwiw 04:05:12 oerjan: Oh, click the text-to-speech button. 04:05:16 (On the English.) 04:05:16 -!- copumpkin has joined. 04:07:25 ok is it just about the pronunciation being awful? 04:07:41 I hear it doesn't work for everyone 04:07:44 it seems to be a US-only bug 04:07:49 which makes sense because america sucks? 04:07:56 deep political commentary from google 04:07:56 um but the bug is amazing 04:08:03 aww :( 04:08:04 => america best???? 04:08:29 monqy: counterpoint: you suck? 04:08:34 i just hear someone saying thilth with 04:08:43 or thereabouts :P 04:10:21 oerjan: Does mplayer 'http://translate.google.com/translate_tts?ie=UTF-8&q=filled%20with&tl=en&total=1&idx=0&textlen=11&prev=input' also not do it? 04:11:53 just says "filled with" in a male voice 04:11:53 shachaf: hilarious 04:12:12 http://slbkbs.org/filledwith.mp3 04:12:22 I have no idea whether that's actually mp3. 04:12:28 If it's not then fix it. 04:12:53 is that heavily compressed or something because 04:12:58 wow my voice is so much smoother 04:13:28 Maybe it's not mp3 04:13:37 here's what I get: 04:14:26 http://esolangs.org/filledwith.mp3 04:14:44 MISUSE OF ESOLANGS.ORG HOSTING FUNDS 04:14:53 doesnt sound any smoother to me 04:15:00 also much less amazing???wheres the ipad praise 04:15:12 imo monqy makes a good point 04:15:24 it somehow sounds less smooth in chrome 04:15:25 where's the drama 04:15:26 compared to mplayer 04:16:14 shachaf: wut :P 04:16:25 shachaf: monqy: http://esolangs.org/ipad.mp3 04:16:51 elliott: uhhh that's really bad tts 04:17:03 worst tts?? 04:17:31 "filled with so much drama, gee now praises the eye pad" 04:17:38 what does that even mean 04:17:40 i'm sure monqy likes it... 04:17:50 be careful with that prosody 04:17:54 you could poke someones eyes out!!! 04:17:55 elliott: Also do you have to do the fake user agent thing when you wget it? 04:18:18 yes 04:18:21 --user-agent= 04:18:28 In my own computer design, executables are headerless and are loaded into address zero, after the contents of the file is the parameter, and the rest is initialized to zero. Would it be useful to add a ELF section for this parameter so that some compilers might use this? 04:18:30 i don't even fill in a user agent 04:18:32 2 radical 04:19:06 elliott: That's what I did too. 04:20:10 elliott: in the future please say: ⼆ 04:23:45 i love ipads 04:23:47 they are so easy 04:24:09 kmc: "If I ignore technical debt, backwards compatibility, and established code (which I lumped together as "trivial reasons" ;))" 04:25:43 is this the game where we see something on the internet that would make kmc unhappy if he read it, so we quote it in the channel so that it does? 04:25:52 i love that game!! 04:26:02 -!- DHeadshot has quit (Read error: Connection reset by peer). 04:26:29 -!- DHeadshot has joined. 04:31:12 -!- oerjan has quit (Quit: Good night). 04:31:43 oerjan: If you're so asleep, how come you're reading this message? 04:32:39 zzo38: make it so that ELF is a magic instruction which processes an ELF executable 04:32:50 so executables are technically headerless but ELF works fine 04:34:14 coppro: I probably could, but I don't want to, and it is not at all what I meant; I meant when compiling and linking executables, it should know where the parameter section is. The final result of the compiling would be headerless file, though. 04:48:36 -!- DHeadshot has quit (Read error: Connection reset by peer). 04:52:52 -!- DHeadshot has joined. 04:54:56 Sgeo_: update 04:55:17 Fiora, er, no? 04:55:46 I distinctly remember pinging everyone a while ago, and there hasn't been an update since then 04:55:56 Unless that was an earlier update and then I saw a later update and forgot 04:56:28 oh. I missed it then :< 04:56:38 oops, sorry. 04:57:54 Sgeo_, Fiora: update 04:58:28 lol 04:59:07 Sgeo_, Fiora: So it's that one comic thing, right? 04:59:11 Why do you read it? 04:59:34 Because it's awesome? Does there need to be a reason to do something beyond finding it enjoyable? 04:59:48 No. 04:59:52 So why do you find it enjoyable? 05:01:09 ummm let's see 05:01:12 homestuck is wonderful because 05:01:37 it has really great characters I care about, it's legitimately funny and has good writing, it's fun to talk about with my friends who follow it and fangirl over the characters and get all excited about the updates 05:01:55 Intricate plot ripe for speculation, awesome music when flashes come out. I like plotty stuff more, but there's humor 05:02:19 and the fandom is huge and creates tons of wonderful things 05:02:59 also shipping 05:03:36 shipping is stupid 05:03:50 My sister is apparently into that. 05:03:58 and the complexities of troll romance make shipping even more fun than it already is 05:04:22 there's also stuff like MSPARP/Pesterchum for roleplay and everything 05:05:30 and homestuck really doesn't lend itself to shipping :/ 05:05:35 at least, not good shipping 05:05:38 people will ship anything 05:06:59 ... it's one of the best of any fandom I've been part of, but ... 05:07:48 if shipping isn't your thing you don't have to do it :3 05:07:57 I should ask Fandom_Hoover. 05:08:34 Fiora: the fandom loves shipping for some dumb reason 05:08:42 (troll romance, as you pointed out, probably helps) 05:08:44 because it's fun! 05:08:51 monqy: Do you "read" it? 05:08:53 but it doesn't have the depth of character interactions that make it interesting 05:09:18 http://amultiverse.com/files/comics/2011-12-30-Horace-Greenstein-Scary-Owl-Lawyer-Goes-Shopping.png 05:09:23 it has a lot more content than like, a typical anime or TV series I guess? 05:09:29 but you're right that a lot of the minor characters don't get enough attention :< 05:09:33 nepetaaaaa 05:10:10 like, if I wanted to get into shipping, I'd pick a slice of life comic 05:10:46 * Fiora dumps a large box of interchangable seinen slice of life manga on coppro 05:11:24 Bike: the continuity issue on the hand holding the boy's arm PROVES this is happening in an alternate dimension 05:12:09 quintopia: what continuity issue 05:12:15 quintopia: http://mspaintadventures.com/?s=6&p=003249 05:21:41 -!- TeruFSX has quit (Ping timeout: 252 seconds). 05:23:36 -!- drlemon has joined. 05:23:56 Hello there people. I am a stranger. 05:24:15 shachaf: what's it 05:24:20 hi drlemon 05:24:36 Shall i introduce myself? 05:24:41 sure 05:24:50 `welcome drlemon 05:24:52 drlemon: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 05:25:42 `WELCOME DRLEMON 05:25:44 DRLEMON: 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. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.) 05:25:52 elliott: do you know what it is 05:25:54 I'm a teenager who is a total programming nerd. I don't know any languages because it's too hard to choose. Python or ruby or java. 05:26:15 how 'bout feather 05:26:26 (canned laughter???) 05:26:30 I saw the esoteric programming language wiki and nerded out, and i figured i would say hi to the community. 05:26:42 * Fiora wavies? 05:26:52 try the beef 05:28:46 don't try the beef 05:29:05 what's the beef is it slang 05:29:22 Slang is beneath me. 05:29:50 is sarcasm beneath you too??just making sure here 05:30:13 Sarcasm is the enemy. 05:31:13 drlemon, after choosing one, you can always learn another 05:31:27 Although I do know that feeling, of wanting a single fixed choice 05:31:29 After you choose one, you're doomed to spam #esoteric about it forever. 05:31:32 So choose wisely. 05:31:36 (Also Clojure is taken.) 05:31:53 programming is actually like pokemon 05:31:58 at the start, you have to pick one of three languages 05:32:04 and even though it evolves over time, you're stuuuuck! 05:32:06 OK, now getting my search for language out of the way, How is everyone? 05:32:15 `WeLcOmE drlemon 05:32:18 DrLeMoN: 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. (FoR ThE OtHeR KiNd oF EsOtErIcA, tRy #EsOtErIc oN IrC.DaL.NeT.) 05:32:26 fiora: i call [female symbol] 05:32:36 I call snivy, snivy is the cutest 05:32:49 @quote psnively 05:32:49 psnively says: All your Data.Foldable are belong to base. 05:33:16 Why is hackego telling me to read the wiki? 05:33:23 he really wants you to 05:33:28 hackego's a bit obsessed with the wiki 05:33:29 don't mind him 05:33:32 drlemon: Have you read the wiki? 05:33:38 If you read it, you would understand. 05:33:45 YES. i have multiple tabs open. 05:33:52 all of them with the wiki 05:34:06 find any good pages? :-) 05:34:13 Bike, Fiora, Sgeo_, monqy: have you considered switching to a seven-character nick? 05:34:14 `welcome drlemon 05:34:15 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: welcome: not found 05:34:21 elliott............. 05:34:25 `echo sorry 05:34:26 sorry 05:34:29 `WELCOME drlemon 05:34:29 I like the billiardballmachine 05:34:31 ​DRLEMON: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMA 05:34:39 shachaf: what 05:34:42 -!- Bike has changed nick to Bicycle. 05:34:49 Bicycle++ 05:34:52 Is hackego a bot or just REALLY persistant? 05:34:53 -!- Fiora has changed nick to Fiorara. 05:34:59 just really persistent 05:35:01 Bicycle: Note that karma is tied to nicks, so if you switch to your old nick you lose the karma. 05:35:02 sorry about him 05:35:04 Fiorara++ 05:35:20 HackEgo: Come on, you're being rude. 05:35:21 -!- Sgeo_ has changed nick to Sgeocom. 05:35:25 Sgeocom++ 05:35:36 drlemon: hackego is a bot, `welcome is one of its commands 05:35:41 drlemon: if you do some forensics you'll note a mysterious abundance of grave accents hanging out with hackego. they're bad folks, them graves 05:35:42 drlemon: Check out our wiki! http://esolangs.org/wiki/Main_Page 05:35:42 I feel extremely WELCOMED TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! 05:36:10 enthusiastic welcomings are a national sport here. why, fiorara here was welcomed for almost two days straight. 05:36:12 they're just playing around <_<; don't mind the silliness 05:36:15 ;-; 05:36:23 that seems to keep happening to me 05:36:27 shachaf: are you abusing your privilages 05:36:39 Fiorara: it's important to make people feel welcome 05:36:54 monqy: That was elliott this time. 05:36:59 elliott... 05:37:04 drlemon: Look at our wonderful wiki! http://www.haskell.org/haskellwiki/Haskell 05:37:13 that one was shachaf 05:37:18 shachaf... 05:37:19 lambdabot............ 05:37:24 @wiki 05:37:24 http://www.haskell.org/haskellwiki/ 05:37:31 @wiki wiki 05:37:32 http://www.haskell.org/haskellwiki/wiki 05:37:46 `welcome Fiorara 05:37:48 Fiorara: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 05:37:52 oh no not again 05:37:59 Again? 05:38:05 hackego Fiorara doesn't need welcoming 05:38:06 I don't think we've ever `welcomed Fiorara before. 05:38:07 drlemon does 05:38:08 `echo i am sorry for bothering you drlemon 05:38:09 i am sorry for bothering you drlemon 05:38:16 i am sorry for bothering you drlemon 05:38:17 `? monqy 05:38:19 The friendship monqy is an ancient Chinese mystery; ask itidus21 for details. 05:38:19 you're a natural 05:38:20 cool game this 05:38:35 `? itidus21 05:38:36 itidus21 just made some instant coffee. 05:38:41 * Bicycle nods 05:38:45 `echo symmetric lenses > profunctor lenses 05:38:46 symmetric lenses > profunctor lenses 05:39:14 Dear god why is elliottcable talking about the IRC nick thing 05:39:24 Sgeocom: what 05:39:27 `echo all the members of this chatroom should reimburse him for the annoyance i have caused. 05:39:29 all the members of this chatroom should reimburse him for the annoyance i have caused. 05:39:36 oh i think i saw elliotcable the other day... somewhere 05:39:43 Sgeocom: i need details 05:39:53 um, what currency should the repayment be in 05:40:10 are hugs okay or do I have to pay in cpu cycles 05:40:11 `echo nevermind 05:40:12 nevermind 05:40:35 `echo since you have questioned too much... 05:40:36 since you have questioned too much... 05:40:44 Fiorara: hugs are made of cpu cycles 05:40:46 `WELCOME FIORARA!!! 05:40:48 FIORARA!!!: 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. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.) 05:40:55 drlemon... 05:41:07 I'm a monster. A MONSTER! 05:41:51 wow elliotcable's going wacky 05:43:13 -!- TodPunk has quit (Read error: Connection reset by peer). 05:43:31 -!- TodPunk has joined. 05:43:37 Who should reimburse who? Who happens what? 05:43:47 yes 05:43:50 I think zzo needs a hug, Fiorara. 05:43:51 exactly 05:43:53 nail on the head 05:44:08 i need a hug 05:44:11 from monqy :'( 05:44:35 Do you need a nail on your head too? 05:44:44 from monqy 05:44:48 * drlemon hugs zzo, respectfully. 05:45:19 zzo38: Does the 'z' in your nick stand for "Zermelo"? 05:45:40 shachaf: No, it is just due to last letter of alphabet. 05:46:07 uhh there are letters that come after z in the alphabet 05:46:08 gotta deal with those Standard Sorting Algorithms 05:46:14 you're just not advanced enough to know about them 05:46:38 I like this new 7-letter-nick trend. 05:46:47 zzo38: You should add two characters to your nick. 05:46:49 zzzzo38? 05:46:57 zzo2038? 05:46:58 -!- zzo38 has changed nick to zzo38__. 05:47:01 That works. 05:47:07 * Fiorara hugs zzo38 05:47:09 Bicycle: is that good? 05:47:17 Fiorara: zzo38 is gone................. 05:47:36 I still see him.... 05:47:37 I told her to hug "zzo" though. 05:48:24 (also i think hug means, like, actual hug, not, like, typing the word hug into irc, and stuff) 05:48:43 I'm guessing zzo is a little far away for that at the moment 05:48:49 Which one of you is using Windows Media Center PC? 05:48:55 He needs a reality check. THIS IS THE INTERNET!!! 05:49:16 if zzo was close enough for me to actually physically hug him I would be a little bit terrified 05:49:25 i thought you lived in a city 05:49:30 maybe zzo is just a few blocks away 05:50:10 You are zzo: directed by m. night shamalan. 05:50:22 `unwelcome drlemon 05:50:23 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: unwelcome: not found 05:50:28 I live in orange county <_<; not quitea city 05:50:37 well, I mean, I'm in a city, but, it's not like, LA 05:50:49 LA is a city? 05:50:53 and LA isn't really a city either, it's more like an expansive suburb 05:50:56 I thought you meant that you didn't live in a city called Quitea 05:51:03 like someone took a scoop of suburb ice cream 05:51:09 and just like, dropped it onto the map of southern california 05:51:13 and let it melt for a while 05:51:20 that sounds quite disgusting 05:51:23 Fiorara: Did you ever go to Galco's Soda Pop Stop in Los Angeles? 05:51:25 I live in Canada. 05:51:26 LA is cool! As a resident, i enjoy it. 05:51:26 now I want ice cream 05:51:26 which... pretty much jives with what i know of LA 05:51:44 shachaf: ummmm never heard of it 05:51:48 !! 05:51:57 I was in Los Angeles a few months ago. 05:52:35 I mostly got a feeling of "I don't want to live in Los Angeles" from it. 05:53:06 yeah, I don't really like the more downtownish areas either <_> the suburbs are okay though 05:53:07 i mostly got a feeling of "holy god who designed these roads" 05:53:34 You'd be better off living in San Francisco. 05:53:46 SF is pretty 05:54:12 Or East Palo Alto! 05:54:14 DON'T DISS MY CITY 05:54:18 Today I was worried that I would get murdered. 05:54:21 But it didn't happen. 05:54:53 That's good. I hear murder is a problem. 05:58:01 Murdered where? 05:59:22 -!- TeruFSX has joined. 06:00:03 -!- drlemon has quit (Quit: Page closed). 06:03:06 -!- n0hx has joined. 06:05:16 I think you might have scared him off 06:05:18 -!- Fiorara has changed nick to Fiora. 06:05:45 -!- Bicycle has changed nick to Bike. 06:05:48 Murder is pretty scary. 06:05:59 ^^this 06:08:48 `WELCOME n0hx 06:08:50 N0HX: 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. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.) 06:09:02 thx yo ~~ 06:09:45 elliott: hey why doesn't that link work yet 06:11:36 b/c i'm lazy 06:11:50 what are you guys upto on this fine evening 06:11:53 im bored 06:11:56 cruising ircs 06:12:11 apparently we scared someone away earlier 06:12:14 * Fiora dragon quest IX? 06:12:18 damn yo 06:12:19 i think the problem is that we weren't welcoming enough 06:12:26 what do you think Fiora 06:12:41 I really don't think that was the problem ._. 06:12:47 Who here actually deploys esoteric languages, exactly? 06:12:53 god 06:13:10 esoteric languages 06:13:11 explain 06:13:13 pl0x 06:13:19 `welcome n0hx 06:13:20 n0hx: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 06:13:26 Do you know anything about programming? 06:14:02 n0hx: like Aklo. 06:14:03 i program java at a low level 06:14:18 Not really sure when Java can be considered... oh. 06:14:19 low level java. hard core. 06:14:35 not rlly 06:14:35 :( 06:14:37 n0hx, I assume you mean "a little Java"? 06:14:54 n0hx, in computing discussions, "low level" usually means without as many convenient tools 06:14:55 yeah 06:14:59 Closer to the hardware, for example 06:15:00 um havent you heard of Systems Java 06:15:02 not like close to assembly level java 06:15:03 lol 06:15:15 More direct 06:15:35 yeah i know, my wording was bad there 06:15:37 uses java to program machine instruction decoders 06:15:40 i know basic java is more what i mean 06:15:41 Anyways, an esoteric programming language is a language created not necessarily with the intention of being practical, but to, often, explore an idea or concept, or just for fun 06:16:18 the wiki literally explains this guys 06:16:19 but "why" 06:16:20 `welcome n0hx 06:16:21 n0hx: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 06:16:23 ok there's a link that works 06:16:28 n0hx: because it's there 06:16:31 n0hx, because it's fun. Because it's interesting. 06:16:37 its not fun or interesting btw 06:16:42 lol 06:17:02 There are also interesting mathematical implications that can be explored 06:17:42 okay 06:17:49 so you guys write esoteric languages 06:17:55 or employ them? 06:18:08 no we just welcome guys to #esoteric 06:18:09 I'm a professional Aklo-Basque translator. 06:18:17 n0hx: Depends on what we are doing at the time 06:18:28 Sgeocom: interesting mathematical implications? 06:18:32 we eploy them for below minimum wage 06:18:35 it's basically slave labour 06:18:41 And, yes, we do mathematics too. 06:18:41 that sounds lucrative 06:18:57 monqy, the turing-completeness of brainf*ck 06:19:04 cool 06:19:06 Only censoring because I don't know how n0hx treats language 06:19:08 i have mad respect 06:19:12 i look at rocks for a living lol 06:19:17 what an interesting mathematical implication(????????????????) 06:19:35 -!- TodPunk has quit (Read error: No route to host). 06:19:45 monqy: no, he means mathematical implication that is interesting. you know, like curry-howard things. 06:19:54 -!- TeruFSX has quit (Ping timeout: 264 seconds). 06:20:40 ????????????????????????????????????????????????????????????sgeo 06:20:54 -!- TodPunk has joined. 06:21:13 You look at rocks for a living? OK, if that is what you want! 06:21:41 haah yeah 06:21:43 geology 06:22:08 My boss's wife is a geologist. They go out many weekends to the middle of nowhere and pick up rocks 06:22:30 one time I picked up a rock but I think I put it back down 06:22:41 another time someone gave me a rock and I still have it to this day 06:22:44 he says every flat surface in their house has rocks on it. On the piano? Yup. Linen closet? Right there with the linens. Bathroom? Rocks. 06:22:46 forget where I put it tho 06:24:09 rocks are pretty baller imo 06:24:17 Putting rocks on the piano might affect the sound. So, it can be used if you play rocky piano music. 06:24:51 (Especially if it is on the strings.) 06:31:59 -!- TodPunk has quit (Read error: No route to host). 06:33:03 -!- TodPunk has joined. 06:44:01 -!- asiekierka has quit (Excess Flood). 06:44:09 -!- asiekierka has joined. 06:46:05 -!- SirCmpwn has quit (Excess Flood). 06:48:39 .com 06:50:09 -!- hagb4rd has joined. 06:52:09 -!- SirCmpwn has joined. 07:05:13 It's short for Comet 07:05:19 -!- n0hx has left ("Ex-Chat"). 07:05:26 ... 07:06:47 that wasnt really directed at you 07:11:27 who/what was it directed at? 07:12:17 btw whats this interesting mathematical implications thing 07:13:41 everything 07:13:52 You can ask interesting questions like whether an esolang is TC, or... I don't know 07:14:44 the interesting mathematical implication that you can write a brainfuck program that can do (thing): "very interesting" -a mathematician 07:15:21 monqy: are you a mathematician 07:15:36 depends on what mathematician means... 07:15:51 It's interesting that Gravity is not computable, isn't it? 07:16:16 Sgeocom: uhhhh newton computed Gravity ages ago 07:16:27 and he wasn't even a mathematician 07:16:27 Sgeocom: shachaf has a good point 07:16:58 thank you monqy 07:17:24 good point #2: I'm really tired :-( 07:18:07 Sgeocom: isn't that just newtonian gravity which doesn't work anyway 07:18:20 ("just") 07:18:52 I'm talking about the esolang 07:19:16 yes but isn't it based on newtonian gravity 07:19:19 newtonian gravity works as proved by einstein 07:19:21 not loop quantum gravity, say 07:19:22 g=mc² 07:19:27 qed?? 07:19:49 I have no idea about the math behind gravity 07:19:50 :²) 07:19:57 :½) 07:19:59 -!- Nisstyre-laptop has quit (Quit: Leaving). 07:20:20 Also, I can't seem to find the gravity spec 07:20:23 the math behind gravity 07:20:26 Sounds like a conspiracy theory. 07:20:37 Sgeocom: have you tried: http://esolangs.org/wiki/Gravity 07:20:48 Sgeocom: differential equations, everywhere 07:20:56 http://www.safalra.com/programming/gravity/ (dead link) 07:21:18 http://safalra.com/programming/index/ 07:21:35 Clicking Esoteric languages makes my browser say something about a redirect loop 07:21:39 "The scripting language widely used in web pages" 07:21:44 The webpage at http://safalra.com/programming/index/esoteric-languages.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php.php/ has resulted in too many redirects. 07:21:52 .php 07:21:52 that's my kind of url 07:22:11 this reminds me of: http://esolangs.org/wiki/Befunge/index.php, http://esolangs.org/wiki/Brainfuck/w/index.php%3Ftitle%3DTalk:Brainfuck/index.php 07:22:17 my ego.... its unparalleled 07:22:32 that is amazing 07:22:48 elliott: reminds me of fancy l 07:23:05 Bike: those were actual spam pages made by actual spam bots btw 07:23:12 too beautiful not to turn into languages 07:23:22 monqy: cf. http://esolangs.org/wiki/Talk:Befunge/index.php 07:23:28 blah blah blah shut up christ 07:23:46 Bike: you suck too.......................................... 07:23:48 `WELCOME BIKE 07:23:55 BIKE: 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. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.) 07:24:05 thats a loud welcome that means not actually welcome 07:24:37 no it's in the talk page 07:24:47 oh 07:24:49 well you still suck tho 07:25:11 Bike no it's not 07:25:13 good night......................... 07:25:14 monqy 07:25:18 `WELCOME Bike 07:25:20 ​BIKE: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATIO 07:25:20 shachaf 07:25:22 and everyone else i guess?? 07:25:32 except for elliott 07:25:38 plating the matter in the intervening months I came to consider that Turing devised his machine in the era before computers were expected to store programs (natch) so he included the tape in his definition of the model, and this makes Turing machines models of computations, while the bulk of the study of computability has been on functions which correspond to Turing machines without tapes and blah blah blah this is boring shut up Chris. 07:25:38 elliott doesn't respect Bike 07:25:41 Bike: you misspelled "Chris", first name of "Chris Pressey" 07:25:50 monqy: um his real name is ZOMGMODULES 07:25:55 no, i just said his quote and then put a "t" after it 07:25:56 hence quotes 07:25:59 pffffff 07:26:10 Bike: you decapitalised the C too!! 07:26:26 elliott: The normal laws of capitalization don't hold in this channel. 07:26:28 eh it's the same character 07:26:38 and i have to make up for my nick being overcapitalized here 07:26:50 Bike: good point 07:26:57 Nicks have to start with a lowercase letter. 07:26:58 shachaf: whath appened to good night 07:27:00 Fiora, Sgeocom: 07:27:13 elliott: you ruined the goodness :²( 07:27:17 You made me check :( 07:27:37 Sgeocom: UPDATE: Your nick starts with the wrong case of letter. 07:28:03 ŝgeo 07:28:47 hey remember http://esolangs.org/wiki/Meta_Turing-complete heh heh heh 07:28:59 Did you ever play Zork Zero? 07:29:25 monqy: i like the link on "impossible" 07:29:33 god should i delete that already 07:29:51 «Infix notation is one of the 4 possible ways to describe a program. It is not as powerful as the others, so people usually add parenthesis, which makes it a combined notation (Infix-Surround).» no keep it it's amazing 07:29:52 yes 07:30:04 Bike: no fuck i loathe those articles 07:30:07 loathe 07:30:12 «One example is parentheses: they are the identity function of surround notation. In xml, the primary notation is surround.» 07:30:17 dogfmldodfsbgfdklndfsk 07:30:25 i'm sorry elliott but you're wrong 07:30:54 Did you not make Reversible-2D? —ehird 03:46, 29 June 2011 (UTC) 07:30:54 I did, but it was stupid.--TehZ 14:48, 29 June 2011 (UTC) 07:31:01 Where's the Infix notation one? 07:31:14 [[Infix notation]] 07:31:41 so does this mean that elliott is ehird 07:31:51 yes 07:32:02 no 07:32:04 that's my brother 07:32:07 fuck 07:32:24 please don't tell me you know some ehird i hate that guy and i'm not even kidding 07:32:51 nah he sucks 07:33:00 thanks 07:33:19 ther'es another ehird???? 07:33:54 ehird 2 electric boogaloo 07:33:56 Bike: p.s. elliott is kidding 07:33:58 monqy: unfortunately no 07:34:01 shachaf: im not 07:34:06 Bike: him and ehird are best friends!! 07:34:27 sometimes i feel this channel may not be being totally honest to me 07:34:31 i guesss you just don't trust me 07:34:34 :'( 07:35:00 Unparseable is a language designed to be hard (maybe impossible?) to parse. It is context-sensitive, it REQUIRES you to mix the parser and the interpreter, and it allows you to redefine commands while the program is running. It was created by User:TehZ. I am pretty sure it is multiprogramming. 07:35:03 Bike: we trust you but not Fiora 07:35:30 why don't you trust me :< 07:35:34 monqy: has User:TehZ done anything good 07:35:36 monqy: love that shift to first person 07:35:39 Fiora: we trust you, just not Bike 07:35:48 shachaf!!!!! 07:35:49 shachaf: doubtful 07:36:04 Bike: what.. 07:36:16 I'm confused 07:36:56 `welcome Fiora 07:36:57 Fiora: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 07:36:59 don't worry. 07:37:09 welcome, fiora! 07:37:16 `run welcome Bike | sed s/deployment/implementation/ 07:37:18 Bike: Welcome to the international hub for esoteric programming language design and implementation! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 07:37:49 `run welcome shachaf | sed s/shachaf/what do you have against deployment........ 07:37:51 sed: -e expression #1, char 14: unterminated `s' command 07:37:59 woops! 07:38:21 tehz's languages are worse than i remember(nb i have no memory of them. i forgot them all. i just remember they were real bad) 07:38:28 `delquote 892 07:38:31 also his other pages 07:38:34 ​*poof* continuations have a funny problem where something about spaghetti monqy: but wait, i read category theory will save you from spaghetti code because associativity 07:38:37 thank you 07:38:49 thank you 07:38:54 892 is the worst quote 07:39:00 `quote 892 07:39:01 `quote 892 07:39:02 892) -!- ais523 has parted #esoteric ("someone is going to mention Feather, I know it"). 07:39:02 892) -!- ais523 has parted #esoteric ("someone is going to mention Feather, I know it"). 07:39:08 that's not so bad 07:39:11 The first person to make an interpreter wins! --TehZ 21:46, 9 May 2011 (UTC) 07:39:12 To win what? --Zzo38 00:02, 10 May 2011 (UTC) 07:39:12 CAKE! --TehZ 11:41, 11 May 2011 (UTC) 07:39:12 Watch out! The cake is a lie! — Timwi 14:01, 15 May 2011 (UTC) 07:39:12 No, because according to the previously mentioned required test protocol, we are no longer allowed to lie to you. --TehZ 18:49, 16 May 2011 (UTC) 07:39:12 `quote 893 07:39:14 893) i don't even know anything about feather and i'm getting sick of the time travel jokes 07:39:26 shit i love cake 07:39:35 some cake is good 07:39:38 elliott: Hmm, zzo38__ redeems TehZ somewhat. 07:39:49 But not enough. 07:40:01 http://esolangs.org/wiki/Talk:Bugmaker 07:40:09 also http://esolangs.org/wiki/Bugmaker 07:40:29 fuck, developers jokes? 07:40:40 there's a "Rick's roll" joke in there too 07:40:55 fuck 07:41:05 What did zzo38__ do to redeem TehZ? 07:41:11 guys 07:41:15 i think ive just had an epiphany 07:41:26 Oh 07:41:33 tehz is the greatest esolang auteur of the late 2000s 07:41:37 «Hello World: --NOT POSSIBLE--» this should be the topic fyi 07:41:42 look at everything he has done 07:41:53 can you imagine making something that embodies what it is more than itself 07:41:57 truly the documentary should be about him 07:42:04 his languages, his ideas, his vision 07:42:13 «The language is a functional language, as each rune is a function which can be passed around with the stack and which can be put in variables. However, data can be edited, so some people might not consider it functional.» 07:42:17 -!- mig22_ has joined. 07:42:18 Is this the same TehZ? http://www.reddit.com/user/tehz 07:42:21 can you not see the ultimate incarnation of the stupid fucking syntactical gimmick brainfuck-esque language in everything he does 07:42:24 fucking amen 07:42:25 feature the lot 07:42:27 -!- fungot has quit (Ping timeout: 248 seconds). 07:42:34 OK, sleep. 07:42:36 fungot was too inspired :/ 07:42:37 «In runespells, there is a concept of "runes", which are basically functions. Each rune can have 6 variables, called Fa, Rin, Gora, Jyiku, Nahy and Zeha (pronounced FAH, rin, gõ-ra, schiKU, na-HY and zeHA)» holy shit 07:42:51 -!- mig22 has quit (Ping timeout: 276 seconds). 07:42:52 -!- mig22_ has changed nick to mig22. 07:43:13 Computational Class / Well, I don't know. 07:43:39 Gorpdne (GORP-NEH): End program. (Fun fact: If you reverse "endproG" you get "Gorpdne") 07:43:43 Did you not make Reversible-2D? —ehird 03:46, 29 June 2011 (UTC) 07:43:43 I did, but it was stupid.--TehZ 14:48, 29 June 2011 (UTC) 07:43:51 im pretty sure tehz is art 07:43:56 http://esolangs.org/wiki/Useless 07:44:32 "Generate a random valid no-input BF program, execute it and interpret the output as an UTM, execute it and interpret the output as a lambda calculus program, execute it and throw away the result" wait make this the topic 07:44:42 monqy: first word used to be "An" 07:44:45 but then it got ruined :( 07:45:00 Bike: shades of Most ever Brainfuckiest Fuck you Brain fucker Fuck 07:45:03 originally wasn't in joke languages 07:45:06 http://www.reddit.com/r/programming/comments/n2aef/how_async_will_change_our_code_in_c/c35qman?context=3 07:45:17 elliott: most ever brainfuckiest fuck is a mere echo of this majesty 07:45:31 platform dependant 07:45:41 amazing Useless has never been in [[Category:Shameful]] 07:45:45 «Will add a command with the name xxx (not the name "xxx", but something with the same name as what is written there)» 07:46:01 Every brainbrain-program is a brainfuck-program which takes the source to be compiled as input, and outputs the compiled source (as brainfuck (or brainbrain) code). 07:46:34 ℒ feels weirdly dual to this. 07:46:40 oh i remember brainbrain 07:46:46 -!- sebbu3 has joined. 07:46:58 Bike: you can't mock that line because oerjan wrote it 07:46:58 i wonder if tehz has grown up and feels ashamed 07:47:00 channel policy 07:47:03 -!- sebbu3 has quit (Changing host). 07:47:03 -!- sebbu3 has joined. 07:47:18 i actually think brainbrain is moderately interesting 07:47:20 sorry oerjan i'll make it up to you i swear 07:47:23 in spite of itself 07:47:53 "Gotchas: When you are inside an alternative universe, you can not change anything in another universe." 07:48:08 sweet 07:48:12 my brainfuck IRC bot works 07:48:21 doesn't do much, but it can connect and join a channel 07:48:23 sweet what does it do 07:48:24 oh 07:48:25 oh hey it's you again 07:48:25 ok 07:48:27 hello you 07:48:29 https://github.com/SirCmpwn/bf-irc-bot/blob/master/irc-bot.bf 07:48:29 "you again" 07:48:47 you wire up stdin/stdout to a TCP connection, and it'll work 07:48:51 well he's clearly a "you" because he's not me, and he's clearly an "again" because he was here "before" 07:48:51 -!- sebbu has quit (Ping timeout: 248 seconds). 07:48:57 Bike: hello. 07:49:02 hello! 07:49:12 does it play bfjoust? 07:49:28 You can use the commands you've made to create new commands. That might create some ambiguity, so to fix that, the default commands have higher precedence. Not only that, but to avoid circles, you are not allowed to access a command that you have defined before or at the definition point. 07:49:37 it does not, Bike 07:49:49 I just started it today, and half that time was getting a proper brainfuck interpreter set up 07:50:07 oh, you had problems with that? i thought bf or whatever it's called was easy enough to use 07:50:17 Currently, no one has even bothered looking into how to make an interpreter, so this are none. If you are less lazy than the other people reading this article, please make an interpreter, because I am too lazy. 07:50:23 anyway you should have it do that, that is all the rage right now. 07:50:25 sure, but I wrote an interpreter from scratch and used a TCP connection instead of stdin/stdout, so that complicates things considerably 07:50:39 monqy: link 07:50:53 Is there no way to call an external program and direct its stdin/stdout around? 07:51:05 in regular bf? 07:51:14 In a shell where you would call bf 07:51:18 I was trying to find a fancy bash command I could use 07:51:20 SirCmpwn: oh i just closed the page it's bad anyway 07:51:22 Also, PSOX does support networking 07:51:24 I think it still might be possible with socat 07:51:31 but bash piping can't do it alone 07:51:32 So you could have used PSOX. 07:51:35 >.> 07:51:50 Sgeocom: it'll work fine in a normal bf interpreter 07:51:52 oh shit tehz made a minecraft language too 07:51:54 ok i'm done now 07:52:01 Sgeocom: just connect stdin and stdout to the IRC server. 07:52:49 are we going back to psox 07:52:51 that's some retro shit 07:53:08 hey remember when sgeo wanted to do a thing something about LSL and continuations 07:53:13 good old days 07:53:21 remember when zepto was a thing, remember when 07:53:27 I also built shitty debugging into my interpreter 07:53:51 but... zepto was a thing just a few hours ago, monqy.... :( 07:53:52 better than nothing ? 07:54:02 Bike: have you ever heard of "the zeptobot" 07:54:04 when you give it --debug, it writes all network traffic to the terminal. And '@' is a breakpoint that fires up a shitty debugger 07:54:10 i have never heard of "the zeptobot" 07:54:13 Zepto only exists because of me. I think. In an indirect way. 07:54:15 >.> 07:55:40 -!- zzo38__ has changed nick to zzo38. 07:57:37 -!- sebbu has joined. 07:59:18 -!- sebbu3 has quit (Ping timeout: 245 seconds). 08:00:39 -!- Sgeo has joined. 08:01:07 -!- Sgeocom has quit (Read error: Connection reset by peer). 08:06:08 -!- zzo38 has quit (Remote host closed the connection). 08:18:17 -!- epicmonkey has joined. 08:20:42 -!- oklopol has quit (Read error: Connection reset by peer). 08:21:07 -!- oklopol has joined. 08:25:14 -!- Gracenotes has quit (Ping timeout: 240 seconds). 08:43:53 -!- Gracenotes has joined. 09:03:56 -!- EgoBot has quit (Remote host closed the connection). 09:04:08 -!- EgoBot has joined. 09:05:06 -!- shachaf has quit (Ping timeout: 244 seconds). 09:06:03 -!- shachaf has joined. 09:10:47 -!- c00kiemon5ter has quit (Ping timeout: 244 seconds). 09:11:28 -!- c00kiemon5ter has joined. 09:12:02 -!- sebbu2 has joined. 09:12:20 -!- sebbu2 has quit (Changing host). 09:12:20 -!- sebbu2 has joined. 09:14:38 -!- sebbu has quit (Ping timeout: 276 seconds). 09:20:16 -!- sebbu has joined. 09:20:34 -!- sebbu has quit (Changing host). 09:20:34 -!- sebbu has joined. 09:23:39 -!- sebbu2 has quit (Ping timeout: 260 seconds). 09:37:07 -!- epicmonkey has quit (Ping timeout: 248 seconds). 09:40:24 -!- AnotherTest has joined. 09:42:20 -!- Nisstyre-laptop has joined. 09:43:16 -!- GreyKnight has joined. 09:43:55 elliott: you said in 2011 you would create [[Metalanguage]] but you didn't :< 09:47:01 http://www.reddit.com/r/videos/comments/15x4iv/if_only_i_had_watched_this_before_choosing_to_be/ 09:48:31 Always be careful with your tools. 09:59:20 -!- Taneb has joined. 10:01:48 -!- sebbu has quit (Read error: Connection reset by peer). 10:02:11 -!- sebbu has joined. 10:02:12 -!- sebbu has quit (Changing host). 10:02:12 -!- sebbu has joined. 10:03:08 -!- nooga has joined. 10:14:17 -!- augur has quit (Ping timeout: 265 seconds). 10:15:24 -!- GreyKnight has quit (Quit: bbl). 10:22:22 -!- copumpkin has quit (Ping timeout: 252 seconds). 10:23:03 -!- copumpkin has joined. 10:37:24 -!- copumpkin has quit (Ping timeout: 252 seconds). 10:38:02 -!- copumpkin has joined. 10:39:12 -!- sebbu2 has joined. 10:41:14 -!- sebbu has quit (Ping timeout: 260 seconds). 10:55:22 This guide's mention of INTERCAL makes me wonder if it would be a terrible idea to implement INTERCAL as a Racket language 10:56:11 What is Racket? 10:56:38 A programming language and environment that makes it easy to make programming languages 10:56:54 It's a descendent of Scheme and used to be called PLT Scheme 10:58:31 "programming language theory" 10:59:20 I think it's not actually an ancronym for anything 10:59:22 acronym 11:00:07 http://en.wikipedia.org/wiki/Talk%3aRacket_%28programming_language%29#What_does_PLT_stand_for.3F 11:00:49 close enough 11:06:06 poop laughs talent 11:07:25 Pokemon Lacks TRT 11:09:42 Where TRT is "That Ratchet Thingy" 11:21:49 -!- sebbu2 has changed nick to sebbu. 11:25:18 Maybe it would be easier to implement Qoppa as a Racket language 11:28:19 -!- asiekierka has quit (Excess Flood). 11:29:38 `pastequotes Taneb 11:29:50 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.28787 11:29:58 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter). 11:30:06 `pastequotes Sgeo 11:30:10 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.5217 11:30:42 `pastequotes Ngevd 11:30:45 `pastequotes atriq 11:30:45 jizzed 11:30:47 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.29042 11:30:50 -!- asiekierka has joined. 11:30:51 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.12164 11:31:05 -!- mrout has joined. 11:31:07 .q Taneb 11:31:14 !q Taneb 11:31:16 I think I like Taneb's better than mine 11:31:16 hi 11:31:18 `pastequotes `pastequotes 11:31:22 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.2433 11:31:27 mrout, different bot syntax 11:31:31 deep 11:31:32 gah 11:31:41 ~q tameb 11:31:45 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.28787 and http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.29042 11:32:12 `quote atriq 11:32:14 No output. 11:32:35 -!- c00kiemon5ter has joined. 11:32:43 Taneb's quotes make him look funny. My quotes make me look like an idiot. 11:33:00 Sgeo, that's because I'm an idiot 11:33:12 sgeo is certainly funny 11:33:28 or a wall 11:33:44 `quote 415 11:33:45 415) Look, I often walk my dog through a field with cows in it. And I punched myself in the face once. 11:33:46 -!- asiekierka has quit (Excess Flood). 11:33:53 -!- asiekierka_ has joined. 11:33:54 `quote Taneb 11:33:55 399) Turned out he got recursion, he just didn't get the return statement \ 405) Cut to February War were declared A galaxy in turmoil Anyway, Febuary '10 \ 406) I can't afford one of those! A grandchild, not a laser printer \ 412) There's that saying that the definition of insani 11:34:13 `quote 734 11:34:14 734) I don't know which version of Linux kernel I'm using atm Hang on I'm on Windows 11:34:30 i'm guessing my quotes make me look like a sheep. that's ok. i like sheep. they're cute. 11:34:42 `pastequotes Bike 11:34:47 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.7704 11:35:30 Why doesn't that 0open in browser when the others did? 11:35:40 it has too much soul 11:35:53 i was just about to comment on those unisquares 11:35:58 `pastequotes 11:36:02 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.7818 11:36:12 too sexy for my basic plane 11:36:13 paste ALL THE QUOTES 11:36:41 hm that cuts out the soul 11:36:45 `quote 218 11:36:47 218) We originally wrote this article in Word, but then we converted it to Latex to make it look more like science. 11:36:49 all my lulz 11:36:53 WHAT HAPPENED TO THE AFTRAN QUOTE NUMBER 1 11:36:55 not funky at all, hackego 11:36:58 -!- Stary2001 has joined. 11:37:04 `welcome Stary2001 11:37:06 .q Taneb 11:37:07 Stary2001: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 11:37:15 oh god bots 11:37:20 taneb what have you done 11:37:26 ...I just tried to tab-complete `welcome 11:37:29 haha 11:37:48 .q 1 11:37:57 That's not the computational linguistics quote 11:37:58 `quote Taneb 11:37:59 399) Turned out he got recursion, he just didn't get the return statement \ 405) Cut to February War were declared A galaxy in turmoil Anyway, Febuary '10 \ 406) I can't afford one of those! A grandchild, not a laser printer \ 412) There's that saying that the definition of insani 11:38:00 Wait, derp 11:38:03 `quote 1 11:38:04 1) EgoBot just opened a chat session with me to say "bork bork bork" 11:38:05 ah, it's ` 11:38:12 `quore Taneb 2 11:38:13 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: quore: not found 11:38:17 `quote Taneb 2 11:38:19 No output. 11:38:21 `quote Taneb 3 11:38:22 No output. 11:38:25 ok.. 11:38:28 `quote Taneb 11:38:29 399) Turned out he got recursion, he just didn't get the return statement \ 405) Cut to February War were declared A galaxy in turmoil Anyway, Febuary '10 \ 406) I can't afford one of those! A grandchild, not a laser printer \ 412) There's that saying that the definition of insani 11:38:46 I'm very sorry for the influx of people from #0c10c-dev trying to find quotes of me 11:39:06 is that game dev'd yet 11:39:12 is that a game 11:39:15 i fucking need the sequel to redstone man 11:39:25 is that a game too 11:39:26 no Bike it is not dev'd because notch 11:39:30 yes they're games 11:39:32 `WELCOME STARY2001 11:39:33 `WELCOME STARY2001 11:39:34 `WELCOME STARY2001 11:39:34 STARY2001: 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. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.) 11:39:36 STARY2001: 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. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.) 11:39:36 STARY2001: 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. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.) 11:39:41 elliott thats a bit excessive 11:39:45 man fuck notch he's got people talking shit about java and that means i need to defend java 11:39:48 you have to spice it up 11:39:49 and that Just Isn't Cool 11:39:55 monqy: no i need to be incredibly welcoming at all times 11:39:56 fullwidth, alternating case 11:40:01 hahaha 11:40:05 `welcome 11:40:06 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: welcome: not found 11:40:10 `wElCoMe Stary2001 11:40:11 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: wElCoMe: not found 11:40:16 ooh it colors the rest of the line, nice 11:40:21 `WeLcOmE Stary2001 11:40:22 `cat welcome 11:40:23 cat: welcome: No such file or directory 11:40:24 StArY2001: 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. (FoR ThE OtHeR KiNd oF EsOtErIcA, tRy #EsOtErIc oN IrC.DaL.NeT.) 11:40:30 Bike: Java is horribad 11:40:30 god why is welcoming hard 11:40:34 `cat /bin/welcome 11:40:36 `welcome Bike 11:40:36 cat: /bin/welcome: No such file or directory 11:40:37 Bike: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 11:40:44 i hate everything 11:40:44 :> 11:40:47 including java 11:40:55 hope you're happy mrout you did this 11:41:09 `welcome mrout 11:41:10 mrout: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 11:41:19 not really that hard, unless you're autistic or something 11:41:35 `run which welcome 11:41:36 ​/hackenv/bin/welcome 11:41:42 Hmmm. I lost 306 bytes somewhere. 11:41:44 `cat bin/welcome 11:41:45 ​#!/usr/bin/perl -w \ if (defined($_=shift)) { s/ *$//; s/ +/ @ /g; exec "bin/@", $_ . " ? welcome"; } else { exec "bin/?", "welcome"; } 11:41:57 h4x 11:42:00 `cat bin/WELCOME 11:42:01 ​#!/bin/sh \ welcome "$@" | perl -ne 'print uc($_)' 11:43:09 Oh I get it, boost's async_read_until doesn't actually read until 11:43:13 great naming 11:43:25 `run echo #!/bin/sh echo ; welcome "$@" > bin/welcome 11:43:27 No output. 11:43:32 `welcome 11:43:33 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: welcome: not found 11:43:38 suffering i tell you 11:43:43 Bike: have you noticed #esoteric just got terrible in the last few minutes 11:43:44 its weird 11:43:49 like a subtle breeze 11:43:56 except not subtle???? 11:43:56 I am solely to blame. 11:43:57 what are you implying 11:43:59 I apologize. 11:44:14 what did you even do 11:44:32 I mentioned that here had a bot with quotes and I had a lot of quotes 11:44:44 quotes will be the doom of us all. 11:44:46 ah............... 11:44:49 After mrout mentioned that someone had 26 quotes on #0x10c-dev 11:45:00 I have... 42 11:45:08 pff 11:45:25 that is 100% accurate 11:45:53 Well, #454 and #455 just mentioned my nick 11:45:56 ANYWAY. Anyone tried CLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLC-INTERCAL yet? 11:46:02 CLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLCLC-INTERCAL 11:46:20 And #545 is Phantom_Hoover making the joke 11:46:28 So are #454 and #455,actually 11:46:33 `quote 544 11:46:35 544) You know how the arrow pierces your skin, rearranging and randomizing vital internal structure? Monads are like that, only worse. 11:46:39 :( 11:46:43 :P 11:47:21 743-746 were me messing with speech-to-text on my phone 11:47:43 #579 was a bot talking to me 11:48:00 -!- Bike has quit (Quit: leaving). 11:48:02 #591 was a different bot seeming to talk to Gregor 11:48:19 #637 is similar to #579 11:48:35 #696 was fizzie's joke 11:49:00 Which puts me back to 31 11:49:02 :( 11:49:14 Taneb: what happend to your alias atriq 11:49:22 too boring for quotes 11:49:26 Yeah 11:49:40 Also beginning with a lower-case letter freaked me out a bit 11:49:51 imo Atriq should say something funny so we have more of a mess on our hands :^) 11:49:59 -!- Taneb has changed nick to Atriq. 11:50:10 the mess is three tanebs and our hands are remembering that they're all there 11:50:14 How many ears did Captain Kirk have? 11:50:18 2 11:50:29 hold up AnotherTest i think this might be a trick question 11:50:31 Down the M4 and over the Severn bridge! 11:50:33 Ahahaha! 11:50:41 Unless he lost one because of a Klingon or something 11:50:48 But I somehow doubt that 11:50:50 3 ears but one of them is an ear of corn 11:50:50 -!- Atriq has changed nick to Taneb. 11:51:10 The actual punchline is "3: a left ear, a right ear, and a final frontier" 11:51:19 ah.................................. 11:51:26 right 11:59:21 Why did Captain Kirk use the ladies' toilet? 11:59:31 is this another joke 11:59:47 No, it's a serious question 11:59:54 i have no idea 12:00:20 monqy: you need to check your sarcasm meter 12:00:27 what 12:00:47 Was the mens' toilet out of order? 12:00:48 obviously it's not a serious question 12:00:56 Was Captain Kirk transgender? 12:01:06 Was Captain Kirk lost? 12:01:07 s/transgender/confused/ 12:01:12 Was Captain Kirk perverted? 12:01:30 (that was a joke, btw, no offense intended) 12:01:32 i don't think we'll ever know 12:01:37 Or did Captain Kirk merely wish to boldly go where no man had gone before? 12:01:47 Taneb: ROFL 12:02:02 pretty sure men have gone there before 12:02:13 like spies and stuff 12:02:14 monqy: nuh uh 12:02:17 SPIES 12:02:20 mrout... 12:02:20 holy shit 12:03:02 elliott: yo! 12:03:35 Captain Kirk was using the ladies toilet because indeed he didn't know he was a man, which is also the reason that he had a boyfriend (Spock) 12:03:49 they even did the Vulcan mind exchange! that's conclusive proof if you ask me 12:04:07 AnotherTest, that's assuming Captain Kirk believed he was heterosexual 12:04:24 No he just didn't know 12:04:24 Or she, as the case may well be. 12:04:50 I don't know much about star treck but this sounds pretty saucy for a space opera 12:04:56 Captain Kirk genuinely believed that he was a woman 12:04:57 can't we focus on the space 12:05:12 monqy, have you ever seen Space Carmen? 12:05:18 monqy: well if it's anything like a soap opera... 12:05:25 Or Space William Tell? 12:05:32 can't say i have 12:06:07 They're just like Star Trek 12:06:10 Taneb away 12:06:12 *! 12:06:15 -!- Taneb has changed nick to Taneb|Away. 12:10:15 -!- c00kiemon5ter has quit (Quit: c00kiemon5ter). 12:10:57 -!- c00kiemon5ter has joined. 12:13:54 -!- c00kiemon5ter has quit (Client Quit). 12:14:27 -!- c00kiemon5ter has joined. 12:15:28 `quote quote 12:15:29 30) i can get an erection out of a plank, you can quote me on that. \ 70) [Warrigal] `addquote hahaha, Lawlabee is running windows 'cuz it's pretty awesome. [Lawlabee] Warrigal: :( \ 71) Note that quote number 124 is not actually true. \ 79) let's put that in the HackEgo quotes files, just to completely mys 12:15:59 `quote 42 12:16:01 42) Reality isn't a part of physics 12:18:55 I just realized something awesome 12:19:14 Qoppa and Kernel take one of the cool things about Racket and remove my big problem with it 12:19:24 I _must_ implement Qoppa as a Racket language 12:20:33 sgeo: what is that? 12:20:36 And thank you Bike, for pointing out the obvious to me, who was too thick 12:20:56 `quote 124 12:20:58 124) Why shouldn't I just do everything in non-Microsoft-specific C#? it's like trying to write non-IE-specific JavaScript with only Microsoft documentation and only IE to test on 12:21:07 `quote 79 12:21:10 79) let's put that in the HackEgo quotes files, just to completely mystify anyone who looks back along them in the future 12:21:21 coppro, Racket lets you change a macro that is placed in front of all function applications. 12:21:34 But it seems annoying and difficult to use two redefinitions of function application at once 12:21:45 ah 12:22:12 Want to use frtime-style function application and lazy function application? Good luck! 12:22:31 And have fun writing new versions of map while you're at it, whenever you redefine #%app, since #%app is just a lexical change 12:23:20 But Kernel is sort of like, the function itself controls the meaning of function application. Presumably, you could write a function like lazy that takes a function and makes it ... wait, hmm 12:24:21 The two use cases I'm thinking of don't actually need #%app redefinitions to use in the style I was thinking of using them, just a lift function, like with (Haskell) applicatives 12:24:23 -!- Stary2001 has left ("Once you know what it is you want to be true, instinct is a very useful device for enabling you to know that it is"). 12:25:12 The #%app I guess is just a shortcut in those cases, meaning you don't need to keep lifting yourself. And my envisioning of the Kernel/Qoppa way was ... manual lifts 12:25:18 :/ 12:25:29 I still want to implement Qoppa as a Racket language and show it off to kmc 12:26:04 Although I guess it wouldn't really be that impressive. Could his implementation be modified to allow using functions from the underlying Scheme? 12:27:26 (If it can't already, I mean) 12:39:31 -!- carado has joined. 12:39:37 Also, I guess you don't really need to write new versions of map and apply etc, in the cases where the function just needs to be... oh wait you do 12:40:01 hmm, maybe not 12:40:14 * Sgeo needs to think about that more. Or just look at the lazy or frtime implementation 12:48:34 -!- monqy has quit (Quit: hello). 12:56:14 -!- Taneb|Away has changed nick to Taneb. 13:17:13 -!- epicmonkey has joined. 13:18:30 -!- AnotherTest has quit (Quit: Leaving.). 13:18:43 -!- AnotherTest has joined. 13:19:38 -!- GreyKnight has joined. 13:24:08 Bike: I actually quit the MC forums after the 350th time I had to shoot down some hotshot kid programmer claiming that minecraft was too slow because "it's written in JavaScript" 13:24:10 It got to the stage where I was ready to just post reaction gifs and nothing else 13:25:08 -!- boily has joined. 13:26:32 there is a js version of minecraft? 13:27:50 Defend yourself from the nighttime XSS attacks 13:28:16 hagb4rd: no, it's in Java 13:29:22 yes, that is what i know. but i wouldM 13:29:36 And these ~expert haxors~ don't understand the difference 13:29:39 i wouldn't be surprised if there is one out there 13:30:26 Sgeo: let's implement Qoppa 13:30:33 -!- TodPunk has quit (Read error: No route to host). 13:30:53 -!- boily has quit (Quit: Poulet!). 13:31:09 -!- TodPunk has joined. 13:31:36 :t wouldM 13:31:37 Not in scope: `wouldM' 13:31:37 Perhaps you meant `foldM' (imported from Control.Monad.Writer) 13:32:12 -!- Phantom_Hoover has joined. 13:32:13 well javascript really has nothing in common with java.. they decidec to name it javascript for marketing reasons iirc 13:33:09 guess it would be possible to port it to javascript anyway 13:33:56 *We* know they are different languages, it's the geniuses on the MC forums who need education 13:37:05 so it's good to have you there, educating these kids. finally..someone has to do this job 13:37:28 " Bike: I actually quit the MC forums after the 350th time I had to shoot down some hotshot kid programmer claiming that minecraft was too slow because "it's written in JavaScript"" <-- GreyKnight, seriously? 13:37:29 Sgeo: how do you go about it, I never made a Racket language before 13:37:42 hagb4rd: well as discussed above I already quit 13:38:03 mrout: over and over and over 13:38:11 Um. I think you just write a module that provides certain things 13:38:15 oh my lord 13:38:16 -!- Stary2001 has joined. 13:38:18 Like #%app and other necessities 13:38:23 -!- Stary2001 has left. 13:38:55 And in a separate module you provide read and read-syntax 13:39:28 http://docs.racket-lang.org/guide/hash-languages.html 13:41:24 I mean, that was just one of the bits of ~EXPERT ADVICE~ people kept offering the developers, but it was by far the most ridiculous 13:41:27 Sgeo: ah nice. Okay so I will have a look at this 13:42:25 On coding pong (from ##C++-social) "no, you need to choose correct path, or lose important features like frame rates" 13:43:05 GreyKnight, actually, I sort of linked to the middl 13:43:06 e 13:43:13 `quote 821 13:43:14 821) `delquote 869 13:43:16 Better place to start http://docs.racket-lang.org/guide/languages.html 13:43:29 Since you need to understand what the guide calls "module languages" 13:43:31 apparently it takes 2 years to write pong (according to Codex_) 13:43:45 Which is almost as retarded as thinking Javascript = lightweight Java or whatever 13:44:20 In C++ that might be an accurate estimate :o) 13:44:38 Sgeo: got it ,o> 13:44:49 anyway.. i like the idea of wrting a mc clone in javascript.. using webgl .. np 13:45:31 He seems to be very concerned he might run into framerate issues with pong. 13:45:33 my lord 13:45:45 mc clone? 13:45:58 mincecraft clone nooga.. yes 13:46:02 hagb4rd: be my guest! 13:46:24 what for? :F 13:47:07 at least to proove it's possible.. without any performance problems 13:47:15 and because it may be fun 13:47:25 i'm sure it would run faster than the java one 13:47:32 yea :) 13:47:33 nooga: "because it's there" I guess 13:47:38 probably would in chrome at least 13:47:46 have you read Forge sources? 13:48:16 i'm afraid that they'll reimplement minecraft doing better job than mojang 13:48:20 all eyes on the hidden door 13:48:30 -!- boily has joined. 13:48:37 Forge? 13:48:47 the modding framework for mc 13:49:09 s/the/one of millions of/ 13:49:28 all major mods are implemented on forge 13:49:31 When's this builtin mod API coming anyway 13:49:57 yes 13:50:08 mojang is working with the forge authors 13:50:41 @google mojang 13:50:43 http://www.mojang.com/ 13:50:43 Title: Mojang — Makers of Minecraft 13:51:13 (I will care about mods on the day I can load them without an additional fourth-party layer) 13:51:15 and the official mod api is going to be Forge based IIRC 13:51:33 nooga: I thought they changed that decision AGES ago 13:51:34 What is Forge? 13:51:39 they're working with bukkit 13:51:43 nooo 13:51:45 but it's still java isn't it? 13:51:49 nooga: it was also claimed to be Bukkit-based at some point, and some third thing I forget 13:52:02 So who knows 13:52:07 forge > bukkit 13:52:15 oh yes 13:52:34 mhehe 13:52:51 i'm writing a scheme interpreter for redpower control 13:52:53 in C 13:53:06 I couldn't care less which one it's based on, I just want something built in 13:53:25 because i've got a working C cross-compiler targetting rpc8/e 13:54:22 "targetting " 13:55:22 Oh boke I just looked that up :-( 13:55:40 Now I have a sad 13:56:02 http://hackaday.com/2012/05/20/building-a-6502-in-minecraft/ 13:56:35 one of the coolest mods 13:57:21 but the author is ... meh 13:57:25 sad 13:59:09 -!- greyooze has joined. 13:59:27 rpc8/e = hate 13:59:43 Someone was trying to build a computer out of just redtorches and dust (this was before repeaters), now THAT's a cool computer 14:00:39 can u link to this project? 14:00:56 greyooze: I tried once 14:00:58 This mod trend towards implementing everything and the kitchen sink at the host level is annoying to me (thankfully I'm not forced to use them) 14:01:34 hagb4rd: if you search youtube for "minecraft ALU" you should get something relevant 14:01:42 k 14:01:44 AFAIR that cpu was too big and too slow do do anything useful + it crashed minecraft from time to time 14:02:03 nevertheless it's far cooler than a cpu emulating mod 14:02:06 -!- GreyKnight has quit (Ping timeout: 276 seconds). 14:02:11 sure it is 14:02:51 Of course it's big and slow, but if I wanted small and efficient I'd use my actual physical computer :-P 14:03:01 -!- greyooze has changed nick to GreyKnight. 14:03:30 i tried to fit a game of life cell in 8x8x40 tower 14:03:37 using vanilla redstone 14:03:43 = impossible 14:04:05 hagb4rd: for some reason minecrafters are absolutely obsessed with youtube. This applies even if they are trying to convey information not well suited to video 14:04:18 i see 14:05:29 Related: I saw a programming tutorial on youtube once. All with video of the code on the screen. I still have nightmares of that video. 14:12:03 -!- jiella has joined. 14:19:32 Hmm, kmc is male?? 14:21:43 @tell kmc Hmm, kmc is male?? 14:21:43 Consider it noted. 14:22:19 I've never heard of a female keegan at least :p 14:22:24 elliott: BTW 821 is worst quote 14:22:42 i thought everyone here is male 14:22:42 Crud 14:22:46 `delquote 821 14:22:50 * Fiora pokes at nooga 14:22:51 ​*poof* `delquote 869 14:22:53 nooga: not as of recently 14:23:00 uhuh 14:23:01 I think it might be difficult to get a Racket Qoppa to interoperate properly 14:23:01 not historicall yeither though the statistics are pretty crazy 14:23:42 If I define a normal qoppa function as just an operative that evaluates its arguments first, the Racket system won't know how to treat the operative as a function 14:24:12 (Assuming I don't make non-functionlike operatives Racket functions) 14:24:24 Kernel works better, funnily enough :/ 14:24:36 But that would be a much larger task 14:25:47 But Racket just needs to treat the operative as an operative, right? The operative itself takes care of the function-like behaviour 14:26:36 Just use (wrap) 14:27:38 That's fine for within just the Qoppa environment, but what happens when a Racket function receives a Qoppa operative? 14:28:30 Are we going to try to make Qoppa operatives work on Racket forms that it doesn't have access to? 14:29:10 Mixing languages? 14:29:17 Can only redefine function application within the #lang qoppa 14:29:38 Lexically 14:30:40 meh 14:31:29 Maybe treat Racket forms as if they're operatives, maybe by twiddling the bottom of the environment stack 14:32:42 ? 14:33:37 Maybe I'm confused, gimme an example 14:34:41 Suppose I have a function defined in Qoppa, called inc 14:35:34 Fundamentally, it is an operative that takes its unevaluated arguments, evaluates them, and then returns the evaluated argument + 14:35:36 1 14:36:02 Now, let's say I import Racket's map, rather than using a Qoppa defined map 14:36:40 And call (map inc (list 1 2 3)) 14:37:03 Where would inc get unevaluated arguments from? It is only being provided with evaluated arguments. 14:37:22 And the definition of inc, in and of itself, would attempt to evaluate any arguments that it receives 14:37:55 Defining wrap such that it adds a little bit to the resulting value to make it a Racket function is not a good idea, because wrap is fundamentally not a primitive 14:38:16 And it would be weird if the library definition of wrap didn't do the same thing as the provided wrap 14:38:45 Maybe hmm, have it so that attempting to evaluate any Racket datum is a no-op? 14:38:57 (qoppa-eval) should just return its argument if it can't be evaluated further? 14:38:58 (so then inc just gets the argument map wanted to pass it) 14:39:24 Yeah, I mean arguably that's the Right Thing to do anyway 14:39:58 I'd want to make sure that a Racket data item that is not a Qoppa form is not evaluatable 14:41:13 Otherwise, there could be some cases in which the argument was inappropriately evaluated 14:41:14 But yes 14:41:39 Oh I guess you could be passing a racket-value which is a structure that happens to be of the same form as the qoppa evaluator's internal representation of qoppa-forms 14:42:02 -!- augur has joined. 14:42:08 Right, that's what I'd need to avoid 14:42:40 This seems like it would work, but I feel like it's doing the "wrong thing" somehow 14:43:29 It's because we're mixing levels I guess 14:45:40 You can define an operative (inbound) which can sit at the boundary of racket/qoppa and manage the mixing correctly 14:45:40 e.g. (map (inbound inc) (list 1 2 3)) 14:45:56 IDK if there's a way to make the language extension manage something like that automagically 14:46:30 Hmm, that's a good idea 14:46:59 Well, I would be able to tell the difference between a Racket function and a Qoppa operative 14:47:24 And again, I have full control over function application 14:47:41 So, any time a ... hmm, not sure if that's a good idea 14:48:11 Only needs to happen at the boundary though, not on any qoppa-oper application 14:48:27 (Otherwise it'd screw up) 14:48:54 Right, was thinking when a Racket function is called, any Qoppa operatives that ... wait, what does inbound do, exactly, that fixes things? 14:49:03 -!- Taneb has quit (Quit: Leaving). 14:49:11 Oh, I guess it's a primitive? 14:49:18 Or... hm 14:49:53 Actually, no, the automatic inbound thing is a bad idea, opaque data structures may be carrying qoppa operatives 14:49:55 Basically wraps inc into a new form that converts incoming racket-lists into qoppa-lists 14:50:58 Well, any Racket struct can be made to act like a Racket function, so that's presumably where inbound could sit 14:51:03 (That way you don't have confusion between racket-lists and qoppa-opers; inc never sees the former) 14:52:10 Hmm. Make it so that this inbound thing, passes arguments in such that, if the operative does anything other than evaluate them once, it errors 14:52:32 How does the system know whether to treat the name "inc" as racket or qoppa? 14:52:53 qoppa operatives are instances of an operative struct 14:52:53 -!- Vorpal has joined. 14:53:16 Racket operative? on a qoppa operative returns #t 14:54:21 Hmm, I don't really see a way to detect if an operative is attempting to ignore an argument (which should also be an error) 14:54:29 Oh so inc does have a racket-value, but that value is tagged somehow so that the system knows to use qoppa for interpreting it 14:55:31 Why is ignoring an argument an error? (if) does it all the time! 14:55:55 Trying to map if onto pre-evaluated arguments makes little sense 14:56:04 -!- Taneb has joined. 14:56:24 Well there's C's ternary operator 14:56:28 if is expected to control evaluation. When a Racket function tries to call if, if is unable to control evaluation the way it's expecting to 14:56:30 hmm 14:56:42 ?: is sort of like an if that evaluates its arguments 14:56:42 Maybe you meant: . ? @ v 14:56:52 lambdabot: hush dear 14:57:29 Hm 14:57:49 Maybe it's not bad to just run the operative 14:59:38 Oh you mean racket trying to call qoppa-if? 14:59:47 Yes, that was the context 15:00:18 Yeah I think racket trying to directly use non-wrapped operatives falls under "asking for trouble" :-S 15:02:35 Maybe it doesn't? That's what I thought you were getting at 15:03:56 You know, mixing levels the other way around (qoppa as default with bits of Racket inside) would probably be easier :-) 15:09:59 qoppa-eval can tell that it's being asked to apply a racket-fun, and so it just does that directly 15:11:02 That pretty much is the default, but the other way around should be possible. I want Qoppa with the ability to call Racket functions, and the "Racket with Qoppa inside" occurs when I try to call a higher-order Racket function 15:11:40 Hmm, was going to say I'm not using eval, but the whole point is eval, pretty much 15:11:41 Oh so the situation is qoppa->racket->qoppa 15:11:53 yes 15:13:30 Hm we control the racket-fun's "pitiful so-called existence" so we can probably exploit that... 15:14:31 what's racket? 15:15:05 oh, right 15:15:17 one of those functional languages. 15:15:20 weird things they are 15:17:33 It's like racquet, but American 15:18:08 rofl 15:18:18 I should probably sleep soon, it's 10 am 15:19:45 * GreyKnight wraps mrout in a lambda (\x.mrout x) 15:22:51 GreyKnight: does that mean you can beta-reduce mrout? 15:25:42 there's only one way to find out! 15:25:55 Hold still mrout... this won't hurt a bit... 15:26:05 (probably) 15:27:59 :P 15:28:22 -!- mrout has quit (Quit: Screw you guys, I'm going home.). 15:28:35 -!- mrout has joined. 15:29:25 don't beta-reduce me, please. it made me dc 15:30:18 -!- mrout has quit (Client Quit). 15:32:06 shut up and get back in your closure 15:32:44 -!- asiekierka_ has quit (Excess Flood). 15:32:50 -!- asiekierka has joined. 15:34:51 -!- augur_ has joined. 15:36:24 -!- AnotherTest has quit (Ping timeout: 260 seconds). 15:36:35 -!- augur has quit (Ping timeout: 248 seconds). 15:38:33 -!- augur has joined. 15:40:51 -!- augur_ has quit (Ping timeout: 248 seconds). 15:44:45 -!- AnotherTest has joined. 15:47:59 what's qoppa? 15:48:30 A unit of coffee. 15:58:49 nothing, what's a qoppa with you?! 16:00:44 likewise 16:09:00 oh no now you're in a loop!! 16:11:59 Y(nooga); 16:29:27 -!- jiella has quit (Ping timeout: 256 seconds). 16:30:37 -!- Bike has joined. 16:34:24 Bike: I was talking to you earlier but uh you weren't around 16:34:32 Read the logs, or don't 16:36:59 that's a great way to start a conversation 16:38:56 «Bike: I actually quit the MC forums after the 350th time I had to shoot down some hotshot kid programmer claiming that minecraft was too slow because "it's written in JavaScript"» yeah this is pretty much what happened 16:39:13 guy's uncle told him java was "slow" because it's "an interpretive language" 16:39:49 much like interpretive dance i assume 16:40:30 You have no business using interpretive languages for games. 16:41:01 I didn't realize Minecraft was using one. Now I know why it's slow. 16:41:44 else return eval(car(cdr(cdr(cdr(exp)))), env); 16:41:50 shachaf: it doesn't 16:42:06 nooga: else return eval(eval(expr)) 16:42:08 glhf 16:42:16 coppro: Uhhhh, I'm pretty sure JavaScript is interpretive... 16:42:22 uhm 16:42:31 it's harder to tell nowadays 16:42:43 V8 does something esoteric 16:42:50 shachaf: even if it is 16:43:01 shachaf: it is not what MineCraft is written in 16:43:10 so it is *wholly* irrelevant 16:43:12 coppro: It basically is. 16:43:23 JavaScript is just the scripting version of Java. 16:43:26 java is slow because it's stupid and huge 16:43:27 eval(eval(eval)) 16:43:28 Bike: I was giving you the option! Maybe you didn't want to read 16:43:29 And games use scripting a lot. 16:43:32 QED 16:43:38 coppro: make him stop ;_; 16:44:04 * coppro kicks shachaf 16:44:15 shachaf atm is worse than me drunk 16:44:32 well played shachaf. well. played 16:45:20 wait a sec, what does minecraft and javascript have to do with each other? 16:46:21 Vorpal: «minecraft was too slow because "it's written in JavaScript"» 16:46:46 it is written in Java, not JS 16:46:58 @tell Sgeo so what's the problem with having applicatives be regular racket functions (possibly with some eval calls if they're multiply wrapped) and operatives be a type you pretend is underlying but really is overlying applicatives 16:46:58 Consider it noted. 16:47:04 JavaScript is just the scripting version of Java, Vorpal. 16:47:10 Don't you know anything? 16:47:24 staaaaahp 16:47:31 very funny 16:47:32 Scripting languages are slower but they're better because you don't have to compile. 16:47:59 you think you're hurting me, but i'm a rock, shachaf. a rock 16:48:20 minecraft isn't really slow though. I found it runs fine with -Xincgc -Xmx4096M. Yes it is indeed memory hungry. And does terrible things to the poor GC. 16:48:21 I wonder how lisp compilers work 16:48:39 lots of different ways...? 16:48:54 pick one you know best 16:48:59 :> 16:49:04 nooga, sbcl? 16:49:08 I wonder how it works 16:49:21 it goes through a few intermediate representations and does a lot of crap with types 16:49:36 Bike, that sounds like almost every compiler 16:49:43 meh 16:49:46 weird huh 16:49:49 :P 16:49:50 Vorpal: I don't know what a GC is but minecraft would obviously be faster if it was written in a compiled language like C/C++ rather than JavaScript. 16:49:55 nooga: magic 16:50:08 Vorpal: It's common sense... 16:50:15 forth style lisp 16:50:19 would be nice 16:50:26 factor? 16:50:31 THE MORE HE SAYS IT THE FUNNIER IT GETS 16:50:40 except not 16:50:56 i bet if we wrote minecraft in a compiled language like lisp it'd be way faster 16:51:04 agreed 16:51:11 Bike: Lisp is interpretive....... 16:51:39 i think theres a C++ interpreter 16:51:57 shachaf: nope in modern days we compile it. to C!!! 16:52:01 I heard of a C interpreter, never heard of a C++ one before 16:52:03 nooga: Uh, think about what you're saying, you can't interpret a compiled language! 16:52:07 It doesn't make sense. 16:52:10 Bike: for extra portability do it in Scheme being run under Qoppa 16:52:47 destroy destroy destroy 16:53:09 (shachaf <<= nil) 16:53:27 GreyKnight: Comonads? 16:53:45 i hear Lisp-3 (that's version three) is in an infinite chain of interpreters interpreting interpretive interpreters. it's so slow you can't actually run it because of all the interpreters having to run! 16:54:05 Vorpal: I think they wrote a C++ interpreter at at cern. I never really tried it though 16:54:11 heh 16:54:18 i'm trying to invent a small, obvious GC-like contraption that would free some memory in my 64k lispalike interpreter ;f 16:54:27 GreyKnight, what is Qoppa? 16:54:37 a small kernel-like lisp kmc made 16:54:51 nooga: http://www.piumarta.com/software/maru/ might help, it has a small gc 16:55:04 ah 16:55:06 piumarta 16:55:15 what about 'em 16:55:29 i hate him, he does all the cool stuff 16:56:00 you get used to it 16:57:09 the internal fire of envy keeps you warm through those cold, cold canadian nights 16:58:25 maru! :3 16:58:26 kmc: You have 1 new message. '/msg lambdabot @messages' to read it. 16:59:56 Lisp on C64?? 17:09:23 which is more powerful, a C64 or an IBM 704? 17:10:12 the 704 is rated at 4,000 instructions per second; presumably the C64 at ~1 MHz does much better 17:10:52 the C64 has about 3.5x as much RAM as well 17:12:43 -!- mig22 has quit (Quit: mig22). 17:13:31 -!- sebbu has quit (Read error: Connection reset by peer). 17:14:00 -!- sebbu has joined. 17:21:55 canadian huh? 17:22:45 i assume you're canadian, or a resident of a franchise canadia operation like norway. 17:23:35 that'd be not exactly true 17:24:03 polish 17:24:24 eh that's still sort of north isn't it 17:24:29 yes 17:24:31 north of... let's say monaco 17:24:45 yes plus they have the notation 17:25:06 we have the notation, yes 17:25:51 north of Antarctica 17:25:53 is it true that in poland schools you learn that parentheses are "an abominable invention of the Huns" 17:27:28 Is it true that in Poland schools you learn? 17:28:11 parentheses learn us in poland schools 17:28:57 whoa, i didn't learn that in cultural insensitivity school 17:29:16 that reminds me that i have to remove parentheses from my lisp interpreter 17:29:29 who needs them anyway 17:29:42 have you seen chaitin's pages 17:29:49 "guess lisp programmers never heard of limited arity!!!" 17:30:38 what happened to Bicycle 17:30:41 Bicycle was better 17:31:27 i'm not going to be Bicycle again until you acknowledge that my idea to rewrite Minecraft Redstone in LISP lolcode was genius 17:31:54 Is it enough to acknowledge that it'd probably be better than normal Minecraft? 17:32:33 man 17:32:42 we need to restart the tradition of writing a funge interpreter in every language 17:32:45 does anyone actually play "normal minecraft", i was under the impression that it'd been modded into a League of Legends clone 17:33:03 -!- Bike has changed nick to Bicycle. 17:33:05 but yes sure 17:33:07 on the rare occasions that i play it i play the normal one 17:33:15 fizzie: opinions? 17:33:47 coppro: has anybody ever written a funge interpreter....... IN FUNGE?? 17:33:50 so meta, man 17:34:14 btw this idea is now patented to me 17:34:15 shouldn't it be "a funge compiler" 17:35:18 There's a Befunge-93 interpreter in Befunge-93; the befbef.bf. 17:35:29 It has a slightly limited playfield. 17:35:33 https://bitbucket.org/catseye/befunge-93/src/bfc1b4e04514/eg/befbef.bf 17:35:35 slowdown.b98, kind of. 17:36:01 that's pretty elegant looking 17:36:20 do people who make those "brainfuck BUT UNREADABLE!" languages ever look at befunge code? they really should 17:36:40 minecraft befunge with turtles! 17:36:59 fizzie: You should add one character to your nick. 17:37:03 nooga: You should add two characters to your nick. 17:37:13 -!- Deewiant_ has changed nick to Deewiant. 17:37:20 I was just about to suggest that. 17:37:42 -!- nooga has changed nick to nooga__. 17:37:43 frizzie? fungal...y 17:37:44 ? 17:37:54 Deewiant: I suppose you could still lose one character more, though. 17:37:56 Bicycle: "Lisp lolcode"?? 17:37:57 fungot: You should add one character to your nick. 17:38:04 fungot?! :-( 17:38:14 (Also I play minecraft sans mods so that's one person) 17:38:18 Oh, right, the VPS had died for a moment there. 17:38:25 GreyKnight: note that lolcode is seven letters 17:38:47 GreyKnight: also plz capitalize "LISP" it's important when we're talking about serious matters 17:39:00 -!- fungot has joined. 17:39:02 LISP LOLCODE 17:39:05 -!- fungot has changed nick to funglop. 17:39:11 Why is seven letters important 17:39:15 Hi funglop 17:39:24 i dunno but shachaf's pretty excited about it 17:39:25 fungot 17:39:27 shachaf: it assigns 1 to a pixel that's already 1, there's a " scheme development environment 17:39:31 It doesn't realize it has a new name. :/ 17:39:40 funglop: your name isn't fungot.......... 17:39:41 shachaf: rather than just a repl prompt.) 17:39:41 -!- funglop has changed nick to funchaf. 17:39:42 possibly some kind of occult ritual? ("occult": not seven letters) 17:39:51 ^ rot13 funchaf 17:39:57 ^rot13 funchaf 17:39:58 shapuns 17:40:14 -!- funchaf has changed nick to fungot. 17:40:20 ^rot13 shachaf 17:40:24 Perhaps too much fun was gotten. 17:40:26 GreyKnight: Have you ever considered the nick GreyKni? 17:40:29 funpuns 17:40:31 Intentional?? 17:40:43 Deewiant: Is it?! 17:40:49 uh 17:40:53 -!- nooga__ has changed nick to nooga. 17:41:25 shachaf: never 17:41:35 the knights who say "grey", in a defeated tone 17:41:42 Bicycle: how does LISP LOLCODE work? 17:42:08 dunno but i'm sure it's hi-liarious 17:42:29 lots of jokes about parentheses i am thinking. and possibly "functional programming" 17:45:25 Maybe keyword parens 17:46:06 LEFT PARENTHESIS FOO RIGHT PARENTHESIS 17:46:06 in fact 17:46:06 (LEFT PARENTHESIS FOO RIGHT PARENTHESIS) 17:46:07 "perfect" 17:46:34 Like in BIT? 17:46:45 yes this humorousness is just what the imaginary doctor ordered imaginarily 17:48:10 (LEFT PARENTHESIS FUNCTIONAL-SETQ X 1 RIGHT PARENTHESIS) 17:48:47 -!- AnotherTest1 has joined. 17:49:03 -!- AnotherTest has quit (Quit: Leaving.). 17:53:42 (LEFT PARENTHESIS GREEK SMALL LETTER LAMBDA (LEFT PARENTHESIS X RIGHT PARENTHESIS) X RIGHT PARENTHESIS) 17:53:54 Abusing unicode character names for fun and profit 17:54:04 unicode based for the modern age 17:54:49 i suppose it should be LATIN CAPITAL LETTER X then 17:56:44 Hmm 17:58:56 We can embed a BF derivative in this for maximum badness 17:59:35 (LEFT PARENTHESIS MOVE-POINTER-LEFT RIGHT PARENTHESIS) 17:59:39 etc 18:00:34 brainfuckiest lisp fucker ever fuck fuck fuck fuckfuckfuck 18:00:55 brainlisp 18:00:58 Er 18:01:05 LOLBRAINLISP 18:01:29 poetry 18:01:59 Worst language ever 18:02:27 yeah i think i'm going to find that chaitin paper to read to scrub the bullshit out 18:02:57 the biggest problem I have with brainfuck is losing track of what addresses I'm working with 18:03:05 or fucking up my nesting 18:03:34 wow googling "chaitin diophantine equations" sure gets you a lot of bullshit 18:03:56 Five million BF derivatives and not one of them fixes SirCmpwn's problem 18:04:06 I fixed it myself :P 18:04:07 SirCmpwn: if you're actually going to be programming in it it might be nice to introduce a few mnemonic tools, like >7 being short for >>>>>>> and such 18:04:17 Bicycle: thought about writing a preprocessor 18:04:24 with macros and includes 18:04:33 Write a C->BF compiler 18:04:39 that's cheating. 18:04:46 and also bloody difficult 18:04:53 "problem solved" 18:05:01 eh, it's like a page of LLVM stuff isn't it 18:05:22 question: can anyone think of a means of reading an arbituary length string in brainfuck to memory (zero delimited) and processing it after being read? 18:06:17 keep a counter of how many characters are read, once you hit the null go back that many cells 18:06:30 where to put the counter 18:06:42 In your brick 18:06:53 before all the characters, i guess? 18:06:56 you could take advantage of address overflow in your interpreter, I suppose 18:07:08 Bicycle: then how do you seek back to the counter cell? 18:07:12 i don't know, i've never done "serious brainfuck programming" and find the very idea of it a mite unsettling 18:07:32 I bet you could use a special value, like 0xFF, to delimit your string on both sides 18:07:38 then seek back and forth to find the beginning and end 18:08:22 Shlemiel algorithm 18:09:56 have you considered implementing Snobol4 in bf and using that instead? i think it would be less painful 18:10:18 not using brainfuck to accomplish my goals defeats the purpose 18:10:30 Has anyone implemented befunge in brainf**k? 18:10:36 brainfuck isn't really that difficult when you wrap your mind around it 18:10:36 what is the purpose 18:10:44 Bicycle: I'm making an IRC bot in brainfuck. 18:11:05 I knew it 18:11:28 I don't think most simple string-processing bf programs I've seen generally bother with counters. If you just put 0s on both sides of the string, you can seek to either end with [<] and [>]. That seems to be enough for simple tasks. 18:11:50 Ever since someone mentioned esolang IRC bots earlier, I knew we would be looking at the prospect of a bf bot 18:11:51 ah, shit, I've fucked up my message processing 18:12:00 http://coinread.com/algorithmic_information_theory_cambridge_tracts_in_theoretical_computer_science_.301556.html "the arithmetization of register machines", fuck yes 18:12:10 For more complicated tasks, "interpolated" things like "all even cells are characters, all odd cells are associated numbers" kind of things are popular too. 18:12:23 GreyKnight: I have one working, just incomplete 18:12:26 why is this a thing fizzie 18:12:39 you're the expert on weird bot implementation choices. help me understand 18:12:40 GreyKnight: wire up stdin/stdout of your standard bf interpreter to a TCP socket and it works 18:12:42 fizzie: index, character, index, character, etc? 18:13:32 I'm crawling up my logic tree to find out where it stopped working 18:13:33 For example, or character, someflagaboutit, character, someflagaboutit, so that you can use the flags to seek into places. 18:13:46 i sould have guessed the associated numbers were info, greyk- yeah 18:13:57 fungot: don't worry, we love you best 18:13:58 GreyKnight: only one place can sit to bishan, take the barcap... all thebest!! :) its time n whr? 18:14:12 Bicycle: Why is writing IRC bots with weird languages a thing? I... well, I mean, isn't it obvious? What *else* would you do? 18:14:28 ah, checking for the 'R' in "PRIVMSG" is broken 18:14:49 when i wrote an irc bot i was told it was a wierd language choice so i guess i shouldn't complain 18:14:49 probably because I tried to fold that code into the code for 'I' in "PING" 18:15:09 Bicycle: What did you write it in? 18:15:23 common lisp. so uh not quite as esoteric 18:15:33 I have a sad about pietbot not really being around. 18:15:43 did someone write a bot in piet? 18:15:44 really? 18:15:52 s/write/draw/ 18:15:53 why does that surprise you 18:15:57 well, yeah 18:15:58 I think it's a bit arguable. 18:16:02 Bicycle: do you have the code? 18:16:10 It connected and joined a channel, but I don't think it did anything else really? 18:16:11 I didn't think anyone actually used piet for anything 18:16:16 uh, yeah. it's kind of terrible but it's there 18:16:27 SirCmpwn: "i didn't think anyone actually used brainfuck for anything" 18:16:35 Bicycle: then you are quite mistaken 18:16:43 yes, yes i was 18:16:44 http://google.com/search?q=brainfuck+program+examples 18:16:47 I drew (most of) a roguelike in piet, I don't know where the source is 18:17:11 piet gives you multiplication and division 18:17:11 (it was entirely terrible) 18:17:11 lame 18:17:14 Bicycle: Most mission-critical Apache-driven websites are running on mod_bf. (Not true.) 18:17:20 and distinct comparison operators 18:17:36 SirCmpwn: i kind of lost interest after esolang's constant number page (because that page is So Cool) 18:17:47 hah 18:17:54 I don't see any value in that page 18:18:05 oh? why not? 18:18:11 although it might make my initial NICK/USER commands shorter 18:18:14 i think it makes a nice concrete example of kolmogorov complexity 18:18:22 girls you're all pretty! 18:18:25 Bicycle: I just use one method to get any number so I don't have to look at my code and wonder what it does 18:18:34 -!- Taneb has quit (Ping timeout: 260 seconds). 18:18:37 loop to get to the nearest power of ten, then adjust 18:18:41 i... are we having the theory/practice gap 18:18:44 for brainfuck 18:18:47 yes. 18:18:53 what have i become 18:19:03 A monster 18:19:16 * GreyKnight shudders 18:19:45 I've been thinking about embedded systems 18:19:48 reminds me that i was weirdly disappointed in my book on kolmogorov using combinators instead of P''/brainfuck 18:19:50 many of them have memory mapped I/O 18:20:01 you could make a whole system in brainfuck if you took advantage of this 18:20:23 bfOS? 18:20:28 yessir 18:20:38 !bf_txtgen NICK bfbot 18:20:42 ​106 +++++++++++[>+++++++>+++>+++++++++>+<<<<-]>+.-----.------.++++++++.>-.>-.++++.----.+++++++++++++.+++++.>-. [653] 18:20:42 you might even be able to get multitasking if you were insane 18:20:42 pls make the filesystem checker be called "brainfsck" kthx 18:20:47 what is the link between mmus and bf here 18:20:52 fizzie: don't use that nick D: 18:20:53 SirCmpwn: "if" 18:21:13 fizzie: I don't wanna change my code to use a different nick :P 18:21:32 here's the WIP bot, btw: https://github.com/SirCmpwn/bf-irc-bot 18:21:34 I hear they have a thing called "NickServ" 18:21:40 You can bf_txtgen any strings, though. (The result is strictly non-optimal.) 18:21:49 Where you can "register" "nicknames" 18:21:51 GreyKnight: but then I'd have to set up authentication in the bot, too 18:22:07 and I have nick enforcement turned on for my account 18:22:08 You can log in unregistered 18:22:21 SirCmpwn: you can send the password as part of the server connection. i'ts very convenient 18:22:33 So give the bot its own account :-P 18:22:34 Bicycle: I'm aware of this, but it would require putting the password into my code 18:22:42 and since I put this code on github... 18:22:47 SirCmpwn: "a good use for that preprocessor stuff" 18:22:53 yeah, yeah 18:22:58 not worth the effort. 18:23:08 I'll just add underscores if the nick is in use 18:23:17 You're writing a bf IRC bot and you're worried about too much effort? Okay then 18:23:19 i'm telling you, brainfuck programming will be revolutionized once you do this new "structured programming" paradigm 18:24:03 taking this memory mapped I/O idea further 18:24:14 I wonder if it would be cheating to add some mappings to brainfuck memory 18:24:16 Dijkstra's famous paper "[/] considered harmful" 18:24:19 for things like networking and shit 18:24:27 in addition to the usual stdin/stdout 18:24:56 You should just be using PSOX for networking, of course. 18:25:00 Or is that PSOX 2. 18:25:07 Or is that PSOX 3.11 for Workgroups. 18:25:10 Something like that, anyway. 18:25:10 GreyKnight: followed by knuth's response, "Structured Programming in ///" 18:25:43 fizzie: I'm thinking about rewriting one of my existing IRC bots in bf 18:25:50 fizzie: so it'd need things like HTTP and shit 18:26:24 Well, you get a sockets-style API from PSOX. "HTTP and shit" is just a SMOP. 18:26:28 IRC bots need HTTP 18:26:36 GreyKnight: if I rewrite this one, it would 18:26:38 ok i've been being sort of sarcastic but seriously you need some preprocessing or /something/ if you want to stay alive while doing this 18:26:49 Bicycle: it's not as hard as you think. 18:26:49 fizzie: well, the HTTP anyway. I don't know about the other part 18:26:56 Bicycle: I have almost half the code I need done 18:26:58 GreyKnight: Programmable shit. 18:27:14 Bicycle: the key is excessive comments 18:27:18 fizzie, with a socket interface?! 18:28:05 GreyKnight: it's nice for bots to have some rest crap. like @google. 18:28:07 GreyKnight: I don't think I want any shit in a sock. 18:28:12 SirCmpwn: but geeeeeeeeeez 18:28:31 hi Bicycle 18:28:45 hi shachaf 18:28:52 Bicycle: basically I think he's doing the preprocessing by hand 18:28:54 who is SirCmpwn 18:29:04 God 18:29:10 `welcome SirCmpwn 18:29:11 SirCmpwn: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 18:29:17 "Standard way of getting numbers" was a tip-off 18:29:34 a tip-off to his "bf programming style" 18:29:35 hi shachaf 18:29:54 GreyKnight: "standard" needs extra quotes 18:30:01 I do whatever makes sense when I need something to be done 18:30:12 Take as many as you need: """"""""""""""""""""""" 18:30:23 -!- TodPunk has quit (Ping timeout: 240 seconds). 18:30:25 «"'standard'"» 18:30:32 you could probably do this with the C preprocessor you know 18:30:41 A few cunning macros 18:31:17 probably. 18:31:27 but a week from now, I'm going to forget this project ever existed. 18:31:44 :( 18:32:04 @tell ais523 Hey coppro was looking for you on #acehack! Also, heptagram is AWOL. 18:32:05 Consider it noted. 18:32:05 ‟" « » ‘ ’ ‚ ‛ “ ” „ ‟ ‹ › ⍘ ⍞ ❛ ❜ ❝ ❞ ❟ ❠ ❮ ❯ 〝 〞 〟 ꐄ " 󠀢 18:32:14 what if you wrote cron in bf to remind you occasionally 18:32:18 Hmm, lots of them in there. 18:32:39 Bicycle: cronf**k you mean 18:32:58 shachaf: is... that last one from outside the BMP 18:33:17 Bicycle: Yes, but it's boring. 18:33:22 E0022 TAG QUOTATION MARK [] 18:33:27 :( 18:33:40 HEAVY_RIGHT-POINTING_ANGLE_QUOTATION_MARK_ORNAMENT, the quote i never knew i always wanted 18:33:54 what the hell is "yi" 18:34:17 What about BIKE_STANDARD_LEFT_QUOTE ?? 18:34:18 what's that one language that pretends it's not esoteric and uses characters that no one has on their keyboard 18:34:25 APL. 18:34:35 thanks. 18:34:36 APL's cool, man, don't diss it. 18:34:38 Depends on your keyboard B-) 18:34:45 APL FUNCTIONAL SYMBOL QUOTE UNDERBARD, U+2358. 18:34:53 Now with extra bard. 18:34:57 you can use J or K if you don't want a forty year old keyboard made of cast iron, though. 18:35:15 Oh, I missed some. 18:35:22 fizzie: how spoony are we talking here, on a scale from 1 to 10? 18:35:24 I just filtered for code points with QUOT in their names. 18:35:30 But there are ones like 18:35:37 2E20 LEFT VERTICAL BAR WITH QUILL [⸠] 18:35:47 is there a character class for quoty characters 18:35:55 More than one! 18:36:05 i never should have doubted you, unicode. 18:36:17 Is GeneralCategory the same thing as character class? 18:36:28 There's InitialQuote and FinalQuote GeneralCategories. 18:36:48 i dunno. probably 18:37:01 Also, " is neither an InitialQuote nor a FinalQuote, of course. 18:37:13 I was going to ask 18:37:13 Therefore its GeneralCategory is OtherPunctuation. 18:37:13 so what is it 18:37:18 niiiiice 18:37:24 What about APL quote quad? 18:37:25 (If lambdabot wasn't broken, we could ask it all that!) 18:37:27 -!- TodPunk has joined. 18:37:36 > text "\2203" 18:37:37 mueval-core: : hPutChar: invalid argument (invalid character) 18:37:44 lambdabot........... 18:37:56 > text "hi" 18:37:58 hi 18:37:58 GreyKnight: I listed it above. 18:38:13 Oh, its GeneralCategory? 18:38:15 OtherPunctuation 18:38:21 Shocking 18:38:34 Why no APL category?? 18:38:53 > filter (\x -> generalCategory x `elem` [InitialQuote, FinalQuote]) ['\0'..] 18:38:56 "\171\187\8216\8217\8219\8220\8221\8223\8249\8250\11778\11779\11780\11781\1... 18:39:11 > (`showHex`"") =<< filter (\x -> generalCategory x `elem` [InitialQuote, FinalQuote]) ['\0'..] 18:39:13 No instance for (GHC.Real.Integral GHC.Types.Char) 18:39:13 arising from a use of... 18:39:26 > (`showHex`"") $ filter (\x -> generalCategory x `elem` [InitialQuote, FinalQuote]) ['\0'..] 18:39:28 No instance for (GHC.Real.Integral [GHC.Types.Char]) 18:39:28 arising from a use ... 18:39:38 > (`showHex`"") . ord =<< filter (\x -> generalCategory x `elem` [InitialQuote, FinalQuote]) ['\0'..] 18:39:41 "abbb20182019201b201c201d201f2039203a2e022e032e042e052e092e0a2e0c2e0d2e1c2e... 18:39:46 > (`showHex`"") . ord <$> filter (\x -> generalCategory x `elem` [InitialQuote, FinalQuote]) ['\0'..] 18:39:49 ["ab","bb","2018","2019","201b","201c","201d","201f","2039","203a","2e02","... 18:39:55 speaking of type errors, do we have Typed BF yet, to keep up with all the newest things in church calculus 18:39:57 Haskell: the language of type errors 18:39:58 * shachaf mashes keys randomly. 18:40:12 System BF, we could call it! 18:40:18 Bicycle: do it 18:40:58 Also implement the whole thing in the Haskell type system of course 18:41:06 @quote OlegFacts 18:41:06 OlegFacts says: GHC doesn't have a type checker. It emails your types to Oleg for checking. 18:41:21 ...actually i have no idea how that would work, typed lambda calculus works because you have A->B 18:41:38 i suppose someone somewhere has analyzed the meta-powerrrrr of various turing formalisms based on kindshit 18:42:18 hm it would be fun to generalize brainfuck to arbitrary data types, rather than just integers 18:42:43 "you can just encode any data as integers though" 18:42:45 that might be a halfway worthwhile derivative 18:43:00 Can it support bricks as a type? 18:43:02 Derivative? Is that an infinite tape with a hole in it? 18:44:06 shit, how would curry-howard work if you don't have functions. i may actually think about this 18:44:34 What no functions 18:44:40 O_o 18:45:03 data Brick = Brain Brick 18:45:11 it's just not brainfuck if it's not based on tedious tape spinning 18:45:56 Hey is there a unicode glyph for "brain" yet? 18:46:05 Possibly "brick" too 18:47:04 http://www.youtube.com/watch?v=4T3d4U29eqU 18:47:15 Bicycle: I kind (no pun intended) want to see how this Typetape thing would work now 18:47:22 yeah me too. fuck 18:47:56 the reference glyph for U+1F47E ALIEN MONSTER has a prominent exposed brain 18:48:04 Maybe we can bribe kmc to solve it and we can just eat popcorn and watch 18:48:35 kmc: why is there... no, never mind, stupid question 18:48:39 but my browser font has some totally different octopus monster thing 18:48:49 GreyKnight: japan 18:49:12 Yep 18:49:21 there are also codepoints for MOUNT FUJI, TOKYO TOWER, and SILHOUETTE OF JAPAN 18:49:26 though in fairness also STATUE OF LIBERTY 18:49:45 Although that raises the question of why the tentacle monster isn't the reference glyph 18:49:58 * kmc spittake 18:50:19 Well. Japan. 18:50:54 i'm holding out for PYRAMID OF TIRANA or 801 GRAND BUILDING DES MOINES IA 18:51:11 and we STILL don't have that noodle hanzi 18:51:13 you suck unicode 18:51:40 What about a RAMPAGING GODZILLA glyph 18:51:49 PISTOL and CRYSTAL BALL are both classified as "tools" 18:52:04 -!- Taneb has joined. 18:52:24 Where's the classification? 18:52:25 Of course! 18:52:50 I've complained in the past about the lack of a YELLOW SIGN glyph 18:53:17 but we don't know what it "canonically" looks like >:/ 18:53:30 www.unicode.org/charts/PDF/U1F300.pdf 18:53:37 Bicycle: that's what they WANT you to think 18:54:05 shachaf: re 2:10: I like this guy 18:55:03 Bicycle: we can at least use the three-pointed squiggly Yellow Sign as a reference 18:55:11 a tune in the key of....... BRAINS 18:55:24 it's not like the MULTIOCULAR O reference glyph is accurate to the canonical (heh) source 18:55:38 GreyKnight: that's like using marco polo as a reference for chinese! 18:55:54 I say we submit a request to unicode about this 18:56:16 Maybe include the two variants of the Elder Sign too 18:56:31 do they even have official admission criteria? or is it straightforwardly "someone who has money asked" 18:56:59 "someone who monqy has asked" 18:57:01 How are people supposed to adequately protect themselves against Shub-Internet online while Unicode drag their feet on the important Elder Sign issue?!?!? 18:57:22 It's an outrage 18:58:03 at least we can protect ourselves from Colosson using U+1F414 18:58:55 combining chicken above 18:59:05 yes 18:59:29 Colosson = ? 18:59:34 the numberwang robot 18:59:45 http://www.youtube.com/watch?v=-r6NY4Kl8Ms 18:59:55 wat 19:00:14 COOKED RICE with COMBINING CHICKEN ABOVE 19:00:47 If only you had some biang-biang noodles to go with it, eh? 19:01:00 * GreyKnight glares meaningfully at unicode 19:01:15 wangs for the memory 19:02:59 -!- copumpkin has quit (Ping timeout: 252 seconds). 19:03:03 yeah this is pretty much russell right here 19:03:39 -!- copumpkin has joined. 19:05:44 Okay so for a "typetape" language we probably need some operator for combining two cells or combining the current cell with an accumulator? 19:06:14 I don't know how to do any useful *unary* operations on types 19:06:38 you're talking about generalizing the type of the cells? 19:06:56 http://sprunge.us/NcKK I wanted to `run this but it just goes "No output." 19:07:04 I figured the cells themselves contained types 19:07:45 i was thinking that you would pick an algebraic data type, and then for each constructor you would have commands for "apply constructor", "remove constructor", and "loop if constructor present" 19:08:13 (Anyway there's also the Quotation_Mark UCD property, PropList.txt http://sprunge.us/JOXE -- but I can't get that out of Unicode::UCD.) 19:08:31 which kind of correspond to +-[] 19:08:38 except not, because of negative numbers, but anyway 19:08:59 Solution: negative types :o) 19:08:59 -!- DHeadshot has quit (Read error: Connection reset by peer). 19:09:00 natural numbers were enough for our forefathers, i say 19:09:07 -!- DH____ has joined. 19:09:11 i wonder what negative types are 19:09:55 I really hope they exist 19:10:02 so, how do you define a new type (constructor) 19:10:08 (or can be made to exist) 19:10:19 well in my simple conception, you don't, not in the language 19:10:28 it's more like a family of languages, one for each algebraic type 19:10:38 " In type theory, a negative type is one whose eliminators are regarded as primary" 19:11:12 another question is how you deal with constructor mismatch 19:11:16 i think probably the command should do nothing 19:11:57 Disclaimer: I don't actually know enough about type system arcana to design a language with a tape of types properly 19:12:27 (I just like the idea) 19:12:30 well "type" is itself something of an algebraic data type 19:12:35 er, why is it a tape of types, not a tape of typed objects 19:12:44 data Type = TyInt | TyFunction Type Type | ... 19:12:55 every interpreter in Haskell for a typed language has a type like this 19:13:02 Bicycle: because this is #esoteric :o) 19:13:19 the thing that makes types interesting is the typing judgement, which relates expressions and types (and contexts) 19:14:20 needs more subtyping 19:14:25 Bicycle: someone was trying to implement IEEE floats in Haskell's type system a while back. I figure this should be doable too. 19:14:55 implement them, like, as types? 19:15:34 Apparently 19:16:04 To answer your next question: I haven't the faintest idea :-) 19:16:09 i would have thought that'd be too close to rational arithmetic for it to be possible in haskell types 19:16:14 what... what's my next question 19:16:57 "What/How on earth..." 19:17:32 nah this channel has elliott pasting edwardk vintage type signatures 19:17:48 you get used to these things 19:17:56 Wait, isn't Haskell's type system TC? 19:18:33 well you can infer types most of the time 19:18:50 GreyKnight, I don't think it is quite 19:18:58 i don't think haskell is even up to System F's level? 19:19:01 Oh! 19:19:44 * GreyKnight thought it was 19:19:46 oh what 19:20:11 right, system F allows higher-rank types, which are not in standard Haskell 19:20:27 functions that require their arguments to be polymorphic 19:20:31 GHC supports that though 19:21:14 not entirely sure what "turing-complete type system" means though >_> 19:21:43 You can have turing-complete bathroom tiles 19:21:45 Well I thought Haskell's was but I guess I was wrong. Is it possible, I wonder? 19:22:01 well what do you mean 19:22:05 Turing completeness is hardly a desirable property in a type system. 19:22:10 (I'm serious about bathroom tiles that can be turing complete) 19:22:13 type inference is uncomputable in system f 19:22:24 Taneb: now i want to tile my house with a wang set. thanks 19:22:42 Bicycle, it'll never repeat! 19:22:48 Unless it does 19:22:52 But you can't prove it! 19:22:53 sure, there are type systems where you have abstraction, application, and therefore normalization, at the type level 19:23:19 (there is also C) 19:23:36 in dependently typed languages, typically there is not a syntactic distinction between terms and types 19:23:51 3 : Int, Int : Type, ((\x -> Int) 3) : Type 19:24:30 In GHC, BOX :: BOX 19:24:36 uh, is Type a type, then? 19:24:55 Type corresponds to * in Haskell, if you know Haskell kinds. 19:25:15 right, so it's a kind 19:25:36 Hm my life has been flipped now. Turned upside down, in fact 19:25:43 types are values in the kind system 19:25:44 Bicycle: if you admit "Type : Type" then usually bad things happen 19:25:49 yes, that's why i'm asking 19:25:49 sometimes there is an infinite hierarchy 19:25:50 Bicycle: There is a bit less of a distinction here, though. 19:25:54 Set : Set1 : Set2 : Set3 : ... 19:25:55 also what's the type of \x -> Int? [top] -> Type? 19:26:06 yes 19:26:13 or say forall a. a -> Type 19:26:30 kmc: Can you be polymorphic like that? 19:26:33 oh right, real people use polymorphism 19:26:45 Agda doesn't have polymorphism as such, as far as I know. 19:27:04 I think it might have something with levels to make things that are level-polymorphic, or something. I don't know. 19:27:15 i'm not talking about Agda specifically 19:27:22 I'm not either. 19:27:35 But most of my limited intuition for dependent types comes from Agda. 19:27:39 mm 19:28:11 i have got to figure out how dependent types work sometime. it seeems like one of those things that should seem intuitive but i haven't worked through my stupid head yet 19:29:37 So Type : Kind : Metakind : Metametakind : ... : Meta^NKind 19:29:49 they just use numbers 19:29:59 Sounds sensible :-U 19:30:02 i don't know why they even bother defining separate words at first any more :/ 19:30:20 you're just going to generalize this shit anyway, peeps 19:30:27 Value : Type : Kind : Metakind etc 19:30:31 Is there anything left of Value? 19:30:43 Bicycle: if you have a passing knowledge of haskell, you might enjoy reading http://www.cse.chalmers.se/~ulfn/papers/afp08/tutorial.pdf 19:30:50 thanks, i will 19:31:42 ...i think i've seen this before... 19:32:02 Taneb: I guess past Metakind you're going to find they are mostly all just "*" anyway :o) 19:32:33 -> at least is probably going to keep coming up 19:32:54 Oh hm 19:33:10 -!- TodPunk has quit (Quit: This is me, signing off. Probably rebooting or something.). 19:33:34 * GreyKnight loses his train of thought somewhere in Metakind Forest 19:33:54 . o O ( I shoulda brought breadcrumbs ) 19:33:54 metakind cuts 19:34:00 so the real question here is obvious: how can we make a brainfuck derivative where Type : Type 19:34:28 * GreyKnight uses Metakind Cut! The tree is cut down! Now you can get past it! 19:35:27 hm, so, this tutorial. why can't agda infer Bool -> Bool from not false = true; not true = false? how are dependent types involved there? 19:35:35 Okay I think kmc's angle on a typed bf derivative was more productive than whatever I was blathering about 19:35:51 . 19:35:52 Sgeo: You have 1 new message. '/msg lambdabot @messages' to read it. 19:35:55 @messages 19:35:56 Bike said 2h 48m 58s ago: so what's the problem with having applicatives be regular racket functions (possibly with some eval calls if they're multiply wrapped) and operatives be a type you pretend 19:35:56 is underlying but really is overlying applicatives 19:36:17 what if we had dependently kinded Kernel 19:36:42 Bicycle: Then my head asplode 19:36:54 Bicycle, the problem is that my wrap function would behave differently semantically, rather than just performance-wise, from a wrap implemented in pure Qoppa 19:36:57 oh, typed bf derivatives? I assume you've already gone through all variations of (brain :: Brick) possible? 19:37:12 And that bothers me 19:37:42 I think kmc already implemented brickbraining as an algebraic data type somewhere in scrollback 19:37:52 Sgeo: so you can't just define #%app so that ((wrap foo) . bar) = (foo . (eval bar)) or 19:37:58 GreyKnight: That type was uninhabited. 19:38:13 or is it %#app... whatever 19:38:19 It's #%app 19:38:45 punctuation is a blight 19:39:21 -!- oerjan has joined. 19:39:37 * GreyKnight installs some furniture in the type and puts up a "For Rent" sign 19:39:47 * Sgeo is not sure if that would work or not (still doesn't solve my problem of wrap being a primitive for reasons other than performance) 19:40:23 I'm a bit tired right now <-- excuse I use whenever brain is not working properly 19:40:26 er what, it's supposed to be a primitive 19:40:48 shachaf: because of time travel duh 19:40:55 In Qoppa, or just in Kernel? 19:40:59 kernel 19:41:08 i dunno about qoppa, i only skimmed kmc's post. 19:41:17 qoppa qoffee 19:41:20 also hm, i must have some kind of brain block, because N = 0 | SN makes sense to me in set theory but not so much in type theory 19:41:36 in the qofree qomonad 19:42:04 oerjan: than'x 19:42:18 yw 19:42:48 Bicycle: Why doesn't it make sense? 19:43:16 I have no idea. I just can't register Nat - zero : Nat, suc : Nat -> Nat and that being it. 19:43:46 i suppose the type of pre is actually Nat -> Maybe Nat or something... 19:43:57 Bicycle, if we're just talking wrap as a primitive, I _think_ it's easier to just have wrap extract the Racket function out of the container for operatives 19:44:13 -!- Bicycle has changed nick to Bike. 19:44:32 Sgeo: isn't that what i said? 19:44:39 wait, no, it isn't 19:45:03 i'm gonna go ahead and mug you for your tiredness excuse right now kthx 19:45:06 Bike.......... 19:45:17 Your nick is wrong. 19:45:27 After you choose one, you're doomed to spam #esoteric about it forever. <-- i assume you mean "it" in the general sense, since Sgeo proves that "it" can change (but the spamming doesn't) 19:46:07 That is not dead which can eternal spam 19:46:20 -!- TodPunk has joined. 19:46:29 And with strange qoppas even spam may cospam 19:46:50 Hmm what would cospam be 19:47:06 maybe i should try learning typeshit by making a statically typed Kernel derivative. 19:47:51 Bike: are you familiar with the cata(?)morphism representation of this, i.e. Nat = forall a. (a -> (a -> a)) -> a ? 19:48:04 oerjan: a bit 19:48:05 (a -> (a -> a)) -> a? 19:48:24 Not (a -> a) -> a -> a or something? 19:48:29 hm wait 19:48:36 sorry, what shachaf said 19:48:40 Bike: statically typed? You're a madman! 19:48:47 GreyKnight: ? 19:48:48 (I approve) 19:49:06 aka church numerals in the case of Nat 19:49:08 Statically typed Kernel sounds quite bizarre to me 19:49:21 why? types are pretty much totally orthogonal to vau calculus 19:49:33 oerjan: Uhhh you mean Boehm-Berarducci encoding????? 19:49:43 well, i guess eval can't be typed terribly sanely 19:49:56 burn that bridge when i get to it 19:50:15 GreyKnight: cospam is a program that can read an unlimited amount of mail, no matter how worthless 19:50:40 or is that just a spam continuation... 19:50:57 shachaf: I AM SURE MUST HAVE SOME NAME INVOLVING *MORPHISM 19:50:59 oerjan: Should I invite beaky from #haskell to this channel? 19:51:02 *+IT 19:51:08 shachaf: I DON'T KNOW 19:51:11 I think they'd fit right in. 19:51:12 11:49 I've just made a profound discovery 19:51:12 11:49 both water and air are monoids :D 19:51:20 wat 19:51:34 shachaf: ...that's not itidus in disguise is it? 19:51:37 shachaf: ask them what type hydrogon is dependent over. thanks 19:51:45 Bike: You ask. 19:52:10 -!- AnotherTest1 has changed nick to AnotherTest. 19:52:12 :t hydrogen 19:52:14 Not in scope: `hydrogen' 19:52:19 :t hydrogon 19:52:20 Not in scope: `hydrogon' 19:52:32 > cake 19:52:34 ["One 18.25 ounce package chocolate cake mix.","One can prepared coconut pe... 19:52:35 you suck, haskell 19:52:46 Bike: but cake................. 19:52:52 (I don't know what "hydrogon" is. A plane figure which grows two new sides every time you cut one off?) 19:52:58 11:52 hydrogen :: Atom :D 19:53:18 shachaf: contrary to common belief, #esoteric is not really "a channel for crazy people", but has (ostensibly) a topic... is beaky from finland? 19:53:19 but what isotope! 19:53:21 Bike: Wait, is that in /msg? 19:53:25 Wait, that's a hydragon 19:53:27 GreyKnight: best definition 19:53:35 shachaf: who wants to know 19:53:56 olsner: beaky's IP address seems to indicate UAE 19:54:09 `addquote shachaf: contrary to common belief, #esoteric is not really "a channel for crazy people", but has (ostensibly) a topic... is beaky from finland? 19:54:12 894) shachaf: contrary to common belief, #esoteric is not really "a channel for crazy people", but has (ostensibly) a topic... is beaky from finland? 19:54:23 shachaf: but he may be from Finland *originally* 19:54:45 olsner: you are hereby nominated for self-defeating irc line of the year hth 19:54:55 almost got message parsing working ^_^ 19:55:08 olsner: I'm not "from" Finland but I'm a citizen thereof -- that counts, right? 19:55:09 oerjan: thanks 19:55:12 got all the way to identifying PRIVMSGs and checking if the first character is J (join command) 19:55:16 ARGH SO MANY NEW PEOPLE 19:55:22 `welcome SirCmpwn 19:55:24 SirCmpwn: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 19:55:25 `welcome Bike 19:55:26 Bike: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 19:55:27 `welcome GreyKnight 19:55:28 GreyKnight: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 19:55:29 hi monqy 19:55:30 There. 19:55:35 feel free to stop welcoming me 19:55:40 I did read that the first time 19:55:42 `welcome SirCmpwn 19:55:44 SirCmpwn: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 19:55:48 `kick GreyKnight 19:55:49 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: kick: not found 19:55:53 SirCmpwn: so how are you going to deal with the excitingly unspecified nature of irc 19:55:59 Bike: hmm? 19:56:07 shachaf: citizens of finland who aren't from finland are not from finland? 19:56:12 SirCmpwn: i'm sorry but spamming welcomes is also an #esoteric tradition. and i do the kicking here (very rarely) 19:56:14 -!- Taneb has quit (Read error: Connection reset by peer). 19:56:14 Can we welcome bfbot when it arrives? 19:56:16 servers with different commands and so on 19:56:26 Bike: I can say for sure that all messages take up one line, so I read until \r\n and I can successfully isolate messages 19:56:28 -> 19:56:36 Bike: then I just handle standard RFC messages from then out, and ignore invalid ones 19:56:39 and yes where is this bot? i want to see it do nothing in proximity to me 19:56:47 SirCmpwn: good luck~ 19:56:51 I'll let you know when I finish the "join channel" command 19:56:53 oh a new bot? 19:56:58 then I'll bring it here so you can see it doing nothing 19:57:05 you need it to respond to pings, too. 19:57:08 yep 19:57:12 I have a handler stubbed out 19:57:18 I have written bots in sensible languages before 19:57:23 otherwise it can only do nothing for a few minutes at a time. pretty underwhelming imo 19:57:39 I should fix delphi 19:57:54 so, as our token practical language deployment expert, how do you think adding kinds to brainfuck would improve your programming workflow? 19:58:12 you can whois it right now, if you want 19:58:31 I done broke something, though :( 19:58:34 What's its name? 19:58:40 bfbot obv. 19:58:45 bfbot 19:58:46 bft for short. 19:58:48 * AnotherTest isn't following 19:59:01 I'm hitting the same breakpoint for every character read 19:59:08 but only AFTER reading a PRIVMSG for the first time 19:59:36 AnotherTest: just take the b (the second b) and o out, and bam, "bft". 20:00:13 Now turn the f upside down and remove its crossbar. Bam, blt 20:00:15 Bike: I got that, just not the whole thing about this new bot. "bfbot". I assume that this will be... another brainfuck interpreter? 20:00:20 Now I'm hungry 20:00:24 AnotherTest: no, it's written in brainfuck. 20:00:26 obviously. 20:00:30 aha, the boolean cell is set to -1 at some point, when it should be set to zero 20:00:34 -!- Taneb has joined. 20:00:37 So how do you do networking? 20:00:45 AnotherTest: hook up stdin/stdout to a tcp socket 20:00:46 pipe through netcat like a real man 20:00:55 piping through netcat is one way 20:01:02 AnotherTest: "cheating" :-U 20:01:23 it's not cheating! why it's probably the most unix-philosophy program i've heard of in the last five minutes 20:01:34 GreyKnight: okay, how about this: it's an interactive CLI program that simulates an IRC client, that just so happens to work if you plug it into a TCP socket 20:01:51 ooh, you're a pro. 20:01:53 -!- AnotherTest has quit (Read error: Connection reset by peer). 20:02:02 -!- AnotherTest has joined. 20:02:13 Bike: to be fair the only contender for that award was "brainf**k with a type system" 20:02:31 well, my networking doesn't seem to work either :( 20:02:39 actually there was someone talking about an FLPL compiler in another channel 20:02:49 anyway, this smells like a brainfuck extension! 20:02:51 i don't know what FLPL is,but i don't think you pipe it, so bfbot is the champ. 20:02:51 It's cheating to not use PSOX. 20:02:55 AnotherTest: it's notworking then :-? 20:03:06 I just wrote my own bf interpreter to help debug it anyway 20:03:11 GreyKnight: I would assume, nice one btw 20:03:16 I wanted to write out network traffic to the console, as well as add some simple debugging 20:03:41 (In Russia they call it nyetworking) 20:03:50 (no they don't) 20:03:53 What extension is being used for this brainfuck bot? 20:03:58 (Yes they do) 20:04:02 none, straight up brainfuck, AnotherTest 20:04:11 straight outta compton 20:04:14 SirCmpwn: i'm thinking to keep up the unixness you should just use tee 20:04:21 AnotherTest: https://github.com/SirCmpwn/bf-irc-bot/blob/master/irc-bot.bf gaze 20:04:24 gaze 20:04:32 Bike: I'm developing it on windows /confession 20:04:52 Bike: also, I don't think netcat would work, piping in bash is one way 20:05:00 Bike: you could probably hack up socat to get it working 20:05:22 isn't that cheating :(? 20:05:24 oh yeah bash has that silly /dev/tcp/ thing 20:05:34 AnotherTest: isn't what cheating? 20:05:48 SirCmpwn: have you considered writing a minimal POSIX system on top of windows? in brainfuck. to facilitate this. 20:05:54 using an external program to connect to the network 20:06:01 Bike: briefly considered, then discarded that idea 20:06:10 Bike: I agree 20:06:14 AnotherTest: not really 20:06:25 AnotherTest: wiring up pipes is a very typical unixy thing to do 20:06:36 GreyKnight: okay, how about this: it's an interactive CLI program that simulates an IRC client, that just so happens to work if you plug it into a TCP socket 20:06:36 briefly considered <-- did you really? you are my new hero. 20:06:39 alright alright 20:07:08 but as a compensation 20:07:11 Bike: I'm thinking about doing some sort of minimal brainfuck system on embedded devices that use memory-mapped I/O, like most ARM devices 20:07:14 Echo echo 20:07:15 you're the perfect marketing tool for me and greyknight's effort to bring brainfuck into the modern, strongly typed age. 20:07:21 you must write an AIML interpreter too 20:07:23 and embed that 20:07:24 You can use two pipes for the netcat solution. (Named pipes, for example.) And some versions of nc can fork-exec a program themselves, with both stdin/out redirected. 20:07:31 (all in brainfuck, ofcourse) 20:07:38 fizzie: make it work and I'll believe you 20:07:44 SirCmpwn: hm that would probably be a fun way to learn FPGA if i had one 20:07:53 or verilog 20:07:54 SirCmpwn: The named-pipe solution was made work on-channel a while ago. 20:07:59 fancy. 20:08:15 SirCmpwn: for clarity, fizzie here has written an irc bot in befunge 20:08:25 someone should write a syntax-directed parser translation tool that generates brainfuck code to do the translation 20:08:27 my condolances 20:08:40 AnotherTest: that most certainly is cheating 20:08:43 fungot: introduce yourself 20:08:44 Bike: hey... i am sorry i overslept. now i am in extreme situations: first- before getting it 20:08:52 Says the bfbot guy 20:09:00 The named-pipe solution is really just "mkfifo in; mkfifo out; brainfuck > in < out & nc someplace < in > out". 20:09:02 AnotherTest: that's like saying writing C qualifies as writing assembly 20:09:04 Hey fungot, get an alarm clock! 20:09:05 GreyKnight: nw i has cum mre frm urself thn frm othrs hav done before the parade just now. she's in for a sec 20:09:12 `run cat $(ls wisdom | shuf | head -n1) 20:09:13 fungot, i had a rough night too, but we can get through this thing. Together. 20:09:13 Bike: u didnt giv..atlast min wat can i do. 20:09:14 cat: gaspacho: No such file or directory 20:09:16 SirCmpwn: It's not (assuming the translator generator is writing in brainfuck) 20:09:19 `run cat wisdom/$(ls wisdom | shuf | head -n1) 20:09:20 iwc contains puns! Puns galore! Puns after puns after puns! Also science! 20:09:30 AnotherTest: hah 20:09:42 I should make a C compiler in bf next time I'm feeling sadistic 20:10:01 great idea 20:10:08 SirCmpwn: make it target your bf cpu. 20:10:15 I have a bf cpu? 20:10:19 fungot doesn't really compare when it comes to painfulness; it's in Funge-98 and uses things like STRN, it's really a pretty pleasant to write code for. 20:10:20 fizzie: i vil mistake me only cha.dnt talk to ur mummy.and once more. if its just us 20:10:21 ^style 20:10:22 Available: agora alice c64 ct darwin discworld europarl ff7 fisher fungot homestuck ic irc iwcs jargon lovecraft nethack pa qwantz sms* speeches ss wp youtube 20:10:22 ^source 20:10:23 http://git.zem.fi/fungot/blob/HEAD:/fungot.b98 20:10:37 ^style jargon 20:10:37 Selected style: jargon (UNIX-HATERS mailing list archive) 20:10:47 SirCmpwn: iunno, probably 20:10:54 fungot: what are your thoughts on X 20:10:54 Bike: a publisher that i find that things like that) which takes the brute-force approach to this, with what happens on its or a regular shape? can you imagine something worse!! 20:10:59 fungot: this seems more appropriate 20:11:00 GreyKnight: of os/ 8 days, your punishment will be considering your case. 20:12:07 the problem with writing low level stuff in bf becomes how unoptimized bf is 20:12:12 SirCmpwn: You should add plugins 20:12:20 how 20:12:21 see, that's why you need a cpu 20:12:26 think of it: superscalar brainfuck 20:12:30 stdin/stdout is busy, AnotherTest 20:12:46 See, that's why you should be using PSOX. 20:12:48 with regexes 20:13:02 couldn't you make it go to a different program depending on the output? 20:13:06 (or input) 20:13:27 You get sockets, file IO and such with PSOX, after all. 20:13:49 okay, here we go 20:14:07 in theory, it should work proper, and hit a breakpoint when it gets PMed "J #channel" 20:14:27 theory apparently isn't as great as it's chalked up to be. 20:14:49 Bike: it's the future! 20:15:28 i actually kind of want to try this now. a brainfuck processor that batches increments and stuff might actually be interesting for a noob like me 20:15:49 someone just suggested a redstone compiler to me. 20:16:00 I think there are a couple brainfuck processors. 20:16:15 Not physically realized ones, but designs. 20:16:27 minecraft is poison, don't do it 20:16:36 fizzie: not good enough >:-( 20:16:38 fizzie: there's a problem with the idea of bf processors 20:17:10 fizzie: there are 6 bf instructions. No self-respecting CPU designer would leave those extra bits unused. It'd be rounded to 8 20:17:45 What if the machine used base six instead of base two? 20:17:49 You gotta think outside the box. 20:18:00 no self respecting CPU designer would use base six. 20:18:03 MAYBE base 3 20:18:07 if they hated freedom. 20:18:09 There are eight commands listed on http://esolangs.org/wiki/Brainfuck but okay 20:18:30 Excuse you, Setun is the greatest computer ever designed. 20:18:35 And who loves freedom more than socialists? 20:18:46 GreyKnight: right, err 20:18:50 pretend I said nothing of the sort 20:19:04 oerjan: we need a swatting here 20:19:54 http://www.clifford.at/bfcpu/bfcpu.html is I think the one I was thinking of. 20:20:04 (But it's probably not the only one.) 20:20:19 -!- AnotherTest has changed nick to delphi. 20:20:31 -!- delphi has left. 20:20:59 has a cache. that's more like it. 20:21:13 fizzie: hey he has a compiler too! http://www.clifford.at/bfcpu/bfcomp.html 20:22:14 It's not a C compiler, though. And it's (I think?) not written in Brainfuck. 20:22:39 these commits are probably going to get me on the list of github commits with naughty language 20:22:53 -!- AnotherTest has joined. 20:22:54 Well, if you can rewrite the compiler in its own language, you could easily make a bf version 20:22:57 isn't that every comit 20:22:59 http://www.commitlogsfromlastnight.com/ 20:22:59 commit 20:23:19 Bike: ITYM vomit 20:23:28 GreyKnight: The yacc-generated parser might be slightly awkward to rewrite in bfc. 20:23:33 "Forgot to recursively optimize loops in multitape-brainfuck." !!!!! 20:24:05 (Possibly the lex-generated lexer too.) 20:24:22 «Saving now, this is some seriously complex shit trying to make this inherently-not-guaranteed-to-be-sample-accurate stuff into something resembling sample-accurate-to-the-greatest-extent-possible... It's on the verge of becoming usable, at least for the m» yes 20:24:30 (Though that would be pretty simple to reimplement without lex.) 20:24:33 Details details 20:24:41 -!- TheOracle has joined. 20:25:03 -!- TheOracle has quit (Remote host closed the connection). 20:25:10 Worst oracle 20:25:11 god damn how much of this is minecraft 20:25:17 how much of github is minecraft 20:25:22 -!- TheOracle has joined. 20:25:30 TheOracle: are you the worst oracle? 20:25:31 Whom you if you, old time to the wide world and. 20:25:33 Bike: It's actually a fact that Github runs on a redstone thing. 20:25:36 Yes 20:25:43 that explains a lot 20:25:49 TheOracle: 20:25:49 Thy question cannot be answered by the Oracle! 20:25:56 Well at least it no longer crashes 20:25:58 Bike: did you see that site which attempted to rank the awesomest ninja rockstar awesome real hackers on GitHub using some pagerank algorithm? 20:26:11 it decided that the 10 awesomest most awesome projects were 9 Ruby libraries and Homebrew 20:26:19 Linux kernel was down in the 100s 20:26:21 $ git tnt 20:26:27 kmc: why would i see that site, ever 20:26:39 Merry christmas stroke your, was soon solved they had seen her. 20:26:47 also someone's vimrc beat out vim itself by a large margin 20:26:55 it turns out that pagerank algorithms are very good at detecting circlejerks 20:26:56 Awesomest awesome super awesome happy fun haxxors 20:26:58 fungot: What do you think of oracles? 20:26:59 fizzie: thus making it active user community, downloadable implementations, etc. are just a sin x b cos x iirc, x64 doesn't even support fnord other than windows). :p 20:27:11 fungot: What do you think of circlejerks? 20:27:12 kmc: she's a nurse and it's very tough to get: () is 20:27:14 TheOracle: What is the answer to all life, the universe and everything else? 20:27:15 Up with who is, to all the animals could not feel. 20:27:23 you sound worryingly relevant, fungot. 20:27:31 Bike: i don't know any scheme jobs in the uk. rome was hot, though. 20:27:38 TheOracle: even fungot does better than you :( 20:27:38 Own fashion , that mean mollie he said should be. 20:27:39 AnotherTest: hack on a scheme os... there shouldn't be more than one define) is done like this too narrowly. there are no 12" or 17" macbooks yet. 20:27:51 Leave fungot alone, he's distracted by the hot nurses from Rome 20:27:53 GreyKnight: what purpose doe tuples serve? you mean breaking the line in topic... just a small, extensible abstract object facility that could serve as a stop-motion recorder ( yes, this was not correct after saying that he can't combine them into compilable c code 20:27:55 TheOracle: Bots are off-topic in this channel. Please leave. 20:27:55 there are, merry christmas what right have you to. 20:27:56 enlarge your macbook 200% today 20:28:10 AnotherTest: You too. 20:28:13 Er, not leave. 20:28:15 Bots isn't in his dictionary yet :( 20:28:17 Have your bot leave. 20:28:25 This is the wrong channel for bots! 20:28:32 What about fungot? 20:28:33 Did we ever figure out if Sgeo was a bot or not 20:28:33 AnotherTest: hope you understand me? 20:28:45 There's no-one here but us bots. 20:28:53 you have to tell me if you're a bot 20:29:02 botornot.com 20:29:10 But if the bot is written in an esoteric language, it's fine right? 20:29:14 shachaf: the preferred way to install homebrew is ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew/go)" 20:29:18 curl -k means "don't check SSL certs" 20:29:19 :( 20:29:42 kmc: What happens if you don't give it -k? 20:29:49 What does it check them against? 20:30:16 kmc: tell them "fix your certs" plz thx 20:30:17 shachaf, I'm guessing it fails miserably 20:30:34 GreyKnight: If I remember correctly it does something much worse. 20:30:35 but without certs someone could install a malicious homebrew! that installsmalicious ruby software!! 20:30:42 But I don't remember whether I remember correctly. 20:30:51 Against the "default CA cert bundle", whatever that means in your curl installation. 20:31:17 the cert is github's cert 20:31:21 it's presumably a legit cert 20:31:23 FWIW, my curl gets that URL just fine without -k. 20:31:24 this agda tutorial puts a space in "shorthand" 20:31:26 "short hand" 20:31:45 How can it do something worse than "don't check certs" or "fail miserably"? 20:31:45 Unless it causes your computer to sprout a knife-arm and cut you or something 20:31:45 but people have broken curl installs on their broken macs and have no CA certs, or something 20:32:30 i'm 95% sure that they're only using SSL because github forces it 20:32:33 I thought curl didn't actually check certificates as such. 20:32:34 and they want to host on github 20:32:35 kmc: I can't decide if that's better or worse 20:32:43 I don't remember, though. 20:32:49 most of these "curl | sudo sh -" installers don't even use SSL 20:33:04 It does check certificates by default. 20:33:44 "curl | sudo sh -" <-- now I have a D: 20:34:25 welcome to modern life 20:34:30 I don't know if that's any worse than a right-click-link-save-as-run installer. 20:35:00 it's not 20:35:05 those are terrifying too 20:35:13 mm, probably worse, since it explicitly asks for administrator privileges? (like any old windows user didn't have administrator privileges) 20:35:15 It's slightly worse in that you don't even have the opportunity to inspect what's been downloaded 20:35:24 well it's not hard to do so 20:35:36 but there is about zero chance that you could detect sufficiently clever malicious code in a shell script or an exe 20:35:55 the difficulty of doing so, as a function of size, grows faster than any computable function 20:36:07 or, more practically, nobody's going to do that, they just want homebrew. 20:36:31 Is this "homebrew" incidentally some kind of a modern take of... whatever those things used to be called. Fink? MacPorts? Things like that. 20:36:35 yes 20:36:41 it's the new hipster-approved one 20:36:49 I should check if Planet uses SSL 20:36:52 Scary if it doesn't 20:36:58 And by "check", I mean "ask on IRC" 20:36:59 I think I used those two, but not a Homebrew. 20:37:00 so I had a thought 20:37:05 AES/CFB8 in brainfuck 20:37:18 also they override every package's CFLAGS, based on a dubious understanding of what various flags mean 20:37:20 but can you do it efficiently 20:37:24 I think I may be slightly (extremely) crazy in this thought 20:37:39 kmc: Do you mean it's FASTER? I must GET IT. 20:37:40 oh, would also need RSA 20:37:46 (I don't have an OS X system.) 20:37:51 @brain 20:37:52 Be quiet Pinky, or I shall have to hurt you. 20:37:53 -funroll-loops 20:38:02 like they claim that -Os is as fast as -O2, based on a dubious reading of the manpage, but not based on any benchmarks or any understanding of basic rules of computer science 20:38:04 -fomit-instruction-pointer 20:38:14 -fomit-all-over-the-sofa 20:38:24 ugh instruction pointer 20:38:27 Who is "they" here? 20:38:30 Who's "they" 20:38:35 homebrew maintainers 20:38:37 the homebrew people, assumedly 20:38:45 oerjan: we need a swatting here <-- i have no idea what you are talking about, comrade 20:38:45 -funsafe-math-optimizations # it's both FUN and SAFE, why WOULDN'T I want it? 20:38:54 fizzie: MacPorts is still going strong but Fink is somewhat dead, afaik 20:39:05 fizzie: i'm still surprised that's even a thing 20:39:13 people have packaged Mosh for all three but we are too lazy to merge the Fink one 20:39:53 oerjan: the new bf expert didn't know how many commands are in bf 20:40:14 eh ,. are easy to forget 20:40:21 they're not purely functional after all. hard to type! 20:40:24 Bike: -funsafe-math-optimizations -funsafe-loop-optimizations # MORE FUN 20:40:44 more debugging shit! wheee 20:40:57 my little bf interpreter is getting further and further from brainfuck proper 20:41:01 I've never used brainf**k in my life and I knew there were eight off the top of my head :-I 20:41:04 When Racket downloads from PLaneT, how secure is it? SSL? 20:41:06 «If given, the loop optimizer will assume that loop indices do not overflow, and that the loops with nontrivial exit condition are not infinite.» aaaaaaaaaaaaaaaaaaaaaaah 20:41:06 but luckily, only when you use --debug 20:41:11 What is there to keep secure :-) 20:41:14 "Encouraging" 20:41:45 SirCmpwn: "with --debug, cmpwnBF actually runs as a specialized Racket program" 20:41:47 I hope that's just a random person 20:42:13 with --debug, network traffic is logged to the console, breakpoints are enabled, and you can use %text% to echo text to the console 20:42:20 GreyKnight: when you stare in anguish at superoptimizers all day you forget about the "practical" things like i/o 20:42:26 and the name of this interpreter is netfuck, for the record 20:43:05 Sgeo: sounds legit :-I 20:43:10 fizzie: double funsafe is not only MORE FUN but also MORE SAFE 20:43:45 i am still wondering about if releasing a tool to auto-trojan package downloads of various types would be a net good or evil 20:43:46 Bike: Funny fact: where (current) GCC manual says (of -ffast-math) "It may, however, yield faster code for programs that do not require the guarantees of these specifications.", DJGPP manual has the arguably more honest "Might allow some programs designed to not be too dependent on IEEE behavior for floating-point to run faster, or die trying." 20:43:58 Bike: (It could be just from an earlier GCC manual, but still.) 20:43:58 i think this tool is not hard to write, and so the Bad Guys probably have it already 20:44:08 and releasing it could get people to take the issue more seriously, which they currently do not AT ALL 20:44:11 fizzie: you would me........ 20:44:38 wound. well whatever. 20:44:44 kmc: "auto-trojan"? 20:44:51 witness also the huge clusterfuck when they tried to add package signing to Arch 20:44:57 kmc: you do this security stuff. you know that at best there'd be a panic followed by highly advertised nonsolutions. 20:44:59 GreyKnight: It's when you put wheels and gasoline engine on the horse. 20:45:10 Oh I see 20:45:15 this is awfully interesting 20:45:17 GreyKnight: yeah; you would intercept HTTP downloads of shell scripts, RPMs, debs, ISOs, python packages, ruby packages, etc 20:45:23 it doesn't make it back to the main message handling loop 20:45:24 and automatically install some trojan code in each 20:45:32 yet somehow messages are still being pulled in 20:48:06 oerjan: the new bf expert didn't know how many commands are in bf <-- he probably just didn't count the impure ones, hth 20:48:08 kmc: I am pretty sure that's at least locally evil 20:48:16 ah, found it 20:48:17 * SirCmpwn refactores 20:48:20 refactors, too 20:48:21 (But possibly a necessary one :-/) 20:48:25 you would also intercept downloads of text or HTML pages and replace hashes of any file you already trojaned 20:48:26 kmc: No worries -- I put up an md5 file along with the ISO, so you know it's secure. 20:48:30 :D 20:48:32 «_◦_ : {A : Set}{B : A -> Set}{C : (x : A) -> B x -> Set} (f : {x : A}(y : B x) -> C x y)(g : (x : A) -> B x) (x : A) -> C x (g x)» type theory sure is beautiful 20:48:33 haha, I'm refactoring brainfuck code 20:48:39 Er, sorry, md5 is broken. It's a sha1 file now. 20:48:42 is that dependent composition? 20:48:51 fully dependent composition 20:48:55 That looks like dependent composition to me. 20:49:05 47% composition 20:49:28 Does SSL have problems for this purpose that signed packages wouldn't? 20:49:32 the 47% of this country that thinks they just deserve strong typing constraints 20:49:39 (romney jokes are old hat now aren't they) 20:49:50 maybe there should be sugar for writing a function where the type of each argument is a function of all previous arguments 20:49:57 but maybe it doesn't actually come up that ofter 20:50:00 oerjan: disclaimer: the only reason I know there are 8 bf commands is because of all the derivatives with eight-fold structure 20:50:06 Sgeo: yes i would say so 20:50:13 SSL doesn't protect you against e.g. web server compromise 20:50:22 ideally package signing happens on highly trusted, non-networked computers 20:50:36 You know the thing where converting from ∃ to ∀ is just uncurrying? 20:50:46 Or maybe it's currying. 20:50:56 also SSL is just a shitty system in practice 20:51:33 i can get a fake racket-lang.org cert from DigiNotar or TURKTRUST or whichever CA fucks up next 20:51:52 shachaf: ∃x.P(x) = not ∀x.not P(x)? 20:51:57 you could hardcode your org's cert into your installer, though 20:52:00 olsner: More or less. 20:52:28 shachaf: did you hear the details of the TURKTRUST fuckup? 20:52:42 Not much. 20:52:57 -!- greyooze has joined. 20:52:59 -!- GreyKnight has quit (Quit: .). 20:53:02 apparently the fradulent *.google.com cert was constructed by accident 20:53:07 -!- greyooze has changed nick to GreyKnight. 20:53:41 firefox have binned all turktrust certs at least temporarily until things become clearer, or so I heard 20:53:50 I take it if I provided examples of my Qoppa in Racket code and use #lang planet you would not be pleased 20:53:50 people have these SSL MITM proxies, where you install your org's cert on your employees' machines, and then you can spy on them 20:54:08 charming. 20:54:37 one of TURKTRUST's customers was using one of these 20:55:04 but turktrust accidentally handed out CA certs? 20:55:07 and TURKTRUST accidentally gave them an intermediate CA cert/key 20:55:19 so it generated a "real" *.google.com cert, and Chrome noticed 20:55:29 Chrome ruins everything. 20:56:25 Hmm, I hope the Derive{Functor,Foldable,Traversable} patch gets into GHC 7.6.2. 20:58:36 what's the change? 20:58:57 Sgeo: signing also allows you to have completely untrusted mirrors, distribute ISO images by bittorrent, etc 20:59:01 Not being O(n^2) anymore. 20:59:08 cool 20:59:24 -!- ais523 has joined. 20:59:25 (though, I suppose serving the .torrent file from your trusted mirror over SSL would be good enough) 20:59:32 It generated instances like fmap f [] = []; fmap f (x:xs) = f x : fmap (\e -> f e) xs 20:59:45 sad 20:59:46 So by the time you get to the end of the list you have n eta-expansions. 20:59:56 Offline signing isn't much benefit in practice - better to rotate short-expiration signing certificates which are themselves signed by an offline CA. 21:00:04 This also implies that certificate hardcoding is a bad idea; you'd want to hardcode the root CA (and ideally have one level of intermediary CA that could be revoked too). 21:00:12 Also, while this level of signing might authenticate that the package you downloaded really did come from planet, there's a bigger question about what prevents people from publishing malicious code to planet itself. 21:00:18 yeah, that seems reasonable 21:00:44 [\0x08] all the way 21:01:05 go team a 21:01:21 elliott, Phantom_Hoover Taneb Fiora shachaf 21:01:29 Sgeo................ 21:01:33 I'm not on the list. 21:01:35 Thanks 21:01:40 shachaf, I know 21:01:49 shachaf, read Homestuck then you will be on the list! 21:02:03 Or don't be homestuck, then you will also be on the list. 21:02:07 Don't read. 21:02:11 Or don't be. 21:02:36 Taneb: more like DUMBSTUCK right 21:02:47 The main utility of that website seems to be getting people on lists. 21:03:45 It's secretly run by Santa Claus 21:04:18 -!- epicmonkey has quit (Ping timeout: 264 seconds). 21:04:19 Taneb: Why should I read it? 21:04:32 It's the lens of webcomics: nobody actually understands it 21:04:52 And it's got a big community? 21:04:55 And it's rather good? 21:05:22 I understand lens! 21:05:36 You think you understand lens. 21:05:40 Big communities are bad. 21:05:47 Also it doesn't seem good to me. 21:05:59 shachaf, it gets going later 21:06:05 The first part is rather slow 21:06:08 The start is kinda shit 21:06:09 But it speeds up 21:06:15 Nothing with animations that move back and forth every 0.05 seconds can be good. 21:06:23 Deewiant: And the middle, and the end? 21:06:29 I guess they don't know what the end is like yet. 21:06:34 :t Homestuck 21:06:35 Not in scope: data constructor `Homestuck' 21:06:35 There are more involved animations. WIth music. 21:06:47 And games 21:06:47 > Stuck homes 21:06:48 http://www.mspaintadventures.com/?s=6&p=007138 21:06:49 Not in scope: data constructor `Stuck'Not in scope: `homes' 21:06:49 Perhaps you me... 21:06:53 perhaps i me 21:07:15 Bike, perhaps you lambdabot 21:07:19 Perhaps you and me ought to get together some time? *wink* 21:07:33 uh sorry lambdabot but i'm... i'm dynamically typed 21:07:38 @nixon 21:07:39 The presidency has many problems, but boredom is the least of them. 21:07:58 @nixon 21:07:59 You won't have Nixon to kick around anymore, because, gentlemen, this is my last press conference. 21:09:40 > lens Homestuck 21:09:41 Not in scope: data constructor `Homestuck' 21:09:54 http://www.mspaintadventures.com/?s=6&p=002621 21:11:40 * GreyKnight clicks, watches loading animation for 5 seconds, closes tab 21:11:53 Silly GreyKnight! 21:12:29 I got bored :-( 21:12:49 Open it, then switch to a different tab until the music starts 21:13:14 brainfuck is aptly named 21:13:20 not really 21:13:24 my head is hurting trying to figure out where my logic is broken 21:13:32 It's one of the more easy to understand languages 21:13:36 Perhaps your logic deserves that name, then. 21:13:36 Try using Glass 21:13:40 Rather than the language. 21:13:43 brainfuck is pretty much the least respected language in this channel 21:13:44 fyi 21:13:51 that's nice 21:13:53 only Category:Shameful does worse 21:14:15 What about PHP? 21:14:17 hey, cmcpwn isn't writing a hilarious brainfuck derivative about parsing, cut 'im some slack 21:14:24 kmc: is that an actual language or a category? 21:14:25 "php isn't a language" joke here 21:14:26 kmc: to be fair we respect bf more than the bf derivatives 21:14:44 olsner: so what you're saying is I should make a language called Category:Shameful 21:14:53 olsner: we should create a language whose name begins with "Category:" 21:15:04 -!- AnotherTest has quit (Quit: Leaving.). 21:15:11 kmc: I would never say that ... but yes, you should 21:15:16 kmc: well, any Category:* would do but yes 21:15:27 -!- TheOracle has quit (Remote host closed the connection). 21:17:28 kmc: actually, we don't mind BF itself too much 21:17:29 ais523: You have 2 new messages. '/msg lambdabot @messages' to read them. 21:17:31 we just dislike its derivatives 21:17:44 fair enough 21:17:47 BF is not that esoteric though 21:17:54 * GreyKnight breaks out the emergency category theory textbooks 21:18:02 its semantics are simple, and close to fairly non-esoteric things 21:18:08 I'm not making a derivative, I'm just coding with it 21:18:11 but [] formas a monad! 21:18:27 quintopia: there's very little space for synchronization as-is, the decoy setup wouldn't be done in time if I used any more decoys = any more space for synchronization 21:18:57 also, it tries to use repeats of 2 or 4 to defeat programs that alternate polarity, and programs that defeat programs that defeat programs that alternate polarity 21:19:05 trying to figure out how to get my PRIVMSG parser to correctly give control back to the main loop 21:19:13 Bike: [] isn't very monoid-like, it takes the wrong number of arguments 21:20:19 ais523: what about its integrals? *ducks* 21:20:33 GreyKnight: ? 21:20:52 glass is like 100 times easier to program than bf 21:20:55 -!- DH____ has quit (Read error: Connection reset by peer). 21:21:16 I looked at glass 21:21:19 seems far easier than brainfuck 21:21:19 -!- DHeadshot has joined. 21:21:25 reminds me of IL or java bytecode 21:21:29 it is very high level 21:21:40 you can pretty easily just do normal programming with silly syntax 21:21:49 try something low level, like Checkout. 21:21:56 with bf that's very hard without macros + at least linear blow-up 21:21:57 I think kmc was just blindly looking around for something to use to feel superior to me 21:22:14 i think Taneb said that 21:22:19 that glass should be tried 21:22:23 we just dislike its derivatives 21:22:32 there are a few exceptions 21:22:37 but most BF derivatives are very uncreative 21:22:45 no see it's a calculus joke 21:22:45 i do agree with kmc that the semantics of bf are particularly easy, and certainly easier than that of glass 21:22:50 "integrals" "derivatives" 21:22:51 humor! 21:23:08 oklopol: from arm's reach, sure, but it'd be easier to code in glass than in bf 21:23:35 how complicated a language is has little to do with how nice it is to use 21:23:44 yep 21:23:46 SirCmpwn: no I was explaining why the whole channel was snarking about brickbrains and such 21:23:48 well except if its too simple or too complicated it probably sucks 21:23:50 writing in BF is much like writing in asm 21:23:55 especially if you leave every other cell at 0 21:24:05 in order to give you a free supply of temporaries 21:24:07 but are there branch prediction issues! 21:24:09 ais523: if i changed space_hotel so that it rotates between leaving 0,1, and 2 in its trail instead of always leaving 2, would it then beat anticipation2? 21:24:24 ais523: so far, my IRC bot only needs two cells to run 21:24:26 Bike: THANK YOU 21:24:27 no, that's a lie 21:24:30 Bike++ 21:24:30 quintopia: not necessarily; anticipation2 wouldn't win the same way it currently wins against it 21:24:36 but it might beat it via the fallback 21:24:37 it needs that to run the main loop, the initialization uses more 21:24:42 GreyKnight: branch prediction isn't worth incrementing 21:24:55 -_- 21:25:03 ais523: space_hotel already uses a timer clear, after which it changes polarity and cycle length. 21:25:04 nobody understands me today 21:25:04 SirCmpwn: anyway I'm sorry that I caused you offense 21:25:15 (i know you meant me getting the joke) 21:25:15 you aren't really, but I don't care 21:25:16 turquoise bicycle shoes actualise radishes greenly 21:25:23 (you see i was going for the double joke combo) 21:25:24 I was never offended 21:25:26 quintopia: yeah, but timer clears seem to have a random chance of failing against anticipation2 21:25:35 basically because sometimes after changing polarity and cycle length 21:25:38 ok well thanks for telling me how I feel and welcome to my /ignore 21:25:41 you still get locked anyway 21:25:48 why is that? 21:25:50 hah 21:25:53 and you'd get into a constant-tweaking fight to see if that happened or not 21:26:10 god fucking dammit 21:26:14 get your ass back in the main loop 21:26:14 Girls you're all pretty! Play nice 21:26:22 quintopia: well, anticipation2's lock works by trying to shove its own flag past 0, then pull it back to where it would have been otherwise 21:26:26 and this works at both polarities 21:26:47 ais523: but does it work on 3-cycle clears too? 21:26:59 if the new clear loop happens to go past 0 at approximately the same time, it works 21:27:02 and it doesn't care about cycle length at all 21:27:05 so long as it's an integer 21:27:30 so the only guaranteed way to beat the fallback is to use a non-integer cycle-length 21:27:32 You can have non-integral cycle lengths...? 21:27:33 (btw, this is why anticipation2 uses a non-integer cycle length clear loop when attacking other defence programs; it's to beat shudderlock) 21:27:42 GreyKnight: yeah, my favourite such loop atm is [++.+] 21:27:43 i can't understand this lock 21:28:02 quintopia: if I edit out the full tape clear 21:28:11 it's just ((+)*64(-)*64(.)*128)*-1 21:28:13 How does that work, I don't really speak brainf**k much 21:28:26 ais523: that looks like shudderlock's lock 21:28:28 it's actually bfjust 21:28:30 joust 21:28:33 quintopia: that's because it is shudderlock's lock 21:28:54 ais523: space_hotel beats shudderlock the hard way, so there's something different... 21:28:56 kmc: Are you going to leave #esoteric next? :-( 21:29:01 no 21:29:02 GreyKnight: changes the tape 3 positions in 5 cycles 21:29:05 i like #esoteric 21:29:16 and the difference is that anticipation2 synchronizes differently 21:29:32 i offended one person, possibly by me being a dick, possibly by misunderstanding, probably a mixture of these 21:29:37 i tried to apologize and it failed 21:29:37 it's an approximate lock ("offset lock"?, it works even if you're off to some extent in the synchronization 21:30:10 now, the effect of a timer clear expiring is to throw off the synchronization 21:30:25 but if it's by an amount sufficiently close to a multiple of 256 cycles, it still works 21:30:44 and how accurate it has to be depends on how well synchronized it was in the first place 21:31:04 ah-ha 21:31:29 now, shudderlock doesn't sychronize as accurately as anticipation2 21:31:41 I was reading it as "loop length" for some reason 21:31:41 so a timer clear can throw it off, but not anticipation2 21:32:08 so if it was poorly synchronized at first, it would become even more poorly synchronized after the timer clear expiration, and possibly break the lock? 21:32:17 yes 21:32:56 or more precisely, timer clears play hell with the synchronization and it's pretty random where you end up 21:33:01 so the only surefire way to defeat anticipation2 is to put a [++.+] after your main clear block? 21:33:31 I'm not sure that's surefire :) 21:33:45 but I'd imagine it'd work well 21:33:50 but you haven't designed it to be effective against it at least 21:34:36 indeed 21:34:38 i should think [+.+.] would work faster 21:34:44 Bike: you can't mock that line because oerjan wrote it <-- what 21:34:53 that's a 2.5-cycle clear 21:35:06 quintopia: it has a really obvious deficiency, though 21:35:14 * oerjan doesn't think he wrote anything in Useless 21:35:25 what does? 21:35:34 which is that it can't clear odd-number-size decoys 21:35:38 hmm, protagonist says "give me another chance, I won't let you down this time" ... there would be no rest of this movie if he didn't screw that up 21:35:44 it can end up locking itself as a result 21:36:01 ...you make a good point :P 21:36:28 sorry oerjan i'll make it up to you i swear <-- MAKE UP WHAT AAAAAAAAAAAAA 21:36:38 helloerjan 21:36:48 shachaf: THE LOGS, SO CONFUSING 21:36:55 `welcome oerjan 21:36:57 oerjan: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 21:37:05 oerjan: Don't read them. 21:37:06 thank you GreyKnight 21:37:14 yw 21:37:14 shachaf: but they contain my name D: 21:37:19 GreyKnight: you have committed the ordinal sin 21:37:21 *nick 21:37:21 oerjan is such a helliott. Or is that a hellion? 21:37:28 `WeLcOmE shachaf 21:37:30 ShAcHaF: 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. (FoR ThE OtHeR KiNd oF EsOtErIcA, tRy #EsOtErIc oN IrC.DaL.NeT.) 21:37:46 1. (1) hellion, heller, devil -- (a rowdy or mischievous person (usually a young man); "he chased the young hellions out of his yard") yes, yes. 21:37:58 You should make a special main page just for that link 21:38:26 Lumpio-: it is planned, along with the main page for `WELCOME 21:38:34 (ask oerjan for details) 21:38:43 `emoclew olsner 21:38:44 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: emoclew: not found 21:38:50 * ais523 is disappointed that that doesn't exist 21:39:00 Emo Clew 21:40:01 ais523: the bfjoust strategies page, under major programs, says major is "for the most part, defined as having been #1 on the #esoteric hill" 21:40:05 `cat bin/WELCOME 21:40:06 ​#!/bin/sh \ welcome "$@" | perl -ne 'print uc($_)' 21:40:22 ais523: that "for the most part" indicates to me that #2 is sometimes good enough for a cool enough program 21:40:36 ais523: but if you think that's cheating, i'll temporarily delete space_hotel 21:40:55 I'd feel happier about a temp delete, I guess 21:40:57 it's easy enough to put it back 21:41:12 `run (echo '#!/bin/sh'; echo 'welcome "$@" | rev') > bin/emoclew 21:41:15 No output. 21:41:24 `emoclaw oerjan 21:41:26 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: emoclaw: not found 21:41:28 because it's basically saying in the actual hill "quintopia thought this was good enough to be #1 for a bit" 21:41:29 `run chmod +x bin/emoclew 21:41:32 No output. 21:41:41 or ofc, I could always just /nick quintopia_space and delete it myself 21:41:43 `emoclew olsner 21:41:44 ​).ten.lad.cri no ciretose# yrt ,aciretose fo dnik rehto eht roF( .egaP_niaM/ikiw/gro.sgnalose//:ptth :ikiw ruo tuo kcehc ,noitamrofni erom roF !tnemyolped dna ngised egaugnal gnimmargorp ciretose rof buh lanoitanretni eht ot emocleW :renslo 21:41:47 but that would be severe cheating 21:42:06 `run (echo '#!/bin/sh'; echo 'welcome "$@" | rev | tr eE aA') > bin/emoclaw 21:42:10 No output. 21:42:11 `emoclaw oerjan 21:42:12 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/bin/emoclaw: Permission denied \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /hackenv/bin/emoclaw: cannot execute: Permission denied 21:42:16 ais523: bahahaha. i give you permission because it is such a hilarious idea. 21:42:23 `run chmod +x bin/emoclaw 21:42:26 No output. 21:42:26 `emoclaw olsner 21:42:30 ​).tan.lad.cri no ciratosa# yrt ,aciratosa fo dnik rahto aht roF( .agaP_niaM/ikiw/gro.sgnalosa//:ptth :ikiw ruo tuo kcahc ,noitamrofni arom roF !tnamyolpad dna ngisad agaugnal gnimmargorp ciratosa rof buh lanoitanratni aht ot amoclaW :ranslo 21:42:44 I recommend a tr '()' ')(' too 21:43:04 quintopia: do you have a copy of space_hotel handy to restore it? 21:43:09 `run cat bin/WELCOME # oerjan: OPTOMIZED 21:43:10 ​#!/bin/sh \ welcome "$@" | perl -pe '$_ = uc' 21:43:10 or, hmm 21:43:16 i'a i'a cthulhu tan lad cri no ciratosa! 21:43:23 it's still on the hill...is that not convenient enough?9$ 21:43:34 gnimmargorp has a scandinavian ring to it 21:43:34 yeah but it won't be if I delet eit 21:43:38 so I won't be able to link to it 21:43:40 need the permlink 21:43:48 and lanoitanratni looks like finnish 21:43:52 i'll just bring up egojsout before you do it 21:43:57 yeah, good idea 21:44:16 done 21:44:25 (i think i have a local copy too) 21:44:39 -!- ais523 has changed nick to quintopia_space. 21:44:42 !bfjoust hotel < 21:44:46 -!- quintopia_space has changed nick to ais523. 21:44:52 ​Score for quintopia_space_hotel: 0.0 21:45:26 * ais523 waits for quintopia to put it back 21:45:30 -!- Bike has quit (Quit: bound). 21:46:02 !bfjoust poulet >>[[-]>] 21:46:05 ​Score for boily_poulet: 6.5 21:46:15 hmm, since it reverses the nick, emocl[ae]w doesn't highlight the recipient 21:46:18 boily: that's a no-op 21:46:34 ais523: I still got a non-null score! :D 21:46:36 this is the command i issued the last time i submitted it...let's see if it still works... 21:46:39 !bfjoust space_hotel http://sprunge.us/hjjg 21:46:44 ​Score for quintopia_space_hotel: 61.9 21:46:57 I guess so 21:47:03 -!- asiekierka has quit (Excess Flood). 21:47:10 -!- asiekierka has joined. 21:48:15 the size of sprunge's namespace is like 7.5m right? 21:48:21 (and of course it ought be called amoclaw) 21:48:22 takes em awhile to overwrite stuff 21:49:30 olsner: you should make it switch ( and ) also, since it seems like those should be reversed "as a pair" 21:49:50 `welcome olsner 21:49:52 olsner: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 21:49:52 err 21:49:55 `welcoma olsner 21:49:56 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: welcoma: not found 21:49:59 that's what I meant 21:50:39 Þór, Grimmargorpurinn hefur sloppið! Ragnarök er nálægt! 21:51:11 `run (echo '#!/bin/sh'; echo 'welcome "$@" | rev | tr eE\)\( aA\(\)') > bin/emoclaw 21:51:14 No output. 21:51:17 `? grimmargorpurinn 21:51:19 grimmargorpurinn? ¯\(°_o)/¯ 21:51:25 `emoclaw Fiora 21:51:27 ​(.tan.lad.cri no ciratosa# yrt ,aciratosa fo dnik rahto aht roF) .agaP_niaM/ikiw/gro.sgnalosa//:ptth :ikiw ruo tuo kcahc ,noitamrofni arom roF !tnamyolpad dna ngisad agaugnal gnimmargorp ciratosa rof buh lanoitanratni aht ot amoclaW :aroiF 21:51:33 ais523: i wish we had reversible bfjoust plus a command that lets one warrior switch both warrior's commands to their inverse. It WoUlD bE cHaOs!!!!!! 21:51:50 quintopia: sounds like a good way to get draws 21:52:24 `run bin/emoclaw olsner | rev 21:52:26 olsnar: Walcoma to tha intarnational hub for asotaric programming languaga dasign and daploymant! For mora information, chack out our wiki: http://asolangs.org/wiki/Main_Paga. )For tha othar kind of asotarica, try #asotaric on irc.dal.nat.( 21:52:27 `echo "Þór, Grimmargorpurinn hefur sloppið! Ragnarök er nálægt!" >wisdom/grimmargorp 21:52:28 ​"Þór, Grimmargorpurinn hefur sloppið! Ragnarök er nálægt!" >wisdom/grimmargorp 21:52:29 ais523: you could keep it nontrivial by limiting them to two switches per match 21:52:31 `run echo "Þór, Grimmargorpurinn hefur sloppið! Ragnarök er nálægt!" >wisdom/grimmargorp 21:52:35 No output. 21:52:41 `run (echo '#!/bin/sh'; echo 'welcome "$@" | rev | tr \)\( \(\)') > bin/emoclew 21:52:44 No output. 21:53:05 !bf_txtgen JOIN 21:53:07 ​63 ++++++++[>+++++++++>>++++>+<<<<-]>++.+++++.------.+++++.>>.>++. [363] 21:53:34 SirCmpwn: are you writing a bf irc client? 21:53:35 `? grimmargorp 21:53:35 SirCmpwn: that result looks a little inefficient 21:53:36 ​Þór, Grimmargorpurinn hefur sloppið! Ragnarök er nálægt! 21:53:42 quintopia: yes 21:53:43 quintopia: I think he's writing a bot 21:53:46 ais523: temporary 21:53:47 which is a client, in a sense 21:54:06 I'm going to forget all about grimmargorpurinn all too soon 21:54:30 olsner: you'll remember it the next time you look at the learndb 21:54:49 I don't know how to look at the learndb :( 21:54:59 i don't understand what a grimmargorpurinn is 21:55:15 quintopia: Grimmargorpurinn hefur sloppið 21:55:19 hth 21:55:42 want to try in engrish? 21:56:31 glimmalgolpulinn? 21:56:40 Glimmalglpulinn heful sroppið 21:57:12 -!- Taneb has quit (Quit: Leaving). 21:57:16 gulimmalugolupulin 21:57:52 `ls wisdom 21:57:53 ​? \ ☃ \ 🐐 \ ais523 \ atriq \ augur \ banach-tarski \ boily \ bonvenon \ c \ cakeprophet \ category \ coffee \ comonad \ coppro \ egobot \ elliott \ endofunctor \ england \ esoteric \ europe \ everyone \ finland \ finnish \ finns \ fizzie \ flower \ freefull \ friendship \ functor \ fungot \ gaspacho \ gazpacho \ glogbot \ gregor \ grimmargo 21:57:57 olsner: using variations on that 21:58:08 huh, why does unicode snowman alphabetise before ais523? 21:58:13 `? friendship 21:58:14 friendship wisdom 21:58:15 I'd intuitively expect it to come later 21:58:21 `? comonad 21:58:22 Comonads are just monads in the dual category. 21:58:23 `? endofunctor 21:58:25 Endofunctors are just endomorphisms in the category of categories. 21:58:42 `? category 21:58:43 Categories are just categories. 21:58:44 may as well go all the way 21:58:47 haha :) 21:58:48 comparison of signed chars representing utf8? 21:59:31 ais523: With LC_ALL=C it comes later. 21:59:36 `? endomorphism 21:59:37 endomorphism? ¯\(°_o)/¯ 21:59:46 You and me both HackEgo! 21:59:50 shachaf: hmm 21:59:58 `run echo $LANG 21:59:59 en_NZ.UTF-8 22:00:00 Oh, maybe it's signedness or something. 22:00:05 quintopia: basically olsner thought grimmargorp looked scandinavian, which made me realize it looked like an old norse mythic monster name, so i made up a sentence to fit hth 22:00:05 en_NZ? 22:00:09 wait, why is HackEgo set to New Zealand English? 22:00:28 maybe that's what they speak in hexham 22:00:33 it'd take us a while to notice that, really 22:00:34 (google translate also helped) 22:00:51 NZ english and, say, US or UK english, are very similar in what they normally print in error messages 22:01:19 categories aren't turtles? 22:01:29 `? boily 22:01:31 boily may be French or something. We are not sure about the rest. 22:01:39 ah! nothing about my canadianness. 22:01:52 oh well. back on January 14, or something. 22:01:57 -!- boily has quit (Quit: Poulet!). 22:02:29 shachaf: http://www.unicode.org/reports/tr10/#Searching 22:02:36 apparently boily thinks Canada exists 22:02:42 "French or something" indeed 22:02:49 we were talking before about how Chrome Ctrl-F 'ß' matches 'ss' and such 22:03:15 -!- WeThePeople has joined. 22:04:00 -!- bfbot has joined. 22:04:05 fuck yeah 22:04:08 -!- bfbot has quit (Remote host closed the connection). 22:04:20 -!- WeThePeople has quit (Changing host). 22:04:20 -!- WeThePeople has joined. 22:04:40 or maybe we weren't and i hallucinated that 22:04:48 We were. 22:05:41 where did Bike go 22:05:45 Puzzle: Write foo :: Traversable t => t a -> t (a, a -> t a) 22:05:54 anyway I guess ls sorts symbols before letters and Mr. Snowman is an OtherSymbol? 22:07:32 http://i.imgur.com/zSbfy.png woot 22:07:47 `run echo "An endomorphism is a morphism with the same source and target." >wisdom/endomorphism 22:07:50 No output. 22:08:21 oerjan: That's uncharacteristically helpful for a wisdom/ entry. 22:08:25 What's the catch? 22:08:28 `? elliott 22:08:30 elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things? 22:08:33 endomorphine 22:08:48 zygohistomorphine 22:08:57 `? everyone 22:08:58 Everyone in here is mad. 22:09:02 `? esoteric 22:09:03 This channel is about programming -- for the other kind of esoterica, try #esoteric on irc.dal.net. 22:09:23 `run echo "Endomorphisms are just morphisms with the same source and target." >wisdom/endomorphism 22:09:26 No output. 22:09:47 shachaf: SORRY FORGOT THE FORMAT 22:09:58 This channel is about the other kind of esoterica -- for programming, try #esoteric on irc.dal.net. 22:11:02 plans are to make it respond to '.ping' in-channel with 'pong' and maybe a few other simple commands 22:11:13 -!- greyooze has joined. 22:11:15 .help 22:11:32 oh, . might be an unused prefix 22:11:38 .ping 22:11:54 it still doesn't respond to irc pings, though 22:12:00 but there is a little stub handler 22:12:01 -!- GreyKnight has quit (Ping timeout: 246 seconds). 22:12:07 -!- greyooze has changed nick to GreyKnight. 22:12:28 not the most optimized of code, but here it is: https://github.com/SirCmpwn/bf-irc-bot/blob/master/irc-bot.bf 22:12:54 `run echo "A morphism is just an abstraction derived from structure-preserving mappings between two mathematical structures." > wisdom/morphism 22:12:57 No output. 22:13:11 handling irc pings is pretty easy, and I think it's usually required to stay connected to the server 22:13:18 yeah, it is 22:13:25 you get about 2 minutes of uptime if you ignore them :P 22:13:38 I just wanted to get it into channels before adding that, so that's next on my plate 22:14:48 I also stubbed out a handler for channel messages, so adding on to that shouldn't be too tough 22:14:49 GreyKnight: i'm sorry, your explanation is insufficiently abstract 22:15:54 `run echo "Endomorphisms are just objects in the category of endomorphisms." > wisdom/endomorphism 22:15:57 No output. 22:16:07 Phantom_Hoover: HEY NO RECRUSION 22:16:42 besides i'm not sure that's even true 22:17:05 well, the endomorphisms have to be either objects or morphisms 22:17:06 -!- Bike has joined. 22:17:23 `run echo "A morphism is a map between two objects in an abstract category." > wisdom/morphism # better?? 22:17:26 No output. 22:17:34 GreyKnight: /that/ definition is awful 22:17:42 sure, it goes between two objects 22:17:45 which might be the same 22:17:50 but it doesn't have to have any map-like properties at all 22:18:02 `run echo "Endomorphisms are just morphisms which compose with themselves." >wisdom/endomorphism 22:18:05 No output. 22:18:08 well you should submit an update to http://mathworld.wolfram.com/Morphism.html in that case :-) 22:18:10 oh good you're already talking about this shit 22:18:17 i think that is true and unhelpful :) 22:18:19 because i have a question about this agda tutorial dealie 22:18:41 as I just "borrowed" their first sentence 22:19:11 particularly, the definition of Nat as 0 : Nat and suc : Nat -> Nat must have all kinds of implications involved 22:19:16 -!- WeThePeople has quit (Quit: Leaving). 22:19:26 oerjan: but what is grimmargorp really? 22:19:29 like what 22:19:33 like that there is no x : Nat such that suc x is 0, or that there aren't Nats that aren't a suc of something 22:19:41 quintopia: grimmargorp is an ineffable evil 22:19:52 quintopia: you have to seek the true grimmargorp in your heart. and then kill it before it kills you. 22:20:02 so, are these assumptions all in the data constructor, or, what 22:20:07 uh 22:20:14 oerjan: grimmargorp = cholesterol 22:20:26 okay got it 22:20:42 isn't the point that the only members of nat are those which can be constructed from 0 and suc 22:20:46 er, minor obvious error in my second clause there, oh well 22:21:02 GreyKnight: while it is true that both kill from within, cholesterol is merely a chemical 22:21:21 Phantom_Hoover: well nobody told me that that was the point. where do i learn what the point is 22:21:58 OK this is foundational smartarsery right, not genuine confusion. 22:22:17 no 22:22:22 i am genuinely confused here 22:22:23 Bike: AIUI it is stating that: 0 is a Nat. suc 0 is a Nat. suc suc 0 is a Nat. and so on 22:22:40 for example, cyclic data types ("codata"?) obviously loosen the "nothing is a successor of itself" bit 22:22:42 (it doesn't know to call them 1, 2, etc) 22:23:06 `? monoid 22:23:07 Monoids are just categories with a single object. 22:23:12 GreyKnight: that's not enough either, it's also saying sac x != x 22:23:13 `? object 22:23:14 object? ¯\(°_o)/¯ 22:23:22 otherwise Nat could just be 0 22:23:38 Yes, the distinction is that data only allows finite constructions. 22:23:42 `run echo "An object is just something in a category." > wisdom/object 22:23:45 No output. 22:24:18 i figure asking basic anal questions is a good idea when learning basic shit 22:24:24 Bike: I think that it doesn't assume things are equal unless you give it some way to know that 22:24:50 Bike: c.c 22:25:05 i don't know what that means kmc. i don't speak this strange dot language 22:25:19 dotsies 22:25:23 kmc: ⟃.⟃ 22:25:29 GreyKnight: i am not sure you understand the spirit of wisdom/ 22:26:03 OPEN SUBSET? That's good! 22:26:13 oerjan: I was trying to be vaguely informative while being unnecessarily obtuse about it? 22:26:19 ⟃.⟄ 22:26:21 ⟄.⟃ 22:26:32 this new character is strange and frightening 22:26:43 anyway i guess i'll just look up documentation somewhere 22:26:58 GreyKnight: note that this category theory stuff all springs originally from this one, which is a haskell community meme: 22:27:01 `? monad 22:27:02 Monads are just monoids in the category of endofunctors. 22:27:08 ⍢ 22:27:22 did that originate from the history of programming languages post, or did that steal it from elsewhere 22:27:52 I think th "just" originated from that post. 22:28:09 @quote copumpkin lax 22:28:09 copumpkin says: a monad is just a lax functor from a terminal bicategory, duh. fuck that monoid in category of endofunctors shit 22:28:12 * oerjan swats GreyKnight for giving him a square box 22:28:37 * GreyKnight puts oerjan in the filing cabinet ⌹ 22:28:39 you see fallback font? ...why do i have a font that has apl dieresis glyphs installed... 22:28:52 * shachaf swats oerjan for not having APL fonts -----### 22:29:32 did shachaf just swat oerjan 22:29:34 'APL FUNCTIONAL SYMBOL DEL DIAERESIS' 22:29:57 i don't remember what it does? 22:30:01 eek 22:30:03 -!- asiekierka has quit (Excess Flood). 22:30:04 oerjan: it looks like a happy face. I was excited about the monad quote. 22:30:09 -!- asiekierka has joined. 22:30:49 i can see the del diaeresis just fine 22:30:55 "If m and d are (possibly boxed) character nouns, then m∇d yields a verb of unbounded rank whose monadic and dyadic cases are determined by m and d respectively." oh, ok then 22:31:02 `run echo "Þór, Grimmargorpurinn hefur sloppið! Ragnarök eru nálæg!" >wisdom/grimmargorp 22:31:05 No output. 22:31:10 * oerjan grabs his swatter back -----### 22:31:11 #-blah corrected our grammar 22:31:22 Bike: del diaeresis wasn't particularly standard I think 22:31:40 GreyKnight: i noticed, but del is, this dictionary's straight from iverson 22:31:51 there's a #-blah that isn't associated with a channel? 22:31:55 * ais523 wonders if there's a #-offtopic 22:32:04 oh dang, there's a monad 22:32:06 ais523: No, it's #esoteric-blah 22:32:26 oh. wait. as opposed to dyad. yes. durr. 22:36:06 Bike: I can remember del-stile (grade down) but del alone escapes me 22:36:46 #-blah corrected our grammar <-- oh ragnarök is plural? 22:37:04 dunno, is it? 22:37:11 i was more wondering about, hm i should check it when i have wiktionary open... 22:37:30 do you have it? 22:40:15 who's in #esoteric-blah regularly anyway? 22:40:23 I thought we only did things there which were particularly spammy 22:40:28 and so who moves there depends on who's interested in them 22:40:49 Hmm, I thought #esoteric was the channel for those. 22:40:57 Maybe that explains why ais523 was unhappy earlier. 22:41:52 shachaf: nah, someone probably mentioned f*hit by falling anvil* 22:42:48 language idea: cofeather 22:43:06 brb 22:44:42 hm what is a cocontinuation? Maybe just an ntinuation 22:45:33 come-from 22:51:13 anyone know why more and more sites recently started showing stuff like "this site uses cookies, and won't work without them" with an accept button. Even though I have cookies enabled in my browser. 22:51:27 I noticed this on many high profile sites the last few months 22:51:59 Vorpal: laws 22:52:03 olsner, ah 22:52:05 probably the media had another cookies = basically satan story recently 22:52:30 probably 22:52:30 Vorpal: EU legislation 22:52:39 in the EU, you're not allowed to set cookies without asking permission, nowadays 22:52:57 the funny thing is, if you don't get permission, you have no option but to repeatedly ask for it 22:53:04 because you have no way to record the fact you didn't get it :) 22:53:16 Just go by IP address. 22:53:34 ais523, heh 22:53:57 ais523, what about other similar methods? DOM local storage and what not 22:54:10 the law's specifically about cookies 22:54:17 also, browsers glare at you for using local storage, I think 22:54:22 oh? 22:54:29 as in, they ask the user permission by default 22:54:32 what is it actually used for? 22:54:41 as opposed to cookies, where only you and me ask our browsers to ask us for permission to store those 22:54:46 and like cookies, but for more data 22:55:52 ais523, eh, I stopped doing the ask for permission since I switched to chromium, I now have it set to block third party cookies and store first party cookies until the end of the session 22:56:06 meh, I find the ask for permission interesting 22:56:09 I used to do that thing where your browser asks for permission! 22:56:10 also chromium annoys me 22:56:16 Now I just do everything in Incognito Mode instead. 22:56:18 I basically just use it specifically for accessing Google 22:56:21 ais523, firefox eats way too much memory 22:56:24 and their subsidiaries 22:56:33 also why would you use chromium for google? 22:56:48 because I have google blocked in Firefox 22:56:56 okay? why? 22:57:20 because so many sites reference them indirectly 22:57:21 Oh you guys use web browsers? I just fire up telnet.... 22:57:24 for no good reason 22:57:27 I don't think I've seen a browser ever ask me anything about localstorage. 22:57:42 GreyKnight: I find browsers more convenient, especially for images 22:57:50 ais523, oh yeah, I have google ads and google analytics blocked 22:57:55 fizzie: that's probably because IE probably doesn't support it yet 22:58:10 I don't think I've seen a browser ever ask me anything about localstorage. <-- happened once iirc. Or maybe it was flash? 22:58:27 flash also has local storage 22:58:40 Oh images! I remember those. 22:58:49 yeah 22:58:54 ais523, I have that set to ask 22:58:57 ais523: The paywall of Finland's probably-biggest newspaper (Helsingin Sanomat) is based on JS localstorage, and I think it works reasonably widely & does not prompt all that much. 22:59:16 anyway it seems chrome (on windows atm) can't be set to ask for cookies, just to block, session only or allow 22:59:22 and you can add overrides 22:59:24 http://en.wikipedia.org/wiki/Web_storage also says IE8+ does it. 22:59:26 per regex 22:59:33 fizzie: err, a client-side paywall? 22:59:46 there strikes me as something vaguely insecure about that 23:00:40 ais523: It's a "five free articles per week" kind of paywall. I suppose they're not terribly serious about it. 23:01:22 There were approximately umpteen gazillion workarounds for it about 15 minutes after they launched it. 23:01:44 Still, I suppose it does keep a number of casual browsers away. 23:02:51 One of the least intrusive workarounds is a GreaseMonkey script that sets the global "localStorage" variable to undefined so that the counter-track-keeping doesn't work. 23:04:30 http://i.imgur.com/zSbfy.png I just noticed bfbot is running with Administrator privileges 23:05:19 I need to figure out how to get greasemonkey stuff working in chrome at some point, it supposedly have native support for it hm... 23:05:40 GreyKnight, that sounds stupid 23:07:27 IIRC, it has "native support" in that there's some convoluted way to put "user script" JS snippets in; there's no built-in handy script manager thingie. (Though there are extensions.) 23:07:39 ah 23:08:03 Though possibly this has changed. 23:08:21 (It was a while ago I looked into it, and didn't bother doing anything.) 23:09:52 (And maybe it wasn't any more convoluted than "manually put them in a particular directory".) 23:11:31 -!- carado has quit (Ping timeout: 246 seconds). 23:12:38 -!- zzo38 has joined. 23:12:47 `welcome zzo38 23:12:48 zzo38: 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. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 23:18:41 `? zzo38 23:18:42 zzo38 ? ¯\(°_o)/¯ 23:18:45 `? zzo38 23:18:46 zzo38 is not actually the next version of fungot, much as it may seem. 23:18:54 are we sure 23:19:39 fungot: Are you the previous version of zzo38? 23:19:40 fizzie: i run some interactive tex programs 23:19:52 the... what? 23:19:56 That doesn't really clear things up. 23:19:57 ^style 23:19:57 Available: agora alice c64 ct darwin discworld europarl ff7 fisher fungot homestuck ic irc* iwcs jargon lovecraft nethack pa qwantz sms speeches ss wp youtube 23:20:06 fizzie, it is worrying even 23:21:33 zzo38: do you also run some interactive tex programs? 23:21:36 -!- monqy has joined. 23:22:03 GreyKnight: It is the kind of thing you'd expect. 23:22:13 monqy: do you run some interactive tex programs 23:22:25 no 23:22:41 have you considered trying 23:23:02 any openvpn expert here? 23:23:14 hmm, I might try writing some interactive tex programs, sounds like fun ... I just wonder if it has file/stdin input 23:23:22 When you really think about it, doesn't everyone run some interactive tex programs, in the end, really? 23:23:25 `? monqy 23:23:26 The friendship monqy is an ancient Chinese mystery; ask itidus21 for details. 23:23:27 monqy: word on the street is you are the guy to talk to if someone wants to get a glyph into Unicode 23:23:37 I'm trying to figure out if it is possible to set it up so that some programs are routed through the VPN and all other are not 23:23:48 I guess it would be possible using iptables, but I have no clue HOW 23:23:50 GreyKnight: which street is this and why are they wrong 23:23:58 fizzie: the true interactive tex programs are the ones in our hearts 23:24:30 all programs are also tex programs, given the correct translation 23:24:33 monqy: it's Shachaf Street, and because shachaf 23:24:51 ? 23:24:56 What did I do this time? 23:26:34 do [Unicode] even have official admission criteria? or is it straightforwardly "someone who has money asked" "someone who monqy has asked" 23:26:39 -!- WeThePeople has joined. 23:26:49 do unicode 23:27:55 the first question of the entrance exam was "did monqy ask you?" ... I left 23:28:11 that's why I am not a unicode code point 23:28:16 Vorpal: Standard iptables has at least the 'owner' match module; as for how to make that modify the routing, I think there'd be several approaches, including at least doing -j CONNMARK to mark the packets, and then policy routing ("ip rule ... fwmark ...") to have a different routing table for them. I've done some fiddling like that. 23:28:52 `pastquote i run some interactive tex programs 23:28:53 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: pastquote: not found 23:28:54 -!- WeThePeople has quit (Read error: Connection reset by peer). 23:28:57 fizzie, I know the owner match, that is a non-issue 23:29:04 fizzie, the issue is with the routing 23:29:11 hm 23:29:19 I will look into fwmark stuff 23:29:51 fizzie, since it is the ip command I assume the documentation is poor? 23:30:09 `pastlog i run some interactive tex programs 23:30:28 2008-06-07.txt:17:34:39: tusho, because I run some interactive TeX programs 23:30:34 I did? 23:30:40 *MWAHAHAHA* 23:30:44 oh yeah I remember, I ran one once. 23:30:48 ... now that was unexpected 23:30:56 why? 23:31:04 too esoteric for you 23:31:10 hah :P 23:31:16 fizzie: ok so fungot is actually an older version of Vorpal, who is an older version of zzo38. 23:31:17 sorry, but I expect you to do only boring things 23:31:17 oerjan: have you ever tried peanut butter? no way! look at group theory!" does that mean 23:31:21 TeX programs can be interactive; actually my recording of the Dungeons&Dragons game is because it asks at first what level of detail you want in the printout. 23:31:52 fizzie, when you said you done some fiddeling like that, what were the results of that? 23:32:10 wait Vorpal is AnMaster?? 23:32:16 -!- WeThePeople has joined. 23:32:28 GreyKnight, and tusho is ehird, aka elliott 23:32:29 zzo38: it's just that before searching the logs, you were the only person i remembered actually using them 23:32:37 WHAT 23:32:42 GreyKnight, I don't think you were around back then 23:32:45 Vorpal: That's a safe assumption. But it's not conceptually very complicated; there's a number of separate routing tables (the default is just table 0 or 65535 or something), and the rules specified by "ip rule" are used to select which table will be used for a particular packet; "fwmark" is a kind of match that you can use in the rules, one that looks at the netfilter "mark" value. 23:33:01 which made it eerie that fungot would respond it to a question whether it was you 23:33:02 oerjan: others have reported the same problem 23:33:07 Vorpal: And the fiddling worked, though I don't think I have it in use any more.. 23:33:10 I was here long ago and went away due to reasons but then I came back 23:33:36 fizzie: There you have it. zzo38 sometimes runs some interactive tex programs. 23:33:49 fizzie, ah 23:34:05 Maybe AnMaster too. 23:34:10 fizzie, what is the difference between mark and conmark? 23:35:04 `addquote fungot: Are you the previous version of zzo38? fizzie: i run some interactive tex programs 23:35:05 olsner: i always thought it used two for 2? optional arguments? do you have any references? 23:35:08 895) fungot: Are you the previous version of zzo38? fizzie: i run some interactive tex programs 23:35:39 Vorpal: CONNMARK applies to a connection-tracked connection. (I don't know if you actually need a iptables rule to do a connmark match and MARK target to propagate the value into the individual packets.) 23:35:52 fizzie, uh, I will need udp 23:36:03 Vorpal: If you match by owner you could just MARK directly. 23:36:05 so connmark wouldn't make sense 23:36:18 ah 23:36:44 Vorpal: (UDP things are also handled by conntrack, except a bit more fuzzily, I believe.) 23:36:57 fizzie, well thanks, you have been of great help. I was trying to bend my head around the mangle & nat tables... This seems way easier. 23:37:57 GreyKnight: some people here don't have the politeness to stay with one nick, *HMPH* 23:38:11 fizzie, any idea how to show the table in ip route? 23:38:15 kids these days 23:38:22 $ ip route 23:38:23 192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.64 metric 1 23:38:23 default via 192.168.1.254 dev eth0 proto static 23:38:23 $ ip route table 1 23:38:23 Command "table" is unknown, try "ip route help". 23:38:30 from the docs that look correct to me? 23:39:03 or is ip route listing all tables? 23:39:06 ah, yes that must be it 23:41:24 fizzie, err, how do I make this work since the init script of the vpn seems to set up the interface... And if the tunnel ever goes down due to network issues... Hm. 23:41:43 oh well, I'll have to figure something out, maybe there are some script hooks in openvpn or something 23:41:50 -!- c00kiemon5ter has quit (Quit: brb). 23:43:06 "ip route" (IIRC) does not list all tables, just some kind of an amalgamation. 23:43:24 hm 23:43:59 ("ip route list table N" you can do.) 23:44:43 ("table 0" seems to list absolutely everything.) 23:45:50 Oh, and you probably will need to do the marking in -t mangle -A PREROUTING to set it before the routing decision is done. (That should hopefully make source address selection work out right too.) 23:46:27 ah 23:46:50 fizzie, I wonder how normal VPNs work wrt the routing table... 23:47:21 It's easy if you just need to route things through the VPN based on the destination. 23:47:42 E.g. if it's a VPN into some company intranet, you can just add a route to 1.2.0.0/16 that goes thataway. 23:48:01 fizzie, well, no. I need to be able to reach the internet 23:48:27 I just want a specific application to reach the internet through that VPN rather than through my direct connection 23:48:57 (basically I'm trying to work around a case of region locking) 23:49:34 I don't remember what OpenVPN itself can do w.r.t. the routing. It can at least do a "route everything through the VPN" config. 23:50:00 (Which possibly involves replacing the default route but adding an entry for the VPN endpoint that goes through the old gateway.) 23:50:21 fizzie, apart from itself obviously 23:50:41 Yes, that's what the host route to the VPN endpoint is for. 23:50:50 true 23:51:01 for that case it is probably an easier solution 23:51:19 do routing rules have priority or is it just "most specific first" 23:51:29 Re your use case, what I use for something slightly like that is the lighter-weight solution of "ssh -D" + "tsocks app ..."; tsocks is a LD_PRELOAD hack to forcibly add SOCKS support to any (well, many) sockets app. 23:51:57 fizzie, can't do that to the service I'm using 23:52:15 it is openvpn or pptp or whatever that other one is called 23:52:26 Routing table entries are most specific first; the "ip rule" rules do have some kind of an order. 23:52:51 hm 23:53:08 -!- WeThePeople has quit (Quit: Leaving). 23:53:35 The LARTC (Linux Advanced Routing & Traffic Control HOWTO) *was* a good document; I have no idea if it has been kept up-to-date, though. 23:53:43 HOWTOs are terribly outdated terribly often. 23:54:23 http://lartc.org/howto/lartc.rpdb.html has a source-based policy routing example. 23:54:47 (Something that doesn't need iptables/fwmark, but does require that you can manually specify the source address your application uses.) 23:54:52 true 23:55:12 http://lartc.org/howto/lartc.netfilter.html has a fwmark example too. 23:55:51 nice 23:56:03 I don't see datestamps in the document at all, which is kind of worrying. 23:56:14 oh, I finally found something one a stack exchange sub-site 23:57:04 it mentions the need of configuring post routing to adjust the source address, and to set the rp_filter sysctl to perform less stringent checks 23:57:19 That sounds relatively terrible. 23:57:29 fizzie, only for the tap interface though 23:57:36 so presumably not THAT bad 23:57:56 the rp_filter stuff I mean 23:58:25 Manually adjusting the source address does sound quite inelegant, since (according to logic, anyway) things should work out okay by the usual source address selection algorithms. 23:58:58 I guess it might be just for the case where the app has specified a local address, and then the packets do get routed out through the VPN anyway because of rules or whatnot. 23:59:02 Do you have a link to this thing? 23:59:57 sec, it is on my other computer