00:51:10 -!- DHeadshot has joined. 00:55:05 I wonder how we managed to make "primary school" and "secondary school" have more or less consistent meanings worldwide. 00:57:17 > 0o815 00:57:19 Not in scope: `o815' 00:57:36 > 0815 00:57:38 815 00:57:53 Like, it always refers to the stage of school where people are about 14 to 18 years old. 00:57:54 wtf is the octal syntax for haskell again 00:58:05 > 0o715 00:58:07 461 00:58:16 Moral of the story: don't use 8 in octal. 00:58:21 ....duh 00:58:28 > 0715 00:58:30 715 01:04:08 -!- DHeadshot has quit (Read error: Connection reset by peer). 01:04:13 -!- DH____ has joined. 01:18:13 -!- DH____ has quit (Read error: Connection reset by peer). 01:18:30 -!- DHeadshot has joined. 01:42:25 -!- TeruFSX has joined. 01:44:39 -!- DHeadshot has quit (Ping timeout: 256 seconds). 01:53:54 -!- ais523 has quit. 02:13:16 Hmm, Atheme (which Freenode uses) has a BotServ thing, but Freenode doesn't use it I guess? 02:13:20 * Sgeo wonders what it does 02:13:35 Also, what is the point of having ChanServ stay in channel? 02:13:48 Preserve topic in case channel empties out? 02:18:21 -!- Phantom_Hoover has quit (Quit: Leaving). 02:18:40 -!- Frooxius has quit (Remote host closed the connection). 02:18:59 -!- Frooxius has joined. 02:21:45 -!- DHeadshot has joined. 02:22:23 Sgeo: yes 02:23:25 -!- yhojeyisaac has joined. 02:23:34 -!- yhojeyisaac has left. 02:23:52 -!- yhojeyisaac has joined. 02:24:19 quien es hombre 02:24:57 quien is an anagram of quine. But quine is also an anagram of quine 02:27:38 donde esta la biblioteca 02:32:45 -!- yhojeyisaac has quit (Ping timeout: 252 seconds). 02:35:09 folk er så høflige mot spanjoler her i kanalen. 02:36:13 `wehlcohme yh 02:36:14 dangit 02:36:15 yhh: Wehlcohme to the ihntehrnahtiohnahl huhb fohr ehsohtehrihc prohgrahmmihng lahnguahge dehsihgn ahnd dehployhmehnt! Fohr mohre ihnfohrmahtiohn, chehck ouht ouhr wihki: http://ehsohlahngs.ohrg/wihki/Maihn_Pahge. (Fohr the ohthehr kihnd ohf ehsohtehrihca, try #ehsohtehrihc ohn ihrc.dahl.neht.) 02:36:39 ehxcehllehnt 02:46:30 `?hh oerjan 02:46:32 Youhr ehvihl ohvehrlohrd oehrjahn ihs a lahzy ehxpehrt ihn fuhtuhre cohmpuhtahtiohn. Ahlso a lyihng Nohrwehgiahn. 02:47:04 `? norwegia 02:47:06 norwegia? ¯\(°_o)/¯ 02:47:18 That country doesn't even exist, oerjan... 02:48:41 it's only visible to poles 02:49:15 the real norwegians got lost and found themselves in nearby norway 02:49:48 norby nearway 02:50:59 oerjan: The Hebrew name is "norvegya" or so. 02:51:37 if ya say so 02:51:52 Anyway it doesn't actually exist. 02:51:55 Denmark exists. 02:52:09 `?hh denmark 02:52:11 dehnmahrk? ¯\(°_o)/¯ 02:52:18 !!!!!!! 02:54:12 -!- yhojeyisaac has joined. 02:56:36 he's back! 02:56:41 `welcome yhojeyisaac 02:56:43 yes 02:56:44 yhojeyisaac: 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.) 02:57:20 *¿¿¿si??? 02:58:42 -!- yhojeyisaac has quit (Quit: Leaving.). 02:59:17 i guess we all sounded like english to him 03:01:10 monqy: are you "in the pigworker fan club" 03:01:33 depends on what you mean by fan club but sure? 03:08:33 -!- yhojeyisaac has joined. 03:09:21 alguien que quiera tener una combersacion privada conmigo 03:13:24 -!- yhojeyisaac has left. 03:31:26 -!- yhojeyisaac has joined. 03:34:10 -!- yhojeyisaac has quit (Quit: Leaving.). 03:34:31 -!- yhojeyisaac has joined. 03:36:48 kmc: Do you know things about making a .s that can be linked with GHC-compiled code? 03:37:50 linked FFIishly? 03:38:13 No, I'm trying to make something compatible with GHC's "ABI". 03:38:26 -!- yhojeyisaac1 has joined. 03:38:32 (Which involves a .hi too, of course.) 03:38:40 -!- yhojeyisaac has quit (Client Quit). 03:39:15 -!- Arc_Koen has quit (Quit: Arc_Koen). 03:41:06 oh :( 03:41:06 then i don't know much about that 03:41:07 perhaps you should write it in Cmm instead of assembly 03:41:20 -!- yhojeyisaac1 has quit (Read error: Connection reset by peer). 03:41:25 -!- yhojeyisaac has joined. 03:44:34 -!- yhojeyisaac has left. 03:44:53 i mean, i knew a few things. i know about zenc name-mangling and i know where to find the STG -> machine ABI register mapping 03:45:16 i don't know anything about the structure of .hi files besides vaguely what kind of stuff is in them 03:45:24 -!- yhojeyisaac has joined. 03:45:49 -!- yhojeyisaac has left. 03:45:52 Hmm, I should probably find that mapping. All I have is a few notes I've written about that from looking at compiled Cmm files. 03:46:20 I compiled a .hs and am trying to make a .s to match it, but I think there are linking issues. 03:50:41 hm seems he gave up just as i was translating a suggestion he go somewhere else 03:54:46 Have you ever written a code which uses undefined/unspecified behaviours but in such ways which any result it will make is going to be working with your program? 03:55:49 i know that by definition undefined behavior in C doesn't work like that in principle 03:56:07 (it can do _anything_, not just different reasonable options) 03:57:31 It isn't meaning, in cases of undefined order of operation, it won't suddenly make the computer teleport to the moon instead? 03:59:11 that might depend on whether C considers undefined order of operations to be undefined behavior. (if you assign to the same variable in both parts it probably is?) 03:59:25 "undefined behavior" is a technical term. 04:00:05 e.g. x=x++ _is_ permitted to make the computer teleport to the moon, according the C standard. 04:00:47 Does the C standard specify that the computer doesn't normally teleport to the moon? 04:03:11 I doubt it, but I don't think that has to do with the programming language; that has to do with the computer. 04:06:54 -!- evincar has joined. 04:11:44 shachaf: The C standard does not otherwise specify things that have nothing to do with the state of the abstract machine. 04:12:00 pikhq: Right. 04:12:22 So a compliant computer could only *cease* teleporting to and from the moon on UB. 04:13:18 ^ord +-><[].,! 04:13:18 43 45 62 60 91 93 46 44 33 04:13:25 "Whereof one cannot speak, thereof one must be silent." 04:16:20 ^ord ()[]:Zz&|^$=>#.<-!+'\\/*_% 04:16:20 40 41 91 93 58 90 122 38 124 94 36 61 62 35 46 60 45 33 43 39 92 92 47 42 95 37 04:20:31 -!- monqy has quit (Quit: hello). 04:23:06 @ask monqy ???????? 04:23:06 Consider it noted. 04:48:26 hi shachaf. how's the categories understanding coming 04:48:57 what's a categories 04:49:48 it's all the confusing info patrick throws at you 04:50:16 ? 04:50:28 ???? 04:52:15 Currently I have implemented these functions for music in SQLRPGMAKER: MUSIC_PAUSE(), MUSIC_POKE(`ADDRESS` INTEGER, `DATA` INTEGER), MUSIC_RESTART(`TRACK` INTEGER), MUSIC_RESUME(), MUSIC_SELECT(`ID` INTEGER). Should I need anything else? Fading? Sound effect? Etc? 05:06:38 `fetch http://oerjan.nvg.org/esoteric/fueue/brainfuck.fu 05:06:44 2013-02-11 05:06:43 URL:http://oerjan.nvg.org/esoteric/fueue/brainfuck.fu [2382/2382] -> "brainfuck.fu" [1] 05:07:36 `run echo '>,[>,]<[.<]!!!!!AHAHAHAWM' | fueue "$(cat brainfuck.fu)" 05:07:38 ​ \ MWAHAHAHA!!!! 05:07:46 `run echo -n '>,[>,]<[.<]!!!!!AHAHAHAWM' | fueue "$(cat brainfuck.fu)" 05:07:48 MWAHAHAHA!!!! 05:07:56 pesky little newlines 05:10:07 * oerjan bows 05:14:39 * oerjan should time these things for better audience 05:16:18 helloerjan 05:16:32 Doesn't everyone logread anyway? 05:17:04 LET US HOPE SO 05:17:37 !bf_txtgen MWAHAHAHA!!!! 05:17:40 ​90 +++++++++++[>+++++++>++++++>+++>+<<<<-]>.++++++++++.>-.<---------------.>.<.>.<.>.>....>-. [728] 05:17:59 `run echo -n '+++++++++++[>+++++++>++++++>+++>+<<<<-]>.++++++++++.>-.<---------------.>.<.>.<.>.>....>-.' | fueue "$(cat brainfuck.fu)" 05:18:01 MWAHAHAHA!!!! 05:21:30 what is SQLRPGMAKER 05:21:50 oerjan: did you write bf in fu? 05:22:56 YES 05:23:10 well, in fueue 05:25:01 -!- TeruFSX has quit (Ping timeout: 245 seconds). 05:26:31 fueue is fu just as brainfuck is bf 05:27:30 OKAY 05:27:43 (i _did_ choose that for file extension after all.) 05:28:01 EXACTLY 05:28:39 helloerjan 05:28:44 hm... 05:29:11 `run echo '[testing error messages' | fueue "$(cat brainfuck.fu)" 05:29:13 Unmatched [. 05:29:21 `run echo 'testing error messages]' | fueue "$(cat brainfuck.fu)" 05:29:23 Unmatched ]. 05:29:31 `run echo '[testing error messages!again' | fueue "$(cat brainfuck.fu)" 05:29:33 Unmatched [. 05:29:38 good, good. 05:29:52 there's another one which is _supposed_ to be impossible to trigger. 05:30:12 hichaf 05:30:19 hi 05:31:38 zzo38: < quintopia> what is SQLRPGMAKER 05:32:45 Some game engine I am making in SQL 05:35:24 that seems like a strange place to write a game engine 05:35:25 i approve 05:37:18 If they are RPG computer games, then you will want a lot of database, that is why it is in SQL (someone else approved for the same reason). (Specifically, it is SQLite) 05:39:00 (But it can be used for other computer games too) 05:58:28 my university spam filter thinks it's okay for someone i have never met to discuss "usd 2,142,728.00 dollars" with me and "NEED MY HELP" etc. however, inviting me to a conference? such a nigerian thing to do. 05:58:51 Wow, square dollars? 05:58:59 i just checked my spam folder, 4 calls for papers, 1 spam. 05:59:35 and the reason i checked was that i just got this spam in my inbox and started wondering what's spam enough to *not* get in 06:00:08 admittedly these are crappy conferences about software development and such 06:08:41 I wonder how one uses square dollars. 06:09:42 `addquote my university spam filter thinks it's okay for someone i have never met to discuss "usd 2,142,728.00 dollars" with me and 06:09:45 "NEED MY HELP" etc. however, inviting me to a conference? such 06:09:46 962) my university spam filter thinks it's okay for someone i have never met to discuss "usd 2,142,728.00 dollars" with me and 06:09:48 a nigerian thing to do. 06:09:48 thank you irssi 06:09:54 `revert 06:09:57 Done. 06:10:11 `addquote my university spam filter thinks it's okay for someone i have never met to discuss "usd 2,142,728.00 dollars" with me and "NEED MY HELP" etc. however, inviting me to a conference? such a nigerian thing to do. 06:10:15 962) my university spam filter thinks it's okay for someone i have never met to discuss "usd 2,142,728.00 dollars" with me and "NEED MY HELP" etc. however, inviting me to a conference? such a nigerian thing to do. 06:12:50 Speaking of spam, I once got a spam that tried to look like one of those mails from automated svn "commit has happened" hooks. 06:13:05 bbl work 06:21:08 Vorpal: haha 06:21:12 `run echo -n ',[.,]!Hi oklopol' | fueue "$(cat brainfuck.fu)" 06:21:14 Hi oklopol 06:22:18 :O 06:22:48 2142728 looks like a familiar number 06:23:08 maybe just because of 142857? 06:23:18 hmm 06:23:19 i think i had it mixed up with 214748 06:23:34 errr what's that 06:24:11 > 2^31 `div` 10000 06:24:13 214748 06:26:22 oo 06:26:35 i don't go that far 06:31:22 1048756 should be enough for anyone 06:31:30 > 2^20 06:31:32 1048576 06:31:35 oops 06:31:51 i thought something was off 06:32:02 how nice 06:33:18 so 4.5.6, then you turn back and put .8.7. 06:49:41 -!- WeThePeople has quit (Quit: Leaving). 07:06:22 The WWYD (for "what will you discard") polls for the Reachmahjong games is sometimes labeled "Tungsten Tungsten Yttrium Deuterium". 07:13:05 yttrium is one of four elements named after the same small village in sweden 07:13:41 ytterbium, yttrium, terbium, and erbium 07:22:36 -!- azaq23 has joined. 07:22:45 -!- azaq23 has quit (Max SendQ exceeded). 07:32:28 -!- oerjan has quit (Quit: leaving). 07:36:34 -!- sebbu has quit (Ping timeout: 256 seconds). 07:37:34 -!- sebbu has joined. 07:37:34 -!- sebbu has quit (Changing host). 07:37:35 -!- sebbu has joined. 07:50:35 -!- zzo38 has quit (Remote host closed the connection). 07:57:23 -!- copumpkin has quit (Ping timeout: 252 seconds). 07:57:54 -!- copumpkin has joined. 08:10:02 -!- copumpkin has quit (Ping timeout: 252 seconds). 08:10:32 -!- copumpkin has joined. 08:24:55 oh, if your current working directory is on NFS and the directory is removed elsewhere you can get "cd: ..: No such file or directory" 08:26:30 You don't need NFS for that. 08:27:06 http://sprunge.us/YSdO 08:27:25 boring 08:28:10 Admittedly, though, that *was* actually on NFS. 08:28:15 You could also 'rm -r ../../a' there 08:28:34 htkallas@spa-ws160:~/tmp/a/b$ ls 08:28:34 ls: cannot open directory .: Stale NFS file handle 08:29:08 In zsh that makes me end up at the path "." (according to pwd) 08:29:19 It worked a bit differently on a non-NFS path: 08:29:34 http://sprunge.us/aPfb 08:30:25 qqqqqq 08:30:28 ok good 09:16:52 -!- Nisstyre-laptop has quit (Ping timeout: 256 seconds). 09:32:06 -!- epicmonkey has joined. 10:18:55 -!- hagb4rd has quit (Quit: Nettalk6 - www.ntalk.de). 10:24:01 -!- ais523 has joined. 10:38:06 -!- ais523 has quit (Read error: Connection reset by peer). 10:38:20 -!- ais523 has joined. 10:40:20 -!- Phantom_Hoover has joined. 10:44:42 -!- DHeadshot has quit (Ping timeout: 256 seconds). 10:48:41 Someone on the Internet told me to choke on dick 10:48:43 dicks 10:48:55 I feel like I am finally an Internet citizen 10:53:27 thanks 11:08:30 I should really go back to sleep 11:24:45 -!- hagb4rd has joined. 11:34:17 -!- zzo38 has joined. 11:40:59 Sgeo: Go choke that person with a dick 11:59:24 The Pope's resigning 11:59:38 (How often do you get to say THAT?) 12:00:56 Apparently quite frequently around 1045 and the years after 12:03:38 weird 12:04:06 Do you mean the current pope, or the one before? 12:04:45 The current one 12:04:53 It takes effect later in the month 12:14:43 -!- noam_ has quit (Read error: Connection reset by peer). 12:15:19 -!- noam has joined. 12:22:39 maybe they'll go for someone less creepy this time 12:26:39 -!- Phantom_Hoover has quit (Remote host closed the connection). 12:28:52 -!- Phantom_Hoover has joined. 12:45:52 fungot, good morning 12:45:53 c00kiemon5ter: what is u? or y? :) i've played with ruby a little. i've been trying 12:46:02 -!- TeruFSX has joined. 12:49:37 ^style 12:49:37 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 12:49:44 -!- carado has joined. 12:51:41 F : Dom F -> Cod F 12:58:21 -!- Arc_Koen has joined. 13:12:06 -!- zzo38 has set topic: DO NOT PULL | char*a,b[9999];main(){gets(a=b);while(*a){a+=(b[*a]-=b[a[1]])?3:a[2];}puts(b+1);} | a mutiny of clowns | http://codu.org/logs/_esoteric/. 13:13:38 -!- zzo38 has set topic: DO NOT PULL OR PUSH SIDEWAYS | char*a,b[9999];main(){gets(a=b);while(*a){a+=(b[*a]-=b[a[1]])?3:a[2];}puts(b+1);} | a mutiny of clowns | http://codu.org/logs/_esoteric/. 13:17:46 bad website design time http://www.constellation7.org/ 13:18:10 is that from #jesus 13:18:20 no 13:18:30 Saw it on hacker news 13:18:43 why do you read hacker news... 13:19:12 I was googling something else 13:20:31 once again Sgeo you deftly evade judgement 13:31:50 -!- monqy has joined. 13:32:27 -!- Gregor has changed nick to TwilightSpockle. 13:33:46 The topic reminds me of "TO PUSH IS ENOUGH", a sign on a classroom door. 13:35:45 -!- boily has joined. 13:38:45 -!- elliott has set topic: TO PUSH IS ENOUGH | http://codu.org/logs/_esoteric/. 13:38:57 -!- boily has quit (Client Quit). 13:40:35 -!- boily has joined. 13:41:25 -!- TeruFSX has quit (Ping timeout: 246 seconds). 13:41:54 -!- ais523 has quit (Read error: Connection reset by peer). 13:42:08 -!- ais523 has joined. 13:58:17 -!- zzo38 has quit (Remote host closed the connection). 14:21:48 -!- oklofok has quit (Remote host closed the connection). 14:37:46 "Geez you'd think with all those priests around you could find somebody able to cast cure light wounds." 14:51:24 -!- evincar has quit (Quit: Consciousness is terrible.). 15:00:23 -!- glogbackup has joined. 15:02:47 -!- glogbackup has quit (Remote host closed the connection). 15:04:22 -!- Mathnerd314_ has joined. 15:06:36 -!- fizzie` has joined. 15:07:07 -!- Mathnerd314 has quit (Ping timeout: 276 seconds). 15:07:07 -!- oonbotti has quit (Ping timeout: 276 seconds). 15:07:07 -!- fizzie has quit (Ping timeout: 276 seconds). 15:07:21 -!- olsner has quit (Ping timeout: 252 seconds). 15:13:28 -!- Taneb has joined. 15:19:34 -!- olsner has joined. 15:23:49 -!- glogbackup has quit (Remote host closed the connection). 15:24:13 Phantom_Hoover, you know how I'm completely incompetent at everything, and have a nasty habit of ruining my computer? 15:24:43 yes 15:24:51 a man after my own heart 15:24:57 I've ruined my computer again 15:25:48 oh dear 15:26:12 would you like me to direct you to the people i consult when i ruin my computer 15:26:14 I'm gonna order an actual graphics card 15:27:20 Here I go... 15:29:55 -!- glogbackup has quit (Ping timeout: 246 seconds). 15:31:46 is this the continuation of the chinese graphics card saga 15:31:51 Yes 15:32:01 It struck back 15:32:47 I think I have an idea for a language that I would love 15:32:54 It's probably completely impossible though 15:33:02 Is it Feather 15:33:08 More impossible 15:33:10 hitting a distinct galatea vibe here 15:34:48 perhaps the gods will be kind and implement it for you when you finish the spec 15:35:01 Phantom_Hoover: is oerjan a god? 15:35:58 I want people to come up with new idioms and all the old code that others wrote will magically work with it 15:36:16 i think even the gods would have trouble with that 15:36:40 As in, say language has conventional throw/try/catch, people use that, someone adds a condition system, suddenly all the old code works with it magically 15:36:43 Phantom_Hoover, yes 15:36:57 Taneb, somehow i doubt it 15:37:17 Phantom_Hoover: but... brainfuck in Fueue! 15:37:59 -!- glogbackup has quit (Remote host closed the connection). 15:38:12 he's probably one of them trickster-gods if anything 15:40:29 -!- copumpkin has quit (Ping timeout: 252 seconds). 15:41:00 -!- copumpkin has joined. 15:54:53 " It is totally acceptable for the weaker (and through extension less intelligent) to die, otherwise it would not happen every day" 15:55:04 Where is Punching over IP? 15:55:06 I need it 15:55:14 -!- glogbackup has quit (Remote host closed the connection). 15:55:35 why waste your effort 15:55:52 just ignore them and hope for their sake that they grow out of it 16:06:13 Taneb: was oerjan succesful? 16:06:38 It's on the wiki, so I presume so 16:07:36 you know how the example programs on that page go 16:07:48 starting with "hey look I got an empty program, it's almost a cat" 16:08:02 then "I can print Hello World! and then halt" 16:08:18 then "I've got an infinite loop, but it doesn't do anything" 16:08:31 and then oerjan steps in 16:08:54 :D 16:09:59 -!- glogbackup has quit (Remote host closed the connection). 16:10:23 Now, brainfuck in eodermdrome 16:10:30 Go oerjan go 16:10:30 Sgeo: actually that sounds a lot like Feather :) 16:10:41 with the retroactively adding language features thing 16:10:55 hm 16:11:16 FreeFull, could work. 16:11:33 Yes, but also retroactively making old code use it? 16:11:57 Don't think you have to use duplication for it, which is the trickiest thing in eodermdrome. 16:13:05 Sgeo: I don't think it'd rewrite the old code to be more idiomatic 16:13:12 that does indeed sound quite difficult 16:13:28 in order to get a start on it, I guess the language should have a bytecode compiler and a decompiler that tries to infer the idioms 16:13:33 Maybe not rewriting, but just making it interoperate with the new idiom fully... which still sounds difficult 16:13:35 -!- glogbackup has joined. 16:14:01 something along the lines of "add exceptions, now all existing code is rewritten to be exception-safe" sounds more possible 16:14:01 i'm pretty sure Sgeo's ideal language is either superturing or logically inconsistent 16:14:04 very difficult, still 16:14:10 but it's quite similar to what I do in my day job 16:14:27 the nice thing is, for every new language feature you actually get to work, you can write an entire academic paper about how :) 16:14:45 * Sgeo suddenly wants a job like ais523's 16:14:50 Designing stuff and writing papers 16:15:06 Sgeo: it doesn't pay very well 16:15:26 also it's coming to an end this year, but I should be able to use the experience to get another better-paying one in the same field 16:15:26 ais523: just have to prove something for wolfram every few years 16:15:43 (this is the same sort of sentence as "I should go to KFC some day", btw) 16:15:43 though I hear he usually doesn't pay people for that 16:15:54 ais523: what sort of sentence is that 16:16:03 elliott: where "some day" refers to a particular day 16:16:08 rather than just being a variable 16:16:25 btw, does Emmental remind anyone else of Splinter? 16:17:32 Link to Splinter? 16:17:36 ais523: ah, so there is a specific job? 16:17:45 elliott: at least one, that I have in mind 16:17:48 Sgeo: http://esolangs.org/wiki/Splinter 16:17:58 I heartily recommend adding a macro in your IRC client to easily link people to things 16:18:03 also, the Esolang search box to your browser 16:18:30 -!- glogbackup has quit (Remote host closed the connection). 16:18:37 * Sgeo wasn't sure if it was an esolang or a real language 16:19:07 I should write an esolang at some point 16:19:24 Besides my boring ones 16:19:45 -!- ais523_ has joined. 16:19:45 -!- ais523 has quit (Remote host closed the connection). 16:19:46 -!- ais523_ has changed nick to ais523. 16:20:41 Sgeo: would it be a good esolang 16:20:42 considering the current span of all esolangs that have been noted down, is there any niche out there left to be discovered, exploited, maimed, tortured and obfuscated? 16:20:56 boily: yes 16:21:47 boily: almost certainly yes 16:21:52 they just get harder to find as time goes on 16:22:08 like, it took me around a year of thought to find Underload, probably 16:22:19 A language that compiles to x86 where the compiler's source makes no deliberate reference to x86 code? 16:22:47 (The compiler would of course be written in that language) 16:23:12 now you're trying to make me work out if a metacircular compiler is an actual concept 16:23:13 -!- Phantom__Hoover has joined. 16:23:28 I guess it'd need the ability to compile at runtime, like Perl 16:23:33 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 16:23:43 Sgeo: did you see the latest turn in the Chinese Graphics Card tale? 16:23:49 Taneb, no 16:24:04 Basically, I stupid'd again, and have ordered an actual graphics card 16:24:11 yay 16:24:23 make sure you don't ask elliott for advice 16:24:25 Taneb: I somehow missed this tale 16:24:49 ais523: I tried to upgrade my graphics card driver on day 16:24:54 Things went a little wrong 16:25:02 So I asked for help in #ubuntu-steam 16:25:02 which OS? 16:25:06 Ubuntu 16:25:13 oh, I can sort-of see where this is going 16:25:13 Because I was trying to get Steam working 16:25:20 #ubuntu is kind-of random in the quality of help it gives 16:25:27 They couldn't help me, and redirected me to #nvidia 16:25:31 I expect #ubuntu-steam is similar, except full of gamers 16:26:10 After talking to someone in #nvidia for a bit, sending photos of my graphics driver 16:26:11 (which is not necessarily a bad thing) 16:26:16 *graphics card 16:26:24 It turns out that my graphics card was bootleg 16:26:35 And an old model disguised poorly as the new one 16:26:45 good 16:26:48 is the rest of your computer bootleg too? 16:26:55 I believe not 16:27:09 I bought all the parts separatley 16:27:14 is Taneb itself bootleg? 16:27:46 -!- cuttlefish has joined. 16:27:58 I'm a story about the prohibition of chocolate 16:28:24 waht 16:28:36 ~metar CYUL 16:28:40 CYUL 111605Z 35006KT 5/8SM R06L/2000FT/N R06R/2200FT/N -SN BR VV003 M07/ RMK SN8 16:28:45 -!- glogbackup has quit (Ping timeout: 252 seconds). 16:28:57 ~help 16:28:57 --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi 16:29:01 ~duck Bootleg 16:29:02 The term bootlegging originally came from black people being cheep and drinking alcohol in the legs of boots. 16:29:07 ~duck Bootleg story 16:29:09 --- No relevant information 16:29:16 what's this 16:29:17 the weather lies! no way it's -SN now. 16:29:24 ~duck bootleg 16:29:25 The term bootlegging originally came from black people being cheep and drinking alcohol in the legs of boots. 16:29:35 http://en.wikipedia.org/wiki/Bootleg_(TV_serial) 16:29:47 "cheep" 16:30:14 What information does primitive + need to know? 16:30:29 It needs to know how to add. It needs to know how to compile itself. 16:30:30 Hmmm 16:32:08 `addquote I'm a story about the prohibition of chocolate 16:32:15 963) I'm a story about the prohibition of chocolate 16:32:16 the best part about that quote is, there /isn't/ any context 16:32:19 ais523, what sort of information can be hidden in a Trusting Trust style manner? 16:32:45 THat's really what's making me think about this 16:32:53 There's actually context 16:32:56 -!- epicmonkey has quit (Ping timeout: 245 seconds). 16:33:01 Just it's a stupidly obscure reference 16:33:03 Sgeo: well that attack stops working as soon as someone writes a second compiler, but if you trusting-trust a strong AI into your compiler, pretty much anything 16:33:18 (until someone recompiles it with a different compiler that it didn't compile in the first place) 16:33:35 (the "it didn't compile in the first place" isn't normally necessary, but it is if you suspect there's a strong AI in there) 16:33:57 I think in this case, trusting trust is not an "attack", but the implementation strategy 16:34:18 i prefer to err on the safe side and always suspect there's a strong ai in my compilers 16:34:54 Taneb: oh wow i think i actually saw this 16:34:56 it might be possible, because it wouldn't need to be a very /good/ strong AI 16:34:58 when i was younger 16:35:13 you might be able to get away with just a bunch of heuristics 16:35:18 wasn't that an episode of the simpsons 16:35:25 Phantom__Hoover: that was sugar 16:35:29 strong AIs are easy to write if you don't mind them being really bad at their jobs 16:35:42 And alcohol in a different episode 16:35:50 There's an anime called Chocolate Underground 16:36:27 there's a book called the chocolate war, isn't there 16:36:37 i hear it's soulcrushing 16:36:40 did you know: there's a food called chocolate 16:36:51 `quote 16:36:52 `quote3 16:36:53 29) Or the brutal rape of the English language! That wasn't rape. English is always willing. 16:36:54 `quote 16:36:54 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: quote3: not found 16:36:55 `quote 16:36:56 297) esperanto is just spanish with a diarrhea 16:36:57 `quote 16:36:57 782) i have a simple view of reality that goes something like this.. once your sufficiently well tied up.. it doesn't make a difference if your enemy has a knife or a gun.. you're equally screwed 16:36:58 `quote 16:36:59 614) oh my god that is one ugly solution beautiful 16:37:00 339) hey fhet's zeees OouooH SNEP IT'S A FOooCKING TIGER 16:37:02 http://www.youtube.com/watch?v=uzIs1epLEdc 16:37:21 elliott: delete 297 or 339? 16:37:37 339 16:37:48 339 16:38:32 That looks quite a bit different from the book 16:38:54 -!- ais523_ has joined. 16:38:57 -!- ais523 has quit (Disconnected by services). 16:38:58 -!- ais523_ has changed nick to ais523. 16:39:09 `delquote 29 16:39:14 ​*poof* Or the brutal rape of the English language! That wasn't rape. English is always willing. 16:39:28 elliott: I can live with that 16:39:33 DELETED UNDER GROUNDS OF: (a) did I actually say that; (b) it's stupid 16:39:58 29 is also a good choice 16:40:02 `pastlog brutal rape of the 16:40:30 2010-05-03.txt:01:00:52: 46| Or the brutal rape of the English language! That wasn't rape. English is always willing. 16:40:43 btw, is 782 meant to be a BF Joust reference? because that's how I interpreted it 16:41:00 are you new to itidus21 16:41:19 -!- glogbackup has quit (Remote host closed the connection). 16:41:37 is it funnier if you imagine it's one of iti's aimless blunderings in the world of sex 16:42:40 elliott: no but I haven't been paying much attention to him in particular 16:42:43 `pastequotes itidus 16:42:50 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.20847 16:44:14 seeing them all at once 16:44:17 it's too much 16:44:46 apparently he's... still online? 16:45:00 wow every single one of itidus' quotes is amazing 16:45:01 must've gotten bored 16:45:11 Phantom__Hoover: did you forget the part where you drove itidus off 16:45:18 shit was that me 16:45:37 -!- glogbackup has joined. 16:46:06 oh is that what happened to him 16:46:26 `quote 539 16:46:28 539) I think this has taught us one thing. We can't teach itidus20 lambda calculus by comittee 16:46:32 not an itidus quote, but it's awesome 16:47:15 647 is pretty good too, though 16:47:25 Expected type: Ehh t t1 -> (Dom t1 (t % x) (t % x) -> r) -> r 16:47:25 Actual type: Ehh t t1 -> (Dom t1 (t % x0) (t % x0) -> r) -> r 16:47:29 can someone please fix my GHC 16:48:21 ehh 16:48:40 x and x0 might be different types, though 16:48:52 ais523: no they're totally polymorphic 16:49:05 this is a stupid type family problem 16:49:15 monqy: I called it Ehh because I was a bit upset about having to define it in the first place 16:49:44 elliott: o.o 16:49:51 That looks like a weird type error 16:50:16 ScopedTypeVariables? 16:50:28 elliott: this reminds me of SCC inference, where sometimes in Verity a program will fail to compile because program transformations changed the definition of "polymorphic" 16:50:41 Taneb: no, it's not that simple 16:50:46 so far, the error's only happened on intentionally contrived examples, and programs which were incorrect anyway 16:50:49 Just applied to a fun sounding job 16:51:01 newtype Ehh f = Ehh (forall x. Blah (Foo f x)) 16:51:04 Seems like it would involve writing training documentation and teaching people things 16:51:04 :D 16:51:05 out :: Ehh f -> Blah (Foo f x) 16:51:10 out (Ehh x) = x 16:51:14 the problem is you can't do this 16:51:15 Sgeo: are you actively seeking out a job atm? or do you just apply to jobs for fun? 16:51:15 where Blah is anything 16:51:17 and Foo is a type family 16:51:26 ais523, actively seeking out a job 16:51:27 because GHC's handling of type families is kind of bad 16:51:28 actually applying to jobs for fun sounds like a great idea if you have time to spare 16:51:41 except it might make it hard to get a job if you get a reputation for applying to jobs then turning them down 16:51:48 -!- glogbackup has quit (Ping timeout: 264 seconds). 16:51:57 Although I'm still vacillating between getting a job and going to grad school 16:52:06 I want to not need to deal with my dad as soon as possible :/ 16:52:20 Although he did say he'd give me an allowance if I went to grad school 16:52:22 >.> 16:56:07 do you know what you want to do with grad school 16:56:33 Not really 16:56:45 Computer Science 16:57:04 But ... why, I guess, is the question. Would I have an opportunity to design a language? 16:57:04 -!- glogbackup has quit (Ping timeout: 246 seconds). 16:57:23 Sgeo: if you're going to do a graduate degree, the difficulty is finding a good supervisor who knows problems to work on that you could complete and would be useful 16:58:01 Sgeo: grad school sucks with the wrong advisor 16:58:22 be prepared to switch or quit 16:58:25 I've ended up designing several languages as a result of what I've been doing; most of them are mathematical abstractions, some would be a pain to write in (e.g. affine ICA), only one of them is a "real programming language", and it's Verity, which very much feels like an academic language 17:00:01 btw, 794 works better when you know that there's a brand of cola called ubuntu 17:00:15 I don 17:00:19 what is 794 17:00:26 I don't even know who I could talk to at the school to start with anything 17:00:32 ais523: thats the context 17:00:34 `quote 794 17:00:36 794) ubuntu is the solaris of the cola world 17:00:37 elliott: I guessed 17:00:43 Sgeo: interesting/useful languages that will get you publications are more like things that fall out of a need or niche or something than something you can just decide to design 17:01:03 Sgeo: also if you want to get funding for it, you need to have a pretty good track record 17:02:18 -!- glogbackup has quit (Ping timeout: 252 seconds). 17:02:39 track record? 17:02:52 Sgeo: if there's an interesting problem you want to explore maybe you can design a language around that, but if you have an idea already........... 17:04:11 So, for that metacircular compiler idea, would it be cheating to do something other than x86 17:04:22 Say, Ngaro VM? 17:04:24 I'm still not convinced "metacircular compiler" makes sense 17:04:35 whats ngaro vm 17:04:36 although I'd be happy for elliott to tell me whether it does or not, he probably knows 17:05:34 http://rx-core.org/docs/The_Ngaro_Virtual_Machine.html 17:08:44 ok now whats cheating 17:09:13 I don't know 17:09:22 ok 17:09:28 I'm still not convinced I know what a metacircular compiler is 17:09:38 it'd have to compile a language into itself 17:09:39 Still needing an interpreter to run the compiled thing feels... cheating-ish somehow, but seems saner than trying to learn x86 17:09:44 and then compile that with an existing compiler 17:09:52 and yet compiling a language into itself is normally kind-of easy 17:10:03 ais523, presumably, there'd be a bootstrapping compiler at first which then gets discarded 17:10:16 no, then it isn't metacircular 17:10:18 it's just a compiler 17:10:37 -!- glogbackup has quit (Remote host closed the connection). 17:10:52 sgeo is this just about you want to write a compiler but don't want to learn x86 so you're writing it really silly 17:10:58 So it can't start off non-metacircular then become metacircular? Does the fact that C compilers weren't originally written in C hampers the names it can be given? 17:10:58 @time Taneb 17:10:59 Local time for Taneb is Mon Feb 11 17:10:58 2013 17:11:15 I don't have a clock 17:11:22 "metacircular" doesn't just mean "written in the same language it's implementing" 17:11:54 -!- hagb4rd has quit (Quit: Nettalk6 - www.ntalk.de). 17:12:38 Ok, this is what I want: The compiler for language ?? is written in ??. The compiler contains no code that directly corresponds to the target platform. That is, the source code for the compiler does not mention the assembly or machine code for +, for example 17:12:58 Rather, somehow + is a primitive that knows how to compile itself as well as add 17:13:06 sounds like Forth 17:13:10 except not really 17:13:31 The information for what constitutes addition should be trusting trusted somehow 17:13:44 my first thought would be that the compiler has access to its own compiled form 17:13:51 Ditto 17:13:55 huh, if it's /really/ trusting trusted 17:14:01 then there's no need for the language to even have I/O 17:14:07 and uses this to deduce 17:14:18 although, in that case, the semantics of the language and the compiler would basically be entirely disjoint 17:14:19 somehow what it's compiling to 17:14:23 so how can you call it a compiler for the language? 17:15:27 I think I have a tarpit version of the idea 17:15:29 -!- glogbackup has joined. 17:15:45 a language X which, given any program, ignores it and outputs a language X compiler 17:15:53 actually, that's known as a quine 17:15:55 reminds me of brainbrain 17:16:31 elliott: good reference 17:16:45 actually I'll write this esolang up, because it's hurting my head (in a good way) 17:16:59 on the joke languages list, of course 17:17:11 a... quinepiler? 17:17:18 quiler 17:17:21 ais523: call it Quiler 17:17:25 OK 17:17:32 quiler sounds like a web 2.0 startup 17:17:55 Does this count as me helping create a language? 17:18:03 -!- glogbackup has quit (Remote host closed the connection). 17:18:09 Also, I do want a less tarpitty version, but will wait to see the writeup of this 17:20:00 ...I think some Smalltalk person has worked on ... something similar to what my idea would be if extended into usefulness 17:22:37 -!- augur has quit (Remote host closed the connection). 17:23:42 Hum. 17:24:03 -!- glogbackup has quit (Remote host closed the connection). 17:24:13 I don't think it's cheating to do something like binary(+) and get the x86 code out from that, right? 17:24:32 If the compiler uses binary() calls but doesn't contain the actual binary code explicitly... 17:24:57 I pretty much have to be able to do that, I think 17:25:32 yes, although idk if that's a particularly elegant way of doing so 17:25:39 What, the syntax? 17:26:03 Syntax just quick way of joting thoughts down, not concrete yet 17:26:09 Probably code{+} makes more sense 17:26:23 i mean conceptually 17:26:24 code{1+1} is a binary blob containing the code that gets inserted for 1+1 17:26:41 I don't think it's avoidable 17:26:41 compile(program) = print code{$program} 17:26:56 The compiler has to be able to emit the code somehow 17:26:57 metaitmceaulciualr compierls 17:27:31 -!- ais523 has quit (Ping timeout: 245 seconds). 17:28:33 Could just be a command saying "Compile this code into the program I'm compiling", and block programs finding out at runtime what the binary code is, but that seems icky 17:29:33 btw what are you doing and why. i'm trying to figure out if this is a thought experiment or an xy problem gone horribly wrong 17:29:42 Both 17:29:45 ah 17:29:53 I think it could make writing compilers easier somehow? 17:30:11 good luck 17:34:51 -!- ais523 has joined. 17:35:08 btw, I made a mistake, it's not output only 17:35:11 Sgeo, challenge, make this work without assuming a von neumann architecture 17:35:12 it takes input, just doesn't do anything with it 17:35:45 OK, here we go: http://esolangs.org/wiki/Quiler 17:35:51 IMO it's more interesting than over half the joke languages 17:35:53 not that that's hard 17:36:51 I read that as “Quitler” for some reason. 17:37:26 -!- monqy has quit (Quit: hello). 17:38:04 "Surrender now, at my moment of triumph!? I'm Hitler, not Quitler!" 17:39:03 -!- epicmonkey has joined. 17:39:11 Could not deduce ((forall x1. Dom g (f % x1) (f % x1)) 17:39:11 ~ Dom g (f % x) (f % x)) 17:39:15 WHY WHY WHY WHY WHY WHYW HYW 17:40:19 I have an idea for a usable version 17:40:23 ais523: please kill me to death. ty 17:40:28 Although it makes the compiler too simple to write, I think 17:40:50 Also, it's a Brainfuck derivative 17:40:57 * Sgeo runs from Phantom__Hoover very, very fast 17:42:03 > ord '+' 17:42:05 43 17:42:12 !text2bf + 17:42:51 Well, "too simple" as in the source code is simple 17:43:01 Creating an actual compiler is trickier than writing the source code 17:43:45 especially in BF 17:44:05 Sgeo: actually, did you see Gregor's IOCCC entry? the only reason it doesn't fulfil your definition is that it implements the wrong language 17:44:24 ais523, I think I have seen it but forgotten everything about it 17:44:46 dc JIT 17:44:52 -!- Mathnerd314_ has changed nick to Mathnerd314. 17:44:59 Criss-platform 17:45:02 *cross 17:45:50 haaaaaaaaah it works 17:45:52 it works!!! 17:45:58 joinAM :: forall f g x. (Adjoint f g, Cod g ~ (->)) => AM f g (AM f g x) -> AM f g x 17:46:02 joinAM m = AM $ \f g o -> case eps f g of 17:46:04 Nat _ _ trans -> 17:46:07 let o' :: Dom g (f % x) (f % x) 17:46:09 o' = case o of Ehh o' -> unsafeCoerce o' -- work-around stupid type family behaviour 17:46:12 in (g % trans o') $ runAM (fmap (\(AM m') -> m' f g o) m) f g o 17:46:45 I have no idea how Gregor's entry works 17:47:00 elliott: that looks uglier than my average code 17:47:07 Is it Trusting Trust based? If not, I don't see how it matches... 17:47:27 Or... I'm confused 17:47:45 !txt2bf + 17:47:51 the list monad from adjoint functors in Haskell: http://sprunge.us/Zcig 17:47:55 What's the text2bf thing here? 17:47:58 ^help 17:47:58 ^ ; ^def ; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool 17:47:59 (+ an awful lot of support code) 17:48:05 !help 17:48:05 ​help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help . 17:48:09 oops, I omitted Mon 17:48:10 !bf_txtgen + 17:48:14 ​33 +++++++[>++++++>+>><<<<-]>+.>+++. [37] 17:48:28 Uh, that has two dots in it 17:48:53 redux: http://sprunge.us/fGjC 17:48:59 Also I don't want to output 17:49:14 Hmm, instead of initial idea, I could 17:49:20 all you philistines 17:49:22 ais523: appreciate please 17:49:25 Wait, no, I can't 17:49:31 elliott: that's an... unusual Functor 17:49:34 even though I didn't write most of that and also that's not the hard part 17:49:51 Taneb: 17:49:56 class (Category (Dom f), Category (Cod f)) => Functor f where 17:49:59 type Dom f 17:50:01 type Cod f 17:50:03 type f % x 17:50:06 (%) :: f -> Dom f x y -> Cod f (f % x) (f % y) 17:50:07 elliott: err, I haven't looked at it yet, I'm busy 17:50:12 Okay 17:50:21 Taneb: the problem is that the functors you need aren't endofunctors (Hask -> Hask) like the standard Functor gives you 17:50:32 they are (Hask -> Mon) and (Mon -> Hask) 17:50:41 the Category is custom too 17:50:51 class Category c where 17:51:01 dom :: c x y -> c x x 17:51:03 cod :: c x y -> c y y 17:51:05 (.) :: c y z -> c x y -> c x z 17:51:12 -!- sebbu has quit (Ping timeout: 264 seconds). 17:51:37 Ok, so, my idea is basically Brainfuck with an added command ; 17:51:43 What is Mon? Monad? 17:51:47 The first invocation of ; marks the memory position 17:51:55 FreeFull: Mon-oid 17:51:55 (%) :: FreeMon -> (x -> y) -> Mon [x] [y] 17:52:13 it is the category of monoids 17:52:25 The second takes all the data between the first and second memory position, and outputs the target code to compile what's in the thing 17:52:46 Or maybe ; just means output the source for current memory position character 17:53:05 Also! Completely irrelevant thing I was thinking of today 17:53:20 here's how you get the state monad: http://sprunge.us/bIbO 17:53:24 [,;] is a compiler for this language 17:53:26 A function such that its third derivative is equal to itself 17:53:28 Sgeo, mm 17:53:31 don't like it 17:53:49 essentially because you still have to have the original compiler 'on hand' for it to work 17:54:00 Taneb: I can think of one where the fourth is 17:54:05 But not the third 17:54:09 Phantom__Hoover: comeo n appreciate 17:54:14 FreeFull: I can do first, second and fourth easily 17:54:21 I think I can figure out third 17:54:35 Phantom__Hoover, not sure of that 17:54:49 First is e^x, fourth is sin x or cos x 17:55:05 Sgeo, i think if you can, like, retrieve the source of a suitable set of primitives? 17:55:10 Phantom__Hoover: come on appreciate 17:55:16 elliott, appreciate what 17:55:32 Phantom__Hoover: the code!!! 17:55:43 Second would be e^(-x) I think 17:55:47 Phantom__Hoover, I don't know how to make a good "retrieval" operation in brainfuck 17:55:50 Outputting's easier 17:56:06 But anyway the C code that ; emits would have to be a quine, I think 17:56:17 Taneb, e^((-1)^1/3)x 17:56:22 uhhh 17:56:26 that should be 1 17:56:28 not -1 17:56:30 I'm assuming that we're targetting C 17:56:33 Because that's easy 17:56:41 Although targetting x86 would be better obviously 17:57:27 Phantom__Hoover: The cube root of 1 is 1 though 17:57:53 But users of ; should explicitly NOT rely on the result except that that's the appropriate code to compile into the program 17:58:01 FreeFull, the /real/ cube root of 1 is 1 17:58:08 oh well if they shouldn't then of course nobody will 17:58:26 -!- sebbu has joined. 17:58:27 -!- sebbu has quit (Changing host). 17:58:27 -!- sebbu has joined. 17:58:52 Phantom__Hoover: Oh wait, you're right 17:58:58 But you didn't specify which cube root 17:59:23 Phantom__Hoover: I'm making it nicer, hang on 17:59:49 yeah, you want one of the imaginary cube roots of 1 18:00:07 i'm sure you can find a general form with differential equations but my opinions on differential equations can't really be coherently put into words 18:00:39 Although maybe Brainfuck is not the best host language for this 18:00:45 Do they compare with your opinion on people who write brainfuck derivatives, Phantom__Hoover? 18:00:52 Phantom__Hoover, do you think I should keep trying to make BF fit as a language for this thing, or try another? 18:01:03 "ph should i make a bf derivative" 18:01:58 -!- ais523 has quit. 18:02:40 Sgeo, have you considered stuff like sbcl 18:02:50 i feel like it's relevant but i can't be bothered to work out how 18:02:58 e^((-e^((i*pi)/3))*x) ? 18:03:49 e^0.5x * cos (x * sqrt 3 / 2) 18:03:49 I think 18:04:10 I'm wrong but don't know how 18:04:15 FreeFull, the reason i wrote it the way i did was because i couldn't be bothered working out where all the (s and ^s went 18:04:16 Which means it's dinner time 18:04:18 thank you 18:04:39 -!- augur has joined. 18:05:30 What's the differencial period of e^-x + sin x ? 18:05:35 Phantom__Hoover, well, I doubt that actually approaching things the way I'm trying to approach them is at all a good idea for maintainability or portability 18:05:57 FreeFull, 4 18:05:58 obv. 18:06:08 Oh yeah, right 18:06:11 Sgeo, i mean the overall compilation model 18:08:19 * Sgeo changes the language a bit 18:08:29 ; on 0 outputs a prelude if needed 18:08:30 ;+[,;] 18:08:54 Wait, that's broken 18:10:28 -!- dessos has joined. 18:12:56 "The main point of divergence at the time was a clean bootstrapping procedure: CMUCL requires an already compiled executable binary of itself in order to compile the CMUCL source code, whereas SBCL supported bootstrapping from - theoretically - any ANSI-compliant Common Lisp implementation." 18:14:39 An interesting excersize is to write, in this language, a compiler for a different language, with similar semantics except + and - flipped around 18:15:09 Beyond flipping + and - before sending it to ;, ; itself needs to be guarded such that it sees the flipped - and + 18:16:12 How many machine code quines are there? 18:17:46 'machine code quine' is a bit of a vague concept 18:18:09 Phantom__Hoover: why? 18:18:22 Phantom__Hoover, yeah, I am getting visions of image based Lisps 18:18:23 do you have to output the executable file? or the actual data in memory? 18:18:39 For these purposes presumably the executable file 18:19:54 -!- SirCmpwn has quit (Excess Flood). 18:20:34 CMUCL before SBCL split sounds similar to what I want, really 18:20:42 Does what I want count as a metacircular compiler? 18:22:42 you should call it MetaMuCL 18:23:16 -!- NihilistDandy has joined. 18:24:55 -!- SirCmpwn has joined. 18:25:01 I don't get it, except being similar in name to CMUCL 18:26:06 Anyone using Mozart on OS X? I'm trying to get it to use Cocoa Emacs over Aquamacs and google is failing me, so far. 18:28:30 Ok, so ; on one should be a postlude 18:28:37 So, the compiler looks like 18:28:49 ;,[;,]+; 18:30:49 what language is that? 18:31:21 Ae^x + e^(-x/2)(Bcos((x*sqrt 3)/2) + Csin((x*sqrt 3)/2) 18:32:03 nortti, language with no name yet 18:32:06 Any function of that form is its own third derivative 18:33:02 nortti, but, tl;dr: compiler for the language written in the language does not contain code in target language 18:33:31 For intsance, e^(-x/2) * cos (sqrt 3 * x / 2) 18:33:51 (where A = C = 0; B = 1) 18:33:57 Is its own third derivative 18:34:07 The actual code to be emitted must be Trusting Trust'ed into the compiler 18:36:49 Oh, neat, I just had a lie significantly with symlinks. I hope nothing breaks. 18:36:55 lie? 18:37:37 Had to call Emacs Aquamacs and the Emacs app bundle Aquamacs.app 18:37:52 Oz doesn't seem to care so far. 18:38:58 -!- NihilistDandy has quit (Quit: Textual IRC Client: www.textualapp.com). 18:39:25 Hmm, I think I need to think whether what I want is actually possible in the language I described 18:42:00 I should be able to, in a few steps with the language, write a compiler for a language that's identical except - and + flipped 18:42:13 ;,[;,]+; should also serve as a compiler for that language, written in that language, too 18:44:05 Wait, no it shouldn 18:44:07 shouldn't 18:44:10 It would be ;,[;,]-; 18:45:56 I'd like to know what those commands do 18:47:02 It's Brainfuck with an additional operation ; 18:47:22 gj Sgeo 18:47:28 what does ; do? 18:47:47 Say you have the Unicode codepoint for + in memory 18:48:02 Then ; at that position will output code to do + in some language 18:48:12 Let's say the target is machine code. ; then sort of compiles the + 18:49:02 ; on 0 emits a prelude if necessary. ; on 1 emits a postlude if necessary 18:50:01 http://blog.wolfram.com/2013/02/11/announcement-our-first-cbm-country/ 18:50:03 wolfram 18:50:06 you motherfucker 18:50:29 nortti, does this make sense? 18:50:50 This means that the code that knows how to turn + into machine code is not in the compiler 18:51:00 yeah 18:51:26 Phantom__Hoover: that bastard, choosing Estonia 18:54:18 -!- jix has quit (Quit: leaving). 18:54:39 -!- jix has joined. 19:03:03 Ok, I see how to make the + - flip 19:03:07 But it's... very... 19:03:12 Would result in verbose target code 19:03:19 Permanently from that point on 19:03:29 But I guess that that's not necessarily a terrible thing? 19:05:00 Python is probably an unusually bad language to target 19:08:25 You know what would be a good language to target? Some implementation of Common Lisp 19:08:46 Maybe 19:11:29 What should I call this language? 19:11:31 Trustfuck? 19:12:00 how about base it on underload instead 19:12:27 As in instead of Brainfuck, or as a target language? 19:12:41 * Sgeo looks at Underload 19:12:58 Oh right that one 19:12:58 Hmm 19:13:38 So, a command that takes the top element of the stack and puts on the stack the target code? 19:14:47 Do we still want to ... wait 19:15:01 Is Underload even compilable? 19:15:07 Without including an Underload interpreter? 19:15:21 * Sgeo glares at elliott 19:15:22 in times of doubt, uncertainty and generic undecisiveness... 19:15:24 ~yi 19:15:25 Your divination: "Great Exceeding" to "Small Accumulating" 19:15:51 Sgeo: yes. 19:15:55 Sgeo: I wrote an Underload compiler ages back 19:16:00 it is easy 19:16:38 I don't see an input mechanism :/ 19:17:24 I don't really see why you need input for this to work 19:17:28 ~yi 19:17:28 Your divination: "Small Accumulating" to "Small Accumulating" 19:17:37 is that bad 19:17:47 let me check... 19:18:25 you'll gain power by combining small things. 19:18:32 smell accumulating 19:18:33 ~yi 19:18:33 Your divination: "Diminishing" to "Centre Confirming" 19:18:39 elliott, technically I don't, but prepending the program to compile to the compiler seems like it would be an annoying way to do things 19:18:56 Wait, hmm 19:19:04 * Sgeo is slightly confused 19:19:31 Yeah, I'm sorry, I want input 19:19:48 lazy k? 19:20:38 Phantom__Hoover: looks cool 19:21:49 ~source 19:21:50 --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi 19:21:52 boring 19:21:56 ~duck 19:21:56 --- ~duck query 19:21:56 --- Query information from Duck Duck Go 19:22:25 whose bot is cuttlefish? 19:22:31 ~fortune 19:22:31 Accent on helpful side of your nature. Drain the moat. 19:22:33 nortti: mine. 19:22:51 Is LLVM difficult to learn? 19:23:16 it's 5 difficult 19:24:15 -!- monqy has joined. 19:24:33 * Sgeo wonders if an LLVM quine would be difficult 19:24:50 LLVM bytecode still has to be compiled though I think? So why bother? 19:25:00 you can interpret them too 19:25:48 Either way, they're not native 19:26:25 "native" is arbitrary 19:26:49 Sgeo: target scab 19:27:21 -!- TwilightSpockle has changed nick to Gregor. 19:27:29 * kmc runs Sgeo's "native" code in qemu on a Transmeta processor. checkmate. 19:27:48 -!- zzo38 has joined. 19:28:08 transmeta? 19:28:16 ~duck transmeta 19:28:16 Transmeta Corporation was a US-based corporation that licensed low power semiconductor intellectual property. 19:28:27 ~duck FOGL 19:28:27 Falkland Oil and Gas Ltd, abbreviated to FOGL, is an energy company registered in the Falkland Islands and headquartered in London, the United Kingdom. 19:28:28 "The actual Transmeta processors are in-order very long instruction word (VLIW) cores. To execute x86 code, a pure software-based instruction translator dynamically compiles or emulates x86 code sequences, using execution-hotspot guided heuristics." 19:28:59 it didn't do that well, but cool idea 19:29:29 I think I recall remembering something like that we saw once in an obscure elective I had back in university. 19:30:53 #jesus is hilarious 19:30:54 an "x86" CPU that got a software update to add NX bit and SSE3 support 19:31:53 Two people got into a people loop 19:32:49 -!- epicmonkey has quit (Ping timeout: 246 seconds). 19:33:02 there's an #jesus on freenode? 19:33:23 yes 19:33:43 I fail to relate this channel's possible subject with any FLOSS project. 19:33:45 a people loop? 19:33:54 olsner, two people repeating the same thing 19:34:00 a people loop? 19:34:08 boily: Look at the topic (you can look at it without joining) 19:34:13 One going "shut your foul mouth up now." and the other going "wash your own mouth first" 19:34:21 kmc, as opposed to a bot loop 19:34:23 are they arguing about the pope 19:34:39 boily, they have a link in the topic to the source for their channel bot 19:34:41 I don't think so 19:34:49 so maybe they're justifying it with that 19:34:57 oh well. here I join... 19:35:10 It's been around since 2003 19:35:24 So same way #esoteric justifies the single pound, I guess 19:35:44 http://www.plutorocks.com/ vote persephone 19:35:49 now, I'm perturbed. shouldn't have joined. 19:36:17 boily, you were in there and saw one line 19:36:25 What happened before and afterwards is far more perturbing 19:37:04 * boily puts his hands on his ears and wildly sings ♪ LA LA LA LA LA LA LA ♪ 19:38:46 nortti, isn't persephone the greek name 19:38:54 yes 19:39:16 Phantom__Hoover: why do you ask? 19:39:34 traditionally they use the roman ones 19:39:39 ah 19:39:46 in which case it should be... kore? 19:40:10 fun fact: persephone was actually hades' niece 19:40:16 I voted persephone, but then eurydice was fine too. in the end, I checked both. 19:40:36 Phantom__Hoover: how can kore be the roman name 19:40:42 it's not 19:40:42 kore means young girl in greek 19:41:02 but i was working off the part of the wp article visible on google 19:41:33 well I apologize, I haven't read the beginning of this conversation 19:41:48 I just needed to show off and inform everyone here that I knew ancient greek 19:42:25 wikipedia says that the roman's persephone is proserpina. 19:43:23 -!- Taneb has quit (Ping timeout: 245 seconds). 19:43:25 Maybe I should target Racket... wait, no 19:43:34 I still think targetting CL is the best idea... somehow 19:43:49 Or Haskell 19:43:55 But might be easier to write the quine in CL? 19:44:51 scheme? 19:49:04 Hmm, what Schemes compile nicely? 19:52:26 well there is stalin which seems like a pretty nice compiler 19:52:46 -!- WeThePeople has joined. 19:53:56 That's R4RS, right? 19:54:19 you should target Tcl via Ada and Clojure 19:54:21 -!- sirdancealot has quit (Ping timeout: 276 seconds). 19:55:23 o.O Sgeo: have a look at the sources of SBCL. Eg.: (defun car (x) (car x)) <--- !!! 19:55:52 Sgeo: yeah. r4rs 19:56:03 sgeo have you considered writing an interpreter for proof of concept before doing silly compiler things 19:56:31 Not... entirely sure what an interpreter for this language would look like 19:57:28 whats up with this language 19:58:59 -!- SirCmpwn has quit (Ping timeout: 252 seconds). 20:01:00 -!- DHeadshot has joined. 20:05:40 -!- SirCmpwn has joined. 20:06:34 -!- sirdancealot has joined. 20:11:27 -!- SirCmpwn has quit (Ping timeout: 260 seconds). 20:13:58 I may as well make the compiler just glue an interpreter to some source-like thing 20:14:50 -!- DHeadshot has quit (Ping timeout: 240 seconds). 20:17:15 Gah, need to remember esolangs password 20:17:49 have you considered using our handy password reset feature 20:18:05 There is no e-mail address recorded for user "Sgeo". 20:18:21 maybe you should have recorded an email........... 20:18:25 do you want me to reset it 20:18:49 Sure, thanks 20:22:04 monqy, at some point someone said 'metacircular compiler' and Sgeo rolled with it. 20:23:43 i thought it was sgeo not wanting to learn x86 to implement his language so he overcomplicates it into a horrible thought experiment and nobody knoiws what they're even talking about 20:24:04 Phantom__Hoover, I had the idea before anyone said "metacircular compiler" 20:24:16 I think someone decided that my idea was a metacircular compiler 20:24:28 oh was this your ridiculous language idea 20:24:45 sorry i was misled by the fact that this is only mildly ridiculous 20:25:35 monqy, the language idea is the same regardless of whether it targets x86 or not 20:25:45 Targetting x86 would be cooler though 20:26:18 There is still an implication I need to think through 20:26:22 Having some trouble with it 20:27:01 target stand-alone x86 20:27:14 make your programs bootable! 20:27:37 I don't think you can make a full program target stand-alone x86, but you can target PC. 20:28:29 Basically, I think it's currently a bit difficult to redefine ; 20:28:53 compatible with original pc 20:29:04 bios must have rom-basic 20:29:30 zzo38 makes an important point that is often forgotten 20:29:41 yeah 20:29:43 there are significant non-PC x86 systems 20:30:45 hell my college's intro microcontrollers class used a custom board (hand-soldered by students) with an 80186 20:30:46 Even disregarding those, though, the x86 is only the CPU and is not the keyboard, monitor, RAM, BIOS, disk, and everything else. 20:30:57 which was pretty terrible 20:31:27 i think they got a bulk discount on a 50 gallon drum full of 80186es back in the 80s and are still using them up 20:31:37 186? 20:31:41 -!- WeThePeople has quit (Quit: Leaving). 20:31:50 yep 20:31:56 What esolangs have I/O and are easy to write quines in? 20:32:03 Might make more sense to use that as a base 20:32:08 it was a halfassed attempt to make a microcontroller around the x86 architecture 20:32:19 but it still requires way more external chips than, say, a PIC or AVR 20:32:28 Trustfuck compiling to brainfuck. Would be a bit... pointless, but hmm 20:32:33 probably due to being old 20:33:47 here you are: http://wolverine.caltech.edu/eecs51/kits/index.htm http://wolverine.caltech.edu/eecs51/kits/kit51ins.htm 20:34:35 in this class i would find some unusual term used, google it, and the only hit would be this course website 20:34:41 nobody else cares about the 80186 20:36:25 -!- SirCmpwn has joined. 20:38:02 -!- Nisstyre has joined. 20:38:22 To redefine ; is a quine needed? 20:38:59 -!- WeThePeople has joined. 20:39:40 ; takes the value at the current location on the tape. If it is 0, it emits to output a "prelude". If it is 1, it emits to output an "epilogue". If it is any other value, it emits the code, in the target of the compiler, to perform the functionality of the 20:39:45 ANSWER: maybe? 20:39:57 !rot13 byfare 20:39:59 olsner 20:40:28 ah, twitter emails are sent from your email address rot13:d 20:43:26 * Sgeo goes to read an ActorScript tutorial 20:43:43 ok 20:43:55 oh god I thought it was going to be some cool thing of pure beauty but it has so many buzzwords 20:44:01 Tutorial for ActorScript 20:44:01 extension of C# 20:44:01 20:44:01 , Java 20:44:01 20:44:01 , Objective C 20:44:03 20:44:07 oops 20:44:46 -!- impomatic has joined. 20:44:55 what's this 20:45:08 and why is it cool/pure beauty/buzzwords 20:45:44 Sgeo: there may or may not be an attempt at humor hidden there 20:46:01 olsner, oh 20:46:44 ActorScript(TM): Industrial strength integration of local and nonlocal concurrency for Client-cloud Computing 20:47:26 It's all message passing based, apparently including the definition of the language 20:47:32 -!- SirCmpwn has quit (Ping timeout: 248 seconds). 20:47:58 -!- zzo38 has quit (Remote host closed the connection). 20:48:35 Ok, this paper is almost certainly a joke 20:49:00 "Unlike almost all previous programming languages, 20:49:00 because ActorScript uses bold font for reserved names, 20:49:00 new reserved words can be introduced into the 20:49:00 language without breaking existing programs." 20:49:25 :DDDD 20:49:29 doesn't algol do that 20:49:40 not sure if poe should be invoked... 20:49:44 in some original form 20:49:54 algol 58? 20:50:06 are you sure that's not something they just did in books to make the programs look pretty? 20:50:17 i heard that it was part of the language syntax, however I may have been misinformed 20:50:31 in those days I guess "bold" meant "make the typewriter hit it twice" 20:50:46 "punch an extra large hole in the card" 20:50:53 hmm, so if it says "while" in bold you're supposed to type wwhhiillee? 20:51:24 or maybe that plus backspaces 20:51:25 -!- asiekierka has quit (Read error: Connection reset by peer). 20:51:40 no, you type while 20:51:50 huh 20:51:52 (backspaces omitted) 21:11:54 Trustfuck is still a work in progress 21:14:24 i'll take your word for it 21:18:04 -!- WeThePeople has quit (Ping timeout: 252 seconds). 21:19:02 heh 21:31:14 Hmm 21:31:59 I forgot about : 21:33:47 -!- oerjan has joined. 21:34:25 How do I avoid making my metacircular compiler look like a cleverly hidden metacircular interpreter? 21:35:18 -!- hagb4rd has joined. 21:35:31 * oerjan looks at the logs and starts inflating like a balloon 21:35:54 * boily looks at the logs and starts inflating like a zimbabwean dollar 21:36:02 hi 21:36:03 Quiler still confuses me. And I inspired it 21:36:04 :/ 21:36:04 OKAY 21:36:10 -!- trout has changed nick to variable. 21:36:11 ~metar OKAY 21:36:11 --- Station not found! 21:36:16 meh. 21:38:28 -!- Taneb has joined. 21:39:04 Example might be easier 21:39:15 Perhaps, but perhaps not! 21:39:16 Let's say that memory looks like this 21:39:24 '+' | 1 | '-' 21:39:40 The Pope's resigning <-- wat, seriously? 21:39:58 That is, the current cell is the ASCII value for +, the cell to the right of that is 1, the cell to the right of that is the ASCII value for - 21:40:13 ~metar OKAS 21:40:13 --- Station not found! 21:40:18 ~metar OKAJ 21:40:19 --- Station not found! 21:40:19 ; will take that, and change what will happen when : is executed with '+' 21:40:25 ~metar OKBK 21:40:25 OKBK 112100Z 17006KT 8000 NSC 18/10 Q1008 NOSIG 21:40:25 Sgeo are you still prototyping this in brainfuck 21:40:42 Phantom__Hoover, until such time that a better language for this purpose is shown to me 21:40:50 But I agree there probably is a better language 21:40:56 idk, false? underload/ 21:41:11 fueue 21:41:12 Underload has no input facility, which kind of sucks for this purpose 21:41:16 * oerjan hides back under rock 21:41:28 false, then 21:41:56 -!- SirCmpwn has joined. 21:42:01 maybe even something functional 21:43:07 oerjan: I'm amazed that a brainfuck intepreter in Fueue could be that short 21:43:10 Seriously, well done 21:43:18 "prototype it in ada" - someone??? 21:43:19 THANK YOU. 21:43:23 "prototype it in dylan" - someone???, shortly after 21:43:30 * oerjan basks in his newfound divinity 21:43:47 -!- boily has quit (Quit: mon aéroglisseur est plein de lasagne française.). 21:43:51 -!- cuttlefish has quit (Remote host closed the connection). 21:43:58 monqy, I need two languages for this 21:44:10 1) A language to base it on. That is, a simple language whose semantics I extend 21:44:18 it could have been even shorter if i had left out all the error checking (for mismatched []) 21:44:18 "ada and dylan" 21:44:26 And 2) A language to serve as the target of an initial implementation 21:45:08 -!- SirCmpwn has quit (Excess Flood). 21:46:04 hmm 21:46:29 I think Brainfuck might still be fine as a basis 21:46:37 oerjan: fondly regard creation? 21:46:53 Taneb: wat 21:47:02 Especially with : and ; 21:47:09 oerjan: it's what gods do 21:47:25 ic. well my own creation, probably. 21:47:35 the rest is a bit mixed. 21:47:38 Although I don't know how implementable that is 21:48:14 would it be fair to say you're looking for a language in which you can write a 'general compiler' 21:48:17 http://www.mspaintadventures.com/?s=4&p=001326 21:48:26 shachaf: that isn't homestuck, don't worry 21:48:46 Phantom__Hoover, for which part? 21:48:54 i.e. if you have a compiler Q : A -> X, you can have a program P : A such that Q P : A -> X forall X? 21:49:01 and it's the same P? 21:49:45 erm 21:49:52 Sorry, I'm feeling a bit derpy right now 21:50:28 where A is the metacircular language, X is some target, P is the universal compiler, and Q P is the program in X that Q compiles P to, and this notation was a terrible idea 21:51:29 Hmm. Yes, I think 21:51:57 Although my current ; and : semantics rule out some Xs, which is sad 21:52:37 But :,[:,]+: is supposed to be a Trustfuck compiler, written in Trustfuck, for any target language 21:52:54 *that targets the language in which the compiler itself was... erm 21:53:09 the thing is, i'm fairly sure to implement this you basically have to include a copy of Q in Q P 21:53:55 That's done via quine 21:54:13 `quine is quite easily done 21:54:16 : expands to a quine in the target 21:54:16 ​`quine is quite easily done 21:56:29 `run $x = "$(quine)"; print "%s" "$x" #Is this the right syntax? 21:56:33 bash: =: command not found \ Warning: unknown mime-type for "%s" -- using "application/octet-stream" \ Warning: unknown mime-type for "" -- using "application/octet-stream" \ Error: no such file "%s" \ Error: no such file "" 21:56:42 hmph 21:57:14 `cat bin/log 21:57:15 ​#!/bin/sh \ cd /var/irclogs/_esoteric \ if [ "$1" ]; then \ grep -P -i -- "$1" ????-??-??.txt | shuf -n 1 \ else \ file=$(shuf -en 1 ????-??-??.txt) \ echo "$file:$(shuf -n 1 $file)" \ fi 21:57:29 `cat bin/'?' 21:57:30 cat: bin/'?': No such file or directory 21:57:34 `cat bin/? 21:57:36 ​#!/bin/sh \ topic=$(echo "$1" | tr A-Z a-z | sed "s/ *$//") \ topic1=$(echo "$topic" | sed "s/s$//") \ cd wisdom \ if [ \( "$topic" = "ngevd" \) -a \( -e ngevd \) ]; \ then cat /dev/urandom; \ elif [ -e "$topic" ]; \ then cat "$topic"; \ elif [ -e "$topic1" ]; \ then cat "$topic1"; \ else echo "$1? ¯\(°_o)/¯"; exit 1; 21:58:11 `run x="$(quine)"; print "%s" "$x" #Is this the right syntax? 21:58:15 Warning: unknown mime-type for "%s" -- using "application/octet-stream" \ Warning: unknown mime-type for "`run x="$(quine)"; print "%s" "$x" #Is this the right syntax?" -- using "application/octet-stream" \ Error: no such file "%s" \ Error: no such file "`run x="$(quine)"; print "%s" "$x" #Is this the right syntax?" 21:58:19 oops 21:58:23 `run x="$(quine)"; printf "%s" "$x" #Is this the right syntax? 21:58:27 ​`run x="$(quine)"; printf "%s" "$x" #Is this the right syntax? 21:58:38 there you go. 22:03:45 oerjan, have you been reading about my language? 22:04:00 i'm not very far in the logs 22:04:25 although you have started mentioning it 22:06:39 Don't think you have to use duplication for it, which is the trickiest thing in eodermdrome. <-- hm ideally you'd want [] to actually have a real cyclic path representation 22:06:46 *[] loops 22:08:36 i think the main difficulties with doing this in eodermdrome are (1) the limited number of letters forcing you to look at only small parts of the graph at a time - my BCT interpreter almost reached the limit although ais523 had a hunch it could be made to use less. (2) no implementation to actually test stuff in, which admittedly didn't stop me from doing BCT. 22:09:08 oerjan 22:09:15 there is a simple solution to 1 22:09:16 oh and you'd want complete character tables for I/O, but that was a thing with unlambda too. 22:09:32 at no point in the spec does it say you have to stick to ascii 22:09:59 i'm pretty sure that is implied. although i also jested about ... the other day. 22:10:08 a string of letters, representing a graph (see below); this is the match subgraph 22:10:12 * oerjan prepares to search the logs for what ... was 22:10:13 just says letters 22:10:23 no reason that can't include greek or cyrillic 22:10:55 `log 2013-02-11.txt:22:08:36: i think the main difficulties with doing this in eodermdrome are (1) the limited number of letters forcing you to look at only small parts of the graph at a time - my BCT interpreter almost reached the limit although ais523 had a hunch it could be made to use less. (2) no implementation to actually test stuff in, w 22:11:38 oh hm 22:11:51 -!- Taneb has quit (Quit: Page closed). 22:12:00 `log 2013-02-11.txt:22:10:55: `log fff 22:12:17 `pastlog No output. 22:12:45 `pastlog No output. 22:13:00 wat. 22:13:22 `pastlog there is a not-so-simple solution to 2, as well 22:13:29 No output. 22:13:43 oh wtf 22:13:57 YOU DON'T SAY 22:15:16 `pastlog No output. 22:15:29 this is awkward 22:16:21 `pastelogs http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.27897 22:17:12 oh wait 22:17:19 -!- carado has quit (Ping timeout: 246 seconds). 22:17:20 i changed consonants too. 22:18:09 `pastelogs http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.32689 22:18:52 2013-02-06.txt:20:54:15: we shall just have to make the Ëơđëřmđřơmë dialect, which has a large enough alphabet to be practical. 22:19:27 sorry, what were we talking about 22:19:49 my suggested name for a Unicode eodermdrome dialect 22:20:26 oh 22:20:31 how'd we get on to that 22:22:58 because i said eodermdrome had too few letters, and you said it wasn't restricted to ascii 22:24:43 Maybe not rewriting, but just making it interoperate with the new idiom fully... which still sounds difficult <-- this _does_ sound a bit like what you use monad stacks for in haskell 22:25:04 *monad transformer stacks 22:25:10 oerjan, you're still on that idea. I've since gone on to discuss something more plausible 22:25:27 Yet somehow more headachey 22:25:27 LOG READING TAKES TIME 22:25:32 OKAY 22:25:33 ok 22:52:24 I want a language where 'intern' is either a data type 22:52:27 or a modifier on a variable 22:55:18 How goes log-reading? 23:01:08 i'm currently recursing into ais523's comment on splinter, which has led me to hand-execute his converted PDA 23:12:14 How about eodermdrome with doubleletter and tripleletter constants, using some sort of escaping 23:22:12 no 23:22:13 unicode 23:22:19 much better 23:23:59 Phantom__Hoover, I'm starting to see what you mean 23:24:20 what did i mean 23:24:35 About needing to include the compiler 23:24:43 Suppose I want to make a modification 23:25:08 I'm going to end up needing to write a trustfuck quine in order to emit different code for : that stays consistent, I think 23:25:11 * Sgeo isn't certain though 23:25:29 * oerjan concludes Splinter is indeed a PDA 23:26:30 actually you definitely need to include a full compiler 23:27:06 ? 23:27:13 because the target language could have completely ridiculous semantics for concatenation or whatever, so you pretty much need to compile the code given to you holistically 23:27:45 Phantom__Hoover, with my current spec, the target language is constrained :( 23:28:49 well i'm satisfied that there's no way to do it 'properly' now 23:29:14 * oerjan suddenly realizes `addquote sounds funny when read aloud 23:30:02 Phantom__Hoover, eh? Just because I'm having a failure of imagination?? 23:30:09 s/\?\?/\?/ 23:31:15 no, because of the thing i just said 23:31:24 Phantom__Hoover, one of my original thoughts had { and } primitives 23:32:06 Where you go to one location in memory, then do {, then to another, then }, then those primitives proceed to compile the code represented within those memory locations into target language and output 23:32:12 you have to either include a compiler into the compiled program or include details of the target language into the language spec itself 23:32:13 (the "it didn't compile in the first place" isn't normally necessary, but it is if you suspect there's a strong AI in there) <-- "wtf is cat compiled with this 9 gigabytes? oh it was a bug in ls, it was fixed when i recompiled it." 23:32:52 "there was a similar bug in du and df" 23:33:14 Phantom__Hoover, should I go back to those primitives 23:33:16 Which is faster, multiplying two bignums and then taking the mod n, or taking the mod n of both, multiplying and taking the result mod n? 23:33:38 depends how big and how n relates, i expect 23:33:46 Sgeo, your best bet is to ignore my advice, because i'm thinking about something significantly different to you 23:33:53 for large numbers and small n the latter will probably be faster 23:34:00 but the real answer to "which is faster" questions is "benchmark it" 23:34:36 Phantom__Hoover, I think in a sense I am including a compiler into the compiled program 23:34:51 ...it's not "in a sense" 23:35:04 The : primitive (or {} primitives) are a compiler 23:35:50 yeah 23:36:04 so i have relatively little interest in the actual implementation of the whole thing 23:36:41 there are probably other interesting things you can do with the concept! but i suspect most of them will be equivalent to interesting things you can do with metacircular evaluators 23:37:07 * Sgeo isn't as used to metacircular evaluators as he'd like to be 23:37:50 the first time i heard the word 'metacircular' was with Gregor's amazing javascript token checking thing 23:42:27 "There's no doubt that Apple is at the center of technology's largest revolution ever" 23:42:35 I think I like the {} idea better 23:44:08 who needs agriculture or industrialization when you can have... ipads 23:44:47 {,[>,]<} 23:45:07 what kind of fucked up emoticon is that 23:46:27 Hmm, the semantics of { and } aren't clear enough in my head 23:48:59 -!- sirdancealot has quit (Ping timeout: 255 seconds). 23:56:59 -!- augur has quit (Remote host closed the connection). 23:58:08 Also I don't want to output <-- http://esolangs.org/wiki/Brainfuck_constants hth