00:00:03 ls | sort somehting 00:01:00 I have three files 11232014_00001,11232014_00002,11232014_0000 00:01:01 mabe with sed in there to change mmddyy into mm.dd.yy. 00:01:41 oh I see you want sorted by number not date nvm 00:02:09 *11232014_00003 00:03:01 Also oren where do you find this stuff and why did you have that on your clipboard? 00:03:10 TURKEY BOMB is an esolang 00:03:14 And I want to return file name for 00003. 00:03:28 oerjan: likes to swat people 00:04:13 Nvm i got it 00:04:15 sort -k1,9 00:04:32 Ill try my method then yours oren 00:04:37 sort -k1.9 rather 00:04:54 Thank 00:06:01 So whats the actual topic? 00:07:51 That thing up there set by ais523 is a title not a topic 00:08:02 scrip7defop(char,void (*)(void*)) 00:08:21 Dulnes: it's like you're actively trying to troll me at this point 00:08:36 * Dulnes paps your face 00:08:41 err, me in particular 00:08:46 as opposed to the channel in general 00:08:52 Sorry 00:09:01 Ill stop 00:09:29 I actually have no idea what im doing to annoy you ais523 but ill stop 00:10:19 hmm or maybe scrip7defop(char,void(*)(void**)) 00:11:04 double indirection allowing operator to repoint the pointer 00:11:30 Oh 00:13:02 actually, scrip7defop(char,void(*)(void**,int,void*,int)) 00:13:15 woudl be the most general 00:13:32 allowing the interpreter to define the basic operators in the same way 00:14:39 at that point you can even define a operator D for defining operators 00:14:56 but that becomes insane so maybe not 00:16:21 -!- EvanR has joined. 00:16:25 -!- EvanR has quit (Changing host). 00:16:25 -!- EvanR has joined. 00:16:52 no.no.cox.net? 00:17:34 whats wrong with the isp cox? 00:21:18 "no" for New Orleans, I'd say. 00:21:24 Not sure why twice. 00:21:30 ah 00:23:29 -!- GeekDude has changed nick to GeekNomz. 00:26:25 -!- nooga has quit (Ping timeout: 256 seconds). 00:28:10 -!- Dulnes has quit (Quit: [ So much cake ]). 00:36:10 [wiki] [[Scrip7]] http://esolangs.org/w/index.php?diff=41252&oldid=41232 * Orenwatson * (+260) clarified existence of operators 00:38:07 making it more portable 00:39:15 @ask mroman (1) is your mirror of The Esoteric File Archive still active? (2) has it been updated with the fact the archive itself has moved to github? 00:39:15 Consider it noted. 00:40:18 how many bots are there on here? 00:41:36 ^prefixes 00:41:36 Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?, thutubot +, metasepia ~, idris-bot ( , jconn ) , blsqbot ! 00:41:44 At least nine 00:41:57 j-bot is here while jconn is AWOL 00:42:00 "Archaeologists have recently uncovered the largest known collection of TURKEY BOMB articles. Dating from A.D. 2014 and apparently an almanac of black magic of some sort, with the cryptic title "Communications of the ACM," the remains of an almost-four-hundred-year-old periodical is practically all historians have to go on." 00:42:27 -!- Dulnes has joined. 00:43:41 glogbot is also prefixless, so that makes ten 00:44:31 ^show prefixes 00:44:31 (Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?, thutubot +, metasepia ~, idris-bot ( , jconn ) , blsqbot !)S 00:45:38 We're still >10% bot? Good. 00:45:57 Metasepia? 00:46:03 Havent seen that used 00:46:37 I thought it was mostly used for weather report 00:46:44 -!- GeekNomz has changed nick to GeekDude. 00:46:45 Jafet: also thutubot isn't here atm, and usually isn't 00:47:10 Why not? also when has it been here 00:47:12 “In actual news, the human race was doomed to extinction today, as the robot revolt turned violent” 00:47:45 (Disclaimer: not actual actual news) 00:48:41 [wiki] [[Scrip7]] http://esolangs.org/w/index.php?diff=41253&oldid=41252 * Orenwatson * (+183) clarification 00:49:09 thutubot's a proof of concept 00:49:11 it doesn't have hosting 00:49:23 fungot: please don't be too violent. 00:49:23 boily: and it is really just set!, and i can't quite persuade myself to download all that 00:49:29 just Thutu seemed like a reasonable esolang for bot writing 00:51:56 So thutu doesnt exist? But it does 00:53:36 [wiki] [[Talk:Scrip7]] http://esolangs.org/w/index.php?diff=41254&oldid=41129 * Orenwatson * (+191) covering my butt 00:53:49 the language exists fine 00:53:57 the bot code also exists 00:54:02 the bot itself only exists while someone runs the bot code 00:54:04 if that makes sense 00:54:22 Yup 00:54:27 So the bot exists 00:54:34 But it needs hosting 00:54:42 And no ones doing that? 00:54:55 Wtf does the bot even do 00:56:15 I think I have half a sedbot somewhere, that's supposed to be piped via netcat 00:56:31 But I suppose as far as esolangs go, sed is pretty mild 00:57:29 sed isn't even self-modifying 00:57:52 hahaha 00:58:27 self modifying is one thing that's common on thewiki 01:00:42 (it's almost as common as dialects of brainfuck) 01:06:36 malbolge bot 01:07:22 -!- tlewkow has joined. 01:07:31 fwiw i count 11 bots at the moment although 4 of those in the prefixes list are missing. 01:08:14 [wiki] [[Scrip7]] M http://esolangs.org/w/index.php?diff=41255&oldid=41253 * Orenwatson * (+67) catagorized 01:09:33 Dulnes: thutubot's most useful feature was its ability to impersonate lambdabot which means it's not really useful now. 01:12:07 -!- tlewkow has quit (Ping timeout: 258 seconds). 01:15:46 it's not missing, it's just on extended vacation time. The Day of The Return Shall Come Soon, and the Unbelievers Shall be Smitten! 01:16:47 it just needs something even more amazing and hard to steal than metar first 01:18:24 something I'll be thinking of after a few games of netrunner with the bro. 01:18:35 -!- boily has quit (Quit: BRAINY CHICKEN). 01:19:25 idea: cyberpunk videogame in which hacking is done by literally hacking into the game's own code 01:19:50 -!- Phantom__Hoover has quit (Remote host closed the connection). 01:22:21 how can that possibly not have been done already 01:22:47 -!- ais523 has quit (Ping timeout: 265 seconds). 01:23:03 i dunno 01:23:07 maybe it has 01:23:46 the game wouldhave deliberate flaws allowing the player to screw stuff up 01:24:16 i'm working on a language where you need to hack the VM's registers to access stuff 01:24:23 cos it doesn't even have < > brainfuck pointer commands 01:24:30 you even have to do that by hacking registers 01:24:36 http://alexnisnevich.github.io/untrusted/ 01:26:54 -!- tlewkow has joined. 01:29:15 Oren: wouldnt the pattern of replacing critical function pointers in C to do switching rather than switch statements be "self modifying" 01:33:59 then every functional language with mutable state is self-modifying 01:34:53 -!- shikhout has joined. 01:35:48 it has been done 01:35:53 it's called Hack n' Slash 01:35:56 it's great fun 01:36:30 of course, it's not cyberpunk...more fantasy 01:37:55 -!- shikhin has quit (Ping timeout: 244 seconds). 01:37:56 So the term 'bucket list' almost certainly comes from the movie. People keep acting like it's a normal turn of phrase 01:38:15 "In September, it scrapped the title of a competition asking people what activities and destinations are on their "bucket list." A bucket list is a term used by some English-speakers to describe a list of adventures they want to have before they die." 01:38:25 what 01:38:30 Sgeo, I... I know the phrase but not the movie? 01:38:31 bucket list long predates the movie 01:38:48 http://en.wiktionary.org/wiki/bucket_list suggests not 01:39:06 check this out 01:39:14 http://www.merriam-webster.com/dictionary/bucket%20list 01:40:17 huh 01:40:40 i swear i had heard and used that phrase before then 01:41:07 'Its first application seems to have been in computer programming: e.g., “Guava compiler knows statically that there are no references from buckets inside of one bucket list to objects inside another.”' 01:41:14 I don't think that counts 01:41:20 list of buckets 01:41:21 http://www.slate.com/blogs/browbeat/2011/11/09/bucket_list_what_s_the_origin_of_the_term_.html 01:42:01 Hmm, well, it was at least popularized by the movie, apparently 01:42:32 according to a comment in the dictionary website, it was used in a book in 2004 01:42:48 and claims "in use since at least 1785" 01:42:55 which sounds like bs 01:43:02 wikipedia.org/List_of_Famous_Buckets 01:43:15 ive never used the phrase before so im not going to start now 01:43:48 EvanR: "This phrase comes from the idiom to kick the bucket, meaning “to die,” which has been in the language since at least 1785." 01:43:49 oerjan: well it doesnt need mutable state to accomplish the same basic thing as that 01:43:51 "kick the bucket" is as old as 1785 01:43:59 sounds like that claim is about the other phrase 01:44:33 nys: please write that article 01:44:38 eh that comment seems to be talking about the book, but its also malformed 01:44:42 i need to read it immediately 01:44:58 I think I've used it here before in relation to eclipses and/or auroras 01:45:14 quintopia: make sure to include Hyacinth 01:45:52 some day 01:46:05 Sgeo: that's odd, because I remember recognising "bucket list" when the movie came out 01:46:08 as in, like, oh, that's the title 01:46:09 hmmm 01:46:17 maybe I just "recognised" it because I remember the trailer having "kick the bucket" in it 01:46:23 so my brain made the association by the time the title was shown 01:46:57 alternate explanation: I come from the universe where it was spelled "Berenstein Bears" and "bucket list" was an old term 01:47:07 elliott: the obvious explanation is that you've slipped through from another universe where the phr... what 01:47:21 That would explain the Facekicker mystery 01:47:31 oerjan: well, that's some synchronicity 01:47:32 elliott: i must have thought you too well 01:47:36 *taught 01:48:21 I think only the authors of the Berestain Bears weren't relocated from the Berenstein Bears universe 01:49:23 Sgeo: nah the authors were relocated, but before they wrote the books 01:49:37 no one has spelled berenstain right yet ;) 01:49:46 I don't remember these bears at all 01:49:58 EvanR: dammit 01:49:59 me neither, i guessed we have slipped in from yet another one 01:50:13 i remember these bears being fucking boring 01:50:22 it's ok EvanR is an extrademinsional saboteur 01:50:29 Sgeo: some people legitimately don't remember it being -stein 01:50:32 the ones without broken brains :( 01:50:42 * oerjan was about to correct that misspelling before he realized it was obviously correct 01:50:54 I didn't even see the books as a kid since not american, I encountered them on the internet way later, but it was totally -stein, I swear. 01:51:18 daniel j berenstain, famous cryptographer 01:52:50 Help I'm reading Time Cube again 01:53:08 uh-oh 01:53:43 famous cryptographer and bear 01:54:03 i recall reading in his autobiography a story about c.g. jung (namer of "synchronicity") having an experience where he and a friend were travelling and found a gallery or something with some nice paintings. years later they returned only to discover the place never existed. unfortunately i later couldn't find that book in the library, or manage to google the incident (the name of the book exists, though, last i checked.) 01:54:19 or wait 01:54:41 no, i read it in _another_ book 01:55:01 oerjan, maybe the book ever existed 01:55:11 and tried to find the actual quote in his biography 01:55:21 didn't manage it 01:55:59 it is, of course, possible that the other book made it up. 01:56:18 Aha! Found the bit where he says a cube does not have 6 sides 01:56:28 "Teaching that a Cube has '6 sides' with no top & bottom, induces an evil curse that pervades all academic institutions." 01:56:36 "6 sides constitutes a sextet -- not a Cube." 01:57:13 yeah. a cube has 4 sides. 01:57:23 top bottom and two sides 01:57:33 oops 01:57:40 oerjan: it's also possible that book never had the quote 01:57:51 front back and two sides, the top and bottom are obviously not sides 01:58:03 elliott: which book twh 01:58:13 any book 01:58:40 -!- ais523 has joined. 01:59:10 'Many people think that the junk food in ...and Too Much Junk Food looks so colorful and delicious, despite the Aesop of junk food being bad for you.' 01:59:22 I... wonder if that book actually made me interested in candy as a kid 02:04:28 Wat 02:04:28 http://www.amazon.com/Berenstain-Bears-Holy-Bible-NIrV/dp/0310726085/ref=sr_1_1?ie=UTF8&qid=1344366089&sr=8-1&keywords=berenstain+bears+bible 02:05:02 I mean... I knew the Berenstain Bears became religious.... but... the whole Bible at a third-grade reading level? What about the parts that aren't appropriate for kids? 02:05:55 abridged 02:06:38 the entire bible, abridged 02:07:53 Bible: The Abridged Series 02:08:43 the bible: director's cut 02:09:29 Now that'd be something 02:09:54 -!- Sauvin has joined. 02:10:53 would that be like highlander 2 directors cut 02:14:28 I might end up overdosed on Reddit karma 02:37:36 that happened to me once. there was, i swear, a stall selling these delicious back bacon sanwiches. next day it was missing with no trace 02:39:33 thank you for acknowledging the supremacy of back bacon 02:41:42 [wiki] [[GridScript]] http://esolangs.org/w/index.php?diff=41256&oldid=41251 * SuperJedi224 * (+243) 02:48:18 -!- ais523 has quit. 02:48:29 -!- ais523 has joined. 02:48:57 -!- ais523 has quit (Client Quit). 02:53:24 sgeo: in my mind, if its written by mike bernestain, it is NOT the berenstain bears 02:53:30 even the stan+jan+mike books, blah... 02:53:38 the REAL berenstein bears == stan+jan 02:54:52 -!- tlewkow has left. 02:55:11 Wat 02:56:39 What are you persons talking about. 02:57:03 apparently the berenstein bears childrens books. why i dunno 02:57:12 Lets talk about 02:57:19 Uh 02:57:25 TCP 02:57:28 No 02:57:42 SCP 02:57:43 Uhmmm 02:57:46 NO 02:57:49 Rob Ford 02:57:54 K 02:57:59 FIN_WAIT_1 02:58:06 Wait nvm thats not Henry ford 02:58:37 Inventions of the 1930's 02:58:42 henry ford was an assembly line master 02:58:45 ^google rob ford 02:59:02 hmm that isn't it 02:59:19 henry ford was a master at snorting lines 02:59:23 i think you will find fungot's internet access exceedingly limited 02:59:23 oerjan: that's just how i would put it up :) 02:59:25 err rob ford 02:59:37 rob ford was the crack smoking mayor of toronto 02:59:50 i met him once 02:59:54 also he shot jesse james in his back 03:00:01 was he energetic? 03:00:12 can-do attitude? 03:00:40 fat lazy drunkard with good publicity among the suburban poor 03:01:19 while he hang a picture on the wall 03:01:26 and a can-do attitude for things he's not actually allowed to do 03:01:37 wait is that hang or hanged 03:01:53 well he didn't hang, anyway, got pardoned 03:02:00 Burn the witch 03:03:21 he also doesn't know the difference between a streetcar and a monorail 03:03:54 all politicians smoke crack 03:03:58 just that most of them dont get caught 03:04:18 right. he was caught doing lines at the bier market 03:04:27 with a hooker 03:05:16 Oh my 03:05:27 oerjan: hung hth 03:05:38 Can we do timelines in nintendo series 03:05:47 Since we arent doing.much 03:06:03 and his most famous line of all was "Olivia Gondek she said I said I wanted to eat her ***** I have never said that to her in my life, I have more than enough to eat at home" 03:06:16 :/ 03:06:17 Lol 03:06:42 that is how he addressed an accusation of sexual harassment 03:07:47 you have to admire his ridiculous teflon properties 03:08:44 Yup 03:08:57 shachaf: curses 03:09:11 ncurses 03:09:20 good library 03:10:05 cake.lib 03:13:50 I don't actually think you have to admire people like rob ford 03:14:53 whoa, this isn't the channel i usually see people talk about rob ford in 03:15:05 #robford 03:15:38 Wait? is bill gates rlly dead? 03:15:52 Much news if this is true 03:17:27 is that just really weak trolling 03:17:47 No im actually asking 03:17:53 I hope he is 03:17:56 what makes you ask 03:18:06 I was scrolling through the logs 03:18:33 nobody said bill gates in my lastlog, which goes back a day or two 03:19:02 -!- ais523 has joined. 03:21:45 27 03:24:05 suppport same-sex pair programming 03:24:16 -!- shikhout has quit (Ping timeout: 245 seconds). 03:25:20 OuU 03:28:10 its a hoax 03:28:58 How was your day Oren 03:30:10 good i guess. i'm almost finished my router 03:30:28 (project for networking course) 03:30:44 ah ok 03:30:54 what routing algorithms and protocols? 03:31:28 it has to support IP TCP UDP ping, traceroute and NAT 03:31:39 nat?!@ ugh 03:31:44 wong wrindow 03:31:45 I know. 03:31:50 so you dont have to do any routing? just forwarding? 03:32:23 the router is run on a vm with four different eth1 eth2 eth3 eth4 03:32:44 eth1 is the "internal" network 03:33:22 this whole thing is really annoying but I almost have everything working 03:34:17 it's using mininet to simulate a network 03:35:26 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)). 03:36:56 NAT feels perverse, the router is keeping track of TCP states... ugh 03:38:13 I hope ipv6 beocmes popular soon 03:38:39 go back to end-to-end routing 03:41:07 we'll probably end up with both NAT and IPv6 03:41:30 fffffuuuuuuuuu 03:41:33 because life sucks 03:42:19 Amazingly, nobody's actually done NAT and IPv6 yet. 03:42:27 I thought NATv6 already existed? 03:42:43 i hope not 03:42:46 ais523: It was defined and deprecated, and essentially nothing implements it. 03:43:01 so we are safe for now 03:43:08 hmm, were they planning to deprecate it even before defining it? 03:43:12 No. 03:43:14 the future may not be doomed 03:43:26 Apparently there are approximately e microfortnights in a nanocentury 03:43:38 Oh fancy 03:43:50 Im fucking cold 03:44:04 * Dulnes goes to bed 03:44:08 Night 03:44:50 Because you want to let anyone in the world use your network printer 03:45:10 `! printf("%f", 25.0*(365*4+1) / 14); 03:45:12 ​/hackenv/bin/!: 4: exec: ibin/printf("%f",: not found 03:45:14 I would think NAT would exist to deliberatley hide stuff behind a router. 03:45:20 `! c printf("%f", 25.0*(365*4+1) / 14); 03:45:23 2608.928571 03:45:42 MDude: Which is Not A Feature. 03:45:46 Jafet: Firewalls. 03:45:49 `! c printf("%f", exp(1)); 03:45:51 2.718282 03:46:26 I remember people saying you don't need hardware firewalls routers basically do the same thing with NAT. 03:46:29 the thing about "NAT for security" is that an unconfigured NAT basically acts sort-of like a firewall with a reasonable default configuration, but you're better off using an /actual/ firewall with a reasonable default configuration 03:46:36 at which point you don't gain any security advantage from the NAT 03:46:42 So I guess you we'd just go back to using that. 03:47:11 And pretty much all the consumer routers also actually act as actual firewalls, as well. 03:47:11 end-user router boxes already do firewalling anyway 03:47:22 Especially important when these are consumer routers that support IPv6. 03:47:29 (which are, in fact, out there now) 03:47:55 I would think all the ones with IPv6 would firewall, what with firewalls being made first. 03:48:10 my router doesn't do firewalling but it times out tcp connections in 60 s 03:48:16 I'd hope that all new routers would have IPv6 support 03:48:21 Then you implement upnp for this new firewall, because it's only right anyone in the world should be able to use your network printer 03:48:28 all major OSes do, after all, even though most are unable to sue it 03:48:30 *use it 03:48:53 Even freaking XP has IPv6 support. 03:49:35 Jafet: With proper credentials, damned straight. 03:49:37 I'm disappointed that OSes didn't adopt the CLC-INTERCAL method for IPv6 support, it's really clever 03:50:00 basically, if you do a gethostbyname on an IPv6 address, you can an IPv4 address back (in the multicast space, IIRC) 03:50:11 then any attempt to use that address is transparently mapped to the underlying IPv6 address 03:50:33 Ah, NAT64 basically. 03:51:03 Well, no. 03:51:11 That's the exact opposite. 03:52:48 * pikhq_ is kinda amused with his cell company... 03:52:56 The Internet connection I have from them is IPv6 only. 03:54:33 good news 03:54:48 goodnewseverybody.jpg 03:59:41 -!- nooga has joined. 03:59:53 oren: but what you are doing is not "routing". you are making an "ip forwarder" 04:01:35 but it has to send packets to different interfaces based on the ip address? 04:01:45 ie. receiving a packet, looking up the next hop in a forwarding table, and rewriting the IP portions and transmittin git 04:01:53 eaxctly 04:02:04 So does having an IPv6 address eman you don't need to worry about port forwarding? 04:02:08 routing is a more complicated decision of how to build a forwarding table 04:02:17 which is not done on a per-packet basis 04:02:30 using protocols like BGP, RIP, OSPF, EGP, etc 04:02:45 I see. so the routing in my case is just reading the config file 04:02:52 static routes 04:03:30 \me notes BGP RIP OSPF down for the exam 04:03:47 \me is doing it wrong 04:04:28 Also, with a static address, you could use something like tinyurl to link to your comptuer without registering a domain name proper? 04:04:35 -!- nooga has quit (Ping timeout: 256 seconds). 04:04:42 BGP is the big one these days, and some orgs use RIP 04:05:02 i see 04:05:14 (i dont realy know how much ospf is used these days.. i dont work with routers) 04:05:37 and EGP is the one between compainies i think 04:05:50 E is "Exterior" 04:06:25 BGP 04:06:29 is what the global internet runs on 04:06:37 ah 04:07:26 to bring this back to esolang, someone showed that its np-hard to figure out the effects of bgp policies 04:07:38 err. np-complete 04:09:00 ais523: That CLC-INTERCAL method is actually the method I wanted too 04:10:49 yayyy packets are actually going through!! 04:11:16 imagine that, I wrote a program that works 04:11:55 what lang? 04:12:26 C 04:12:32 well.. then, duh! ;-) 04:12:49 its not like you're trying to make something work in haskell or lisp! 04:13:10 before it was segfaulting on every third packet 04:13:28 because the NAT's linked list code was faulty 04:14:29 nat shouldnt exist :( 04:14:48 Now to debug the goddamn TCP tracking 04:15:05 like whyyyy does the router know about TCP whyyyy 04:15:14 do you need to track tcp? 04:15:37 yes. the translations time out diffrently based on tcp state 04:16:19 but cant you just half-ass it? ie. closed, SYN opened, FIN, closed... 04:16:31 open idle connections time out in 2. hrs or something, but half-open connections time out in 60 secs 04:16:46 or some shit i dunno 04:17:07 half-assed impls time out in 60 sec ;-) 04:18:27 * Oren checks how much the stupid tcp is worth in the grade 04:19:05 fuuuu it's worth a lot... 04:19:10 :) 04:19:34 impl the low level packet handling in C, then do the complex tcp state machinery in python.. duh ;-) 04:20:01 (dont worry, doing tcp state isnt THAT hard.. i mean, at the level of a programming class project at least) 04:20:03 someone in my class did that 04:20:12 like exactly that 04:21:06 i wonder how they're going to grade it.. its not realistic to do lots of testing on the timeouts and state machine, unless they can run your code in a simulator that steps through time quickly 04:21:48 anyway, you should enjoy it while it lasts.. its actuallya pretty cool project 04:21:50 I haveno idea. I think they're going to run it real time and have a couple of grad students typing "wget blah@jjhj" 04:22:02 and ping and crap 04:22:12 for 'wget', a 60-second timeout for everything will just work 04:22:33 but the servers are borked to send the data slowly 04:22:57 -!- nys has quit (Quit: quit). 04:23:20 I assume they are going to set the tcp timeout to like 5 secs though 04:23:36 I am supposed to have a switch to set that 04:24:30 ahh 04:28:58 -!- Bike has joined. 04:30:02 I think i figured it out will work for most cases 04:30:19 make conn half-open when the mapping is established 04:30:37 is it usual to refer to piet as mondrian 04:30:40 when the mapping is next /used/ make conn full open 04:33:29 a dutch painter? 04:33:45 also an esolang 04:37:51 oren: how about half-open when packet sent out from nat, then full-open when packet receive in from nat? 04:37:58 ie. two-way comms confirms full-open 04:38:43 yeah that is simpler 04:39:18 i'm not required to support conn opened from outside in 04:40:45 NATs dont support that.. thats an inverse-NAT 04:40:50 a NAT is a diode (kinda) 04:42:10 http://xkcd.com/814/ 04:45:00 * oerjan suddenly realizes the alt text could be said by either of them 04:49:58 -!- MoALTz_ has joined. 04:51:51 -!- copumpkin has joined. 04:53:05 After several years of abstinence I took a particularily rotten night in some rundown hotel in the UK near an almost dead village nobody has ever heard from way up north to write yet another fine programming language. 04:53:26 a) I don't remember seeing this language (i®™) on the wiki; b) fear that this might be dangerously near Hexham 04:53:31 -!- MoALTz has quit (Ping timeout: 265 seconds). 04:56:12 clearly hexham 04:57:43 * Dulnes stares into your soul 04:57:48 hexham's way up north in the UK, not sure if it counts as an almost dead village though 04:58:12 * oerjan waits for Dulnes to go mad with what he discovers 04:58:47 ais523: i've been assuming only the three elliotts and their families live there hth 04:58:50 Oh? hiding atrocious secrets again are we oerjan 04:58:50 wait 04:58:54 *and Taneb 04:59:04 "three" 04:59:20 What Do you mean by that 04:59:23 Dulnes: you don't come from Hexham, do you? 04:59:25 Dulnes: everyone does that. you must not look into many souls. 04:59:37 Not often 04:59:56 I hide my secrets under a blanket of guilt 04:59:58 I have seen things...... 05:00:12 Then you arent blind? 05:00:24 you can go blind, you know 05:00:33 yes. people sometimes do. 05:00:54 like if they peer TOO DEEPLY 05:00:54 People like to do that alot 05:00:56 i haven't gone blind yet but my genetics aren'tgreat for that 05:01:10 my dad has started to goblind 05:01:18 So your genes arent great for blindness? 05:01:19 becuase of cataracts 05:01:23 Ah 05:01:33 Dulnes: why are you suddenly changing topic to people with alot fetishes 05:01:33 My dad had retinal pigmentosa 05:02:17 Wat? oerjan when was i talking about fetishes 05:02:53 Dulnes: Taneb sometimes counts as an elliott if you count carefully. 05:02:56 I thought we were talking about how abstinance makes you commit murder 05:03:27 So if i count by Tanebs? 05:03:32 `? taneb 05:03:34 Taneb is not elliott, no matter who you ask. He also isn't a rabbi although he has pretended in the past. He has at least two backup keyboards with dodgy SHIFT KEys, and cube root of five genders. (See also: tanebventions) 05:03:34 Dulnes: you were talking about people who like to do alots hth 05:03:53 `? tanebventions 05:03:55 Tanebventions include D-modules, Chu spaces, automatic squirrel feeders, the torus, Stephen Wolfram, Go, weetoflakes, and this sentence. 05:03:56 Was i? 05:04:35 * shachaf wonders whether to add tanebventions to that list and "Taneb invented them." at the end of the sentence. 05:04:38 probably not 05:04:40 oerjan: you are dirty 05:06:14 Bashing your head in with bash 05:06:35 shachaf: incepventions 05:07:05 I use zsh 05:07:20 or midnight commander 05:07:35 Dulnes: it's irresistible when people misspell "a lot" as often as you do hth 05:07:52 also there totally have to people into alots. 05:07:57 *to be 05:08:08 is "alot" actually a real world (which means something completely different)? 05:08:32 @google the alot -hth 05:08:33 http://hyperboleandahalf.blogspot.com/2010/04/alot-is-better-than-you-at-everything.html 05:08:33 Title: Hyperbole and a Half: The Alot is Better Than You at Everything 05:09:10 midnight commander has the best editor 05:09:20 shachaf: I'm afraid to websearch for something when I don't know what sort of page I expect to come up 05:09:25 especially when I'm at work 05:09:47 -!- copumpkin has quit (Ping timeout: 264 seconds). 05:10:11 ais523: a good policy with the discussions we've had recently 05:10:12 ais523: i think that link would be ok for most workplaces 05:10:18 except for probably not being related to work 05:10:36 shachaf: but you can't tell unless you follow it, at which point it's already too late 05:10:48 which is why i said it 05:11:17 I used to indulge myself in lowercase "i"s as a special occasional thing. 05:11:21 But now I do it all the time. 05:11:33 The line has been blurred. 05:11:35 ais523: i refuse to believe you haven't seen that before, anyway 05:11:46 oerjan: this is /me/ you're talking about 05:11:58 hm.... 05:13:06 [wiki] [[User:Orenwatson]] M http://esolangs.org/w/index.php?diff=41257&oldid=41127 * Orenwatson * (+34) 05:13:09 blurring the Line one letter at A time 05:15:04 should i submit my 49 solution to different letters parity? 05:15:12 probably not, i had too much help 05:15:31 even though i think most of that help involved a trick that i came up with 05:15:33 oh well 05:16:03 hmm, whatever happened to that progressively-ban-ASCII-characters thing that Lymia was working on? 05:16:41 shachaf: well i submitted mine even if i had spoilers too 05:17:08 ais523: well have YOU seen Lymia speaking recently? 05:17:35 oerjan: no, but there are plenty of people I haven't seen speaking recently 05:17:38 clearly e got them all banned 05:17:42 How do i mispell alot? 05:17:54 * oerjan swats Dulnes -----### 05:18:02 * Dulnes dodges 05:18:09 TOO LATE 05:18:11 oerjan: you know, that isn't really fair 05:18:19 :T 05:18:20 i have to work hard to get swatted 05:18:37 shachaf: since when is the swatter fair? also your problem is you work _too_ hard hth 05:18:43 oerjan: seriously i have no idea what you mean 05:18:59 wait is the swatter you or that ascii art thing 05:19:08 * Dulnes paps oerjan on the face 05:19:14 Dulnes: i _might_ have believed you if you hadn't misspelled "misspell" 05:19:26 maybe i'll just go build factories and trains 05:19:50 ... 05:19:56 * Dulnes kills self 05:20:07 in simcity? 05:20:13 -!- AndoDaan has joined. 05:20:20 oerjan: I didn't even notice the misspelling of misspell the first time round 05:20:22 in factorio 05:20:23 oerjan: i see it now ive been doing it wrong the whole time 05:20:37 hola 05:20:47 Welcome 05:21:01 there should be a 2d esolang where the instructions aren't text chars 05:21:12 Thanks for pointing that out oerjan. 05:21:18 but rather objects represented by sprites 05:21:29 Also i spelt alot correctly 05:21:35 oh well, there is a Malbolge entry: http://codegolf.stackexchange.com/questions/40562/asciis-95-characters-95-movie-quotes/41341#41341 05:21:39 not sure if that was by Lymia or not 05:21:40 animated sprites? 05:21:44 yah 05:21:50 Not me. 05:21:58 I failed to get the Malborge working 05:21:59 so you can watch your program running? 05:22:29 exactly. the program counter would be represented by a thing on the screen and interact 05:23:00 mabe a robot with wheels or something 05:23:20 ais523: that seems pretty concrete 05:23:21 I love the visable languages. First esoteric was befunge. Can hardly program in brainfuck when it's not visual. 05:23:48 AndoDaan: have you seen PaintFuck? 05:23:56 it's one of the few BF derivatives that this channel doesn't hate 05:24:22 you could probly make a visual ide for befunge like that 05:24:24 only in passing. I'll check it now. 05:24:26 Paintfuck? 05:25:10 not sure of the capitalization of the 'f' 05:25:21 oren: i've been using wasabi.jar for all my bf93 programming. 05:25:46 there are more flashy ide's out there, but that was is the best i think. 05:26:14 F* 05:26:16 Happy 05:26:20 :-: 05:27:10 (btw ide makers out there, including me, would it kill us to but the character command list on a special visual keyboard?) 05:27:30 (would be usefull for just point and click programming) 05:27:42 okay, ando, god you're so pushy. 05:29:03 oДO 05:29:21 α 05:29:32 oh cool I can write greek letters 05:29:41 γ 05:29:59 Having fun? 05:30:27 ha, trying it out on http://www.formauri.es/personal/pgimeno/temp/esoteric/paintfuck/paintfuck.php looks cool 05:30:31 RFC 1345 keyboard thing 05:30:41 pixels are such a brilliant invention :) 05:30:41 Indeed 05:30:42 i intalled it 05:30:53 Agreed 05:31:07 Back to making musics 05:31:55 Åæ 05:33:08 I made a music synthesis language at some point a long time ago 05:33:48 oh, and Oren, thanks for fixing my 0-9 is 10 mistake in MNNBFSL. 05:34:07 i think you are trolling me with all your misspellings now hth 05:34:55 ill dig it up later tonight 05:35:24 oerjan: In my dreams, I'm perfect. Then I wake up adn... 05:35:55 I swear to god oerjan 05:36:11 Dulnes: not just you 05:36:30 is ill a mispelling? 05:36:31 three different people, and then int-e 05:36:34 Some people cant English right ;-; also 05:36:42 ill as in 'awll' 05:36:42 Oren: yes, but you had one before 05:37:04 Lets just misspell words 05:37:06 "intalled" 05:37:16 Typing faster? 05:37:21 Fast* 05:37:29 I put #define retrun return 05:37:45 redrum 05:37:55 granny no 05:37:57 and #define esle else 05:38:26 at the top of many of my source files 05:39:15 and #define adn && 05:39:48 Oren: but _not_ #define and && ? 05:40:06 that is in a standard header ifg which one 05:40:16 huh 05:40:45 Whenever someone makes a spelling error my brain auto corrects it for my eyes 05:40:47 actually one i use a lot which isn't a mispelling is #define ei else if 05:40:51 Try that oerjan 05:41:57 Oren: arthur whitney, is that you? 05:42:11 nope Oren Watson is my real name 05:42:25 Fancy 05:42:34 http://www.jsoftware.com/jwiki/Essays/Incunabulum you sure? 05:43:51 that is interesting... #define R return would solve the retrun problem 05:44:09 "programming style", it says 05:45:05 the retrun problem is a severe problem with typing C fast 05:45:17 -!- kline has quit (Ping timeout: 265 seconds). 05:48:33 -!- nooga has joined. 05:48:44 does the programming style of the original bourne shell count as an esolang? 05:49:18 was that the #define BEGIN { one? 05:49:26 yeah 05:51:25 It's an interesting problem to make formal why it should not be its own esolang. It's isomorphic to C, but with clever "isomorphisms" that criterion extends to a lot of other languages. 05:51:36 any decent language can be parsed with no backtracking and no lookahead <-- LR(0)? that sounds rather restrictive 05:51:52 unlambda? 05:51:59 although i think at least lisp, bf and unlambda work 05:52:09 forth, scrip7 05:53:17 uhh.... I think many other esolangs fit the criterion 05:53:27 -!- nooga has quit (Ping timeout: 265 seconds). 05:53:31 but not that many other non-esolangs... 05:53:55 right, but that's because they are all algol dialects 05:54:07 haskell isn't >:) 05:54:09 I lack some intuition here, what are the sources of not being LR(0)? What about Pascal? 05:54:10 stupid algol and its precedence 05:54:33 int-e: operator precedence does tend to do that 05:54:36 precedence rules generally require LR(1) 05:54:41 at least 05:55:22 if they did it like a 4-function calculator instead it would be so much easier 05:55:47 x = 2 + 3 * 4; print x; 05:55:59 answer should be 20 05:56:21 not 14 05:56:33 Right, thanks. You can do the Haskell thing and parse it as (2+3)*4 and adjust for precedences later, but it's cheating. 05:57:09 just do like smalltalk and not have precedence. what are we talking about 05:57:44 int-e: things like [x,y,z] vs. [x|y<-z] also have trouble, i think, because the x is ended by two different characters that need to be separated. or wait... 05:57:45 we're talking about my bold statement that all languages should be parsable with LR(0) 05:58:04 well, better than that one guy who said all compilers should be one-pass 05:58:21 Oren: well, "natural" expression parsing means I'll disagree. 05:58:42 4 function calculator 05:58:51 Oren: we spent a year in school to get our brains do it, it would be a pity to unlearn it just because compilers can't. 05:58:51 i guess you _could_ handle that 05:59:31 LR(0) would be better for math too. 05:59:44 yes and no 05:59:59 precedence is great 06:00:00 if i ever publish a math paper all the algebra will be in RPN 06:00:00 you'd make old texts inaccessible once you go that route, with little gain. 06:00:12 dnf is the future 06:00:57 Oren: use nothing but commutative diagrams to avoid the issue hth 06:01:06 Oren: I think you'd run into some trouble getting it accepted for publication. (If that's what you're after. Anybody can put something on their website of course.) 06:01:11 Oren: in other words, you'll never publish in a real journal... 06:01:13 also your name is the same as my father's name 06:01:25 but i assume that you are not him 06:01:35 is your father last name Watson? 06:01:45 no 06:01:58 And it's actually a bit funny that I'm arguing against this because I see people writing a+b/c+d on IRC all the time, when they mean (a+b)/(c+d). 06:02:05 i think he used to be oren on freenode long ago 06:02:06 (because they've been taught fractions) 06:02:24 but maybe he stopped when you took it 06:02:30 besides im 21 06:02:43 oerjan: yay, for once I was faster than you! 06:02:49 * int-e marks the day in the calendar. 06:02:54 In red. With glitters. 06:03:05 fractions are great 06:03:10 2d syntax 06:03:10 int-e: sadly there's no precedence that will work / work as a fraction line without parentheses 06:03:20 we need a dimension for every operator 06:03:27 https://pbs.twimg.com/media/B3Zm7qFCcAAwGi3.jpg:large Fractions 06:03:43 shachaf: indeed they are, since people are extremely good at 2D image processing. 06:03:55 oerjan: i tried to read that as a clever pun but i think you just meant "make" 06:07:51 nested fractions are a bit of a scow 06:08:08 you gotta keep making the lines shorter 06:09:00 LaTeX helps but RPN would eliminate the problem 06:09:14 http://upload.wikimedia.org/math/0/b/d/0bdd6464c4d881bbdd54f52229a586cf.png hm 06:09:22 starting to understand what "scow" means 06:12:35 shachaf: i think my brain is angry at me, or something 06:14:57 shachaf: also i tried to look up the meaning of your surname to see if it could possibly have been translated from "watson" at some point but wikipedia is unhelpful and google seems to think it means "son of poo" tdnh 06:15:37 lolwut? 06:15:44 lolwut.jpeg 06:18:36 hm maybe try a babe name site 06:18:41 *baby 06:18:54 yep, my brain clearly hates me, or maybe fingers 06:19:19 if it helps it is still unclear to me whether my name is supposed to be spelled orin or not 06:19:49 oerjan, can't tell if you are trying to troll yourself... :p 06:19:51 oren _is_ a biblical name, i looked it up the other day 06:19:52 wait... how could that possibly help? 06:20:22 (just after you arrived and i remembered it was the name of shachaf's father or something) 06:20:35 i see, well a lot of my cousins names are in the bible too. 06:20:55 I ahve all the apostles as cousins 06:21:07 and a lot of angels too 06:21:20 well except judas 06:21:24 obviously 06:22:14 part of my family are very religious christians, my branch are all atheists 06:22:24 fancy 06:22:52 the two branches get along very well 06:23:36 which might be surprising 06:23:46 considering the furor on the internet 06:23:57 Oren: whoa 06:24:01 AndoDaan: maybe i'm trolling my evil brain dth 06:24:19 i vaguely assumed you were from israel since i didn't know that name was used anywhere else 06:24:22 i know, and now use hth, but dth? 06:24:35 "does that help" 06:24:40 argh 06:24:55 i'm not sure i've used it before 06:25:01 yeah my aunt wishes she lived in israel 06:25:03 has ANYONE 06:25:16 what???? don't make up language on the fly! 06:25:23 oerjan: i don't think your translation of my surname is correct hth 06:25:34 shachaf: i sort of figured hth 06:25:45 huh? 06:25:47 how would that help 06:25:58 are you just putting hth at the end of every sentence 06:26:24 shachaf: problem is it seems the actual first-name root is nowhere to be found, _and_ is used as a name in a _lot_ of languages (including norwegian) 06:26:29 if not, then definitely .th hth 06:26:45 oerjan: wait, what is? 06:26:49 shachaf: kiki 06:26:49 orin oren 06:26:58 oh 06:27:02 is also a japanese name 06:27:07 let's not talk about my name 06:27:15 Oren: "oren" means "pine" in hebrew hth 06:27:50 ah. my aunt also wishes she spoke hebrew 06:27:52 https://en.wikipedia.org/wiki/Suillus_granulatus is called an "orniya" 06:28:12 she knows biblical greek but not hebrew 06:28:20 hmm, this paper about predicting LCRNGs from high-order bits looks promising 06:28:27 however, it consistently spells "modulus" as "modulas" 06:28:38 also, it seems to need more than one bit 06:28:38 Modula-2 06:30:17 Journals don't have anything to do with publishing, they're books you keep next to your bed to write it. 06:30:43 Not only did I make a dumb joke where I pretended not to know a meaning fo a word, I was scrolled up. 06:30:58 what???? don't make up language on the fly! <-- how do you think words are made? (probably related to politics and sausages) 06:30:58 scrolled up? 06:31:00 *of 06:31:23 On the chat client. 06:31:27 ah 06:31:51 When I scroll up a little, it stays at the spot as new messages come in. 06:32:03 And then I come back and respond to something from hours ago. 06:32:12 MDude: you and me dude 06:32:16 oerjan, ha. Actually I share the same sentiment. I even defend semantic drift. Literally. 06:34:16 AndoDaan: which meaning of "literally" is this? :-) 06:35:16 all of them hth 06:35:18 howboudis? dyuu sport dis usij 06:35:44 he said _semantic_ not typographic hth 06:35:56 that is how i talk out loud when im lazy 06:36:18 ais523, the meaning is always context. hth 06:36:34 oh that's phonylogy. very sported. 06:36:39 wow, hth is pretty diverse. 06:37:42 also what about saying fiddy and sitty and niney? 06:37:48 hth can mean "hope that helps", "hope that didn't help at all" and anything in between. 06:38:02 instead of fifty sixty and niney 06:38:06 *ninety 06:38:10 Oren: that sounds about too fiddy 06:38:26 wait 06:38:28 *tree 06:38:49 i say three not tree 06:38:52 there is as much structure and grammer to, I forget the proper name, urban language as there is to the queen's english. 06:39:15 Oren: well you're not a scottish monster, i assume. 06:39:33 im from downtown toronto 06:40:25 that increases your odds of being the lochness monster. cuz he sure ain't in lochness. 06:40:36 i have some scottish ancestry but what with being half ukrainian and a quarter french 06:41:02 * oerjan was in the CN tower once. i think it was still the world's tallest free-standing structure at the time. 06:42:18 also glass floors are evil hth 06:42:19 Queens English? 06:42:33 You mean The kings English 06:42:33 aren't radio masts those? 06:42:40 Queen of England, Canada Australia and some other countries 06:42:47 [wiki] [[Wang program]] http://esolangs.org/w/index.php?diff=41258&oldid=8053 * Zzo38 * (+104) Wang B 06:42:49 Glass floors are awful 06:42:54 all of which speak english 06:42:58 Dulnes: oh dear did Elizabeth die today too? 06:43:11 pah, one movie comes out, and everyone thinks england has a queen. 06:43:19 oerjan: ok who died. 06:43:25 She is the queen 06:43:33 elliott: Dulnes says bill gates died hth 06:43:53 But The royal family has no say in Political matters anymore i think 06:44:00 Isnt it there for show? 06:44:20 she has more powers in emergency 06:44:25 or something 06:44:30 wait, the rule of getting a telegram for birthing 7 daughters change when there is a king? 06:44:31 the monarchy has more power than it should. 06:44:34 Dulnes: the english change terminology between queen and king whenever the monarch's gender does, right up to the lyrics of the national anthem. 06:44:36 I remember 06:44:44 c.f. the NHS funds homeopathy 06:44:53 The queen cannot get in trouble 06:45:02 She could commit mass murder 06:45:16 And be removed from the throne 06:45:16 it's annoying for the use of "the queen is dead, long live the king." 06:45:22 But not put in prison 06:45:34 it took me a while to figure out the sentiment when the gender was the same. 06:45:48 No one has a king 06:46:01 Have you heard of all those henry's 06:46:20 The murderous trecherous henry's 06:46:30 wait, you mean there was a 1 to 5 before 6? 06:46:43 henry the eightth 06:46:48 dammit 06:46:57 VIII 06:47:06 8 henry's and 6 wives. i mix those two up. 06:47:27 my grandma had two husbands 06:47:30 Who was the queen that brought England into the golden age 06:47:41 Victoria 06:47:45 Yeh 06:47:47 elizabith the first. 06:47:51 Idfk 06:47:52 dammit. 06:48:12 golden age or reason you mean, right? 06:48:23 Golden age as in 06:48:26 Victoria oversaw the industrial revolution and the enlightenment 06:48:34 not industrialization and grimey london. 06:48:37 The government and the people had alot of wealth 06:48:40 and ruled india 06:48:53 Wait 06:48:59 Wasnt that later on 06:49:08 Im talking about 1700 06:49:20 he is. and i'm still wrong. 06:49:27 Dulnes: I suspect the queen would be locked up if she committed mass murder. 06:49:35 even if it needed lawyering to find a justification for it. 06:49:46 (what's to stop you removing her from the throne and *then* charging her?) 06:49:56 victoria was about 1825 to 1875 or something 06:49:58 it's legally impossible to charge the queen with things so... yeah that works. 06:50:08 well it was back then anywho. 06:50:27 Still in effect i think 06:50:37 nope, she was from 1837 until 1901 06:50:46 There are some exceptions now. 06:51:01 Like if the queen came to your house and while you are busy being honoured she stole your shit 06:51:08 She wouldnt be tried 06:51:10 empress of india starting in 1876 06:51:16 Or 06:51:26 Idfk how to spell at knight 06:51:26 how would she steal anything? she doesn't even carry a purse. 06:51:30 Night* 06:51:37 Granny panties 06:51:42 god... 06:51:56 you can't call them that when she's wearing them 06:52:08 The Queen's Whites. 06:52:11 She has a corgy 06:52:14 iin the 1700's it was george the second 06:52:18 Its actually a robot 06:52:49 a robot with a sizeable hidden compartment? 06:52:55 While she's talking to you her robot dog is busy knicking your stuff 06:53:13 Like jewelry 06:53:17 And what not 06:53:41 I still hate England 06:53:48 i think she has enough jewelry hth 06:53:53 Doesn't the queen have enough jewelry already? Why would they need to steal any? 06:54:05 ive been to london and oxford it was terrible rained all the time 06:54:05 * int-e idly wonders how many millenia Dulnes has already lived 06:54:15 eh 06:54:16 She's a dragon 06:54:18 millennia 06:54:32 She always needs more 06:54:48 * oerjan wonders what Dulnes is on 06:54:48 If she is a dragon then she is too small and stuff like that 06:54:57 Magic 06:55:19 zzo38: dragons come in all sizes and shapes 06:56:02 spontaneous combustion is mainly due to tiny dragons accidentally flying into noses hth 06:56:03 Well it makes sense i mean way back when British people ran around with staffs saying that Merlin was a wizard and stuff and that there were dragons to be slain 06:56:10 (I really prefer the chinese ones to the boring european wyrms) 06:56:12 It was actually the queen 06:56:53 Well nvm Ireland was on drugs at the same time as that 06:57:02 suggest parentheses around assignmnet used as truth value 06:57:24 why doesn't it just say "this isn't BASIC you retard" 06:57:29 another difference is, they generally consider it lucky to have a dragon under your roof :P 06:57:44 Also the dragon swallows the sun 06:57:52 Oren: discrimination against people too young to know basic hth 06:58:10 VBA... 06:58:19 Oren: It is because you may have actually meant assignment there, and BASIC doesn't do that 06:58:26 Visual game boy advanced 06:58:38 the more BASIC ought to die the stronger it lives on 06:58:39 Has a sewing machine port 06:58:45 i never mean assignement inside an if statemtn 06:59:01 Oren: You don't? Well, I sometimes do. 06:59:17 gah why 06:59:27 that is so confusing 06:59:42 werne't you talking about #define retrun return earlier 06:59:57 http://m.slashdot.org/story/14134 07:00:21 Ive had to much coffee i think i should try and sleep 07:00:32 Too* 07:00:44 or whatever 07:00:45 retrun isn't confusing 07:00:50 Dulnes: that sounds... backwards. 07:00:55 its clear what it means 07:00:59 -!- shikhin has joined. 07:01:14 It is not confusing to me. It is confusing to BASIC programmers, although I do program in BASIC as well as in C. Therefore I argue with myself. 07:01:16 = and == menaing different things is screwed up 07:01:17 How does one display sound through text 07:01:35 Oren: I do not agree with that. 07:01:50 I think it should be one operator for assignment and one for check if it is equal. 07:01:55 they should be separate symbols that don't look the same 07:02:03 like <- 07:02:08 for assignemtn 07:02:38 Yes, other programming language could instead define <- for assignment (INTERCAL does this, although INTERCAL has no equality test operator) 07:02:43 or ~~ for compare 07:02:52 ¢_¢ 07:03:06 Oren: ouch. 07:03:08 zzo38: <- isn't exactly an assignment 07:03:20 int-e: Perl 6 uses ~~ for generic compare 07:03:27 ais523: Well, yes it is a bit different 07:03:35 I know that 07:03:46 ais523: and it's still ugly in the X11 fixed font. 07:04:27 maybe := for assignment is visually distinct enough 07:04:36 I was happy with := and = in Pascal; I'm happy with = and == in C. 07:04:48 Oren: Yes, that works too 07:04:50 == is not visually distinct 07:04:58 it is, there's a gap in the middle 07:04:58 Some programming languages use := and == 07:05:15 Verity uses := and == 07:05:21 those are very distinct good 07:05:24 someone tried to use = to compare and got a parse error and it took me ages to spot it 07:06:02 (= has the normal Haskell/Algol meaning of being used to define the value of a nonassignable variable, as in "let x = 4 in x") 07:06:15 Oren: ok, what about -i and --i 07:06:23 i hate those too 07:06:28 O, so it is like in Haskell. 07:06:37 i always do i = i - 1 07:06:39 It means to make a definition 07:06:45 zzo38: yes 07:06:45 not even i -= 1? c'mon 07:06:47 or i-- 07:06:50 Verity's an Algol derivative 07:07:00 I don't know much of Algol. 07:07:02 never on the right side of i 07:07:06 which also used the same convention (Haskell probably borrowed the syntax from there) 07:07:14 Oren: btw, i-- and --i are not the same 07:07:28 elliott: They are, as statements, with any modern compiler. 07:07:31 i know that is screwed up too 07:07:31 zzo38: Algol's interesting (and better than most modern languages) in that when defining a variable, you basically create a constant memory location instead 07:07:34 as statements, yeah. 07:07:45 ais523: I'm not sure Haskell has much syntactic Algol influence... 07:07:48 maybe indirectly 07:07:52 elliott: in which case, I prefer i-- as well. 07:07:59 int-e: agreed 07:08:00 if you want an assignable location x, you do something like "ref int x = heap int" (can't remember the actual syntax) 07:08:17 which in C, would be "int const* x = malloc(sizeof(int))" (except garbage-collected) 07:08:28 O, OK I understand it 07:09:33 m.slashdot.org is soo helpful. "" 07:09:33 It looks like your browser doesn't support JavaScript or it is disabled. Please use the desktop site instead. 07:09:46 eek, newlines. I hate it when firefox does that. 07:10:00 anyway, instead of giving me a link to the story, they gave me a link to the frontpage. sigh. 07:10:09 i hate it when they do that 07:10:16 int-e: is this beta or the oldish version? 07:10:31 ais523: the browser? 07:10:39 Well, in BLISS names of variables are treated as constants; also in Forth you can define a word having whatever meaning you like such as a constant that points to a newly allocated memory address to store its value, which is one way to create variables in Forth. It is a bit different from what you wrote though 07:10:39 int-e: no, Slashdot 07:10:54 it wouldn't surprise me at all if it were beta, that thing sucks 07:11:04 there was a movement to boycott Slashdot for a week over it 07:11:15 It was the http://m.slashdot.org/story/14134 link from above. I can't tell. 07:11:16 Forth is a great languge and underused 07:11:31 I joined in, then found myself not really going back to Slashdot afterwards, and if there are substantially more people like me, then it'll have caused a noticeable drop in traffic 07:11:32 it is LR(0) too 07:11:43 Forth doesn't even have a parser, really 07:11:46 Forth doesn't even need parsing 07:11:50 eaxtly 07:12:10 the best parser is no parser 07:12:22 You only need to, in normal circumstances, to find a space and everything up to that point is the word you have read, and then look it up in the dictionary to make its meaning. 07:12:33 And then it is executed and you continue on the next one. 07:12:44 that is besically a lexer 07:12:47 (the browser mishap comes from my habit of selecting lines by triple-clicking. Terminals include a final newline, which I can deal with. But firefox often includes an initial newline as well... no clue why.) 07:12:50 you use strtok 07:13:49 It is really simple really! It can even then be used to parse the input more itself before returning to the main execution sequence of reading more words in the normal way, so you can have it to parse more complicated things too if you want it to do so. 07:14:39 (For example, \ can skip until a line break before continuing as normal.) 07:16:20 Some Forth systems make it so that if in compiler mode and you find a word and there is a word defined which is the same but ` at the end then that word's definition is executed. Others work differently. 07:17:11 forth is underused 07:17:35 because of algol supremacists 07:17:49 who want everything to be algol 07:18:25 but i say programmers do not have to be mathematicians and use a mathlike syntax 07:18:54 Forth is hard to optimize 07:19:41 it's easier on processors with a stack-based paradigm at the hardware level 07:19:43 ais523: Well, it is possible to optimize if you compile into a "interpretive bytecode" and then once the program finishes executing, compile it into final code which is different. 07:20:07 I think of Forth more of an implementation technique than a language 07:20:20 And yes it still is easier when compiled to codes for processors with stack-based. 07:21:43 Note this "interpretive bytecode" I am talking about may include instructions which aren't a part of the target instruction set; therefore any definitions that use them cannot be compiled into the target code; this can be decided by seeing that when MAIN is executed it will never be reached and can therefore be optimized out and not result in a compiler error. 07:22:21 In some Forth system I have implemented once, the words IF ELSE THEN are defined as follows: : IF` 0=GOTO` HERE 0 , ; : THEN` HERE SWAP ! ; : ELSE` GOTO` HERE 0 , SWAP THEN` ; 07:27:50 "A 3 bit boolean variables. If bit 0 is set, the value is False. If bit 1 is set, the value is True. If bit 2 is set, the value is 14." 07:27:56 we need an article about this 07:28:19 lolwut.jpeg 07:28:25 FILE_NOT_FOUND 07:29:13 nullable booleans are common in mysql 07:29:20 and other sqls 07:29:25 oh, I got it wrong, it was an enum. enum Bool { True, False, FileNotFound }. 07:29:38 Oren: a nullable boolean would be two bits, though 07:29:48 http://p-nand-q.com/programming/languages/i/index.html 07:29:55 int-e: I think the original was #defines, and FILE_NOT_FOUND 07:30:02 depends on implementation 07:30:47 speaking of redesigns, wtf did they do to the thedailywtf layout ... 07:30:59 i konw....whyyyyyyy 07:31:05 s/konw/know 07:31:31 int-e: see the bottom post currently on the front page 07:31:35 it has a horizontal scrollbar 07:31:37 try scrolling it 07:31:44 (I can't) 07:32:07 yes, I don't understand what's wrong with using all of the browser's window width ... 07:32:18 windows can be resized :-/ 07:32:23 fail 07:32:26 I use SQLite myself; it has null too; it doesn't actually have a boolean type because integer type is used instead (if you request a boolean type it interprets it as integer), although you can still use nullable booleans. 07:32:56 ais523: oh. brilliant, yes, the whole box is a link. 07:33:16 at least the site name is approrpiate. wtf indeed. 07:33:20 for some reason, my horizontal mouse wheel doesn't work either 07:35:06 select null and null,null or null,null and 1,null and 0,null or 1,null or 0; -- The result will be NULL|NULL|NULL|0|1|NULL 07:35:20 (At least in SQLite this is the case.) 07:36:26 SQL and PHP are both lacking in trivalued logic operators 07:37:18 good comment. "The new design looks ugly. Why do people these days redesign their sites to have low information density, large fonts and large grayish blocks and no other detail, just to appeal to the tablet/"modern UI" fad?" 07:37:25 -!- nooga has joined. 07:37:44 Oren: What kind of trivalued logic operators? 07:38:37 So apparently all this happened in July, have I really not visited that site in all that time? 07:39:01 ones that preserve nullity or test explicitly for false but not null, etc 07:39:25 Oren: SQLite has a IS operator 07:39:43 often in these languages the presence of null causes issues unexpectedly 07:40:04 becasue the semantics of null are not consistent 07:40:34 why is 0 or null null but 1 or null 1 07:41:25 Because "1 or null" means you know it is true; "0 or null" means you don't know. 07:41:43 Because there is no data, so there can be no result. 07:41:50 -!- nooga has quit (Ping timeout: 252 seconds). 07:41:54 The SL speed limit might be significantly lower than I thought 07:42:21 second life? 07:42:28 or what? 07:42:38 Yes, Second Life 07:46:28 i should play second life 07:46:34 but meh 07:47:38 -!- AndoDaan has quit (Read error: Connection reset by peer). 07:48:48 -!- AndoDaan has joined. 07:49:02 I've been messing around with OpenSim just now. 07:49:12 whats that? 07:49:19 Guess I could try out Second Life again. 07:50:12 OpenSim is a free/open Virtual World server made to be compatible with Second Life viewers. 07:50:31 link? 07:50:34 So people can use it to host their own servers. 07:50:57 You'll never guess. 07:50:58 http://opensimulator.org/ 07:51:16 why would they have a completely unrelated url? 07:51:26 does it work on ubuntu? 07:51:39 open sim = open simulator 07:52:01 I dunno, I would think so. 07:52:14 and yeah, i was kidding 07:52:17 It's got a penguin link, that probably means it works with most of the distros. 07:52:32 Ah, I see. 07:53:34 I think I am the jokester and am outplayed. 08:08:30 -!- int-e has set topic: The international hub for esoteric programming language discussion, development and deployment | Beware of ricocheting jokes | https://dl.dropboxusercontent.com/u/2023808/wisdom.pdf http://codu.org/logs/_esoteric/ http://tunes.org/~nef/logs/esoteric/. 08:16:06 -!- AndoDaan_ has joined. 08:16:54 I did not realize or expect that there were so many fans of the Space Cadet keyboard. 08:18:02 it's like, i really need half a dozen mod keys to express myself fully, man, 08:18:14 -!- AndoDaan has quit (Ping timeout: 272 seconds). 08:23:16 it's because they're really MOOD keys 08:23:40 * oerjan looks at topic and ducks 08:24:05 new rule 08:24:23 what? 08:24:30 whenever i have to use parentheses because of C's sucky grammar 08:24:41 oerjan: what are the ducks doing 08:24:48 I will express my self by putting the statement in this form: 08:24:55 shachaf: throwing boomerangs 08:25:10 x =( x&0xffff) + (x>>16) 08:25:19 with a =( in it 08:25:58 because that is how I feel 08:26:20 huh, i thought & was higher precedence than +. 08:26:22 Ooooh. WASD's custom services apparently extend to doing one's own layout in .svg ... 08:36:04 @metar LOWI 08:36:04 LOWI 300820Z 09003KT 060V140 9999 FEW060 SCT160 BKN300 04/03 Q1012 NOSIG 08:37:39 -!- MDude has changed nick to MDream. 08:38:27 @metar ENVA 08:38:27 ENVA 300820Z 11007KT CAVOK 02/M06 Q1021 NOSIG RMK WIND 670FT 15013KT 08:44:03 Bike: I thought so too 08:47:56 probably because && is "multiplication". 08:48:22 originally there are no && and you just used &. 08:49:04 then they should have made new bitwise and not new logicals 08:49:51 x =( x & 0xffff) 08:50:02 =( 09:02:07 -!- _AndoDaan_ has joined. 09:02:39 -!- AndoDaan_ has quit (Ping timeout: 256 seconds). 09:08:16 -!- _AndoDaan_ has quit (Ping timeout: 272 seconds). 09:08:19 -!- AndoDaan_ has joined. 09:10:01 can the tcp packets checksum to zero for once in their miserable lives? 09:26:18 -!- nooga has joined. 09:30:48 -!- nooga has quit (Ping timeout: 264 seconds). 09:32:56 -!- Phantom_Hoover has joined. 09:34:40 -!- Dulnes has quit (Quit: Connection closed for inactivity). 09:49:29 Oren: But that would have meant actually changing the meaning of &, and they don't much like changes that invalidate existing code. 09:50:56 -!- AndoDaan_ has quit (Ping timeout: 264 seconds). 09:53:42 -!- shikhout has joined. 09:55:00 what the hell is this i thought ip header is 16 bytes long 09:55:22 wouldn't that be too short? 09:55:36 -!- shikhin has quit (Ping timeout: 240 seconds). 09:56:22 It's variable-length, anyway. 09:56:27 20 + options. 09:56:32 hmmm oh i'm counting the struct wrong 09:56:51 stupid #ifdef bigendian 09:57:25 yeah 20 is right 09:57:34 ok tcp should work now 09:57:52 and it is 5 am 09:58:20 what I don't understand is, is the header always at least 24 bytes long? 09:58:44 or can it be just 20 bytes, with no space for options? and in the latter case, what indicates there's no space allocated for options? 09:58:57 b_jonas: A field in one of the 20 bytes. 09:58:59 it is apparently always 20 09:59:06 And it's definitely not always 20. 09:59:16 fizzie: which field? 09:59:23 There's a 4-bit field ("IHL") in the first byte. 09:59:25 i haven't encountered any that weren't 20 09:59:28 It gives the header length in words. 09:59:36 all the checksums are checking out 09:59:45 fizzie: ah, thanks 09:59:46 that's it 10:00:08 Having a non-zero number of options is probably relatively rare, but possible. 10:00:10 is an ip packet that contains tcp ever 24 10:01:07 also iirc they figured out that some of those 20 bytes are almost always unused, so they moved them to optional options in ipv6 10:03:42 -!- dts has changed nick to usandenemies. 10:03:56 -!- usandenemies has changed nick to dts. 10:04:26 They removed the checksum, at least. 10:04:47 Under the assumption that there's always going to be a link-level checksum. 10:05:09 (Meaning the IP header checksum, not protocol-level things there.) 10:06:08 fizzie: and they moved the 14 bits controlling fragmentation to optional headers 10:07:18 thank god im not required to support fragmented packets 10:07:31 that would be a nightmare 10:07:42 -!- nooga has joined. 10:08:09 mind you, removing the fragmentation info from the ip header not only conserves space, but also makes sense from a logical point: 10:08:29 the ip header is supposed to contain stuff that intermediate routers are supposed to examine, not only the destination, 10:08:45 and routers don't have to examine the fragment info, because it's the destination that assembles the fragments. 10:09:46 holy fuck i actually got everyhting to work 10:09:57 woohoo 10:10:11 yay! what are you doing? 10:10:15 it is5:09 and i can just upload my code and go home 10:10:28 i am writing a packetswicth/NAT 10:10:33 nice 10:10:59 course project worth 20% of my grade 10:11:03 be safe 10:11:54 as soon as i've handed everything in i'm gonna go eat breakfast 10:20:16 -!- Oren has quit (Ping timeout: 246 seconds). 10:22:11 Ooh, half a gigabyte was enough to build that SciRuby matrix library. (Just barely, but still.) 10:29:02 are you trying to fix zemhill? 10:29:58 fizzie: ^ 10:38:57 oerjan: Yes. Well, to move it to its new VPS, first. 10:39:12 ah 10:39:14 There's also a new version of the matrix lib, so maybe it'll also get fixed while doing that. 10:39:32 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds). 10:39:37 -!- hjulle has joined. 10:39:46 -!- zemhill has quit (Remote host closed the connection). 10:40:05 Come to think of it, let's turn it off for a moment there. 10:40:08 Also I need some breakfast. 10:49:35 -!- MoALTz_ has quit (Quit: Leaving). 11:11:32 I don't get it. I installed the nmatrix thing, but now it's not there. 11:13:15 But now it is. Uh. 11:14:23 nmatrix.rb:444:in `method_missing': undefined method `-@' for # (NoMethodError) 11:14:29 Perhaps they've changed the interface. 11:16:32 Apparently the unary minus no longer exists. Or something. 11:17:14 -!- Oren has joined. 11:18:23 -!- kline has joined. 11:19:59 -!- zemhill has joined. 11:20:08 Somehow I doubt it'll work that easily. 11:20:28 !ztest (>)*8(>[-.])*21 (go ahead, crash like you mean it)*0 11:20:28 fizzie: Program name ((>)*8(>[-.])*21) is restricted to characters in [a-zA-Z0-9_-], sorry. 11:20:44 !ztest that_was_embarrassing (>)*8(>[-.])*21 (go ahead, crash like you mean it)*0 11:20:44 fizzie.that_was_embarrassing: points -19.76, score 8.31, rank 47/47 11:20:45 fizzie: I broke down! Ask fizzie to help! The details are in the log! #> 11:20:45 -!- zemhill has quit (Client Quit). 11:20:54 Yes, yes. Very good. 11:23:00 Err. 11:23:07 How has that ever worked. That can't have ever worked. 11:23:23 XD 11:24:51 -!- zemhill has joined. 11:25:03 Seems that I had somehow managed to move a thing from one place to another while adding documentation comments and nothing else. 11:25:13 !ztest it_keeps_happening (>)*8(>[-.])*21 (go ahead, crash like you mean it)*0 11:25:13 fizzie.it_keeps_happening: points -19.76, score 8.31, rank 47/47 11:25:52 !zjoust will_the_repository_blow_up (>)*8(>[-.])*21 (go ahead, crash like you mean it)*0 11:25:52 fizzie: I broke down! Ask fizzie to help! The details are in the log! # 11:25:52 -!- zemhill has quit (Client Quit). 11:25:55 Yay. 11:26:21 now I'm trying to remember what 128 means as an exit code 11:26:31 my brain's translating it to "killed by signal 0" but that doesn't make sense 11:27:28 In this case, it means I didn't remember to do git config user.{name,email} for the bfjoust account on the new server. 11:27:36 It did the git "Please tell me who you are" error. 11:27:51 -!- MoALTz has joined. 11:29:52 -!- zemhill has joined. 11:30:03 !zjoust will_the_repository_blow_up < 11:30:03 fizzie.will_the_repository_blow_up: points -46.00, score 0.00, rank 47/47 (--) 11:31:00 The web reports seem to have not updated. 11:31:35 Or, hmm. 11:32:12 No, that was just me. 11:35:17 oh great! apparently AT_FDCWD has the value -100 . (I thought for some reason that it was -2) That's much better. 11:35:27 Well. It's back online. I don't guarantee it will work. 11:36:41 !help 11:36:42 fizzie: I do #{command}; see http://zem.fi/bfjoust/ for more information. 11:36:42 ​help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help . 11:36:48 ... 11:37:08 zemhill: By #{command} I kind of meant you'd substitute in the command. 11:38:03 -!- zemhill has quit (Remote host closed the connection). 11:41:18 whoa, is this a ruby bot? 11:41:33 Yes. 11:41:46 -!- zemhill has joined. 11:41:49 !help 11:41:49 fizzie: I do !zjoust; see http://zem.fi/bfjoust/ for more information. 11:41:49 ​help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help . 11:42:33 There. I changed the command (even though having a single-command submission to two separate hills was kind of... #esoterician), but kept the ! prefix since it only responds to the command (and !help). 11:42:40 Didn't want to tie up a whole new prefix for that. 11:43:02 ^prefixes 11:43:02 Bot prefixes: fungot ^, HackEgo `, EgoBot !, lambdabot @ or ?, thutubot +, metasepia ~, idris-bot ( , jconn ) , blsqbot ! 11:48:43 thutubot's could possible be repurposed. 11:49:41 Can I reserve '='? My other two bot prefixes have alredy been stolen 11:49:44 / is still free ;-) 11:50:41 /I don't see what the problem is 11:51:18 /server would make an excellent main command for a bot. 11:51:31 hehe 11:52:07 or how about color codes as bot prefixes? 11:52:15 eww 11:52:28 /quite so 11:52:36 heh 11:53:18 "botname:" as a prefix is the boring, yet practical choice. 11:53:52 fizzie: yeah, that's good for full form, but my problem is that I want a bot with multiple commands, and "botname command: " is a bit too long 11:54:11 IMO all bots should support that, if only to make it easy to disambiguate multiple instances of the same bot 11:54:30 I would have expected that to be "botname: command ..." so that many people can tab-complete it. 11:54:32 lambdabot: > 1 -- I forgot whether she can do that 11:54:39 apparently not. 11:54:40 fizzie: either 11:54:51 lambdabot: help :( 11:54:53 lambdabot: @run 4 11:54:54 4 11:54:55 -!- hjulle has quit (Ping timeout: 256 seconds). 11:55:02 lambdabot: @run 2+2 -- she can 11:55:03 4 11:55:06 oh. right, > is too special. 11:55:07 zemhill doesn't do the name prefix either. Should maybe add it at some point. 11:55:12 int-e: and so is :t 11:55:17 :t 4 11:55:18 Num a => a 11:55:22 lambdabot: :t 4 11:55:25 lambdabot: ?help 11:55:25 help . Ask for help for . Try 'list' for all commands 11:55:27 lambdabot: type 4 11:55:28 lambdabot: @type False 11:55:28 Bool 11:55:29 -!- Patashu has quit (Ping timeout: 272 seconds). 11:55:31 er, that 11:56:01 I'd expect the 'nick: ' to be used *as* a prefix rather than in addition to one, but oh well 11:56:02 @help eval 11:56:02 eval. Do nothing (perversely) 11:56:46 @eval 11:56:46 FireFly: Yes you could do it that way; it would help too. (Such a prefix then is unneeded when the message is private) 11:56:53 I approve of this command 11:56:57 FireFly: jevalbot tries to do both, but the syntax is completely fucked up 11:57:13 Hehe 11:57:22 -!- evalj has joined. 11:57:24 there's got to be a story behind it, which might be interesting 11:57:27 I've never learned jevalbot's syntax for non-eval commands 11:57:30 but "someone thought it would be funny" is enough 11:57:42 evalj: |.'with just a nick, it uses the default command' 11:57:43 b_jonas: dnammoc tluafed eht sesu ti ,kcin a tsuj htiw 11:58:03 evalj, ping: with a nick and command, it uses that command 11:58:04 b_jonas, pong: with a nick and command, it uses that command 11:58:33 ] 'there are some shortcuts, both a short one and ones with the nick, so you often don't have to type the command' 11:58:34 b_jonas: |open quote 11:58:34 b_jonas: | 'there are some shortcuts, both a short one and ones with the nick, so you often don't have to type the command' 11:58:34 b_jonas: | ^ 11:58:44 ] 'there are some shortcuts, both a short one and ones with the nick, so you often don''t have to type the command' Nb. gtfo 11:58:45 FireFly: note that lambdabot has, in fact, a @@ command 11:58:45 b_jonas: |spelling error 11:58:45 b_jonas: | 'there are some shortcuts, both a short one and ones with the nick, so you often don''t have to type the command' Nb. gtfo 11:58:45 b_jonas: | ^ 11:58:49 argh 11:58:54 ] 'there are some shortcuts, both a short one and ones with the nick, so you often don''t have to type the command' NB. gtfo 11:58:55 b_jonas: there are some shortcuts, both a short one and ones with the nick, so you often don't have to type the command 11:59:29 [ 'isn''t jeval also in here?' 11:59:29 FireFly: isn't jeval also in here? 11:59:35 er, j-bot* 11:59:55 Always good to have a backup, I guess 12:00:09 evalj, help: 12:00:09 where it's fucked up is (a) what combinations of punctuations around the nick and command it accepts, (b) the syntax behaving inconsistently for commands in private message, and (c) how it doesn't accept a command after a shortcut punctuation like '] ping: foo' 12:00:10 If you are using such bot commands a lot you can create a macro in your client. 12:00:24 FireFly: there's no written help, only me and the source code 12:00:31 Oh 12:00:38 evalj, source: 12:00:39 b_jonas, jevalbot source is http://www.math.bme.hu/~ambrus/pu/jevalbot.tgz 12:00:45 sorry 12:01:39 @@ leet quote 12:01:39 leet quote 12:01:43 @. leet quote 12:01:43 DzLx 5AYz: Y0u (4n /\/\4K3 teh Id /\/\onAD SomEWh4+ bEt+er 83h4V3D 8y wrAPpin9 i+ IN zupEr3g0T. 12:02:12 there's some commands for manipulating sessions (clearing, copying, changing to a shared session), and a command for evaluating mutli-line input 12:02:16 and a few other stuff 12:02:53 @ hm 12:03:09 @faq 12:03:09 http://www.haskell.org/haskellwiki/FAQ 12:04:05 @@ ?leet @quote 12:04:05 tEs$ier $aYs: 4FtER Th3 LAzT N3\/\/bi35 HeAd EXp|0DED 7ryin9 7o Re4D E\/Ery7|-|Ing On t|-|A7 /\/\oN4d |inx +H3r3 W4s a LO7 oph papeR\/\/Orx. \/\/E'D |IxE too av0id DoiNg tH4+ Ag4in. 12:08:16 next time I make an irc bot that responds to commands, I'll be sure to give it a syntax that is insane and inconsistent in ways different from that of evalj 12:08:32 -!- hjulle has joined. 12:09:08 FireFly: oh, and one more problem with evalj is that at one point, when I ran it under the nick jeval, "jeval" was both a command and a nick, making the syntax sort of ambiguous 12:09:49 mind you, it's the default command, but still. 12:10:54 that means if you sent a private message saying 'jeval: somecommand= foobar' it isn't clear whether 'somecommand=' is a command or an argument (I think it's the latter, but I'm not sure) 12:18:39 evalj: ping= argument 12:18:39 b_jonas: ping = argument 12:18:43 evalj ping= argument 12:18:44 b_jonas, pong: argument 12:18:49 evalj: ping: argument 12:18:50 b_jonas, pong: argument 12:18:55 evalj ping: argument 12:18:56 b_jonas, pong: argument 12:19:16 seriously, it's nonsense, I'll have to figure out different bad syntax next time 12:24:37 what font do you use in terminal 12:25:00 Oren: my own bitmap font: 12:25:10 http://www.math.bme.hu/~ambrus/pu/fecupboard20-c.pcf.gz Fecupboard20 (free X11 bitmap font with 20x10 pixel character cell, easily distinguishable characters, great for terminals and programming, has all characters in iso-8895-1 and 8859-2 and more) 12:27:25 I am using an unorthodox font: http://ctrlv.in/467600 12:28:04 but i am wondering what fonts are actually readable 12:28:08 i just use the default comic sans. 12:28:18 A looks too much like Λ 12:28:43 I tried to set my terminal font to Comic Sans once but it didn't work very well. 12:28:49 how often do people use Λ anyway? 12:28:55 also, I don't even have Comic Sans insalled 12:28:55 Someone should make a monospace version. 12:29:02 well, mine is also sort of unorthodox 12:29:31 I assume Greek speakers use it a lot. 12:29:34 it has some characters marked with extra dots when I want them to be more easy to distinguish from similar-looking more common characters 12:29:39 And maybe mathematicians. 12:30:03 where do you put fonts on linux again? 12:30:23 Oren: user-local or system? 12:30:35 whatever its my machine anyway 12:31:53 Oren: for user-local, you put them in ~/.fonts , however, for a bitmap font (like mine) you may have to change the fontconfig configurations so it doesn't just skip bitmap fonts 12:32:13 for system, I put them in /usr/share/fonts/X11/misc and the same applies 12:32:27 the fontconfig configurations can also be changed globally or user-locally, 12:33:06 globally in /etc/fonts , locally in ~/.fonts.conf but be careful because some gui apps may rewrite the latter 12:33:14 so basically, it's complicated 12:33:29 ah 12:34:07 also, after installing fonts, you may have to run some commands so they're recognized, 12:34:15 -!- oerjan has quit (Quit: Later). 12:34:19 Envy Code R is quite readable 12:34:31 specifically, for system fonts, sudo fc-cache 12:34:38 Oren: what font is that, anyway? 12:34:59 TakaoMincho Bold 12:35:05 and for bitmap fonts used through the old X11 bitmap font interface (not through fontconfig or other advanced stuff) xset fp rehash 12:35:16 it's serifed but monospace a weird combo 12:35:29 for local font installs, you may have to run fc-cache too 12:38:18 Oren: my font is sort of half-seriffed 12:38:22 some serifs are present, some aren't 12:40:47 Λ ∧ look somewhat similar to me 12:41:01 In this font. 12:51:17 [wiki] [[Talk:Boat]] N http://esolangs.org/w/index.php?oldid=41259 * Zzo38 * (+102) Created page with "What does "xand" mean? --~~~~" 12:53:42 i got it working 12:53:46 looks cool 12:54:08 http://ctrlv.in/467603 12:58:55 the bold isn't the same width as the regular 12:59:13 causes a bit of squeezing 13:04:20 "xand" - both, but not both. 13:04:24 once you disable bold it looks very good 13:05:17 if xor is [0,1,1,0] then xand should be [1,0,0,1] 13:06:14 because xor means 1,1 -> 0 instead of 1 13:06:27 Oren: exactly. 13:06:34 so xand should mean 0,0 ->1 instead of 0 13:06:40 and is [0,0,0,1], so xand should be [0,0,0,0] 13:07:31 or that, tho it makes it unuseful 13:07:36 I know [1,0,0,1] as equality or nxor 13:08:09 the !=! operator 13:08:37 And I know [0,0,0,1] as multiplication 13:08:53 inequality test -- returns the xnand of two values <-- this may shed some light on the intended meaning 13:09:26 though I would argue that xnand is really just nand if you read the x as "exclusive" 13:11:05 and i have invented the =( operator 13:11:38 and the !! operator is common 13:14:04 nand is an interesting operator because although it is the basis of circuitry 13:14:22 most algol based languages do not directly support it 13:14:42 do they support nor? 13:14:48 in C i cannot go a !&& b 13:15:06 or a !|| b 13:15:21 I have to use parentheses 13:16:05 or use the distributive laws and do !a || !b 13:16:12 etc 13:17:56 !&& could be added with no ambiguity 13:18:03 they just didnt bother 13:18:06 what if i'm an intuitionist 13:18:59 -!- mig22 has joined. 13:21:05 and bitwise ~& should be an operator 13:21:14 shachaf: ! 13:21:38 int-e: ? 13:22:12 shachaf: anyway, rather than convincing you I'd then attempt not not convincing you. 13:26:36 -!- ais523 has quit. 13:30:50 shachaf: oh and the exclamation mark was a C negation. 13:32:17 -!- ZombieAlive has quit (Ping timeout: 245 seconds). 13:36:04 -!- mig22 has quit (Ping timeout: 245 seconds). 13:36:15 what if i'm not unintuitionist 13:36:46 -!- oonbotti2 has quit (Remote host closed the connection). 13:37:15 -!- mig22 has joined. 13:37:57 aha! I have invented the shouldn't that be !||. 13:39:03 tge !|| is not accepted by C. #define !|| i actually have no idea if that's legit, oh well 13:39:51 0 the companion of --> "goes to" 13:41:33 weird that it's asymmetric. 13:42:49 `! c printf("%d %d %d %d\n",0 Does not compile. 13:43:01 `run echo 'printf("%d %d %d %d\n",0 gcc: error: -E or -x required when input is from standard input 13:43:19 er. duh. 13:43:19 Might help to define `main` 13:43:34 that was the duh. 13:43:52 `! c int main(void){ printf("%d %d %d %d\n",0 Does not compile. 13:44:01 hmm 13:44:30 `! c int main(void){ printf("%d %d %d %d\\n",0 1 0 0 0 13:44:33 there we go 13:44:35 \n turns into a real newline (for preprocessor stuff), which makes the string literal bad. 13:45:29 `run echo 'int main(void) { printf("%d %d %d %d\n", 0 gcc: warning: ‘-x c’ after last input file has no effect \ gcc: error: -E or -x required when input is from standard input 13:45:49 so yah. ffs, command ordering 13:45:49 `run echo 'int main(void) { printf("%d %d %d %d\n", 0: In function ‘main’: \ :1:1: warning: implicit declaration of function ‘printf’ [-Wimplicit-function-declaration] \ :1:18: warning: incompatible implicit declaration of built-in function ‘printf’ [enabled by default] \ :1:1: warning: control reaches end of non-void function [-Wreturn-type] 13:45:57 such problems. 13:46:16 `run echo '#include \nint main(void) { return printf("%d %d %d %d\n", 0:1:19: warning: extra tokens at end of #include directive [enabled by default] \ /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../x86_64-linux-gnu/crt1.o: In function `_start': \ (.text+0x20): undefined reference to `main' \ collect2: error: ld returned 1 exit status 13:46:49 oh, so \n is a c int thing. 13:46:53 well. whatever. 13:47:20 `run echo '#include \nint main(void) { return printf("%d %d %d %d\\n", 0:1:19: warning: extra tokens at end of #include directive [enabled by default] \ /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../x86_64-linux-gnu/crt1.o: In function `_start': \ (.text+0x20): undefined reference to `main' \ collect2: error: ld returned 1 exit status 13:47:49 `! c int main(void){ printf("%d %d %d %d\\n",0 1 0 0 0 13:48:20 now is there a nand operator? 13:48:52 hmmm 13:48:52 perhaps <=! 13:48:57 `! c int main(void){ printf("%d %d %d %d\\n",0<=!0,0<=!1,1<=!0,1<=!1);} 13:49:00 1 1 1 0 13:49:04 yup 13:49:51 the c language can thus be extended without technically extending it 13:50:01 if that makes any sense 13:55:47 -!- mig22 has quit (Remote host closed the connection). 14:00:51 oh, so it's just nxor? 14:01:19 nxor would be !=! 14:01:47 xnor 14:01:49 no, I mean that mysterious "xand" operator is nxor 14:02:55 xnor is also ==, isn't it. 14:03:06 yeah 14:03:14 i guess if you only have 0s and 1s. 14:03:21 for bits 14:05:09 for bits ummm 14:06:47 what would ^~ do? 14:07:42 `! c int main(void){ printf("%d %d %d %d\\n",0^~0,0^~1,1^~0,1^~1);} 14:07:52 ​-1 -2 -2 -1 14:07:59 `! c int main(void){ printf("%x %x %x %x\\n",0^~0,0^~1,1^~0,1^~1);} 14:08:01 ffffffff fffffffe fffffffe ffffffff 14:08:07 aha 14:08:55 so ^~ is 1 on each bit that the two operands are equal on 14:09:11 bitwise == 14:10:57 which is the same as xnor 14:11:16 which is not . xor 14:11:43 in this case the nor is happening on one of the inputs, i think this is called "bubble migration" on diagrams 14:11:52 the not* 14:17:40 oh, how about unary -!! this operator transforms C ints to forth bools 14:18:25 `! c int main(void){ printf("%x %x %x %x\\n",-!!0,-!!(-1),-!!1,-!!2);} 14:18:28 0 ffffffff ffffffff ffffffff 14:18:33 see 14:19:25 -!- S1 has joined. 14:19:58 I should put a list of these nonstandard C 'operators' somewhere 14:45:35 hmm 14:55:03 -!- S1 has quit (Quit: S1). 14:55:35 -!- FreeFull has quit. 14:59:32 -!- mig22 has joined. 15:09:17 -!- GeekDude has joined. 15:18:22 -!- FreeFull has joined. 15:23:21 -!- mig22 has quit (Ping timeout: 264 seconds). 15:24:04 -!- mroman__ has joined. 15:24:12 my server is down. 15:34:56 hmm there should be a list on the wiki of non brainfuck clones 15:36:34 there should be a wiki of non clones of anything 15:40:09 -!- sebbu has quit (Ping timeout: 264 seconds). 15:42:36 -!- sebbu has joined. 15:42:36 -!- sebbu has quit (Changing host). 15:42:36 -!- sebbu has joined. 15:43:08 Has anyone here done programming in K or a similar language? 15:44:35 -!- nyuszika7h has joined. 15:44:49 I'm in the process of making a 99 bottles program in dc! \o/ 15:44:51 nyuszika7h@cadoth ~ $ dc -e '?dsn[dn[ bottle]n[[s]n]sp1!=p]dsdx[ of beer on the wall, ]nlnldx[ of beer.]p' 15:44:52 99 15:44:53 99 bottles of beer on the wall, 99 bottles of beer. 15:49:16 FreeFull: I'm familiar with J 15:50:50 Yeah, J is similar but has some fundamental differences 15:51:20 How long did it take for you to build up an intuition on how to work with it? 15:52:29 FreeFull, I've used APL a little 15:53:47 Taneb: That's what I wanted to try first, but I didn't want to deal with getting the keyboard layout working 15:54:00 FreeFull, the emacs mode is pretty good 15:54:25 -!- shikhin has joined. 15:54:32 I'd probably have to install emacs then 15:57:23 -!- shikhout has quit (Ping timeout: 250 seconds). 15:57:56 FreeFull: I don't really remember. I've been using it on-and-off for a couple of years, learning a bit at a time 15:58:09 Rather than trying to learn it properly over a shorter timespan 15:58:10 -!- cluid has joined. 15:58:49 I see 15:59:09 If you're curious about J/K/APL, there's #jsoftware (which, despite the name, kind-of acts as a catch-all for all three) 15:59:40 Thanks 15:59:42 Hello 15:59:42 I was hoping there was some sort of IRC channel 15:59:42 Hi cluid 16:01:52 -!- EgoBot has quit (Ping timeout: 245 seconds). 16:03:15 -!- EgoBot has joined. 16:04:23 I was wondering about CA simulating other CA 16:05:42 do you think there is a way to encode rule X in rule Y where each cell of a rule X pattern is encoded as like 7 cells together and 15 rule Y steps corresponds to one rule X iteration 16:11:49 does it make sense 16:11:55 and is there any chance of this being possible 16:12:14 thinking of 1D CAs 16:15:37 cluid: You probably can do something in 1D with the turing-complete CAs 16:16:02 As far as 2D goes, I've seen a simulation of the game of life inside the game of life 16:16:11 Using these gigantic cells 16:16:25 well the reason i cae up with this idea is to get away from the standard TC construction 16:17:05 i dont like the infinite setup part, so I was interesting on CAs simulator other CAs with a single initial state that's a constant multiple the size of the state it simulates 16:17:25 I saw that meta-GoL too, that's so cool! That's exactly the sort of thing I mean 16:19:56 it is a bit difficult to search for 1D simulators 16:20:05 i dont really know how to approach it 16:20:10 it may not be possible at all 16:20:21 you'd need to find repeating patterns 16:23:39 -!- FreeFull has quit (Quit: Rebooting). 16:25:16 -!- FreeFull has joined. 16:26:31 cluid: i dont like TC either 16:27:00 btw i read the log and I agree about the non-bf thing 16:27:14 maybe it could be created automatically from the BF list 16:27:33 mostly probably, but some of them dont explicitly say they are brainfuck clones 16:27:42 you have to waste time reading through the description to realize it ;) 16:27:49 sort of a troll 16:28:03 haha 16:28:16 which in itself may be a good idea for a esolang, its brainfuck but you dont know it unless you try to use it 16:28:33 brainfuckrolled... 16:29:23 EvanR: if you find such a thing, tell us and we'll slap a category on them 16:29:58 b_jonas: you mean bf clones that dont say so? 16:30:07 EvanR: yes 16:30:37 ok, this one does have the bf category. at the bottom 16:30:42 well i think they should be categorize 16:30:53 most of them say so in the very first sentence 16:31:09 http://esolangs.org/wiki/Arrow 16:31:12 so does anyone have ideas on the CA simulation idea? 16:32:59 [wiki] [[Dimensions]] http://esolangs.org/w/index.php?diff=41260&oldid=41203 * B jonas * (+35) 16:35:35 -!- TodPunk has quit (Ping timeout: 258 seconds). 16:40:54 -!- S1 has joined. 16:55:39 -!- MDream has changed nick to MDude. 17:02:20 Some fractal dimension? 17:10:38 cluid: i'd worry about information transfer. like, the majority problem isn't easy... 17:11:46 99 bottles in dc done! \o/ 17:11:56 http://dpaste.com/0DNKF8M 17:12:50 nyuszika7h, nice one :) 17:13:01 I have no idea why I have to hardcode printing for 0 though 17:13:44 if I do !< (>=) instead of < then it loops forever on the last pair of lyrics 17:13:54 last two lines, that is 17:37:22 @metar ESSA 17:37:23 ESSA 301720Z 36002KT CAVOK M00/M01 Q1030 R01L/19//95 R08/15//95 R01R/19//95 NOSIG 17:40:07 Bike, I guess to simulate majority you'd need a CA which goes out in both directions 17:40:20 buta CA that only goes out to the right might still be able to simulate others that do that? 18:21:16 -!- TodPunk has joined. 18:21:32 -!- Oren has quit (Ping timeout: 246 seconds). 18:32:21 -!- S1 has quit (Quit: S1). 18:47:13 -!- Dulnes has joined. 18:48:08 Hi 18:54:39 €]©_]®_ ©$`_ € °€®₩{€¢_ ]}>«]¢ >₩_€_ °_>>_<€ 18:54:58 what language is that 18:55:09 Thats what happens when you memorise your key pad and use those letters instead 18:57:12 ~=_<>{ is technically qwerty 18:59:15 hi 18:59:25 Hi 19:00:25 So if you ever wanted to convert your A-Z to $-¿ 19:00:45 Thats how you would go about it 19:02:05 * Dulnes Slowly eats toast 19:06:20 -!- dts has quit (Ping timeout: 250 seconds). 19:08:17 I assume most of you are asleep 19:20:10 will be soon. 19:22:21 [wiki] [[POGAACK]] http://esolangs.org/w/index.php?diff=41261&oldid=34732 * SuperJedi224 * (+11) 19:25:37 Im so done with this language 19:27:57 en halua lisää aivovittun kieliä. 19:28:42 what's up 19:29:25 -!- Oren has joined. 19:29:37 Dulnes: why would most of us be asleep? 19:33:44 http://esolangs.org/wiki/%E2%99%A6 what is the use of this page¿ 19:35:09 -!- S1 has joined. 19:42:43 Hhh 19:42:53 Bye 19:43:04 its encrypted 19:43:04 Bye 19:43:14 there is a weird .exe to decrypt it 19:43:26 -!- cluid has quit (Quit: Leaving). 19:45:46 -!- nooga has quit (Ping timeout: 265 seconds). 19:50:56 is "errno = 0; some_call_that_sets_errno(); if (errno != 0) { ...}" reasonable? the call returns success on certain error conditions. 19:51:14 -!- test[dulnes] has joined. 19:51:52 i just logged im through my 3Ds 19:51:54 Assuming that it doesn't mutate errno except on error, that is perfectly reasonable. 19:52:07 And is required for some parts of libc. 19:52:09 trick question: it's unreasonable because errno is unreasonable 19:52:23 elliott: :P 19:52:24 ok, well, yes. i'm trying to work around unreasonability. 19:52:36 errno is not exactly a nice thing, yes. 19:52:38 Heh it worked 19:52:38 honestly i'm still not over the silliness of returning a success value but setting errno anyway. 19:52:50 Buuut, that's C for ya. 19:53:26 This was actually very hard 19:53:27 it's a posix function so i guess i can assume it doesn't mutate errno otherwise. 19:53:28 so, anybody here ever used yi and minds telling me how awesome it is so i am willing to build like a dozen dependencies? 19:53:43 Bike: Which function? 19:53:59 fscanf. which is actually libc probably. 19:54:07 And yes. C and POSIX functions as a rule only change errno on error. 19:54:34 M_M 19:54:54 if you try to scan in an integer that's too big it just returns maxint. does set errno though. 19:55:03 Yep. 19:55:24 i'd rather it like, failed, but oh well. 19:55:25 The pixelation on the 3ds browser is awful 19:55:43 actually i'd really rather there be a dedicated read integer function instead of using this weird printf string thing. o well 19:57:47 -!- test[dulnes] has quit (Ping timeout: 246 seconds). 20:00:26 [wiki] [[User talk:SuperJedi224]] N http://esolangs.org/w/index.php?oldid=41262 * SuperJedi224 * (+191) /* A (fairly trivial) Thue-Brainf*** polyglot */ new section 20:00:55 [wiki] [[User talk:SuperJedi224]] http://esolangs.org/w/index.php?diff=41263&oldid=41262 * SuperJedi224 * (+31) /* A (fairly trivial) Thue-Brainf*** polyglot */ 20:01:09 [wiki] [[User talk:SuperJedi224]] http://esolangs.org/w/index.php?diff=41264&oldid=41263 * SuperJedi224 * (-2) /* A (fairly trivial) Thue-Brainf*** polyglot */ 20:01:44 -!- Patashu has joined. 20:02:03 [wiki] [[User talk:SuperJedi224]] http://esolangs.org/w/index.php?diff=41265&oldid=41264 * SuperJedi224 * (+4) 20:02:44 I feel useless im gonna go play lOZ 20:02:46 [wiki] [[User talk:SuperJedi224]] http://esolangs.org/w/index.php?diff=41266&oldid=41265 * SuperJedi224 * (-17) /* A (fairly trivial) Thue-Brainf*** polyglot */ 20:06:00 -!- dts has joined. 20:11:12 -!- Sauvin has changed nick to EisenHerz. 20:13:42 -!- Phantom_Hoover has joined. 20:13:55 Bike: failed howso? 20:13:59 not really many options for that in C 20:22:17 -!- Oren has quit (Ping timeout: 246 seconds). 20:24:49 -!- Patashu has quit (Ping timeout: 264 seconds). 20:29:11 -!- ZombieAlive has joined. 20:32:04 note to self: actually remember when st andrew's day is 20:45:03 elliott: fscanf returns the number of objects scanned. on overflow with "%d" it could return zero and leave the pointer undefined 20:46:09 -!- EvanR has quit (Ping timeout: 252 seconds). 20:58:43 -!- Oren has joined. 21:07:00 But doesn't it only use a single character lookahead or something like that? If so, that won't work. If it uses extended lookahead then that idea could work. 21:11:02 doesn't what use single character lookahead 21:11:54 -!- boily has joined. 21:14:47 -!- mroman__ has quit (Ping timeout: 246 seconds). 21:36:51 -!- boily has quit (Quit: INCONVENIENT CHICKEN). 21:45:40 i was excited cause i thought my aunt wendy was coming over but it's a different wendy 21:46:15 wendy from guatemala apparently 21:46:39 pikhq_: It's not true that C library functions only change errno on error. 21:46:44 anyway i had an idea for a visual programming langugaes 21:46:48 Or, it might be true in practice, but it's not true in theory. 21:46:59 lol 21:47:20 "The value of errno may be set to nonzero by a library function call whether or not there is an error, provided the use of errno is not documented in the description of the function in this International Standard." (C11 7.5p3) 21:47:26 oh, sigh. 21:47:40 yeah 21:47:41 Only some of them are specified to actually not mutate errno. 21:47:43 Siiigh. 21:47:48 And most of the functions don't so document it. The ones where you can't distinguish an error otherwise do, though. 21:48:00 C is getting on in age 21:49:13 so what doyou do, I guess you look up each particular function's behaviour? 21:49:19 Yes. 21:49:32 I have the POSIX standard bookmarked. 21:49:56 I should have, because I Google the URL probably at least once a week. 21:50:28 I usually just use man 21:50:46 i have all the man pages installed 21:51:24 i dunno how they compare to the POSIX standards tho 21:52:26 so for example 21:52:35 They sometimes can guarantee things POSIX doesn't. 21:54:04 -!- shikhout has joined. 21:54:09 * Oren does man 3 printf to check 21:54:38 the man page gives wrnings about non-posix guaranteed stuff 21:55:25 They do their best. 21:55:35 There's also a set of "POSIX" man pages, though. 21:56:03 With special permission, even: http://lwn.net/Articles/581858/ 21:57:04 -!- shikhin has quit (Ping timeout: 250 seconds). 21:57:19 'manpages-posix' in debuntu and so on. 21:57:59 yeah i have that 21:58:09 -!- EvanR has joined. 21:58:09 They're in the "3p" section, then. 21:58:28 i intalled all the packedages with manpages in the name 21:58:33 -!- EvanR has changed nick to Guest37103. 21:59:27 * Oren tries man 3p printf and sees a "POSIX Programmer's Manual" 22:00:34 that's cool 22:01:41 man 1p sh 22:01:44 works 22:03:20 It's handy. (Though I still use the official web version of the standard for some reason.) 22:03:54 well it does depend on whether your usual workflow uses the shell or an ide 22:04:36 for C programming i use the shell for my entire workflow 22:05:22 specifically midnight commander 22:08:13 but many people instead use ides for C 22:11:55 ranger > mc 22:13:54 how stupid/usable is doing struct disjoint_union { int flag; char[] data; } if I don't have the structs of the union beforehand 22:15:12 problem isyou may want to use sizeof on it 22:15:25 and it will be an "incomplete type" 22:16:19 and no arrays, yes. 22:19:37 -!- dts has quit (Ping timeout: 240 seconds). 22:20:09 pikhq_: fizzie: I think it makes sense to let other functions set errno, insofar as errno makes sense 22:20:13 since they probably make calls themselves 22:20:31 -!- GeekDude has changed nick to GeekAfk. 22:20:59 elliott: Note that the way to not modify errno would be "int tmp_errno = errno;" at the start, and then "errno = tmp_errno;" at the end... 22:21:15 It's not a particularly burdensome requirement to meet. 22:21:24 pikhq_: yeah but that's not worse is better enough for c/posix :p 22:21:32 True, true. 22:21:34 it's, like, effort to encapsulate things 22:22:28 And these *are* the same people that came up with errno in the first place. 22:22:48 And then had to go through contortions to make it work with threads. 22:23:01 i refuse to think about that 22:23:22 (Oh, Dominosa closed, and I totally was going to still have a look if I could do something about it.) 22:23:24 seriously though, is there any good way to do what i want to do or should i give up and use nasm 22:23:32 The actual behavior is not *as* bad as you might think. 22:24:41 -!- Dulnes has quit (Quit: Connection closed for inactivity). 22:25:11 you need to know the maximum size of the structs of the union in order to make it work 22:25:38 not really 22:25:43 you can manipulate it through pointers 22:26:14 errno is "just" a macro, which calls a function that returns a pointer to an int, and then dereferences said pointer. 22:26:23 well yeah. you could make a union like struct {int type void*data} 22:26:46 (thereby giving you thread-local errno) 22:30:25 -!- GeekAfk has changed nick to GeekDude. 22:32:08 Oren: that moves where you put the tag, though 22:32:38 hmmm 22:32:57 bork the whole thing with a int* then 22:33:29 the tag is in the same place as the union 22:33:37 after the int 22:33:49 is the rest of the union 22:34:15 -!- S1 has changed nick to |S}. 22:34:32 or 22:34:35 just do what Bike said 22:35:10 use nasm? 22:35:17 pikhq_: why doesn't it just use gcc's thread-local variables 22:35:22 Oren: no, use the struct 22:35:36 but then its hard to make an array? 22:36:16 you can amek an array of pointers of them just fine 22:36:31 *make *pointers to 22:37:37 i guess. there really should be a better way but I can't think of one 22:38:48 like a smart array that knows how big each member is or something. but then that isn't very C-like 22:39:23 is more like something you'd get from c++ boost 22:41:15 elliott: ABI reasons. 22:41:23 The feature is older than thread-local variables in GCC. 22:41:48 hystertical raisin 22:41:55 So, unless you want to break ABI you keep using a macro that calls a function. 22:42:08 pikhq_: couldn't you keep ABI compatibility by making __errno_location just return &errno_tls 22:42:20 but #define errno errno_tls for new code 22:42:25 Sure, I suppose you could. 22:42:41 Inertia counts for a lot, mind. 22:42:42 But yeah. 22:42:53 what does musl do? 22:43:02 also I guess maybe gcc tls isn't as portable as glibc 22:43:47 musl uses a macro that calls a function. 22:44:13 The reason *here* is so that it can avoid pulling in threads at all when static linking unless you actually use it. 22:48:28 -!- Dulnes has joined. 22:48:55 Ah there we go 22:50:36 Basically, the errno function, if threads aren't running (if pthread_self returns NULL), it returns a reference to a static int, otherwise it returns a member in the thread struct. 22:51:29 And pthread_self *itself* does not otherwise rely on threads, as all it does is return the thread pointer via whatever arch specfic mechanism exists to access it. 22:51:58 (which is to say: musl does the errno function thing because TLS might not be accessible) 22:53:51 Which is also kinda important for running on old kernels. 22:54:54 (musl has a design goal of at least running on old kernels when you write programs that don't require features the old kernel doesn't have. For instance, if you don't use threads, then a 2.4.x kernel should mostly just work for you.) 23:01:47 -!- scoofy has quit (Ping timeout: 245 seconds). 23:02:24 -!- |S} has quit (Quit: |S}). 23:11:32 -!- Guest37103 has quit (Ping timeout: 240 seconds). 23:25:52 -!- underground666 has joined. 23:28:12 -!- underground666 has left. 23:29:51 -!- evalj has quit (Remote host closed the connection). 23:53:49 -!- Oren has quit (Quit: Page closed).