00:01:20 * int-e wonders how horrible a shakespeare style for fungot would be 00:01:20 int-e: that is just a value of type is created containing the syntax for mark if he was really gonna ' let' me keep. i will walke my selfe, richard. then, heaven, i love thee well; and, by my friend, c 00:02:09 -!- scarf has joined. 00:02:19 -!- scarf has changed nick to ais523. 00:02:50 int-e: That's 'ss'. 00:03:01 ^style ss 00:03:01 Selected style: ss (Shakespeare's writings) 00:03:08 fungot: sing?! 00:03:09 int-e: enter eglamore, siluia. i to beare this away, where my hogshead of wine is, or any such proverb so little kin to the purpose? 00:03:33 fungot, hmm 00:03:33 int-e: rich. and shall do so: go all which way it will: if we draw lots, he fnord not me. i cut off's head, and follies doth emmew as falcon doth the fowle, is yet in keeping. what she is i' the hams? 00:03:53 emmew?! 00:04:01 fungot: pray tell us more 00:04:01 int-e: alo. irreparable is the losse, i cannot take peace with: no more 00:04:13 fungot: I said more, not less! 00:04:22 perfect. 00:04:32 That was all. 00:04:40 fungot 00:04:50 sniff. 00:04:55 fungot: please answer sir int-e 00:04:55 boily: por. in tearmes of friendship with thine enemies. pardon me, cobham, and the cheefe head of this most pompous fnord. the canons haue their bowels full of wrath, and sullen 00:05:14 Ominous. 00:05:23 Pompous fnord. 00:05:30 Oh well, it's not the worst fungot style. 00:05:30 int-e: third fisherman. what say you of this man. sirha, i say good queene, possest him with a stake, stood famous edward, still expecting when those dogs of france would fasten on his flesh. anon the death procuring knell begins: off go the cannons, that with some mixtures powerful o'er the blood, yet hath he in him such a minde of honor, truth, nor woman-hood in me else 00:05:41 (sms clearly wins *that* title) 00:05:53 ^style 00:05:53 Available: agora alice c64 ct darwin discworld enron europarl ff7 fisher fungot homestuck ic irc iwcs jargon lovecraft nethack oots pa qwantz sms speeches ss* wp youtube 00:05:56 -!- callforjudgement has quit (Ping timeout: 264 seconds). 00:06:43 "possest him with a stake" 00:06:45 boily: it does not help at all that the colloquial terms for members of the class Bivalvia are en:clam and no:musling 00:06:55 I think that depends on how you define 'worst'; technically speaking, sms works pretty well. 00:07:45 fizzie: but it hurts my brain to read any of the results 00:07:47 oerjan: indeed. tdnhat. 00:08:01 that did not help at t? 00:08:10 all. not t. a. 00:08:30 (I keep saying “a tall” in my head, instead of “at all”.) 00:11:47 ^style the_worst_style 00:11:47 Not found. 00:12:18 how often does fungot's fungot style get updated? 00:12:18 ais523: demetrius. is caesar yet gone to the hedge for shade, when in the streets he meetes such golden gifts: ile to dinner, and they were left neglected on the quay for more than i'll speak of. 00:13:04 irc and fungot both 00:13:04 oerjan: ros. neuer talke to me, master shallow, deepe maister shallow, that no enemy shall euer take aliue the noble brutus is ascended. silence! 00:13:14 (my guess: never happened) 00:13:20 ^style oots 00:13:20 Selected style: oots (Order Of The Stick) 00:13:36 fungot: more? 00:13:37 int-e: so, i know, i was, uh, as a provider, i would be as another sword arm this deadly but well-hidden booby trap, goblin friend, and she won't give the their holy power that i now fully believe that ' s, then and told me 00:15:04 fungot: update, I say! 00:15:04 boily: " the life and saving us from the orcs and told me what needed my strength. that now. get haley and i could bring to bear three degrees and... eight. 00:20:50 -!- MoALTz_ has joined. 00:23:45 -!- MoALTz has quit (Ping timeout: 244 seconds). 00:30:09 -!- Solace|zzz has quit (Quit: Connection closed for inactivity). 00:44:35 -!- vanila has joined. 01:01:45 -!- boily has quit (Quit: ELEMENTAL CHICKEN). 01:05:24 -!- callforjudgement has joined. 01:09:25 -!- ais523 has quit (Ping timeout: 265 seconds). 01:30:55 -!- Solace|zzz has joined. 01:32:57 -!- callforjudgement has quit (Read error: Connection reset by peer). 01:33:02 -!- scarf has joined. 01:33:53 -!- G33kDude has joined. 01:34:23 -!- nys has quit (Ping timeout: 240 seconds). 01:37:03 -!- GeekDude has quit (Ping timeout: 272 seconds). 01:38:07 -!- G33kDude has quit (Read error: Connection reset by peer). 01:39:52 -!- dianne has quit (Ping timeout: 256 seconds). 01:40:06 -!- GeekDude has joined. 01:40:13 -!- GeekDude has quit (Changing host). 01:40:14 -!- GeekDude has joined. 01:41:47 -!- dianne has joined. 01:42:48 -!- nys has joined. 01:43:43 Do you have a Christmas tree with birds? 01:45:25 -!- mihow has quit (Quit: mihow). 01:47:55 -!- tswett__ has joined. 01:48:31 -!- mihow has joined. 01:50:32 -!- tswett__ has quit (Client Quit). 01:51:57 -!- mihow has quit (Client Quit). 02:05:27 -!- oren has joined. 02:05:41 elliott: ever since i learned pinyin i pronounce "xor" as 'shor' hthyh 02:05:52 xor's algorithm 02:06:03 -!- arjanb has quit (Quit: zzz). 02:11:40 aldo in pinyin x normally only appears in cluster "xi" 02:14:18 or u, like xue "snow" for example 02:17:33 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 02:19:32 -!- nys has quit (Ping timeout: 250 seconds). 02:19:54 -!- nys has joined. 02:20:49 xure thing 02:31:00 I pronounce it /ksoɹ/ or so. 02:31:04 it also helps for pronouncing "words" like "x11"->'sheleven', "xinit"->'shinit' "xfce"->'shifke' 02:31:41 "xargs"->'shargs' 02:31:58 That’s easy enough to do if you pronounce it /ks/, unless you don’t speak a language that allows that cluster initially. 02:32:24 yeah i dunno, not many languages allow that... 02:32:48 German and Greek do. 02:34:57 -!- tswett has joined. 02:34:59 Ahoy. 02:35:02 So. 02:35:36 Intuitively, one would expect that, given any statement in number theory (which is to say, a statement where quantifiers range over the integers), the statement is either provable or non-provable. 02:35:58 After all, any given thing is either a valid proof or not a valid proof, right? 02:36:38 Except that proofs inevitably rely on axioms. 02:37:39 Is your intuition really that for any bunch of weird symbols, there is another bunch of weird symbols that satisfies one of two complicated relations 02:37:40 Some axioms are obviously "true", such as, say, all the axioms of first-order Peano arithmetic. 02:37:58 Jafet: not really. 02:38:17 Heck, leave off the quotation marks. All the axioms of first-order Peano arithmetic are certainly true. 02:38:20 "xcalc" i think /kskalk/ would be a lot more brutal than /ʃkalk/ 02:38:38 They are true by definition. 02:38:41 And then some axioms are "not obviously true", such as the axiom of choice. 02:38:58 zzo38: depends on your definition of the integers, I'd say. 02:39:02 The axioms of Peano arithmetic are true in Peano arithmetic 02:39:16 If you define them via the axioms of FOPA, then yeah, the axioms of FOPA are obviously true. 02:39:31 The exception if it is inconsistent in which case, everything is valid and it is not proper mathematicals. 02:40:21 oren: Most of the X Window System things I actually pronounce using the name of the letter, /ɛks/. 02:40:29 look up godel theory 02:40:53 xargs on the other hand is /ksaɹgz/. 02:41:26 just because something is true doens't meant you can prove it 02:41:51 Yes, I know Godel's theory 02:41:52 vanila: depends on your epistemology 02:42:05 zzo38, i wasnt meaning you 02:42:17 vanila: right. 02:42:19 tswett: then you cannot have such an intuition about Peano arithmetic either, because you can Gödel-encode any bunch of weird symbols into it 02:42:54 oren, re. epistemology take the true natural numbers to start with 02:43:52 So what I'm trying to figure out is whether or not there exists some sort of "standard theory of number theory", such that our intuitive notion of provabilty in number theory coincides with provability in STNT. 02:46:27 Jet lag 02:48:18 ? 02:48:40 That was meant to have a :( after it 02:48:49 I just woke up at quarter to three in the morning 02:48:54 i was ? the fact that i had been pinged 02:49:16 how much state does a finite-state matchine have to have to be useful 02:49:31 What is our intuitive notion of provability? 02:49:33 oren, you can recognize binary strings in 2 states 02:49:48 hm you could do it in 1 state actually 02:50:01 you can recognize (charset)* in one state X 02:50:06 with arcs X -> X for each char 02:50:17 quintopia, unless you get pinged by "jet lag" I have no idea 02:50:37 -!- tswett has quit (Ping timeout: 240 seconds). 02:50:49 zero states is enough to sit there uselessly 02:50:55 my log window is filled with reconnection attempts and lastlog revealed no clue 02:51:14 I'm a zero-state machine 02:51:16 isn't intuition more the province of psychology ? 02:51:23 elliott, doesn't a FSA need an initial state? 02:51:49 hahahahahahaha cant sleep because wife snores but at least i know how to do my random genrator now 02:52:06 @time J_Arcane 02:52:07 Local time for J_Arcane is Wednesday, December 24, 2014 4:52:11 AM 02:52:17 J_Arcane, you're in a better position than me 02:52:32 I can't sleep because jet lag, and I'm two hours behind you 02:52:45 And I have no idea how to do your RNG 02:52:54 -!- tswett has joined. 02:52:54 so for example, suppose i made a language for programming arbitrary FSA's with exactly N bits of state. would 8 bits be useful? 02:53:33 no 02:53:48 someone might need 9bits 02:54:00 Taneb: Racket has continuation-based generators. 02:54:10 Woo 02:54:15 hey J_Arcane good work on the BASIC LISP 02:54:18 I was too tired to figure out how to use them last night. 02:54:42 But I think I can make RANDOMIZE return or define a local generator RND to act as the random number generator. 02:55:08 It's not the strictest purity, but at least it's not full of ugly set! statements. 02:55:43 given that experiments have shown that therea are no hidden quantum states, could a true quantum computer be considered a stateless machine? 02:59:27 What does "hidden quantum states" mean and how does an experiment show there aren't any? 02:59:57 If you consider a classical computer stateless, yes 03:00:59 isn't a quantum computer just a quantum version of a normal computer 03:01:18 like you have the same state - but instead of 1,0 you have compelx linear combinations 03:02:17 -!- tswett has quit (Ping timeout: 240 seconds). 03:10:50 -!- tswett has joined. 03:13:24 -!- tswett has quit (Client Quit). 03:21:03 vanila: there's a lot in that "just". for one thing, it's reversible so you cannot simply delete/overwrite state 03:21:49 thats really interesting and important and I wonder how I never really caught onto that before 03:24:01 Sweet. I have an xorshift* generator. 03:24:11 and whether you keep a copy of temporary state around can affect the final observed result in the _other_ bits. 03:24:36 Now to make some syntax decisions. 03:24:53 (because it prevents different computation paths with the same final result but different temporary state from interfering) 03:27:46 -!- scarf has changed nick to ais523. 03:28:32 anyone want a hat for christmas. i will send you a hat or two. 03:29:21 * oerjan looks at Gregor 03:30:03 quintopia: What color of hats? 03:30:04 gregor is too stylish for outlandish party hats and baseball caps 03:30:15 ah 03:30:43 zzo38: they are mostly dark-coloured. blue and black. there's some yellow and white. some are woven from straw. 03:31:03 these ones are woven from straw and garlanded with silk flowers 03:31:14 (100% genuine polyester silk) 03:31:51 from genuine japanes polyester silk worms 03:31:54 *+e 03:32:27 IDEA: Brainfuck + goto 03:32:30 should be very easy to program in 03:32:42 brainfuck already has goto 03:32:48 it's called [ and ] 03:33:00 lol 03:33:16 What if you removed [ and ] and added goto 03:33:16 vanila: would you like an embroidered baseball cap from the albuquerque balloon festival 03:33:19 those are strictly nesting, gotos arent 03:33:20 Would it still be turing complete??? 03:33:31 only if it were computed goto 03:33:36 Jafet: um no branching? 03:33:36 thats ok, thanks though! 03:33:51 ooh computed goto 03:33:55 I like that! 03:34:19 that is both conditional and jump in one go 03:34:25 I mean this is like subleq isnt it? 03:34:27 OREN: YOU CAN NONETHELESS USE THEM LIKE GOTOS sorry caps lock accidental press 03:34:48 IDEA: brainfuck - brainfuck 03:34:49 goto and comefrom are so mundane these days. we need govia 03:35:26 it's just like brainfuck except that all the brainfuck commands are replaced with other unrelated ones 03:35:50 or passthrough 03:36:34 oerjan: or pass-go-collect-$200 03:36:39 it's like goto and comefrom except you have no idea _when_ you're going to pass through the label - it may already have happened, or may happen in the future 03:36:45 how about this 03:36:50 + - < > * 03:36:56 same as brainfuck except * is computed goto 03:37:26 CLC-INTERCAL even has computed NEXT FROM 03:37:27 journeythither 03:37:28 thats TC isnti t? 03:37:43 zzo38: so does C-INTERCAL 03:38:06 quintopia: what about garfield minus brainfuck wth 03:38:10 lol 03:38:43 oerjan: i was already thinking about square root of minus brainfuck 03:38:55 good, good 03:39:02 quintopia: sounds quantum 03:39:28 Other idea, make a esoteric programming language involving astronomy and astrology, somehow. (I don't know how.) 03:40:09 -!- Solace|zzz has quit (Quit: Connection closed for inactivity). 03:40:13 And, the other other idea, is make a esoteric programming language that is allow to make types subtraction and division by types, rather than only addition and multiplications. 03:40:45 oh wow that sounds mad! 03:41:11 (I don't know how to do that either.) 03:41:16 Subtypes and quotient types 03:41:27 You could try to invent remainder types 03:41:34 there was a paper about doing that 03:41:36 it was very esoteric 03:41:43 edwardk said it was nonsense or something :p 03:41:47 There is? I didn't see any such papers. 03:42:09 you mean amr sabry's one? 03:42:49 I can try and find it, I guess. 03:43:14 copumpkin: uhh, maybe. 03:43:15 link? 03:43:29 it involved time travel or something 03:43:34 it was kind of ridiculous 03:44:18 hey copumpkin 03:44:21 http://www.cs.indiana.edu/~sabry/papers/rational.pdf 03:44:23 hi vanila 03:44:32 joyal species is the thing i think 03:44:36 yes 03:44:37 it is this type 03:44:39 er, *this paper 03:44:54 read it if you like having fun, breaking rules, and showing it to the man 03:45:04 I skate on the road and I divide my types 03:45:06 misandry! 03:45:09 anything by Amr Sabry is going to be gold 03:48:21 reading that paper basically felt like being trolled really effectively 03:48:34 like, this is obviously total nonsense. but it does kinda work. 03:49:23 it involves reversible stuff so vanila will love it 03:50:21 but can an abrtriay txet be srcewd up and rbleessad? <-- *rbleeessmad hth 03:50:22 ill start at the end 03:50:27 haha 03:51:19 oerjan: u rbleeessmad? 03:51:25 hi copumpkin 03:51:38 did you read that thing 03:51:45 would the world be an overall better place if i stopped asking about it 03:51:50 webcomics have trained me to be pretty good at following narratives backwards 03:51:57 not sure it'd work for papers 03:51:57 shachaf: not ralley 03:52:36 elliott: you do the catchups starting from the end? 03:52:56 (i only do that for smbc which doesnt really have narrative) 03:53:10 when i see a webcomic I go to the start 03:53:15 and usually its not so good soi dont read it more 03:53:30 oerjan: I see a random webcomic and start going backwards 03:53:35 but yeah sometimes I do catchups from the end 03:53:50 whoa, i always thought "catsup" was a british but apparently it's american?? 03:53:52 it works better with comics that don't have continuity. backwards dinosaur comics is just dinosaur comics 03:53:52 vanila: that's a little stupid if it's improved a lot... 03:53:57 yes 03:54:11 vanila's strategy sounds good because you don't have to remember a lot of webcomics to follow 03:54:24 tru dat 03:55:17 shachaf, I don't actually know what catsup is 03:55:35 Taneb: a bizarre spelling of ketchup hth 03:55:39 it's a chinese fish sauce hth 03:56:03 ketsjup 03:56:27 Well, I don't apply condiments often, so neither of those definitions make me inclined to apply catsup 03:56:42 ketszjup is a polish condiment that goes well with gazspacho 03:57:00 oops, gaszpacho 03:57:19 I think hte only webcomics ive read fom start to finish are XKCD and ozzy and millie 03:57:43 vanila: xkcd hasn't finished hth 03:57:53 there was only about 100 when i read it 03:58:59 oerjan: https://twitter.com/mikko/status/506433143822630912 hth 03:59:14 -!- CrazyM4n has quit (Quit: so that's how you do quit messages). 03:59:38 what webcomic would i like to read? 04:00:38 vanila, 04:00:58 I was going to something than I get distracted by a thingy 04:01:51 shachaf: that comment about the hover text is something. also i wonder what the question was. 04:02:12 i think Taneb may be easily distracted 04:02:30 oerjan, the outside is scary 04:02:32 oerjan: which comment and what question twh 04:02:35 vanila: http://supermegacomics.com/ 04:02:44 (rip) 04:02:44 I love that one!!!!!!!!!!!!! 04:02:46 Omg I read it all 04:02:51 htat's the 3rd ive read 04:02:51 shachaf: from your link hth 04:03:05 oerjan: oh from twitter replies 04:04:22 oerjan: i was hoping for a reply involving more hyphen-minuses and octothorpes hth 04:05:30 oh. i didn't notice that. 04:07:53 shachaf: hi! no! and no! 04:08:06 I wonder if there's any stew left 04:08:07 copumpkin, do you have a blog 04:08:17 nope :( 04:08:23 copumpkin, is there any stew left? 04:08:25 what is up 04:08:33 copumpkin: wat 04:08:35 I'm doing some duolingo and waiting for my nix build to complete 04:08:37 whats been happening 04:08:44 copumpkin: which lingo 04:08:44 Taneb: not that I know of 04:08:51 how can there be anyone other than me who doesn't have a blog 04:08:54 shachaf: brushing up on some old french 04:09:02 oerjan, You can start a blag.txt 04:09:03 oerjan, I only have like half a blog 04:09:05 oerjan: sorry! I'll try to get one 04:09:22 Although it says at the top "Taneb's blog" 04:09:31 vanila: you seem to have misunderstood my question hth 04:09:36 http://mumble.net/~campbell/blag.txt 04:09:45 oh I know him 04:09:54 Taneb: is it http://nclk620tab.blogspot.com/ 04:10:09 shachaf, yes 04:10:11 Riastradh is great 04:10:16 oerjan, I can help you set it up just make a text file hth 04:10:29 shachaf, isn't that the capital of Saudi Arabia? 04:10:40 lol 04:10:43 not quite 04:12:31 haha he wrote aobut decompression quines 04:12:33 cool 04:12:42 oerjan, looking forward to reading it! 04:14:14 Taneb: i'm going to assume that's not actually your blog because that way i don't have to kill you for your font and text color choices hth 04:14:26 It is definitely not my blog 04:15:03 good, good 04:15:17 oerjan, do you reckon there is any stew left? 04:16:21 i cannot answer that because i cannot find the pun hth 04:17:01 There is no pun to my knowledge 04:17:12 But we had stew here last night but I went to bed early due to jet lag 04:17:13 oerjan: the pun is in the oy of the beholder hth 04:17:24 Now it's like quarter past 4 in the morning and I am hungry 04:17:37 But I am also undressed and upstairs 04:17:51 So I don't want to go to get stew if it's gonna turn out there is no stew 04:18:13 what if there's a salad 04:18:20 you only need to be as dressed as the salad hth 04:18:20 oy vey 04:19:06 fizzie: https://esolangs.org// this is a bit weird 04:19:17 the redirect should probably be ^/*$ in the nginx config or such 04:19:38 oerjan: i was amused by the finnish for "oh no" hth 04:21:08 elliott: this won't break /// ? 04:21:12 no 04:21:40 oh hm /wiki/ 04:22:10 shachaf: oy key 04:25:35 -!- nys has quit (Quit: quit). 04:47:01 -!- Solace|zzz has joined. 04:47:24 ugh. i just want to fucking sleep 04:53:18 Bless your frail heart 04:53:27 Go to sleep J_Arcane 04:53:41 my wife snores. 04:53:45 enough to wake the dead. 04:54:19 and because I have an ear infaction probably caused by wearing them in the first place, i'm not able to wear my ear plugs. 04:54:51 Sleep on the couch 04:55:00 Snoring is bad though also 04:55:04 Wake her up 04:55:17 She could stop breathing ;-; 04:55:41 :C 04:57:37 put on headphones and play white noise 05:00:33 cat /dev/urandom | aplay 05:01:05 turn volume just high enough to block out other sounds 05:03:05 I need to get to the shops anyway before they close for Christmas eve. 05:03:07 I don't think waking up chronic snorers constantly is a good course of action :p 05:03:26 I'd never get any sleep. I snore too. 05:05:57 Those scientist who calculated what white smell is 05:06:08 Just math no machine does it though 05:06:19 -!- Solace|zzz has changed nick to Solace. 05:10:10 png compressed images sound almost, but not quite, like white noise 05:11:56 whereas executables sound like a dialup modem 05:14:36 Oh god 05:14:42 Dialup modems 05:37:06 [wiki] [[Deadfish]] http://esolangs.org/w/index.php?diff=41534&oldid=41533 * Oerjan * (+0) /* Pascal */ Missed one 05:38:27 lol oren thats so weird 05:38:34 you can hear the difference in files.. 05:38:37 can you tell apart a jpg and a png? 05:38:45 haven't tried 05:38:47 what about XML vs lisp 05:40:25 yknow i have a screwed up synthesizer language... i oughta loom thru my old files more often 05:41:20 -!- Sprocklem has quit (Ping timeout: 264 seconds). 05:41:22 -!- MoALTz has joined. 05:41:34 a good compression _should_ sound like white noise, surely 05:41:57 ideally! 05:42:01 and encryption 05:42:51 -!- GeekDude has quit (Ping timeout: 244 seconds). 05:44:06 -!- MoALTz_ has quit (Ping timeout: 256 seconds). 05:45:07 [wiki] [[Ante]] http://esolangs.org/w/index.php?diff=41535&oldid=40778 * 76.247.183.16 * (+100) New interpreters and URLs 05:51:36 -!- MDude has changed nick to MDream. 05:51:47 Whats your favourite food? 05:52:03 XML vs lisp? 05:52:14 Lisp probably would win 05:52:23 Depending on whos battling who? 05:52:33 Solace, my favourite food is the singapore noodles recipe we have here, but I am currently in the mood for stew 05:52:53 XML vs lisp is like comparing Denmark to geometry 05:53:01 They are different sorts of things 05:53:20 Taneb: http://www.irregularwebcomic.net/961.html 05:53:45 oerjan, I will go downtairs soon to see if there is any stew 05:54:03 If there is I will microwave-heat it then take a photo to show you guys then eat it 05:54:15 My mum made it so it probably has actual meat (beef, apparently) 05:57:31 xml encoded json 05:58:58 newsham: http://www-01.ibm.com/support/knowledgecenter/SS9H2Y_6.0.0/com.ibm.dp.xi.doc/json_jsonx.html 05:59:01 How about a turkish game hen wrapped in a seasoned wrap of fine picked herbs with some cherry drizzle wrapped around the sides? 05:59:16 I think I prefer singapore noodles 05:59:24 Although I once had this really nice kangaroo steak 05:59:59 Amaze 06:00:01 i also 06:00:07 at bondi beach 06:00:17 had raspberry glaze or something 06:00:18 mmmmm 06:00:32 i never had kangaroo but i mentioned i've had ostrich 06:00:52 that joke was o stretch 06:00:53 -!- dts|pokeball has quit (Ping timeout: 240 seconds). 06:00:56 quintopia, this was in a restaurant in Melbourne, a few years ago 06:01:02 It had quite a gamey taste 06:01:07 Reminded me of partridge 06:01:11 vanila: what joke it's a simple fact hth 06:01:14 Another thing which I have eaten precisely once 06:01:50 that helped thanks 06:01:57 Kangaroo is tough for me 06:02:02 Shant eat again 06:02:09 I like softer meats and the like 06:02:11 Solace, that sounds like it was poorly cooked 06:02:18 Taneb: did you also get the accompanying pear tree twh 06:02:26 oerjan, I don't know, it was in a pie 06:02:32 ah 06:02:33 Probably 06:02:47 The resturaunt looked trashy tbh 06:02:58 I once had a really poorly cooked steak, but that was beef and I cooked it myself 06:03:22 Amaze 06:03:37 So xml parsing 06:03:52 Isnt that a horrifying subject for kids nowadays 06:04:09 I had to learn xml in my class last year 06:04:44 XML parsing is easy isnt it? 06:04:51 i thought the point of xml parsing was that you used a readymade parser for it 06:04:57 it's just 06:05:16 or is XML some ridiculously complex thing with a million exceptional cases 06:05:23 yes 06:05:26 well it's not that complex 06:05:37 but it's complex enough that the annoyance in parsing and emitting it is the nibbly bits 06:05:46 emitting is the bigger problem I think 06:05:53 since it is easy to fuck up and produce invalid output 06:05:58 vanila: also 06:06:01 also 06:06:13 also if you implement doctypes 06:06:18 also <가나다 라마바="asdf"> 06:06:18 then it's hideously, ridiculously complex 06:06:23 06:06:30 damn 06:06:31 also 06:06:39 it keeps happening 06:06:43 https://en.wikipedia.org/wiki/Billion_laughs XML! 06:06:50 also a CFG-inspired language for defining the schema 06:07:01 only to be replaced via another XML-based schema language 06:07:02 ive decided that XML is bad 06:07:12 also %entity; and &entity; 06:07:15 oh my god 06:07:17 thre's more and more 06:07:32 I think people hate doctypes these days though 06:07:33 also (okay, this is the least concern) 06:07:36 so it's okay to just ignore them 06:07:47 but if you want to hear about XSLT... 06:08:27 -!- adu has joined. 06:08:39 XSLT is a functional language, it must be good 06:09:23 elliott: are you for srsly? 06:09:32 no :p 06:09:46 but I suspect XSLT would be significantly less unbearable if its syntax wasn't XML 06:09:51 I would classify XSLT as a declarative language 06:10:06 I'm pretty sure it's even intended to be a purely functional language 06:10:15 instead of being accidentally that way like C++ templates 06:10:38 hmm, I wonder what AWK is classified as... 06:10:51 "data-driven" according to wp 06:11:49 How to keep the last doughnut 06:11:52 Hold the doughnut aloft And announce "This is the last doughnut, Does anyone wish to split this with me" Then proceed to touch as many sides of the doughnut as possible 06:11:54 XSLT is classified as "declarative" according to wp 06:12:03 We extend Pi our reversible programming language of type isomorphisms 06:12:09 is this an esolang? 06:12:19 yes :p 06:12:28 Dagger Traced Symmetric Monoidal Categories and Reversible Programming 06:12:32 any sufficiently useless type theory paper is an esolang 06:12:55 We develop a reversible programming language from elemen- 06:12:55 tary mathematical and categorical foundations. 06:13:08 XML was made to make kids hate code 06:13:09 Imo 06:13:25 An implementation of the language along 06:13:25 with several programming examples are available for download from 06:13:25 http: 06:13:25 /www.cs.indiana.edu/ 06:13:25 ~ 06:13:26 sabry/papers/reversible.tar.gz 06:13:28 plausible 06:13:43 www.cs.indiana.edu/~sabry/papers/reversible.tar.gz 06:14:21 Omfg why is called a billion laughs 06:14:27 Why am i laughing 06:14:34 Make it end 06:14:51 * oerjan hits Solace with the saucepan ===\__/ 06:15:36 Thanks 06:15:43 But the name 06:15:45 you're welcome 06:15:53 its funny :) 06:15:56 A billion laughs is a dos attack 06:16:04 Solace: it's explained... 06:16:09 I know 06:16:13 dos attack? 06:16:20 denial of service 06:16:23 But its so funny to me 06:16:33 what name? 06:16:41 A billion laughs 06:16:50 is that a name? 06:16:51 XML bomb 06:17:00 Solace, A billion laughs 06:17:01 Give him the link 06:17:12 How about this 06:17:20 A billion Symmetric Monoidal Categories 06:17:26 When i discover funny things in xml i kinda cry 06:17:56 Cuz i had to use it to pass an MIT class in sophtmore year 06:18:16 I should've used it on them ;-; 06:18:24 vanila: do you have any documentation? 06:18:46 you need to see my driving liscnece? 06:18:52 no 06:19:04 like about Pi 06:19:06 http://www.cs.indiana.edu/~sabry/papers/cat-rev.pdf 06:19:34 thanks :) 06:21:55 omg this is beautiful 06:22:10 all those arrows 06:25:31 I always read buffer overflow as butter overflow 06:25:35 Im silly 06:29:50 deriving license 06:29:56 also known as degree 06:29:59 *as a degree 06:30:35 Deriving? 06:30:41 Or driving 06:31:06 deriving 06:31:40 so apparently i made an esolang at least a few years ago, which is for composing music 06:32:05 by some miracle the code still works 06:35:22 at the time i thought that this what a perfectly readable syntax: http://pastebin.com/qBCPGLyy 06:35:58 s/what/was 06:35:58 that looks very songlike! 06:36:26 Its amazing 06:37:00 http://www.speedyshare.com/hRBMt/temp.min <-- play with aplay -fS16_LE -r20000 temp.min 06:37:26 thatis what comes out of the crawling horror of a compiler that i wrote 06:37:33 haha 06:37:58 seriously play it, it is music. 06:38:42 Pi^o is really hard to understand 06:38:43 the compiler is made of a mix of shell, C and perl. 06:39:22 "all expressible computations are reversible." wow 06:39:53 -!- Patashu has joined. 06:43:54 -!- Patashu has quit (Disconnected by services). 06:43:54 -!- Patashu_ has joined. 06:44:54 Snatches head phones from brother 06:57:08 -!- ais523 has quit (Read error: Connection reset by peer). 06:57:20 -!- ais523 has joined. 06:57:54 Do you have the documentation of that music program? 07:01:01 -!- drdanmaku has quit (Quit: -). 07:02:14 There was none. here is the source code, an ode to the ire of pitiless gods: https://gist.github.com/orenwatson/95550bb34b4c8cc2e155 07:02:49 This is awesome! 07:03:33 basically you do ./acfplayer.sh foo.acf to comile and play a music 07:04:52 i think this is porbably from my freshamn year 07:06:48 ok so essentially, i think i figured out how it works 07:06:50 There are also several MML compilers for composing music though, and there is also Csound. 07:07:59 it uses sscanf... wait WTF!?!? 07:08:13 scanf is a fine parsing tool 07:08:16 "sscanf(line,"%lf %lf %lf %lf %lf %d %lf %lf &lf"" 07:08:30 provided that you actually check the return value 07:08:41 "&lf"... "&lf" god damn it it still works despite that 07:08:42 oren: wait, &lf? 07:08:45 lol 07:09:13 oren: ah, no it would work 07:09:26 oren: it has eight %s and eight arguments 07:10:03 oh why the hell, past me, what the hell wre you thinking 07:10:58 see it is a rolling horror 07:11:08 the trailing ` &lf` will be consumed if there is 07:11:18 but does not affect any output (including the return value, afaik) 07:11:39 I guess scanf(" "); can be used to skip whitespaces 07:13:48 Yes, why is there "&lf" in there, it contain many things aren't so good in this program, such as it require four files; it also just doesn't seems to do much even important things compared with most other software. 07:15:20 zzo38: i told you it is a rolling horror... 07:15:39 -!- shikhin has joined. 07:15:39 i forgot entirely about it until i found it today 07:16:38 Well, next time you can use a MML compiler if you want to, it will work better. (Such as, using ppMCK can make up a .NSF music.) 07:17:00 l'horreur qui chante 07:18:15 -!- ais523 has quit (Ping timeout: 252 seconds). 07:18:36 So smart l - l 07:19:49 Actaully the final language after going thru all steps is similar to MML. consider: 2+2, the 2 indicates a 1/2 note, the +2 indicated two semitones above the base tone for the track 07:21:18 N1 2+0 2+2 2+6 2+2 2 2+6 2+2 2+0 07:21:29 (inspired by vaguely remembering https://en.wikipedia.org/wiki/L%27Homme_qui_marche_I) 07:21:32 that is 4 bars of music 07:21:49 so the 2 without a pitch is a rest of course 07:22:19 OK, I can see that 07:22:34 to me numbering the semitones made for sense than the inconsistent letter system 07:25:49 oh no i'm reading it wrong. 0 is a whole rest, 1 is a 1/2 rest 2 is a 1/4 rest and so one 07:26:26 this line: $length=60.0/$tempo/(2.0**$1); 07:26:32 This is one file for ppMCK http://2a03.free.fr/dl.php?file=4228 It uses a few commands that I have added in to the program myself such as * ? ' commands. 07:28:13 Document of ppMCK: http://vgmrips.net/wiki/PpMCK 07:29:37 The "n" command can still be used to specify number of semitone like you have 07:34:42 hmm, no named macros? 07:35:40 That is correct; you can only use numbers (or, for text macros, you can use any single character to identify it). 07:36:06 For example I defined text macro *+ for major chords and *- for minor chords; but, it is possible to define them however you want. 07:37:35 that's kind of primitive. even my rolling horror has macros with names 07:38:19 Yes, although I have never needed macros with names. 07:38:35 then again the macros.pl could be usedwith almost any language 07:42:02 that is the advantage of making something as several separate modules. you can reuse them for a different purpose 07:44:10 Yes, it can help with many things, if you can use pipes and such. 07:44:31 So if you want you could use a preprocessor with ppMCK and other MML compilers too. 07:49:40 -!- adu has quit (Quit: adu). 08:04:50 good morning 08:07:04 早安, mroman 08:10:01 it's 3 am, barely morning 08:19:54 it's 8 am, late night 08:27:05 -!- Patashu_ has quit (Remote host closed the connection). 08:27:15 -!- Patashu has joined. 08:40:08 well 08:40:14 you're in the wrong time-zone then!!! 08:40:39 5:40 pm 08:40:50 it's a good day to work and I'm not working now 08:42:01 10:41 here, but I finished this at around 5am: https://github.com/jarcane/heresy/blob/494bc39cb0c77f0fdba4e3cbd12e382cf1a3027d/private/random.rkt 08:42:56 lifthrasiir: working, on 5:40 pm christmas eve? silly koreans. 08:43:16 oerjan: and I'm on the vacation next week 08:43:38 OKAY 08:49:12 dammit. This is what I get for using tab instead of spaces. The indentation on the y-combinator factorial example in Heresy's docs is broken. 08:57:42 http://ws.apache.org/xmlrpc/apidocs/org/apache/xmlrpc/server/RequestProcessorFactoryFactory.html 09:08:05 https://plus.google.com/+JeanBaptisteQueru/posts/9oHHUMpwYhG 09:14:20 oerjan, God jul 09:14:46 Or do you say something else in Norway? 09:15:12 exactly the same words 09:15:18 God jul 09:15:25 Same spelling too? Nice 09:15:44 Hyvää joulua from the country who's not in the language club. 09:15:56 I guess "joulua" is from the same roots. 09:16:25 (Partitive form of "joulu".) 09:17:01 As for "hyvä"... "From Proto-Finnic *hüvä, from Proto-Uralic *šeŋä. Cognates include Estonian hea and Veps hüvä and Sami savvit or Erzyan чив (čiv). Possibly of Indo-Iranian origin." 09:17:08 imo why wouldn't jul be in july 09:17:58 shachaf, well it is jul as in the (old?) English yule. 09:18:14 I think it has a different origin than July (juli in Swedish) 09:18:17 yule forgive me for not making the connection 09:18:40 Vorpal: july is from julius caesar 09:18:54 And Yule is "either cognate with[1][2][3] or from[4][5] Old Norse jól". 09:18:56 -!- roasted42 has joined. 09:19:22 shachaf, but every summer some company tend to make some ad with Father Christmas in it just to try to be funny. Probably funny the first time, but not any longer. 09:20:16 oerjan, makes sense 09:21:17 oerjan, Speaking of Caesar and months, wasn't it he who screwed up the calendar so that December is no longer the 10th month as the name would imply? Same goes for September and forwards even 09:21:46 Vorpal: iirc that screwing up was done before his reform 09:21:52 Ah 09:22:14 someone linked a nice overview here, let me see if i can find it again 09:24:51 メリークリスマス 09:26:18 the japanese were not creative 09:27:51 Is lambdabot broken? It told me I had one new message in /msg, but when I asked it for it, I didn't get anything 09:28:05 gah too many sites i cannot recognize which it was 09:28:43 明けましておめでとうございます 09:28:54 grmble google doesn't seem to have crawled that date 09:29:00 Vorpal: ask int-e 09:29:21 lifthrasiir, which language is that? 09:30:18 oerjan, strange, I can't do a double-whois on int-e to get his/her idle time. Maybe pending netsplit is the cause of both of these issues? 09:30:30 > 2+2 09:30:30 4 09:30:43 Wow that is some lag, lambdabot just answered 09:30:44 @messages? 09:30:44 Sorry, no messages today. 09:30:49 like 5 seconds ago 09:30:59 he's recently changed the saving mechanism, to help against data not being saved properly 09:31:27 oerjan said 25d 57m 24s ago: Is there a way to say to cabal "fix mixed versions"? I.e rebuild any packages depending on different versions of a package so that everything just works, and I don't get weird errors. <-- apart from the sandbox thing, i vaguely think that if you install all the packages as _one_ cabal install command it will 09:31:28 Hm 09:31:56 Okay, thanks for the tip, sadly I installed haskell-platform using my package manager. So that will be fun to deal with... 09:33:18 oerjan, yeah there seems to be some major lag issues atm 09:34:38 Vorpal: Japanese, "happy new year" 09:34:38 akemashite omedeto gozaimasu 09:35:45 but that used to lose messages and resend old ones, not forget things one moment to the next 09:35:45 Vorpal: um from my point of view lambdabot answered immediately. 09:35:46 -!- roasted42 has quit (Changing host). 09:35:46 -!- roasted42 has joined. 09:35:46 -!- roasted42 has changed nick to TheM4ch1n3. 09:35:46 Vorpal: hm that sounds like the old problem 09:35:46 unless you actually haven't spoken since then 09:35:47 all tests so far imply it's you who are lagged relative to me, lambdabot and int-e 09:35:47 actually irssi refuses to ping lambdabot 09:35:47 @do hi 09:35:47 hi 09:35:47 lo 09:35:47 Vorpal: if you are responding to pings, you are horribly lagged because you haven't responded yet :P 09:36:07 there it arrived 09:36:24 10:34 CTCP PING reply from int-e: 0.284 seconds 09:36:24 10:35 CTCP PING reply from Vorpal: 267.534 seconds 09:37:05 oerjan, I'm not lagged relative the server I'm connecting to according to znc 09:37:15 oerjan, but yes I'm lagged relative some other persons 09:37:55 oerjan, anyway it seems to be lag bursts, sometimes lambdabot pings directly, sometimes it doesn't 09:39:36 Vorpal: changing server often helps 09:39:49 -!- TheM4ch1n3 has quit (Ping timeout: 265 seconds). 09:40:09 -!- Solace has quit (Quit: Connection closed for inactivity). 10:01:48 -!- oren has quit (Ping timeout: 258 seconds). 10:42:17 -!- MoALTz has quit (Quit: Leaving). 11:01:33 hmm. I think my math is all wrong. 11:04:17 -!- shikhin has quit (Ping timeout: 258 seconds). 11:07:12 Converting my 64-bit integer down into a fraction that can then fulfill the expected usecase of int(rnd * n) + 1 11:10:08 the quick and dirty method is to use modulo n 11:10:24 it will not be entirely uniform if n isn't a power of 2, though. 11:11:23 and will be very skewed if n is close to 64 bits large 11:12:05 The algo I'm using does in fact spit out a 64-bit number. 11:12:40 i'm not talking about the number spit out, i'm talking about the n in your int(rnd * n) + 1 11:14:18 hm... 11:14:50 i guess there's also a problem if lower bits are less random than higher 11:15:53 hm 11:16:15 from the other end, divide 2^64 by n 11:16:41 then divide your spit out number by the result of that. 11:17:07 rounding down in both cases, i think. 11:17:37 if the result is n, pick a new number and retry. 11:19:56 third method, look up how this is actually supposed to be done. 11:20:13 * oerjan helpful 11:21:19 Yes. 11:21:24 This is probably a smart option. 11:21:33 That's the hardest method though 11:21:50 ain't it always 11:22:17 especially if the people giving stupid answers give a lot of google hits :P 11:23:05 It seems there's trickier math involved in getting a fraction that will be in a range such that (* (rnd) 6) actually spits out something between 0 and 5. 11:25:48 oh hm wait that's easy enough 11:26:21 x * 6 `div` (2^64) 11:26:39 that will be somewhat skewed though 11:27:31 Very skewed: that's basically the first thing I tried. 11:27:34 by which i mean, not all numbers 0..5 equally "likely" 11:28:09 for a non-skewed version, you _have_ to throw away some cases. 11:28:16 (see my second option above) 11:28:54 it shouldn't be _very_ skewed mind you - some of the numbers will have 1 more 64-bit number giving them than the others. 11:31:33 different way of doing the second method: let y = 2^64 - (2^64 % 6). throw away every number >= y (at most 5), for the rest do x * 6 `div` y 11:32:03 mixing C and haskell is so useful 11:32:44 well, see, I'm trying to implement (rnd) itself, according to the BASIC spec, ie. a random number between 0 and 1. I won't necessarily know n, so I can't write that factor into the implementation easily (unless I divert from spec and just add an argument to RND) 11:33:20 But at the moment, it consistently produces numbers which are far too small to use for that use case. 11:33:44 well rnd = x / (2^64) is basically the way to go if your spit-out numbers are 64-bits... 11:34:20 oerjan: what... 11:34:40 int-e: what what? 11:34:51 Or 2^64-1 11:35:29 you want to include 1 as a possibility? ok but that'll complicate choosing integers again later 11:35:36 oerjan: wondering about the ping. and what do you mean by "irssi refuses to ping lambdabot"? I don't see why it would do that; it's just that lambdabot won't reply :P 11:36:04 Which is what I've been trying to do, and getting weird results. 11:36:26 int-e: when i do /ping lambdabot irssi doesn't say that it sent any ctcp 11:36:43 unlike for the rest of you 11:37:02 oh hm 11:37:07 -!- Phantom_Hoover has joined. 11:37:13 int-e: i'm stupid 11:37:19 For example, given the numbers I'm getting over (2^64), doing (for/list ([x (in-range 100)]) (add1 (truncate (* (rnd) 6)))) gives me a list composed almost entirely of 1s and 2s. 11:37:22 forgot i have a lambdabot query window 11:37:32 heh 11:37:36 correction: entirely 1s and 2s. 11:37:39 and for some reason those messages don't mark the window as active 11:38:23 int-e: i was pinging you because Vorpal said you were unwhoisable 11:38:41 Perhaps you should try debugging that program 11:39:52 oerjan: I figured it out. It's just that I saw the ping completely out of context. My active channel was #ghc... 11:41:11 oerjan: (Which has not seen any activity in the last two hours, just some people joining and leaving. So it looked like a recent thing until I looked at the time stamp.) 11:44:18 Jafet: that would seem to imply that your fractions are between 1/6 and 1/3 the size they should be... 11:44:25 oops 11:44:32 J_Arcane: ^ 11:44:38 oerjan: Well, ditching the float technique and doing result % n does indeed give a 0 to n range it looks like. But visibly irregular results. 11:45:10 (and very weighted to the bottom) 11:45:20 the result % n thing might be too sensitive to patterns in the formula 11:45:33 modulo n 11:47:03 in the "low bits", vaguely speaking 11:48:56 Maybe I should just accept I don't know what I'm doing and fall back to Racket's built-ins. XD 11:49:19 shocking 11:50:12 I can *easily* rewrite the code in place without breaking the semantics. 11:50:28 And it's all git-versioned so if I want to come back to it the code's around somewhere ... 11:55:08 oerjan: Oh http://golf.shinh.org/p.rb?One+Point is a bit frustrating. First I took ages to figure out what sequence that is... and now I have 74 characters for Haskell where henkma has 70... 11:56:17 And I still don't know whether "One Point" is supposed to be a hint. 12:00:08 * oerjan checked oeis 12:01:18 https://oeis.org/A030303 12:02:00 it's the points where there are ones... 12:03:41 ah. why did OEIS fail me... 12:04:11 i dunno, did you use spaces instead of commas? 12:04:34 because ... yeah that. 12:08:45 This is not quite the only channel I watch that's not dead, but it's pretty close. 12:17:34 oerjan: (one of the annoying little details is that the bits are only collected up to 254. 255 instead would help me...) 12:18:12 heh 12:18:57 -!- Patashu has quit (Ping timeout: 240 seconds). 12:23:24 interesting... dc makes 0^-1 = 0. 12:23:31 (wtf) 12:26:24 blargh. wtf doesn't racket's make-random-generator take a seed argument? 12:29:26 because you can use random-seed followed by current-pseudo-random-generator? 12:29:45 but more likely nobody really thought about this. 12:31:00 `run echo '0^(-1)' | bc 12:31:00 Runtime error (func=(main), adr=4): divide by zero 12:31:20 J_Arcane: and there's the vector->pseudo-random-generator thing. 12:31:57 `run echo '0 _1 ^ p' | dc 12:31:57 0 12:32:05 I suppose as long as the current-generator parameter obeys scope it's OK ish. 12:32:08 in other news I think that racket looks a bit like scheme ;-) 12:34:28 Well, it did start out as a Scheme, and it's mostly still one at heart. IT was just a matter of them not wanting to be bound by the standard or expectations anymore. 12:35:14 J_Arcane: Actually I'd sort of expect there to be potential races with other threads. Actually it's even unclear whether random-seed makes a new RNG or just replaces the state... 12:36:03 (mutable data is so annoying.) 12:36:18 int-e: Indeed it is. 12:37:08 -!- oerjan has quit (Quit: leaving). 12:37:30 That's curious, because GNU dc is built on bc. (dc ^ is using the same bc_raise as bc ^.) 12:39:42 int-e: Also annoying is that the value range for the seed is 32-bits, but the timer is 64-bits. So it actually uses some internal derivation when seeding from (current-milliseconds) that I thus have to account for somehow, and that means I may have to rewrite my spec anyway ... :/ 12:41:11 (with-current-time 12345678901234578 (random-seed)) 12:42:21 once you have mutable data, time travel looks almost sane :P 12:45:08 I had defined a syntax for a BASIC-style "timer" var, but since (curr-ms) is 64-bits, you can't actually use it with randomize. I will have to derive some formula that turns any 64-bit number into a 32-bit that's valid for a seed. 12:46:52 (lambda (x) 42) 12:47:25 :D 12:48:39 I suppose I could just bitmask the first half of the number ... 12:55:40 * int-e sees #include "schmach.h" and goes looking for "schande.h" 12:55:57 Yes, that works. Just bit-shift off 32 digits and bam, 32-bit number. :D 12:56:06 * J_Arcane is not a hacker, just a hack ... 12:57:16 J_Arcane: you know, the lower bits will vary much faster than the upper bits. You could even take the number modulo 2^32-5 or so. 12:58:02 Hmm. I didn't think about doing it with modulo. 12:58:14 I just did (arithmetic-shift seed -32). 12:58:30 But your way makes more sense. 13:01:52 ah, better make that modulo 2^31-1: if (scheme_get_int_val(o, &i)) { if (i > 2147483647) i = -1; } 13:05:10 Good point. I did: (modulo seed (sub1 (expt 2 31))) 13:17:34 anyway, random-seed will destroy the current RNG state, and current-prng obviously can't make a copy. 13:21:49 Next: I must figure out which racket function works best for basic's int(). 13:22:34 int-e: This is what I did: https://github.com/jarcane/heresy/blob/master/private/random.rkt 13:28:14 J_Arcane: I'm not sure whether I can read this. Does rnd re-seed every time its called? 13:28:33 int-e: No, or at least, it shouldn't if I've understood generators correctly. 13:29:52 Generators are continuations. IIUC, the computation should remain inside loop after first run. So it just keeps taking new numbers from the current PNRG. 13:31:13 pseudo-number random generator, hmm 13:31:19 XD 13:31:48 brain is tired. weeks of insomnia and sleep problems and also trying to emergency thaw a ham. 13:31:50 Anyway, all I'm saying is you're on your own there; I don't know Racket. 13:32:02 :D No worries. 13:55:50 -!- copumpkin has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…). 14:13:42 -!- S1 has joined. 14:21:30 -!- shikhin has joined. 14:29:53 -!- vanila has quit (Ping timeout: 240 seconds). 14:33:05 -!- boily has joined. 14:35:08 Good afternoon 14:39:19 `` dc <<<125P 14:39:20 ​} 14:39:30 `` dc <<<122P 14:39:30 z 14:50:03 -!- tswett has joined. 14:54:17 -!- tswett has quit (Ping timeout: 240 seconds). 14:55:42 -!- coppro has quit (Ping timeout: 245 seconds). 15:02:33 -!- vanila has joined. 15:26:42 `` dc <<<[1xp]x 15:26:42 No output. 15:26:57 `` dc <<<1xp 15:26:58 1 15:27:27 `` dc <<<[[1x]xp]x 15:27:28 1 15:29:08 (Of course, if one were to believe the documentation, 1x should have the same effect as just 1: push 1 on the stack. It does not mention that x on a number exits one level of macro execution.) 15:32:23 -!- GeekDude has joined. 15:43:18 -!- coppro has joined. 15:48:47 -!- scoofy has joined. 15:55:11 -!- tswett has joined. 15:55:16 Ahoy. 15:55:39 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds). 15:55:51 Is there a largest ordinal number A such that the set of all ordinal numbers below A has computable arithmetic? 16:02:03 what operations do you require in arithmetic? 16:03:19 The answer may strongly depend on what representation you use for computation 16:06:54 if A is a limit ordinal, then you can just add it, along with A*0=0,A+0=A*1=A, anything else with A is out of range 16:07:17 -!- tswett has quit (Ping timeout: 240 seconds). 16:07:52 and it seems that ordinals below A cannot be combined to get to A 16:08:33 wait, that's not true 16:09:02 e.g. A=2*w = w+w 16:09:43 or is that w*2 ? 16:10:28 it's w*2 16:12:53 ok, so 2*w=w 16:19:50 `? tswett 16:19:51 tswett is livin' it up with the penguins 16:23:42 ooh, dc 16:24:19 int-e, yeah, I noticed strange behavior with doing x on a number too 16:24:25 https://en.wikipedia.org/wiki/Recursive_ordinal , hmm. Unfortunately, deciding the well-order is not sufficient for arithmetic, or is it? 16:28:35 https://en.wikipedia.org/wiki/Kleene%27s_O 16:28:55 Apparently arithmetic is computable but equality is not?? 16:28:56 Oh weait. w_1^CK is just a supremum. Of course there is a supremum for the ordinals with computable arithmetic as well. All I'm really looking for is a proof that this supremum itself does not have computable arithmetic. 16:30:44 Hmmmm. 16:32:43 Oh it's just data Ord = Zero | Succ Ord | Lim (Nat -> Ord), where the Nat -> Ord function is computable. 16:35:05 So right, if you forgo equality tests then that will work. 16:36:24 -!- arjanb has joined. 16:36:55 -!- Phantom_Hoover has joined. 16:39:00 -!- silverstream has joined. 16:42:18 -!- MDream has changed nick to MDude. 16:58:11 -!- drdanmaku has joined. 16:59:10 -!- S1 has quit (Quit: S1). 17:20:04 Damn you people, there's too many fun languages to learn! 17:31:46 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds). 17:34:35 -!- shikhin_ has joined. 17:35:26 -!- dts|pokeball has joined. 17:37:23 -!- shikhin has quit (Ping timeout: 240 seconds). 17:49:23 -!- roasted42 has joined. 17:54:29 -!- roasted42 has quit (Remote host closed the connection). 17:58:36 -!- oren has joined. 17:59:13 my power is back on 17:59:14 -!- boily has quit (Quit: COMESTIBLE CHICKEN). 18:01:55 -!- roasted42 has joined. 18:04:20 when i was a kid it used to snow on christmas eve. what is this "freezing rain", "sleet" crap? 18:04:41 yeah seriously, who is evn in charge anymore? 18:05:24 oil companies 18:05:29 apparently not santa claus 18:06:09 -!- roasted42 has quit (Ping timeout: 252 seconds). 18:09:05 Santa Claus is dead by now. 18:10:09 at least, your heating bills are low 18:10:41 we are using a wood stove this morning cause the hydro was out 18:11:14 (in Ontario the electric power is refered to as "the hydro") 18:12:28 do you heat with electricity? 18:13:41 i am at my grandparents' house. they have electric and wood. my house in toronto has gas everything 18:15:27 gas stoves are way easier to cook on than electric 18:18:44 -!- dts|pokeball has quit (Read error: Connection reset by peer). 18:19:26 -!- dts|pokeball has joined. 18:19:40 `addquote when i was a kid it used to snow on christmas eve. what is this "freezing rain", "sleet" crap? yeah seriously, who is evn in charge anymore? apparently not santa claus Santa Claus is dead by now. 18:19:44 1227) when i was a kid it used to snow on christmas eve. what is this "freezing rain", "sleet" crap? yeah seriously, who is evn in charge anymore? apparently not santa claus Santa Claus is dead by now. 18:20:00 santa ist tot 18:20:03 -!- nys has joined. 18:22:28 I thought that was Nietzsche. 18:23:04 oh no, Nietzsche is alive and well 18:23:15 just met him recently, he's definitely doing fine 18:23:49 nietzsche is the new santa 18:26:25 -!- roasted42 has joined. 18:26:54 he's fine when with his mother 18:30:52 -!- roasted42 has quit (Ping timeout: 240 seconds). 18:36:33 Nietzsche is dead too. 18:39:08 -!- shikhin_ has changed nick to shikhin. 18:40:57 -!- roasted42 has joined. 18:41:49 you have googled this! 18:43:14 No I have not 18:43:45 I looked it up in Wikipedia 18:44:04 hipster 18:45:07 hi silverstream! how did you find this channel? 18:45:17 -!- roasted42 has quit (Ping timeout: 240 seconds). 18:45:51 /list 18:46:31 `relcome silverstream 18:46:32 ​silverstream: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: . (For the other kind of esoterica, try #esoteric on irc.dal.net.) 18:46:33 but while you asK: i'm looking for a channel with database pros.. any suggestions? 18:46:37 thank you 18:46:52 likw database theory in general 18:47:21 #sql 18:48:49 What database implementation are you using specifically? There are many such as SQLite and MySQL and others. 18:49:00 (And a few which aren't based on SQL.) 18:49:04 that's undecided yet 18:49:21 i'm playing with the thoughts to use nosql.. actually 18:49:52 i would like to know what architecture to use for a fast tag engine 18:51:23 haaaving "element" as the basic object from which everything else derives.. while elements can be tagged 18:52:14 what's nosql exactly? 18:52:53 they key value revolution ..pushed by google..memcache..mongo etc.. google 18:53:13 it's fast and ..scalable 18:53:34 the fun part being that the nosql databases tend to acquire query languages over time. 18:57:42 I suppose it also depend what you are making, what help the most. 18:57:48 I happen to like SQLite. 18:58:48 sqlite is somehow the opposite of the nosql databases. 18:59:26 SQLite does not have stored procedures, although I do not believe stored procedures are useful. It does allow triggers on views though, and I find that a very useful feature. SQLite also supports recursive WITH, and virtual tables, extension loading, and a few other things which are pretty useful really. 18:59:35 local, often exclusive access to a (often small) database vs. shared, distributed, huge databases. 19:01:35 sqlite has a fairly powerful query language, while nosql started out with simple key -> value lookups. 19:02:03 also sqlite is not a buzzword, nosql is. 19:02:38 Yes, they can help for different purposes. 19:03:29 how is sqlite a buzzword? it's a valid solution in some cases 19:03:48 silverstream: "not" 19:04:31 cu ..and thanks 19:04:33 -!- silverstream has left. 19:04:37 -!- ChanServ has set channel mode: +o elliott. 19:04:41 -!- elliott has set channel mode: +b $a:silverstream. 19:04:46 -!- elliott has set channel mode: -b *!*@koln*.pool.mediaWays.net. 19:04:47 that was weird. 19:04:54 let's leave his ISP unbanned so it's easier to tell next time 19:04:55 -!- elliott has set channel mode: -o elliott. 19:05:08 (I talked to him in /msg.) 19:05:51 I admire your persistence. 19:06:06 thankfully his typing style is so distinctive and he tends to talk about the same random off-topic things right after joining 19:06:17 int-e: I admire his :P 19:06:37 it's like the world's most boring game of cat and mouse -_- 19:06:46 Even in my most active times as #math (now ##math) op I never bothered to identify ban evaders before they actually misbehaved again. 19:07:52 well, I don't want to encourage people who have been banned for repeatedly being horrible jerks to people to get their one free asshole card every time they switch to a new name :/ 19:07:56 SQLite is a full programming language and you do not need to deal with file formats since SQLite will do those things automatically for you; so you can extend a table by using ALTER TABLE and add triggers by using CREATE TRIGGER and change the indexing and still the file format is the same format and you don't need to worry about it. 19:08:08 if I recall correctly he even ban evaded the first time he got a _temporary_ ban for that 19:08:31 -!- roasted42 has joined. 19:08:50 elliott: but holding grudges takes so much energy. 19:09:15 meh, it's like an exciting rivalry 19:09:26 except it's just my boredom vs. a really persistent jerk 19:09:43 Oh it's a hobby, why didn't you say so. 19:09:50 ehe 19:10:01 My favorite database format is the flat binary file. 19:10:23 well, it's more like I tend to be pretty good at recognising typing styles and the like, so once someone talks a bit my brain usually fires off the signal and it's easier to deal with it than ignore it :/ 19:10:25 mine is the rounded. that is better than the flat. 19:11:06 /dev/null is nice and round. 19:11:24 (maybe if he didn't ban evade immediately after getting permabanned he'd actually get a second chance, but it's pretty clear by now he just wants to keep trying so he can continue the behaviour he got banned for...) 19:11:40 (well... more like fourth or fifth chance, he got kicked/banned a bit before it actually became permanent.) 19:11:43 oren: If you do not need it to be extensible or user programmable then a flat binary file will work 19:13:07 -!- roasted42 has quit (Remote host closed the connection). 19:13:24 zzo38: and i maintain that that is true in most applications 19:13:45 Maybe. 19:14:25 but i find people using XML or SQL or CSV all the time when a flat serialization would work fine 19:15:35 Even for text I prefer tab-separated-values rather than comma-separated values. 19:16:00 in CSV the C stands for "character" 19:16:44 it does...? 19:16:48 are you sure it isn't comma 19:16:48 it does 19:16:59 https://en.wikipedia.org/wiki/Comma-separated_values says comma 19:17:17 My Christmas eve dinner: http://imgur.com/gallery/XRzUX/new 19:17:48 hehe. what is golf? http://golf.shinh.org/reveal.rb?Base+37/hebiyan_1418620884&hs 19:18:44 J_Arcane: what's the finnish equivalent of lutefisk or surströmming? 19:19:03 int-e: they left out the spaces before the import lists, it's all good 19:19:05 elliott: They do have lutefisk here. 19:19:11 also the type signatures 19:19:25 lipeäkala. 19:20:15 We declined that option (it's more of a Norwegian/Swedish thing) and instead snacked on gravlax for late lunch while the food cooked. 19:20:17 -!- roasted42 has joined. 19:21:24 Also, if SQL is used it allow to deal with it externally using SQLite command-line program and also you do not need to define another embedded scripting language to deal with the data since SQL already does so. 19:22:28 -!- singingboyo has quit (Ping timeout: 255 seconds). 19:34:40 -!- roasted42 has quit (Remote host closed the connection). 19:48:14 -!- Lorenzo64 has joined. 20:04:51 -!- mitchs has joined. 20:10:14 -!- roasted42 has joined. 20:22:39 -!- roasted42 has quit (Ping timeout: 265 seconds). 20:26:34 -!- roasted42 has joined. 20:27:37 Amazingly, the bct interpreter for eodermdrome seems to work 20:31:38 -!- roasted42 has quit (Remote host closed the connection). 20:34:22 -!- Lorenzo64 has quit (Read error: Connection reset by peer). 20:34:38 -!- roasted42 has joined. 20:39:40 `unidecode 13 20:39:41 ​[U+FF11 FULLWIDTH DIGIT ONE] [U+FF13 FULLWIDTH DIGIT THREE] 20:47:22 -!- FreeFull has quit (Ping timeout: 245 seconds). 20:49:28 -!- FreeFull has joined. 20:58:48 There are wide versions of all the latin characters. 21:00:00 is this worse or better than allcaps? 21:00:13 kewl 21:00:44 !@#$%^&*()<>?:”{} 21:01:16 \/+-=_~ 21:07:53 does elliott get pinged if i say his name like this? 21:10:01 -!- MDude has quit (Ping timeout: 255 seconds). 21:10:27 ヤッパリ elliott ピング シナカッタ ナ~。 21:18:16 -!- spiette has quit (Quit: :qa!). 21:20:07 lel 21:22:13 -!- roasted42 has quit (Ping timeout: 258 seconds). 21:22:27 -!- Patashu has joined. 21:23:47 Have an esoteric christmas, everyone 21:24:14 -!- roasted42 has joined. 21:34:37 damn! 88 bytes 21:38:15 -!- oerjan has joined. 21:39:36 oerjan: GG was updated really early today. 21:39:51 i know 21:39:57 i got it before going to bed 21:41:22 now waiting for the collatz parity revelation 21:42:04 oh they're both revealed today? 21:42:12 yes. 21:42:34 i was only able to do 86 bytes of C 21:43:26 so i want to know what sorcery they sorcered 21:43:45 how about the IOCCC when is tha revealed? 21:43:51 Did you try calling functions without arguments, hoping the right values are already on the stack? 21:43:59 that's funny, not a single character difference between our and henkma's base 37 solutions :P 21:44:17 oerjan: yes. I was surprised, henkma doesn't usually submit one-liners like that. 21:44:59 oerjan, I wrote that too 21:45:07 same exact length program 21:45:18 int-e: mine involves terible abuse of ? and : 21:45:23 i idny submit bcecause i didnt win 21:45:24 vanila: length is easy if you're trying to compete... 21:45:52 oren: if you mean x?:y = x if x is true, that's actually documented for gcc. 21:45:59 but having the exact same choice of everything... although i guess there wasn't much choice, using m@ is sort of "standard" 21:46:18 I used m@ too 21:46:43 using newline instead of ; could have happened, but didn't 21:46:43 -!- roasted42 has quit (Ping timeout: 272 seconds). 21:47:04 oerjan: I'm curious about henkma's solution, but obviously even more curious about tails' dc one :) 21:47:13 in theory putStr.($"\n") would have worked, but no one ever does that :P 21:47:43 int-e: ok i'm just looking at the haskell ones usually 21:48:11 oerjan: actually I have a variant of the same length in my file: import Numeric;m@main=do n<-readLn;putStrLn$showIntAtBase 37((['0'..'9']++['a'..'z']++"A")!!)n"";m 21:48:33 ah ok so do notation is the same? 21:48:37 yes 21:48:37 yes 21:48:41 had to be tried ;) 21:48:42 i compared both 21:48:52 usually it's a little longer if you don't _need_ to define a name 21:49:10 but i guess the ($ ...) section compensates 21:49:26 (because I can't do the arithmetic in my head reliably - three more there, two less there, one less there, plus/minus one :) 21:49:34 right 21:49:41 i may have tried it too 21:49:56 I want to win a golf 21:49:58 but im tnot good 21:50:01 yep it's there in my file 21:50:03 i might as well submit my best shot 21:50:33 no one else got 86 anyway 21:50:40 oerjan: what about collatz parity, what's your best shot? 21:50:57 oh wait hm mine is one char longer than yours 21:52:02 oh i should have used !! as a section, i used it prefix and got a useless $ 21:52:27 oh, henkma had a different variant of the formula, so that's where he found the extra spaces. 21:53:14 -!- Solace has joined. 21:53:24 So I was worried for no reason at all. 21:53:30 Help 21:53:38 Hello* 21:54:02 never mind my output is very slightly wrong 21:54:16 int-e: i didn't get it below 91 21:55:32 i assume i didn't find the actual clever trick, now to peek -> 21:56:07 Night~ 21:56:19 that hebiyan guy is also one of those weird "golfing? what's that" guys 21:57:58 oerjan: main=putStr$[-256..256]>>=(64?);0?_="|\n";n?k|t<-mod k 2=" #"!!t:(n-1)?div(3^t*k)2 <-- I didn't think this required much cleverness. The last 2 characters were tricky though. 22:03:02 my brain must have been off because i never realized 3^t 22:03:13 so i kept having two branches 22:03:48 oerjan: I had (2*t+1)*k at some point. 22:03:52 -!- Lymia has quit (Ping timeout: 256 seconds). 22:04:01 but ok, missing that explains a lot 22:07:30 -!- Lymia has joined. 22:07:30 -!- Lymia has quit (Changing host). 22:07:30 -!- Lymia has joined. 22:08:57 so easy, tails just did things modulo 2^64 ... 22:09:17 which is wrong in the long term, but works for the first 64 bits. 22:10:52 lol what is golf? 22:14:32 I should rename all my files to the widechar versions 22:16:14 why can’t i put widechars in my nick? 22:16:17 obviously inferior, doesn't trigger myndzi |o| 22:16:17 | 22:16:17 /< 22:17:05 /nick oren 22:17:29 cos... nick chars are like... limited? 22:17:40 why are they limited? 22:17:42 you cannot just use random chars... 22:17:49 cos that's what the RFC defines 22:18:08 well you can make your own irc server 22:18:11 and allow wide chars 22:18:11 If you rename your files to widechar versions then it will cause a lot of problems, so you should not do that. 22:18:13 -!- oren has changed nick to {\[oren]|}. 22:18:28 <{\[oren]|}> close enough 22:19:12 oh well, as long as or still expands to the right one... 22:19:37 { expands t 22:19:39 {\[oren]|}, 22:19:40 <{\[oren]|}> zzo38:it will cause problems by being hilarious 22:27:22 <{\[oren]|}> http://ctrlv.in/478265 see,funny right? 22:28:56 interesting, it filters your backslash 22:29:57 <{\[oren]|}> that is just from using japanese font 22:30:23 <{\[oren]|}> small \ is yen sign 22:30:48 i predict this will eventually be hilarious by getting you kicked hth 22:30:51 lol 22:30:57 for the yen sign 22:31:33 <{\[oren]|}> new esolang: C but all characters wide 22:31:53 what's the point of that 22:31:59 at least if you used japanese chars... 22:32:24 <{\[oren]|}> yeah! C with all things replaced with kanji 22:32:34 sounds better! 22:32:42 imagine some 'obfuscated C contest' entries in that 22:32:53 'only kanji allowed' 22:33:03 well, just write a bunch of macros 22:33:50 {\[oren]|}: also change your text color to blue. then you can program in the wide blue C 22:34:14 <{\[oren]|}> 数 本(){書く(「こんにちは」);} 22:34:23 eh 22:34:30 hardcore 22:34:38 LEVEL: asian 22:35:11 <{\[oren]|}> using kanji that mean basically the right thing 22:35:26 oerjan: have you seen http://golf.shinh.org/reveal.rb?Base+37/_1418756541&cs ... it has a comment in the list initializer! 22:35:34 <{\[oren]|}> and then use 「」 for quotes 22:35:43 `addquote <{\[oren]|}> zzo38:it will cause problems by being hilariou 22:35:44 1228) <{\[oren]|}> zzo38:it will cause problems by being hilariou 22:36:31 You probably also need to return a value in 本 22:36:43 `cat bin/addquote 22:36:43 ​#!/bin/sh \ [ "$1" ] || exit 1 \ printf "%s\n" "$1" >>quotes \ printf "%d) %s" $(qc | cut -d' ' -f1) "$1" 22:36:54 `` tail -1 quotes 22:36:54 ​<{\[oren]|}> zzo38:it will cause problems by being hilariou 22:37:06 wide 's' missing 22:37:18 s 22:37:24 oops 22:37:28 <{\[oren]|}> Jafet: oh right, unless we define 空 本 instead 22:37:33 `` sed -i -e '1228s/$/s/' quotes 22:37:34 No output. 22:37:37 `` tail -1 quotes 22:37:38 ​<{\[oren]|}> zzo38:it will cause problems by being hilarious 22:37:39 <{\[oren]|}> but void main is not standard 22:37:45 int-e: now i have hth 22:37:51 c99 does not require return in main 22:38:43 #include \nint main() { exit(1); } should be valid. 22:38:56 int main() {} is valid 22:38:57 isn't exit an implied 'return' also? 22:39:14 scoofy: not really. 22:39:16 The exit() function never returns, it just exist. 22:39:22 s/exist/exits/ 22:39:24 <{\[oren]|}> in gcc exit has the no return attribute 22:39:25 why do you pass '1' to it then 22:39:31 if it does not 'return' anything 22:39:40 in fact you can check the return value after you call the program 22:39:45 normally 22:39:45 <{\[oren]|}> it returns it to the calling contextof the shole program 22:39:50 scoofy: It sets the program's exit code. That's not a return value. 22:39:56 yep. to me, that's a 'return' value. 22:40:07 after all, you can simply do main() {return 1;} // does the same 22:40:14 It is the return value of the entire program, not of main. 22:40:15 except you don't need #include 22:40:19 exactly. 22:40:19 scoofy: On the other hand, the return value of main() will be the exit code of the program. 22:40:25 However the return value of main is used as the return value of the program. 22:40:25 exactly. 22:40:30 exactly. 22:40:31 scoofy: it's a case of an A that's a B, where B is not an A. 22:40:44 to me, that's a 'return value'. 22:40:54 you cannot convince me otherwise :) 22:40:55 s/exist/exits/ <-- i think i prefer it without the substitution hth 22:41:09 scoofy: You made that clear. But it should be obvious by now that we don't agree on this. 22:41:14 that is the value that will be in the EAX register (in case of x86) after the main() function gets called. 22:41:15 <{\[oren]|}> so i have a program that converts unicode C to regular C, then i'll add some #defines for all the kanji 22:41:32 so ... just to be precise, we're taling about a value in a register 22:41:36 after a function call 22:41:44 and whether we should call that 'return value' or 'exit value' 22:41:47 it's just a value in a register 22:41:49 basically 22:42:03 <{\[oren]|}> C doesn't assume registers exist 22:42:07 How exactly the program returns to the operating system depends on the system. 22:42:09 scoofy: Well exit(1); does not return and still sets the exit code. 22:42:25 -!- Phantom_Hoover has joined. 22:42:28 well, code after 'exit(1)' does not executed so.. yes it does return. 22:42:30 do I have to teach scoofy out of thinking about C in terms of x86 assemly too? 22:42:33 you cannot run C on a computer that has no registers. 22:42:37 yes you can, wtf 22:42:46 *assembly 22:42:53 well, you can simulate a stack machine with a machine that has registers. 22:43:06 scoofy: the only reason returning from main exits in real implementations is because it does the equivalent of exit(main(argc, argv)) 22:43:07 and compile your C code to code for that stack machine. except, no one does that. 22:43:10 C has a "register" command, but on computers without registers it will just act the same as if "register" is not specified. 22:43:21 if I do f(g()) and g calls f, that's not g "returning". 22:43:22 exactly. 22:43:27 so it *knows* about registers. 22:43:30 Even on computers that do have registers, the optimizer might get rid of the "register" specification. 22:43:36 what 22:43:41 If it knows a better way. 22:43:53 well 'register' is a C keyword. isn't? 22:43:55 iirc gcc and clang both just totally ignore the "register" declaration 22:43:56 You can run C on a machine that runs only brainfuck 22:44:02 scoofy: which compilers tend to ignore 22:44:04 Jafet: proof? 22:44:05 I don't think the C standard mentions registers when defining it, though I may be wrong 22:44:09 i mean, have you actually done it? 22:44:17 there are multiple C->BF compilers... 22:44:22 BF is turing complete, what more proof do you need? 22:44:27 scoofy: in any case the only implication of that keyword is that it's illegal to take an address of that value. No more, no less. 22:44:28 ok,. 22:44:29 proof of what 22:44:32 it's still a "Return value". 22:44:32 :) 22:44:45 dont' change the topic, please 22:44:47 vanila: running C in BF, I guess...? 22:44:50 https://svn.code.sf.net/p/brainfuck/code/c2bf/trunk 22:44:56 that's bfc 22:44:57 not Ansi C 22:45:06 ais523 has an incomplete brainfuck backend for gcc 22:45:10 i never saw an ANSI C -> BF compiler 22:45:21 it's really hard to run C is brainfuck 22:45:23 I don't believe you actually don't believe it's possible, it's just a bunch of work nobody wants to do, why is that relevant to what Jafet said...? 22:45:28 the speed of the code will suffer 22:45:33 yeah, 'incomplete'. 22:45:40 -!- {\[oren]|} has changed nick to oren{[\afk|}]. 22:45:41 it's important to separate theory and practice 22:45:43 Ok, well this is pointless 22:45:48 just because something is possible in theory doesn't mean you can actually do it 22:45:54 e.g. it might be too difficult 22:46:06 Github also does some pretty pointless things 22:46:08 Oh well. Let's relax and enjoy https://xkcd.com/386/ ;-) 22:46:10 “Great repository names are short and memorable. Need inspiration? How about drunken-octo-wallhack.” 22:46:48 Still it doesn't matter if the C standard mentions registers or not because computers without registers can just treated it as if it doesn't say register on it. However, it makes it known that the address is not taken, therefore if the compiler cannot figure it out by itself for some reason, it will know due to that; one thing that can be done if address is not taken, is storing in a register instead of in RAM. 22:47:03 Jafet: not short, but certainly memorable 22:47:03 -!- oerjan has set topic: The channel of returning trolls | but often spelled correctly. | https://dl.dropboxusercontent.com/u/2023808/wisdom.pdf http://codu.org/logs/_esoteric/ http://tunes.org/~nef/logs/esoteric/. 22:47:09 oops 22:47:22 oerjan: that's not too bad :) 22:47:31 ...i guess it's better that way. 22:47:47 scoofy, what is your question? 22:48:10 me? nope, no question. 22:48:13 ok 22:54:46 by the way, in a bash shell, you can check the return value of a program by this: 22:54:48 echo $? 22:54:51 yes 22:55:06 ive used this feature in bash 22:55:07 main() {return 42;} 22:55:17 gcc ret.c -o ret 22:55:18 ./ret 22:55:20 echo $? 22:55:22 ---> 42 22:55:33 same thing with exit(): 22:55:46 #include 22:55:51 main() {exit(42);} 22:55:56 gcc ret2.c -o ret2 22:55:57 @tell tswett Is there a largest ordinal number A such that the set of all ordinal numbers below A has computable arithmetic? <-- my hunch is no: whatever computation system you use, you can _always_ adjust it to handle one more level. 22:55:57 Consider it noted. 22:55:57 ./ret2 22:55:58 echo $? 22:55:59 ---> 42 22:56:01 same result 22:56:20 scoofy, that's right 22:56:47 you can try it to confirm yourself, that the effect of 'return' and 'exit' is the same 22:57:01 its not the same 22:57:07 semantics. 22:57:09 would you like to see a situation where they act differently? 22:57:13 please. 22:57:25 well, there's 1 different case: when you call main() yourself from the program. 22:57:32 unless you do that - no difference. 22:57:34 in main() 22:57:40 @tell tswett Now, if you change the question to "Is there a largest ordinal number A such that for each ordinal number B < A, the set of all ordinal numbers below B has computable arithmetic?" then the answer becomes "yes". 22:57:40 Consider it noted. 22:57:47 int f() { return 42; } main() { return 1+f(); } 22:58:00 int f() { return exit(42); } main() { return 1+f(); } 22:58:05 lol 22:58:06 i said 22:58:08 IN MAIN 22:58:14 not IN ANOTHER function 22:58:21 you're right about in main 22:58:25 of course that will exit the program in f() 22:58:30 yes 22:58:35 i meant: exit() and return have the same role IN MAIN function *only*. 22:58:44 (and, not other functions.) 22:58:46 correct 22:58:53 i'm glad we agree. 22:58:57 scoofy: i don't believe anyone here disagrees with you on a matter of fact, just terminology. 22:59:06 do you have any more questions about beginner level C? 22:59:08 okay, just clarified that. 22:59:18 do you have any? 22:59:22 -!- roasted42 has joined. 23:00:44 scoofy, you can read assembly code can't you? 23:00:50 i can. 23:01:01 what about comparing the assembly code for ret and ret2? 23:01:08 they will likely be different. 23:01:12 so what's your point? 23:01:34 its just a learning exercise, but looks like you already understand 23:01:40 in assembly, there are usually at least 10 ways of doing something. 23:02:07 dude, i create virtual machines and write assemblers myself 23:02:18 but thanks for your 'basic learning tips' 23:02:36 oh sorry 23:02:39 no problem 23:02:47 i didn't realize 23:02:52 im just a beginner at assembly 23:03:04 it is fun! ;) 23:03:19 yea him enjoying learning about it but its so painstakingly slow 23:03:33 why so? 23:03:45 im used to high level languages 23:03:51 so asm is like building brick by brick 23:03:57 indeed. 23:03:58 but i want to get good at it so i can write a compiler 23:04:04 that's a good excercise. 23:04:12 one of the best, actually. 23:04:15 :D 23:04:42 a side effect of learning assembly deeply, is that you will never look at the 'higher level' languages the same way 23:04:58 because after writing a compiler, you will realize that everything translates to registers and operations on them 23:05:06 yeah I know what you mean! 23:05:12 however high level abstractions you start from 23:05:23 Oh it's just data Ord = Zero | Succ Ord | Lim (Nat -> Ord), where the Nat -> Ord function is computable. <-- i think that's essentially the representation that was used by whoever here implemented the goodstein sequence in System F after it was pointed out this should be possible 23:05:42 i think it may have been impomatic 23:05:42 data Ord = Zero | Succ Ord | Lim (Nat -> Ord) seems awfully small 23:05:44 what about 23:05:54 data Ord2 = Zero2 | Succ2 Ord2 | Lim (Ord -> Ord2) 23:06:39 vanila: possibly Ord -> Ord2 functions are hard to construct? 23:06:50 I once wrote a compiler that compiles the OASYS source format into OASYS binary format; it has no registers it is only stack base operation. 23:07:05 So, not everything translates to registers and operations on them, due to this. 23:07:08 i don't really understand this representation myself, anyway 23:07:52 oerjan, well 'Lim' means the limit of the infinite sequence of ordinals 23:08:07 so Lim natToOrd would be omega 23:08:22 i understand that, i don't quite understand how that allows you to calculate with them. 23:08:41 it seems very non-canonical, at least 23:08:47 I think that the only thing that really matters is doing structural recursion on them 23:08:56 to get your induction power 23:09:11 yeah that would be enough for the goodstein sequence at least 23:10:43 conways one is really good 23:10:55 but it requires you to build everything mutually 23:13:08 -!- roasted42 has quit (Ping timeout: 264 seconds). 23:13:13 vanila: do you have a link? 23:13:24 sorry, its in the surreal numbers book 23:13:28 ah 23:14:46 well, there's 1 different case: when you call main() yourself from the program. 23:14:47 -!- roasted42 has joined. 23:14:49 this is actually illegal btw 23:15:11 elliott: legal in C, illegal in C++ iirc 23:15:19 C allows it, really? 23:15:44 yes 23:15:49 okay yeah, seems so 23:15:52 ...why does C++ disallow it? 23:16:03 something with static initialisation or constructors or whatever or the like? 23:16:05 yeah 23:16:20 Some compilers put those into main 23:16:21 the compiler can put static init code in main 23:17:00 I thought _start was used for that 23:17:07 vanila: in some ABIs it is 23:17:08 i see recursive main() sometimes in nasty code (mostly in obfuscated C contests) 23:17:13 Calling main() should be allowed; any other initialization should go in a separate function that calls main 23:17:27 And then the compiler can inline main if it is found to be safe to do so. 23:17:29 https://github.com/Jafet/drunken-octo-wallhack 23:17:58 Jafet: does this do the fancy efficient stuff? 23:18:44 It manages to run the one extant eodermdrome program 23:18:54 Also, computers are fast dude 23:19:58 ooh 23:20:18 computers are fast but always too slow 23:20:41 For most programs you can get a big speedup by first checking the graph nodes that changed in the previous step 23:20:52 ("most" ie. 1 out of 1 existing programs) 23:21:17 yay 23:21:51 well it _is_ designed to be deterministic, so that's obvious 23:24:04 in hindsight 23:26:46 -!- dts|pokeball has quit (Read error: Connection reset by peer). 23:27:16 @metar ENVA 23:27:16 ENVA 242250Z 12011KT CAVOK M15/M18 Q1015 RMK WIND 670FT 15007KT 23:27:21 eek 23:27:54 i guess it _is_ after midnight 23:28:30 -!- dts|pokeball has joined. 23:29:06 @metar LOWI 23:29:06 LOWI 242320Z AUTO 24003KT 9999 NCD M03/M05 Q1025 23:29:27 honestly? that's cold enough. 23:29:53 at least we have snow on the ground this year 23:30:18 * oerjan was commenting on oren{[\afk|}]'s complaints, but he seems afk 23:34:29 -!- shikhin_ has joined. 23:34:35 -!- oren{[\afk|}] has changed nick to oren. 23:35:22 oerjan: yeah, i guess one day we'll all be living under domes 23:35:52 holy crap did I miss some discuassion of C? 23:36:32 not every C program begins at main y'know 23:37:30 yes it does ? 23:37:31 -!- shikhin has quit (Ping timeout: 244 seconds). 23:37:39 oren must be a fan of free-standing implementations, or looking under the hood (dynamic linker, libc, elf format, etc) 23:38:02 nope, on win32 it begins at WinMain() 23:39:04 -!- copumpkin has joined. 23:39:23 ogh 23:39:37 WinMain is just like the SDL_main nonsense I think 23:39:42 i.e. it's specific to doing graphical stuff 23:39:57 (you're effectively linking with a library that has a main() that calls WinMain, I think?) 23:40:01 * oerjan read that as SDL_main_nonsense for a subsecond 23:40:30 SDL is very modular and allows you to load auxiliary nonsense. 23:41:11 elliott: i dunno. the MSDN doesn't mention there being a main that calls WinMain 23:41:17 elliott: I seem to recall the "pre-main" startup code does call WinMain directly. But it's all very platform-specific. 23:41:20 -!- roasted42 has quit (Ping timeout: 244 seconds). 23:41:21 fizzie: right. 23:41:38 well windows has lots of opinions on what C code should look like and they are all vaguely horrific 23:41:59 Arguably, a program with an entry point called something else than "main" is not a C program at all, or at least not a hosted one. 23:42:27 -!- roasted42 has joined. 23:43:09 C11 5.1.2.2.1p1: "The function called at program startup is named main." (It can be defined in some implementation-defined manner even in hosted implementations, but the name's not negotiable.) 23:43:12 bah... why is DWORD any worse than int32_t 23:43:32 One is in the standard and the other is not. 23:43:33 fizzie: it's ~as if~ you linked to a main() that calls WinMain, good enough, right? 23:43:51 I guess you could use that cop-out. 23:44:39 (Although even then you could claim what you have is just a fragment of a program, not a complete thing.) 23:45:17 If you have a C program without main() then it is a C program that cannot start by itself. 23:45:19 WinMain is kind of funny in that it has the command line intact in a single string. 23:46:18 zzo38: no program in any language can do that 23:46:37 fizzie: I believe they stole that idea from DOS, which got it from CP/M ;) 23:47:41 (There's a "CommandLineToArgvvW" function in the API to deal with what GetCommandLineW returns.) 23:48:25 basically MS thinks standard compliance is less important than backward compatibility 23:48:47 which is, from a business point of view, the right thing 23:48:55 If you write a console subsystem application, you get to use a regular main. 23:49:39 https://stackoverflow.com/questions/11785157/replacing-winmain-with-main-function-in-win32-programs/11785733#11785733 23:50:25 "hPrevInstance is always NULL." god bless america 23:50:47 thanks Obama 23:50:54 Right; "mainCRTStartup" is the entry point that calls regular main, and WinMainCRTStartup is the other one. 23:51:35 (And the mingw toolchain adds its own little peculiarities in there.) 23:55:21 -!- contrapumpkin has joined. 23:55:38 -!- vanila has quit (Quit: Leaving). 23:57:05 -!- copumpkin has quit (Ping timeout: 258 seconds).