←2014-12-02 2014-12-03 2014-12-04→ ↑2014 ↑all
00:06:40 <HackEgo> [wiki] [[Mmmm()]] M http://esolangs.org/w/index.php?diff=41315&oldid=41309 * BCompton * (+0)
00:07:54 -!- S1 has quit (Quit: S1).
00:09:52 -!- Oren has joined.
00:12:06 -!- dts has quit (Read error: Connection reset by peer).
00:13:30 -!- oerjan has joined.
00:15:52 <boily> Dulnes: Haskell is good for your health. it fills your daily quota of vitamonads.
00:19:32 <oerjan> good past midnoily
00:19:45 <boily> bon soerjan.
00:23:29 <Oren> AWS has an awful user interface
00:23:55 <oerjan> Oren: it's all in the acronym if you squint at it
00:24:32 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:24:46 -!- Phantom_Hoover has joined.
00:26:30 <Oren> well i'm getting it for free so maybe i can't rightfully comlain
00:26:35 <oerjan> also that could mean amazon web services or athena widget set, i'm sure it applies equally to both.
00:26:46 <Oren> amazonweb services
00:27:24 <boily> ooooh, athena. it sure doesn't bring any memories.
00:28:52 <oerjan> you're either ironic or too young hth
00:29:33 <boily> the latter htah
00:29:56 <oerjan> i also thought for a moment that it might apply to the original java widget set, but that has acronym AWT
00:31:12 <oerjan> hm an esolang in which every concept has an acronym that usually means something else.
00:31:21 <oerjan> Private Data Field
00:31:33 <Taneb> Really Esoteric Programming Language
00:32:08 <Oren> General Number Unit
00:33:17 <Oren> pdf gnu x;//private signed x
00:33:36 * boily twitches
00:35:34 <Taneb> Binary Style Decimal
00:36:07 <oerjan> Immediate Register Set
00:36:16 <Oren> public internal name
00:36:33 <boily> Function Behaviour Iterator
00:36:54 <Oren> serously make this language!
00:37:11 <boily> Taneb named it! it's his!
00:37:11 <Oren> s/rous/rious/
00:37:40 <Oren> serously means in a way resembling serum
00:37:42 <oerjan> /riotous/
00:37:44 <Taneb> Hopeful Timed Message Layer
00:38:35 <boily> Real Time Flatbed Monitor
00:39:41 <oerjan> why are the top google picture hits for "flatbed monitor" tanks?
00:40:04 <Bike> what the hell is a flatbed monitor?
00:40:16 <Oren> monitor used to mean a ship that bombards cities hth
00:40:25 <Bike> i would guess because you transport tanks on flatbed trucks
00:40:41 <oerjan> Oren: tmhhians
00:41:07 <boily> fungot: do you even flatbed?
00:41:08 <fungot> boily: using unload and load totally random and end up extending the test by 1.5 hours. so, it's under the public domain.
00:41:35 <boily> the 'got unloads and loads flatbeds. he's an expert.
00:41:36 <oerjan> Bike: that is what i was trying to find out.
00:41:49 <Bike> oh, boily said it
00:41:51 <Bike> what the hell boily
00:41:56 -!- augur_ has joined.
00:42:22 <boily> I... uhm... well... I was trying to think of an F-word that wasn't “function”, cause I already used it.
00:42:36 <boily> the first thing that popped through my mind was flatbed.
00:42:47 <Oren> factory
00:42:56 <boily> oh.
00:43:09 <boily> >_>'...
00:43:17 <Oren> final fitting fully fantasy
00:44:04 <oerjan> boily: Objective Kernel Application Y... wtf is a word on Y that fits
00:44:12 <Oren> foundry fortress funding finned fish filet
00:44:12 <boily> Y combinator?
00:44:38 -!- augur has quit (Ping timeout: 244 seconds).
00:44:53 <boily> I'm seriously lacking in the f-word department. I guess I could've even went with the fungot...
00:44:53 <fungot> boily: edw just gave you 4 points, thought that might be the lack of tape... in theory, but they're fairly obscure compared even to postgresql. not tha there's anything wrong with this
00:45:07 <boily> oh, points!
00:45:20 <oerjan> fungot is so helpful
00:45:20 <fungot> oerjan: in which scheme is sarahbot?
00:46:13 <Oren> what does f_ngot do anyway? search for a word and give you a sentnce in whichyou used it?
00:46:28 <Oren> fungot is
00:46:28 <fungot> Oren: the spider was moving around its web systematically, picking off individual bits of sawdust all over it
00:46:35 <oerjan> boily: btw i was imagining an actual horizontal monitor in some kind of frame hth
00:47:10 <Taneb> ^source
00:47:10 <fungot> https://github.com/fis/fungot/blob/master/fungot.b98
00:47:10 <Oren> or just a sentence in general...
00:47:21 <Taneb> Oren, it should be clear from the source code!
00:47:24 <oerjan> Oren: it has a set of styles for markov generation
00:47:26 <oerjan> ^style
00:47:26 <fungot> Available: agora alice c64 ct darwin discworld enron europarl ff7 fisher fungot homestuck ic irc* iwcs jargon lovecraft nethack oots pa qwantz sms speeches ss wp youtube
00:47:47 <Oren> that is so cool
00:47:58 <oerjan> it doesn't actually base the sentence on anything you say - it doesn't have a way to convert words to internal tokens for that, even
00:48:23 <oerjan> (tokens being numbers, i presume)
00:49:37 <oerjan> `learn_append boily He is seriously lacking in the f-word department.
00:49:39 <HackEgo> Learned 'boily': boily is monetizing a broterhood scheme with the Guardian of Lachine. He's also a NaniDispenser, a Man Eating Chicken and a METARologist. He is seriously lacking in the f-word department.
00:49:52 <Taneb> > 1^0
00:49:54 <lambdabot> 1
00:51:35 <oerjan> > undefined^0
00:51:37 <lambdabot> 1
00:51:47 <Oren> um what
00:52:03 <Oren> how is ^ defined for an undefined
00:52:07 <oerjan> it doesn't actually look at the first argument if the exponent is 0
00:52:20 <boily> oh fungot... and now I find myself back to my Old Torment, on a reformatted machine...
00:52:20 <fungot> boily: if i plan to extend it for ip travel to the past
00:52:25 <oerjan> that's how much haskell believes in that rule
00:52:55 <oerjan> (given how ^ is polymorphically defined and not a method, that's the only sensible way to do it, too)
00:53:34 <oerjan> well it could have errored out, i guess. but where's the fun in that.
00:53:42 <Oren> pawlymorfishim
00:55:13 <oerjan> boily: old torment?
00:55:28 <Oren> yeah so i am working on a thing that allows you to program without any text as code
00:55:56 <Oren> you just right click on objects and tell them to do things like age of empires
00:56:41 <Oren> a complex program would resemble an economy
00:56:49 <oerjan> fancy
00:57:11 <boily> oerjan: the PDF.
00:57:26 <oerjan> oh so it's not just a visual language with boxes, good.
00:57:48 <oerjan> boily: ah. i'd been wondering if you've kept that up-to-date lately.
00:58:00 <boily> not since September 30.
00:58:08 <boily> (shame on me.)
00:58:23 <oerjan> WHAT ARE WE PAYING YOU FOR
00:59:08 <boily> 申し訳ありません、ørjan先生
00:59:09 -!- colellis has joined.
00:59:46 <oerjan> to the GTmobile...
01:00:09 <Oren> trans: i am so sorry, mr. oerjan
01:00:40 <oerjan> google says it means "teacher", not "mr."?
01:01:08 <oerjan> oh it's actually the word sensei
01:01:19 <Oren> literally yes but that title is also used for politicians and doctors
01:02:01 <Oren> it means "he who has lived previously to me"
01:02:11 <Oren> or something along those lines
01:02:23 <oerjan> ah yes the japanese are weirdos who respect their politicians, aren't they
01:02:40 <oerjan> so "elder"?
01:03:06 <Oren> yes, possibly--
01:03:15 <boily> probably so, afaik hth
01:03:53 <Oren> the japanese are weird in many ways hth
01:04:03 -!- colellis_ has joined.
01:04:15 -!- colellis_ has quit (Client Quit).
01:04:17 <boily> Oren: そうですね…
01:04:50 <oerjan> NOOO i had just closed GT
01:04:59 <oerjan> thank god for ctrl-shift-T
01:05:05 -!- colellis has quit (Quit: Page closed).
01:05:42 <Oren> GT? what is that
01:05:51 <oerjan> google translate hth
01:06:17 <Oren> he said "indeed..."
01:08:01 <Oren> translation is very much an unsolved problem
01:09:09 <oerjan> yes but now everyone can fake it!
01:09:18 <oerjan> and badly too!
01:11:21 <boily> Watche Moe bin dårlig oversatt hva norsk.
01:13:03 <oerjan> wat did you go via japanese or something
01:13:39 <boily> no, just badly mangled québécois :D
01:13:40 <oerjan> the three first words aren't even norwegian unless Moe is a surname.
01:14:15 <oerjan> in fact Moi is a norwegian surname too, a somewhat famous cook
01:14:24 -!- nooga has quit (Ping timeout: 264 seconds).
01:14:34 <Oren> my dad speaks quebecois and he is unable to speak to parisians
01:14:43 <boily> «watche moé bin mal traduire de quoi en norvégien» → “just watch me badly translate something into Norwegian”
01:15:06 <oerjan> what does "bin" mean
01:15:13 <boily> Oren: do you speek French yourself?
01:15:34 <Sgeo> The Suffolk County Legislature Tuesday passed legislation to require all county buildings to post notices that wireless routers are in use.
01:15:34 <Sgeo> The resolution, sponsored by Legis. William Spencer (D-Centerport), warns that every wireless device emits radio frequency radiation or microwave radiation.
01:15:37 <boily> (yes, I do have some problems with parisians sometimes... I have a pretty strong accent with regional idioms...)
01:15:47 <Oren> not a lot. oo e le metro silver plate?
01:15:57 <boily> oo e?
01:16:01 <Oren> where is
01:16:19 <boily> oh. ha ha ha :D
01:16:33 <Oren> my french is much worse than my japanese
01:16:34 <boily> oerjan: it's a contraction of «bien», used as a verbal punctuation.
01:16:47 <oerjan> bien mal, okay
01:17:14 <Taneb> I wonder if Parisian are further away from eachother than, say, Yorkshire and Texan?
01:17:28 <boily> oerjan: rather “be sure to look at me good”
01:17:52 <boily> (if I had meant «bien mal», I'd have said «watche moé bin bin mal traduire...»)
01:18:09 <Oren> quebecois is like a dialect that split during the 1700's. it's like portuguese vs spanish
01:18:20 <Oren> or around that range anyway
01:18:40 -!- Sprocklem has joined.
01:19:27 <boily> well, it's still somewhat the same language underneath... we just have different anglicismes than they do.
01:19:46 <Oren> and a different accent with quite distinct vowels
01:20:29 <boily> yup! ^^
01:20:30 <oerjan> didn't technically english and american _also_ split during the 1700s, like
01:20:45 <oerjan> i hear there was some noise about that
01:20:51 <Oren> american kept better contact with english
01:20:53 <Sgeo> I'm still not totally sure how to architect stuff in OTP
01:20:56 <boily> indeed. that's mainly why you'll find the rhotic r anywhere except in the UK.
01:21:06 <Sgeo> And can't help but wonder if stuff in the Elixir standard lib goes against OTP principles
01:21:09 <boily> Taneb: are you rhotic?
01:21:21 <Taneb> boily, I believe not.
01:21:41 <Oren> funny thing is my dad puts an h in white and i don't
01:21:44 <oerjan> wait, i thought the uk was like the center of _not_ being rhotic
01:22:01 <oerjan> and the us was outside
01:22:06 <Oren> exactly
01:22:34 -!- doesthiswork has joined.
01:22:39 <oerjan> well boily seemed to say something vaguely opposite
01:22:44 <Oren> my dad is like "huwite" and i'm like 'wite'
01:22:58 <boily> huh? I said that rhoticism is quite absent from the UK.
01:23:49 <boily> Oren: about the same. /ʍ/
01:24:44 <Oren> i can't remeber how to type ipa i took intro linguistics in first year...
01:24:57 <Oren> and now its been 4 years
01:24:59 <oerjan> boily: oh hm ambiguous "anywhere" construction
01:25:20 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
01:25:40 <boily> Oren: linguistics student?
01:25:53 <Oren> I am a computer science major
01:26:01 <boily> ah :D
01:26:05 <Taneb> boily, it's actually in some accents, I believe it's in the Somerset accent?
01:26:34 <boily> Taneb: perhaps. I admit I'm nowhere an expert about English English accents.
01:26:44 <Oren> basically uk ppl are like 'caaa' and everyone else is like 'you mean car'
01:27:25 <Taneb> https://en.wikipedia.org/wiki/Rhoticity_in_English#England
01:27:49 <Taneb> Oren, if I say "caa" to me that sounds scouse
01:28:52 <boily> if people "caa"ed me I'd expect a «lisse» to follow soon after.
01:29:48 <Taneb> boily, I think I can be concsiously rhotic
01:31:01 <Taneb> But I'm not if I'm not thinking about it?
01:33:01 <boily> meanwhile, I still can't compile the wisdom on that texlive install... apparently I fell through an interim Greek package and now I'm stuck with http://tex.stackexchange.com/questions/191685/lgrxenc-def-not-nound .
01:33:18 <boily> also, pentadactyl's nightlies are incompatible with firefox 34.0...
01:33:25 <oerjan> boily: does that mean you complete tabs with ernacle?
01:33:56 <boily> if I ever get custom printed keycaps, that one is definitely going on my keyboards.
01:36:22 <oerjan> i seemed to have triggered the visual french keyboard in gt, and was confused because several attempts kept giving me tqbernqle
01:37:27 <oerjan> (it's not _just_ visual, it seems)
01:37:35 <boily> shun the AZERTY layout!
01:37:35 <Dulnes> :I
01:37:37 <Dulnes> Hi
01:37:52 <boily> Dulnes hello.
01:37:53 <oerjan> hilnes
01:38:13 <Dulnes> Heh
01:43:01 <Oren> terminal: white on black or black on white?
01:43:13 <Taneb> yellow on yellow
01:43:29 <Oren> lolwut
01:43:51 <Dulnes> Should i get ORAS or x/y
01:43:57 <Dulnes> Or link between worlds
01:44:11 <Taneb> Red Rescue Team
01:44:18 <Dulnes> Idk what do i only have a little money left on my paycheck
01:44:34 <Oren> link between worldd is a copy of link to the past. get lttp on gba
01:44:54 <Dulnes> Link between worlds i know that oerjan
01:45:04 <oerjan> <FreeFull> Malborge <-- AAAAAA it's spreading
01:45:13 <Dulnes> Gasp! i beat lttp in 5 minutes
01:45:21 <FreeFull> oerjan: I'm sorry ):
01:45:23 -!- Sgeo_ has joined.
01:45:27 <Dulnes> Soary
01:45:36 <oerjan> FreeFull: it's ok i really blame Lymia
01:45:40 <FreeFull> Dulnes: I'm not an eagle
01:45:57 <Dulnes> Arst thou sure?
01:46:11 <Dulnes> When was the last time yiu checked
01:46:15 <Dulnes> You*
01:47:21 <Oren> so white on black or black on white which is better for terminal
01:47:29 <boily> Oren: white on black.
01:47:53 <Dulnes> As in txt wise?
01:48:03 <Dulnes> Neon orange on neon blue
01:48:08 -!- Sgeo_ has quit (Read error: Connection reset by peer).
01:48:16 <Oren> or editor you know, for coding
01:48:17 <oerjan> FreeFull: i suppose it's ironic that Malbolge is misspelled to start with.
01:48:53 <FreeFull> Yeah, Malebolge
01:49:02 <Dulnes> Malebulge
01:49:04 <Oren> maelbolge
01:49:13 -!- Sgeo has quit (Ping timeout: 244 seconds).
01:49:16 <Oren>
01:49:20 <Dulnes> Anyways white text on black background?
01:49:23 <Dulnes> Seems gud
01:49:32 <Dulnes> Do that oerjan
01:49:37 <Dulnes> Œ
01:49:45 <Dulnes> Ͼ
01:50:02 <Oren> ø
01:50:12 <oerjan> Dulnes: i'm not Oren.
01:50:16 -!- Sgeo has joined.
01:50:41 <Dulnes> O
01:50:49 <Dulnes> Your names tho
01:51:01 <Dulnes> I loose a letter when staring to long
01:51:50 <oerjan> does your client have tab completion and is it smart enough to prefer whoever spoke last? that will help, although probably not always.
01:52:24 <oerjan> *irc client
01:52:31 <Dulnes> I have to put oe for your name
01:52:37 <Dulnes> And or for oren
01:52:41 <Oren> Doesn't look like irc supports unicode in username
01:52:51 <Dulnes> Yeh
01:52:57 <Dulnes> :I
01:52:57 -!- Oren has changed nick to |en.
01:53:02 <boily> Dulnes: beware. when oerjan and olsner are discussing, it can get quite confusing.
01:53:04 <|en> is that better?
01:53:15 <|en> i used C |
01:53:18 <Dulnes> |en: yeh
01:53:20 <|en> for or
01:53:34 <Dulnes> boily?
01:53:41 <oerjan> enket
01:53:43 <Dulnes> What do you mean
01:53:52 <Dulnes> Im oeren
01:54:00 <Dulnes> Gah
01:54:06 <Dulnes> Ignore im
01:54:11 <|en> he sees |en> like a quantum thingy
01:54:24 <Dulnes> I think i have dislexia
01:54:32 <Dulnes> Quantum physics
01:54:41 <boily> Dulnes: when blindly tabcompleting.
01:55:03 <Dulnes> Tebs
01:55:23 <Dulnes> Btw vf
01:55:28 <Dulnes> Very good
01:56:16 <FreeFull> There should be an esoteric language called malbranche
01:56:25 <Dulnes> Make it
01:56:33 <FreeFull> I'm too lazy
01:56:38 * Dulnes pets FreeFull's face
01:56:43 <Dulnes> Every one is lazy
01:56:49 <FreeFull> Yep
01:57:01 <FreeFull> If I wasn't, I'd make a sort of mix of Prolog and J
01:57:20 <FreeFull> And call it something unimaginative like Jlog
01:57:22 <Dulnes> J *-*
01:57:37 <|en> why would somebody make a table called match
01:57:49 <FreeFull> |en: regex implementation?
01:58:02 <|en> nope, pingpong
01:58:13 <|en> why not matches
01:58:20 <|en> match is a keyword
01:59:23 <Dulnes> pingpong
01:59:35 <Dulnes> Lovely
02:00:32 <|en> internet multiplayer games project... poop
02:00:51 <|en> l*php
02:02:19 <Dulnes> PhP looks like a dissapointed grandpa face
02:03:38 <oerjan> <oren> it is amazing how different the current aesthetic is from previous ideas of what a 'futuristic' aesthetic whould llok like <-- i think that's a sort of self-fulfilling thing, if the previous ideas hadn't been made then people wouldn't now be avoiding them.
02:03:49 * oerjan is way backlogged can you tell
02:04:34 <Dulnes> What are you up too?
02:04:36 <|en> i was halfway thru an episode of serial experiments lain when i wrote that
02:04:44 <oerjan> hm is retro-futuristic a thing? it has to be.
02:04:59 <oerjan> (see also: zeerust)
02:05:14 <|en> it is. lisp is a retro-futuristic language
02:05:32 <Dulnes> Yuh
02:05:33 <|en> modern variants of it are i mean
02:06:07 <oerjan> ok it is https://en.wikipedia.org/wiki/Retrofuturism
02:06:40 <Dulnes> Ivsee what you mean boily
02:08:09 <boily> retrofuturism is fun.
02:08:30 * Dulnes pats boily on the head
02:08:49 <|en> futoretrism
02:09:25 * boily mellows and tilts to the side
02:09:27 <|en> making your thing look like what you think future people will imagine your own era to look like
02:10:16 <boily> Dulnes: I like http://locomalito.com/maldita_castilla.php . it's hardcore and gives a really good arcade-ish vibe.
02:10:40 <MDude> Well, people always like to think about how everyone in the past had awful hygine.
02:10:54 <|en> except the romans
02:11:07 <MDude> BATHS BATHS BATHS
02:11:17 <Dulnes> Lol
02:11:22 <Dulnes> Also thank boily
02:14:15 <|en> gah why would somone spray this poor code with ^M everywhere?
02:14:40 <lifthrasiir> don't panic and :e ++ff=dos
02:14:51 <Dulnes> lol
02:15:14 <Dulnes> ^=^
02:15:41 <oerjan> |en: also the arabs.
02:16:11 <oerjan> i guess the jews too, for the same reason (ritual cleansing)
02:16:37 <oerjan> probably the europeans were the filth of the earth.
02:16:44 <oerjan> then they took over hth
02:17:57 <oerjan> oh and the vikings. when one of your weekday names _means_ bathing day, you know you're not filthy.
02:18:11 <|en> only once a week?
02:18:39 <Dulnes> Filfy Phuckers
02:18:54 <oerjan> |en: IT'S ALL RELATIVE OKAY
02:19:10 -!- yorick has quit (Remote host closed the connection).
02:19:16 -!- boily has quit (Quit: FLATBED CHICKEN).
02:20:01 <oerjan> anyway, i'm pretty sure r/askhistorians on reddit had a portion of their FAQ about this.
02:20:47 <|en> this code im reading has the hallmarks of being edited by at least 3 people who used different editors and tab styles
02:20:49 <Dulnes> 8Chan
02:21:46 <|en> forensic source code ology
02:24:25 <|en> anyway i am normalizing it to my standard of one tab per indent level.
02:26:09 <oerjan> hm general washing appears conspicuously absent from http://www.reddit.com/r/AskHistorians/wiki/health
02:26:29 * oerjan know goes to read about the hitler moustache
02:26:31 <oerjan> *now
02:32:10 <oerjan> "Perhaps the most memorable fact from the early years of human computing is that the very first team of French computers, assembled by Gaspard Clair Francois Marie Riche de Prony in the early 1790s, was composed entirely of wig-makers left unemployed by the French Revolution."
02:32:52 <Dulnes> The tooth brush stache was popular to about "1945"
02:32:56 <oerjan> (i went on to a post about other styles made unpopular by history)
02:33:09 <oerjan> Dulnes: i think that's pretty accurate hth
02:33:30 <Dulnes> May i pet ye
02:33:36 <oerjan> no hth
02:33:44 <Dulnes> Do any of you guys have pets
02:33:58 <Dulnes> oerjan: why do you say hth all the time
02:34:10 <oerjan> tradition hth
02:34:44 <Dulnes> ...
02:34:51 * Dulnes pets oerjan
02:34:55 <Dulnes> :I
02:35:00 * oerjan swats Dulnes -----###
02:35:12 <Dulnes> pep pep good creb
02:35:51 <Dulnes> Apparently ###
02:35:58 <Dulnes> Is a channel
02:36:18 <|en> the hashtag channel?
02:36:32 <Dulnes> Just says blah
02:36:42 <lifthrasiir> Dulnes: in many (if not most?) IRC networks # is also a valid channel
02:37:05 <Dulnes> I know
02:37:09 <|en> some people say hashtag in real life
02:37:26 <Dulnes> Yup and its disgusting
02:37:34 <|en> like my aunt (the youngest one)
02:37:49 <|en> she is very ditsy
02:38:07 <|en> but a fun person
02:38:11 <Dulnes> Oren you can change your name back
02:38:24 -!- |en has changed nick to Orin.
02:38:43 -!- Orin has changed nick to OREN.
02:38:47 <OREN> there
02:39:30 <OREN> its all caps hth
02:39:43 <Dulnes> Hhhh
02:40:14 <OREN> you have no chance to survive make your time
02:41:08 <Dulnes> What?
02:41:09 -!- shikhin has joined.
02:41:25 <OREN> all your base are belong to us
02:41:50 <Dulnes> Omg
02:41:56 <Dulnes> I know that
02:42:01 -!- OREN has changed nick to CATS.
02:42:21 <Dulnes> Idk if you can change names.on my client
02:42:32 <Dulnes> Whats the ./ thing u use
02:42:34 <CATS> Good Evening Gentlemen!
02:42:39 <CATS> it's /nick
02:42:52 -!- CATS has changed nick to Captain.
02:42:59 <Captain> It's You!!!!
02:43:00 -!- Dulnes has changed nick to Oren.
02:43:03 <Oren> Hue
02:43:11 -!- Captain has changed nick to Cats.
02:43:42 -!- Oren has changed nick to Windows.
02:44:07 <Windows> Also oren just go to that website and do the konami code
02:44:22 -!- shikhout has quit (Ping timeout: 258 seconds).
02:44:34 -!- Cats has changed nick to Oren.
02:44:44 <Oren> what website?
02:45:13 -!- Windows has changed nick to Arch.
02:46:41 <Oren> whoops afk battery
02:46:45 <Arch> Idk what it was
02:46:49 -!- Oren has quit (Quit: leaving).
02:47:33 <elliott> please stop
02:49:17 <Arch> k
03:03:21 -!- oren has joined.
03:05:16 <Arch> Hi oren
03:05:24 -!- Arch has changed nick to Dulnes.
03:17:26 -!- shikhin has quit (Ping timeout: 272 seconds).
03:17:38 <oren> hi
03:27:03 <Dulnes> Gnight
03:38:43 <oren> gnight
03:41:07 -!- GeekDude has quit (Ping timeout: 250 seconds).
03:42:32 -!- GeekDude has joined.
03:44:32 <oerjan> <Taneb> The idea behind it is the set of instructions form a group <-- cpressey has a couple languages like that.
03:47:56 <oerjan> @tell Taneb http://catseye.tc/node/Burro
03:47:56 <lambdabot> Consider it noted.
03:48:18 <oerjan> possibly it's just that one, Cabra is somewhat different.
04:12:28 -!- doesthiswork has quit (Quit: Page closed).
04:47:13 -!- Dulnes has changed nick to CakeMeat.
04:50:34 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)).
05:02:55 -!- trn has quit (Excess Flood).
05:02:55 -!- trn has joined.
05:04:40 -!- Sprocklem has quit (Ping timeout: 252 seconds).
05:05:23 -!- cluid has joined.
05:05:25 <cluid> hi
05:06:11 <oren> hi
05:06:21 <oerjan>
05:06:35 <oren> ハイ
05:06:38 <shachaf>
05:06:47 <oren> is that a vav?
05:07:07 <shachaf> `icode ı
05:07:17 <CakeMeat> ¥ë§
05:07:23 <HackEgo> ​[U+0131 LATIN SMALL LETTER DOTLESS I]
05:07:32 <oren> i seee...
05:07:54 <CakeMeat> `icode s
05:07:56 <HackEgo> ​[U+0073 LATIN SMALL LETTER S]
05:08:02 <CakeMeat> Mmm
05:08:14 <CakeMeat> Is dulnes btw
05:08:27 <oren> `icode Ⅶ
05:08:27 <CakeMeat> Gonna be more formal
05:08:29 <HackEgo> ​[U+2166 ROMAN NUMERAL SEVEN]
05:08:41 <CakeMeat> `icode ₩
05:08:43 <HackEgo> ​[U+FFE6 FULLWIDTH WON SIGN]
05:08:50 <CakeMeat> Oh mai
05:09:08 <CakeMeat> Atleast i know what its called now
05:09:17 <oren> why the hellis there a unicode symbol for each roman numeral?
05:09:26 <CakeMeat> Idk
05:09:35 * CakeMeat pats oren
05:09:41 <CakeMeat> `^`
05:09:43 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ^`: not found
05:10:00 <CakeMeat> `icode ®
05:10:02 <HackEgo> ​[U+00AE REGISTERED SIGN]
05:10:25 <oren> unicode has too many characters that were put in for backward compatibility
05:10:54 <CakeMeat> [°`°`°``°°°`°°°````°°`°°``°````°`°`°`°°`°°°°`°]°°`°`°`°```||°```°`````]°```°`°||°``°]
05:11:01 <CakeMeat> i lo
05:11:09 <CakeMeat> I like cats
05:11:53 <oren> ^
05:12:16 <CakeMeat> Im pretty sure if i didnt put brackets it come out as ilickcatsssz
05:12:25 <shachaf> sigh, another nick
05:12:31 <CakeMeat> Sigh
05:12:48 <CakeMeat> Its better than dulnes atleast¿
05:13:02 <oren> what does dulnes mean?
05:13:40 <CakeMeat> Its a name that means something to me
05:13:51 <CakeMeat> I dont use it often
05:14:30 <oren> i just use my name for most things
05:14:41 <CakeMeat> M
05:14:50 <CakeMeat> It used to be my name
05:15:06 <CakeMeat> ©_©
05:15:18 <CakeMeat> `cmds
05:15:19 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: cmds: not found
05:15:20 <oren> i mean the name on my birth cerifite
05:15:35 <CakeMeat> Whats that¿
05:15:38 <oren> oren
05:15:45 <CakeMeat> Fancy
05:15:59 <oren> its not as if there are many orens?
05:15:59 <CakeMeat> No one knows my real name
05:16:41 <CakeMeat> ØwÕ
05:17:07 <lifthrasiir> I assume ØwÕ is your real name
05:17:09 <oren> OдO
05:17:29 <CakeMeat> Nah
05:17:31 <cluid> what's up
05:17:36 <CakeMeat> My realllll name iss
05:17:57 <CakeMeat> Finn Morghan O'Brien
05:18:05 <CakeMeat> Fancy
05:18:24 <cluid> `exec
05:18:25 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: exec: not found
05:18:35 <oren> `hello
05:18:36 <HackEgo> Hello
05:18:49 <CakeMeat> 5öüçHè
05:19:00 <oren> Souche?
05:19:08 <CakeMeat> Touchè
05:19:35 <CakeMeat> How old are you oren
05:19:48 <cluid> What programming languages are based on 'rewriting' in the sense that the operate entirely on source code - no external data structure
05:19:51 <oren> 21才
05:19:55 <CakeMeat> Fancy
05:20:06 <cluid> an example is SK combinators maybe, and non-example is brainfuck because the memory cells are not part of the program
05:20:08 <oren> /// thue and some others iirc
05:20:09 <cluid> source code
05:20:30 <CakeMeat> Stack underflow
05:20:55 <CakeMeat> Stack stack
05:22:11 -!- AndoDaan_ has joined.
05:22:16 <CakeMeat> > cake/meat
05:22:17 <lambdabot> Not in scope: ‘cake’
05:22:17 <lambdabot> Perhaps you meant one of these:
05:22:17 <lambdabot> ‘take’ (imported from Data.List),
05:22:17 <lambdabot> ‘Seq.take’ (imported from Data.Sequence),
05:22:17 <lambdabot> ‘BSLC.take’ (imported from Data.ByteString.Lazy.Char8)Not in scope: ‘meat’
05:22:26 <CakeMeat> Cannot divide by cake
05:22:27 <cluid> > take the cake
05:22:28 <lambdabot> Not in scope: ‘the’Not in scope: ‘cake’
05:22:28 <lambdabot> Perhaps you meant one of these:
05:22:28 <lambdabot> ‘take’ (imported from Data.List),
05:22:28 <lambdabot> ‘Seq.take’ (imported from Data.Sequence),
05:22:28 <lambdabot> ‘BSLC.take’ (imported from Data.ByteString.Lazy.Char8)
05:22:50 <CakeMeat> Why cant lambdabot divide by cake?!
05:22:56 <CakeMeat> This is an outrage
05:23:20 <CakeMeat> cake/meat= 56
05:23:24 <shachaf> > cake
05:23:26 <lambdabot> Not in scope: ‘cake’
05:23:26 <lambdabot> Perhaps you meant one of these:
05:23:26 <lambdabot> ‘take’ (imported from Data.List),
05:23:26 <lambdabot> ‘Seq.take’ (imported from Data.Sequence),
05:23:26 <lambdabot> ‘BSLC.take’ (imported from Data.ByteString.Lazy.Char8)
05:23:30 <shachaf> Hmm, that's gone?
05:23:42 <oren> hmmmm it would be easier to insert binary data into a program if C supported base64 literals
05:23:42 <CakeMeat> > take take
05:23:43 <lambdabot> Couldn't match expected type ‘GHC.Types.Int’
05:23:43 <lambdabot> with actual type ‘GHC.Types.Int -> [a0] -> [a0]’
05:23:56 -!- AndoDaan has quit (Ping timeout: 255 seconds).
05:24:14 <CakeMeat> Lets make lambdabot do stuff
05:24:18 <CakeMeat> Funny stuff
05:24:27 <oren> i need to convert base64 to C "" notation
05:24:35 <CakeMeat> «»
05:24:45 <CakeMeat> `icode »
05:24:47 <HackEgo> ​[U+00BB RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK]
05:25:07 <CakeMeat> Oh so thats why it registers always as a quotation mark
05:25:24 <CakeMeat> [«] uses these from.now on
05:25:40 <oren> i have RFC1345 as a mode on my ime. &
05:25:59 <oren> so &>> is »
05:26:08 <CakeMeat> well
05:26:33 <CakeMeat> Its easier if » is & >> and ""
05:26:40 -!- AndoDaan_ has quit (Ping timeout: 240 seconds).
05:26:47 <CakeMeat> dont have to put down >>
05:27:03 <oren> ő &o"
05:27:33 <CakeMeat> well nvm i checked depending on what you are doing you have to &>> is » is »»
05:27:59 <CakeMeat> it seems you have an o i dont have
05:29:27 <oren> ο how about that one
05:30:45 <CakeMeat> ò_ó
05:31:50 <Bike> i forget, can you define multiple cpp macros with the same name if they have different argument counts
05:32:11 <oren> noooo whatever you are doing stop
05:32:23 <shachaf> Bike: no hth
05:32:25 <Bike> k
05:32:33 <oren> i don't care if you can dont
05:33:29 <CakeMeat> So if i run &>> is » through my stuff it poops out this trash &>> is » is »» ] [ « rr ].cap]&%>>569 [ 0 ] = 10
05:34:13 <shachaf> Is it that much worse than defining SYSCALL_DEFINE0, SYSCALL_DEFINE1, SYSCALL_DEFINE2, etc.?
05:34:30 <elliott> Bike: kinda, with hacks
05:34:36 <CakeMeat> Wait what happens if you do that?
05:35:18 <elliott> Bike: you can do #define foo(...) + a dispatch
05:35:23 <Bike> elliott: it's not that important.
05:35:56 <CakeMeat> \
05:36:27 <CakeMeat> does this \}\ work in anything
05:37:11 <CakeMeat> £_£
05:39:04 * CakeMeat pats elliott s face
05:39:13 <oren> `perl -e '$_=\'$_\';print"$_$";'
05:39:16 <HackEgo> No output.
05:39:22 <elliott> CakeMeat: please don't
05:39:28 <CakeMeat> Ok
05:39:33 <CakeMeat> Zzzz
05:39:52 <CakeMeat> What chu doin oren
05:40:01 <oren> ZZzz
05:40:22 <shachaf> Chu spaces are the best.
05:41:09 <CakeMeat> DNA is a very esolangy language imo
05:41:22 <Bike> It's not a language.
05:41:22 <CakeMeat> What am i talkinv about
05:41:24 <cluid> oren, i cna't get that to work
05:41:29 <CakeMeat> I know now
05:41:40 <oren> get what to work
05:41:41 <Bike> The worst thing about being a biologist around computer people is the DNA thing, probably.
05:41:43 <oren> the perl?
05:41:45 <Bike> Later it will be not being paid.
05:41:46 <cluid> yes
05:41:53 <CakeMeat> Im.litteraly having maass brain death
05:42:09 <cluid> Bike, how is DNA not a language
05:42:14 <cluid> are you a biologist?
05:42:21 <oren> i was just trying a perl program with lots of $_$ faces in it
05:42:25 <cluid> OK
05:42:25 <CakeMeat> DNA is code
05:42:27 <cluid> i thought it was aquine
05:42:28 <lifthrasiir> it's a binary code at best?
05:42:30 <Bike> Is binary a language? No. It's a numeral system, or an encoding.
05:42:35 <cluid> Bike, OK
05:42:53 <cluid> is there a language on top of DNA?
05:42:55 <CakeMeat> Bike is bein sensitiveee :I
05:42:55 <Bike> The worst part is protein translation actually is interestingly complicated, but nobody cares for some reason.
05:43:03 <cluid> I care about it
05:43:04 <Bike> Well, "nobody", it's a major research area.
05:43:05 <cluid> I have a book about that
05:43:12 <oren> DNA has a structure of triplets of base pairs
05:43:18 <CakeMeat> I care about the sciences
05:43:36 <oren> each triplet encodes either the start of a protien, an amino acid or the end
05:43:55 <oren> so a stringof dna can encode a bunch of proteins
05:43:57 <Bike> in coding sequences.
05:44:07 <cluid> how are the triplets delimited
05:44:13 <CakeMeat> Wait if i ride a bike
05:44:21 <CakeMeat> Then
05:44:52 <oren> they aren iirc it is self synchonizing
05:45:06 <Bike> cluid: They're not. There's a thing called a "frameshift mutation" where it goes out of alignment and translation goes wrong.
05:45:24 <oren> ah ok
05:45:35 <CakeMeat> What do you do as a biologist
05:45:44 <CakeMeat> Life things
05:45:54 <CakeMeat> Gasp are you playing god again bike
05:45:55 <oren> there ar many kinds of biology
05:45:59 <Bike> Actually I guess there are normal uses of different reading frames too. I ain't a geneticist.
05:45:59 <CakeMeat> Bike god
05:46:05 -!- dts has joined.
05:46:29 <CakeMeat> Jesus bike sounds better
05:46:34 <oerjan> `` perl -e '$_=\'$_\';print"$_$";'
05:46:36 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching `'' \ bash: -c: line 1: syntax error: unexpected end of file
05:47:01 <oerjan> `perl -e$_='$_';print"$_$";
05:47:03 <HackEgo> Final $ should be \$ or $name at -e line 1, within string \ syntax error at -e line 1, near "print"$_$"" \ Execution of -e aborted due to compilation errors.
05:47:17 <oren> o if oerjan is here i should biguate my name
05:47:30 <cluid> I hve a LOT of wiki pages open about RNA now
05:47:32 <cluid> thanks
05:47:38 <oerjan> oren: that's going to get so old
05:48:26 <oerjan> `perl -e$_='$_';print"$_\$";
05:48:28 <HackEgo> ​$_$
05:48:29 -!- oren has changed nick to Ouran.
05:48:50 -!- Ouran has changed nick to OOOren.
05:48:56 <CakeMeat> U done it
05:48:58 <OOOren> there. biguated
05:49:03 <cluid> `perl -e$_="$_";print"$_\$"
05:49:06 <HackEgo> ​$
05:49:10 <shachaf> oerjan: i think it's already gotten old hth
05:49:20 <elliott> OOOren: CakeMeat: can you two be less noisy please
05:49:36 <CakeMeat> Because sound traverses text
05:49:53 <OOOren> はい、エリオット様!
05:49:54 <CakeMeat> Anyways can hackego do that infinite loop thing
05:50:10 <CakeMeat> Ong look at thay smiley face in there
05:50:52 <OOOren> that is a small tsu
05:51:04 <OOOren> it indicates a glottal stop
05:51:36 <CakeMeat> anyways infite loop in bash while :; do echo 'Hit CTRL+C'; sleep 1; done is there a bot here that can run that
05:51:52 <CakeMeat> Like dont actually do it
05:51:59 <oerjan> `` while :; do echo 'Hit CTRL+C';
05:52:01 <HackEgo> bash: -c: line 1: syntax error: unexpected end of file
05:52:01 <cluid> Where could I find programmers to help with implementing an esolang? (this one http://esolangs.org/wiki/Janus )
05:52:13 <oerjan> `run while :; do echo 'Hit CTRL+C';
05:52:15 <HackEgo> bash: -c: line 1: syntax error: unexpected end of file
05:52:22 <CakeMeat> while :; do echo 'Hit CTRL+C'; sleep 1; done
05:52:26 <shachaf> Glottal stop? Are you sure?
05:52:28 <oerjan> i think there's a syntax error
05:52:31 <OOOren> here when my exams are over dth?
05:52:35 <cluid> any help please
05:52:37 <oerjan> `run while :; do echo 'Hit CTRL+C'; done
05:52:39 <HackEgo> Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \ Hit CTRL+C \
05:52:44 <CakeMeat> Oh god
05:52:44 <oerjan> there you go hth
05:52:52 <OOOren> O god what did you do
05:53:04 <oerjan> (i just wanted to show it doesn't actually harm HackEgo)
05:53:09 <OOOren> aha
05:53:12 <CakeMeat> Good
05:53:19 <cluid> I will ask later
05:53:20 <CakeMeat> I was scared itd keep going
05:53:31 <CakeMeat> oerjan: answer cluid
05:53:36 <CakeMeat> U guys r fronds
05:53:54 <OOOren> anyway yes ッorっ indicates a glottal stop or a doubled consonant
05:54:02 <CakeMeat> Oh
05:54:56 <oerjan> janus looks more complicated than i have patience to implement
05:55:05 <cluid> I have most of it already in haskell
05:55:11 <cluid> but the self interpreter is not working
05:56:33 <CakeMeat> Have you tried unplugging your computer and plugging it back in?
05:57:12 <CakeMeat> > { 0 }
05:57:13 <lambdabot> <hint>:1:1: parse error on input ‘{’
05:57:28 <CakeMeat> Hintzzz
05:57:36 <CakeMeat> > <
05:57:37 <lambdabot> <hint>:1:1: parse error on input ‘<’
05:57:49 <CakeMeat> Wtf am i doing
05:58:16 <CakeMeat> ¡_¡
05:58:44 <oerjan> trying random things, hth
05:59:22 <CakeMeat> I assume me patting oren on the face is not disruptive to the perl he does
05:59:47 <cluid> I just want self interpreter running
06:00:04 <CakeMeat> Screen shot of the error or whayever
06:00:04 <cluid> and maybe implement the compiler later
06:00:35 <CakeMeat> Compile the piles of garbage into a working haskell inerpreter
06:01:16 <int-e> I think you may be expecting too much of Haskell's garbage collector.
06:01:33 <CakeMeat> Probably
06:01:57 <OOOren> php says unexpected $this ... why not say "this isn't ruby, dumass"
06:02:04 <oerjan> surely someone's proved it TC by now
06:02:18 <CakeMeat> Ruby on rails
06:02:18 <cluid> ???
06:02:24 <cluid> oerjan, which
06:02:29 <OOOren> i forgot the ; at end of line.
06:02:34 <oerjan> cluid: ghc's garbage collector
06:02:44 <oerjan> i mean how can it possibly not be
06:02:50 <cluid> it is often told that types do not exist at run time
06:02:53 <shachaf> What does it mean for a garbage collector to be TC?
06:03:01 <CakeMeat> To crap
06:03:05 <int-e> mitchs: re: interest in Polyominoes: it's nice to have an algorithmic challenge among all the data compression tasks lately.
06:03:07 <oerjan> ...i guess the fact it reduces memory might be a problem
06:03:09 <cluid> but for garbage collection you need specific code for recovering/collecting that type of object
06:03:19 <cluid> so its a lie
06:03:32 <OOOren> mark and sweep
06:03:35 <CakeMeat> The cluid is a lie
06:03:35 <oerjan> shachaf: hm that's a bit tree falls in the forest isn't it, since GC should never be observable
06:03:43 <elliott> CakeMeat: can you be less noisy please
06:03:53 <CakeMeat> :I
06:04:06 <OOOren> you can garbage collect without types if you sweep over all memory
06:04:17 <elliott> not precisely
06:04:20 <CakeMeat> Fine
06:04:22 <OOOren> for pointrs to allocated objects
06:04:26 <cluid> OOOren, I doubt that, how do you know which objects are pointers and which are immediate?
06:04:28 <elliott> you need to know where the pointers are
06:04:35 <elliott> that's not quite the same as knowing all type information though
06:04:41 <OOOren> you don't
06:04:48 <elliott> you do for precise collection
06:04:52 <elliott> what you are describing is conservative collection
06:05:00 <cluid> you can probably recover a fair bit of type information from inspecting the GC code pointer of an object
06:05:05 <elliott> you can make do with just having a tag bit for pointer vs. int; e.g. OCaml does this and has 31 bit ints
06:05:13 <cluid> as Bob Harper might say "haskell is dynamically typed"
06:05:24 <elliott> and it's not really possible to "recover types" in any meaningful way with that, the GC is basically agnostic
06:05:28 <OOOren> exactly. but conservative is still gc
06:05:33 <elliott> I think GHC does this too
06:05:38 <OOOren> i have used it in C
06:05:48 <elliott> it's unsound in C, but sure :p
06:05:50 <OOOren> conservativ ecollection that is
06:06:33 <cluid> anyway GC algorithms are probably not TC
06:06:38 <OOOren> the real issue is when someone does this: int*onebasedarray=malloc(4*sizeof(int))-1
06:07:00 <elliott> that's not really an issue because it's UB, I'm pretty sure
06:07:04 <elliott> the real issue is stuff like xor linked lists
06:07:05 <int-e> cluid: It's true that generally type erasure benefits the mutator more than the garbage collector (it's interesting to speculate about the reason. one *can* implement specific scavenging and evacuation code for each type, foregoing all explicit layout information; however I suspect that this would make performance *worse* nowadays, because the code will quickly outgrow the code cache size.)
06:08:08 <elliott> void oops(int *p) { intptr_t x = (intptr_t)p ^ 1234; p = NULL; gc(); p = (int *)(x ^ 1234); printf("%d\n", *p); }
06:08:20 <CakeMeat> Night
06:08:20 <elliott> conservative GC breaks this code but nobody cares because it's already horrible
06:08:32 <cluid> night
06:08:36 -!- _AndoDaan_ has joined.
06:08:44 <int-e> elliott: you know of the xor trick for cyclic lists, right?
06:09:29 <_AndoDaan_> I'd like to hear it, please.
06:09:32 -!- qwertyo has joined.
06:09:33 <elliott> int-e: I know XOR linked lists but nothing about relating them to cyclicity
06:09:50 <cluid> hi _AndoDaan_
06:10:06 <_AndoDaan_> Hey, cluid.
06:10:21 <int-e> _AndoDaan_: basically every node stores the xor of its next and its prev pointer; if you know the current node, and know where you came from, you can traverse the list. if not ... and that's the situation the GC will be in ... then you're screwed.
06:10:38 <cluid> http://en.wikipedia.org/wiki/Genetic_code http://en.wikipedia.org/wiki/Start_codon http://en.wikipedia.org/wiki/Five_prime_untranslated_region http://en.wikipedia.org/wiki/Frameshift_mutation thanks Bike
06:10:41 <elliott> int-e: yeah, that's what I meant by XOR linked lists.
06:10:52 <int-e> elliott: yes.
06:10:56 <Bike> i wonder if any GCs can actually deal with pointers that are anything but memory blocks.
06:11:01 <Bike> sounds impossibleish
06:11:14 <elliott> int-e: what does that have to do with being cyclic, though?
06:11:16 <shachaf> Bike: What do you mean?
06:11:17 <int-e> elliott: <_AndoDaan_> I'd like to hear it, please. <-- I was replying to this.
06:11:17 <elliott> it's a trick for double-linked lists
06:11:20 <elliott> ah, okay.
06:11:23 <elliott> sorry.
06:11:25 <Bike> i also wonder if boehm mentions things not workign with this intptr_t shit
06:11:33 <Bike> shachaf: a gc where elliott's code would work.
06:11:37 <int-e> elliott: nothing in particular. I wanted to say "doubly linked", and I normally make those cyclic. brain fart.
06:12:02 * elliott nods
06:12:19 <elliott> does boehm handle char *p = malloc(10) + 10;
06:12:19 <Bike> perhaps ironically i've heard of using xor'd pointers to make mark-and-sweep slightly cheaper
06:12:52 <int-e> elliott: I'm pretty sure it does.
06:12:53 <Bike> What's taht do again?
06:13:06 <Bike> the example use of boehm is for strings, though.
06:13:06 <elliott> Bike: p is a pointer you're not allowed to dereference
06:13:07 <OOOren> makes an array with negative indices
06:13:10 <elliott> but you are allowed to hold it
06:13:14 <Bike> ok right.
06:13:18 <elliott> malloc(10) + 11 isn't allowed, though
06:13:29 <Bike> so that for loops work. i heard this on ##c at some point.
06:13:33 <elliott> you only get one element of leeway
06:13:46 <elliott> btw C is horrible
06:13:53 <Bike> I know.
06:13:54 <int-e> the C standard is full of dark corners with ugly surprises.
06:13:58 <Bike> I should have written this project of mine in Rust.
06:14:01 <OOOren> if so then scrip7 is horribler
06:14:08 <lifthrasiir> elliott: a past-the-end pointer is wonderful
06:14:30 <Bike> actually, wait, how do you expect boehm to deal or not deal with that?
06:14:34 <int-e> and it has 701 pages, so there's a lot of room for them :)
06:14:48 <int-e> (approximately, I'm using the N1570 draft)
06:14:48 <OOOren> because you can access any memory as any type
06:14:49 <elliott> Bike: well, if it only checks the pointers are within the bounds of the object, rather than within the bounds of the object or one past it...
06:15:06 <Bike> oh, you mean holding p should keep the string alive.
06:15:10 <Bike> yeah i guess that makes snese.
06:15:15 -!- _AndoDaan_ has quit (Ping timeout: 256 seconds).
06:15:23 <cluid> One thing I dont undersatnd though, is how can you mutate DNA/RNA like split it in half and mix it nad itt still works?
06:15:32 <int-e> (which is probably fine because I'm not writing C compilers.)
06:15:37 <Bike> Because it's made of lots of sections.
06:15:50 <Bike> Each protein is encoded by some number of base pairs, not the whole strand.
06:15:52 <cluid> and each section makes random protiens?
06:15:53 <Bike> so you can cut up the strand ok.
06:16:05 <cluid> ok
06:16:09 <OOOren> and each protein is stored numerous times
06:16:13 <cluid> so how do you make a living thing out of dna e.g. a worm
06:16:15 -!- AndoDaan_ has joined.
06:16:16 <Bike> It's like taking a piece of text and cutting it up.
06:16:26 <Bike> cluid: Well, first, you need to get another worm...
06:16:26 <cluid> or a algae
06:16:26 <AndoDaan_> sorry 'bout that.
06:16:54 <AndoDaan_> I thought you were talking about cyclic tag systems.
06:17:04 <cluid> i mean all these protiens will go together in some way
06:17:09 <cluid> and build a creature?
06:17:17 <Bike> It's like bootstrapping. Barely.
06:17:26 <Bike> You need another creature that knows how to make more creatures, before you can make a creature.
06:17:33 <cluid> alright
06:17:49 <Bike> This is why Jurassic Park ahsn't happened yet.
06:18:08 <OOOren> but they have cloned dogs for a price
06:18:16 <Bike> right, because dogs already exist.
06:18:18 <int-e> we have dogs aplenty
06:18:18 <oerjan> i'm sure the fact they don't have much dinosaur dna also matters
06:18:23 <cluid> so the reproductive system will create an egg or something, which is the right setting for the DNA to form into protiens and create a new creatures
06:18:27 <cluid> is that right?
06:18:44 <Bike> Well. Sorta.
06:18:48 <OOOren> there is also sex involved
06:18:52 <oerjan> an egg is already a fully functional cell
06:18:57 <Bike> Right, that's the main thing.
06:19:09 <Bike> That functioning cell gives rise to the whole organism.
06:20:25 <cluid> It would be interesting to simulate a system basd on something like DNA, which folds into "protiens" and make creatures from it
06:20:29 <OOOren> i wonder when we will get IDE's for DNA
06:20:32 <cluid> probably very hard to set up
06:20:34 <Bike> been done a lot.
06:20:39 <oerjan> thing is, maybe the system _was_ bootstrapped from something that wasn't a fully functional cell at one point, but that probably hasn't happened for billions of years
06:20:42 <Bike> sgeo, oddly, knows some about it
06:20:57 -!- shikhin has joined.
06:21:05 <cluid> ive heard the abiogenesis story
06:21:16 <Bike> it's pretty easy to simulate something like mendelian genetics. modern genetics is more involved but doable.
06:21:23 <cluid> about the first cells forming out of hydrophobic films and stuff
06:21:36 -!- AndoDaan_ has quit (Ping timeout: 264 seconds).
06:21:42 <OOOren> my aunt says goddidit. my uncle says aliens did it
06:21:49 <int-e> oerjan: right and it happened to monocollular things, not highly evolved (read: precariously balanced) creatures like dinosaurs.
06:21:55 <int-e> *cellular
06:21:57 <Sgeo> Norn genes are kind of ... powerful?
06:22:03 <Sgeo> Not really lists of proteins at all
06:22:06 <OOOren> Norns?
06:22:14 <Bike> in Creatures, an artificial life simulator.
06:22:21 <OOOren> ic
06:22:27 <cluid> Sgeo, do you know about something to simualate building protiens out of 'genetic codes' on a computer?
06:22:37 <cluid> i mean some kind of idealized protiens not real life ones
06:22:38 <Sgeo> The genes define things such as the exact chemical reactions that occur
06:22:59 <Bike> Well how complicated do you want the process to be?
06:23:04 <Sgeo> That is, if ADP + Energy = ATP, it's because a gene says so
06:23:06 -!- AndChat-234416 has joined.
06:23:12 <cluid> I dont know much about this, just curious
06:23:13 <Bike> If you want the caricatural codon -> RNA -> protein process, that's trivial. like, a oneliner.
06:23:19 <int-e> Maybe I wanted to type "mꙩnꙩꙩcular".
06:23:45 <int-e> or is that "mꙩnꙩcular".
06:23:59 <Bike> something like lacI, that's more involved
06:24:11 <AndChat-234416> Lousy connection
06:24:37 -!- AndChat-234416 has changed nick to Andoodan.
06:24:39 <oerjan> `unidecode ꙩnꙩꙩ
06:24:41 <HackEgo> ​[U+A669 CYRILLIC SMALL LETTER MONOCULAR O] [U+006E LATIN SMALL LETTER N] [U+A669 CYRILLIC SMALL LETTER MONOCULAR O] [U+A669 CYRILLIC SMALL LETTER MONOCULAR O]
06:25:02 <OOOren> monocular?!?
06:25:16 <int-e> I know what it says there, but unicode also spells "lambda" "lamda" so I don't trust it ;-)
06:25:30 <int-e> (I really dislike "lamda" though I know that it's correct.)
06:25:40 <oerjan> i expect one o
06:25:53 <int-e> mnocular
06:26:00 <shachaf> i,i ꙩ ꙫ ꙭ ꙩꙩ
06:26:07 <OOOren> `unidecode λ
06:26:09 <oerjan> because greek prepositions tend to lose their -o in front of another vowel
06:26:09 <HackEgo> ​[U+03BB GREEK SMALL LETTER LAMDA]
06:26:13 <shachaf> keep going and you end up with ꙮ
06:26:15 <OOOren> WHYYYYY
06:26:27 <shachaf> `icode ƛ
06:26:30 <HackEgo> ​[U+019B LATIN SMALL LETTER LAMBDA WITH STROKE]
06:26:39 <int-e> nice!
06:26:39 <Bike> lambdaphage
06:26:55 <OOOren> Jesus X whyyyy
06:27:02 <int-e> gotta have things consIstent.
06:27:05 <elliott> int-e: it's noted as a typo in the notes, I think
06:27:12 <elliott> it's just you're not allowed to rename unicode codepoints ever
06:27:26 <cluid> unicode is awful
06:27:38 <Bike> hookworm is awful
06:27:47 <OOOren> Shift JIS is a way better encoding anyway
06:27:58 <OOOren> much easier to parse too
06:28:19 <cluid> > Because the vast majority of genes are encoded with exactly the same code (see the RNA codon table), this particular code is often referred to as the canonical or standard genetic code, or simply the genetic code, though in fact some variant codes have evolved
06:28:21 <lambdabot> <hint>:1:27: parse error on input ‘of’
06:28:22 <cluid> wow
06:28:28 <cluid> there's almost a universal language
06:28:32 <Bike> "vast majority" is important.
06:28:34 <cluid> 'universal' as in used widely
06:28:38 <OOOren> Actually most encodings that aren't utf 8 are way easier to parse
06:28:42 <Bike> like, it's not used in your mitochondria.
06:28:42 <oerjan> didn't someone say it's actually spelled without b in modern greek
06:29:20 <Bike> but yes, the mechanisms of heredity are really ancient.
06:29:24 <cluid> i could become a molecular biologist
06:29:29 <cluid> this would be interesting
06:29:39 <cluid> then i dont have to do stupid computer things
06:29:47 <Bike> it's pretty common to use mutations in one of the ribozymes to measure time, since there's nothing much to optimize there.
06:30:02 <elliott> I think that was Bike's reasoning too
06:30:07 <Bike> it was.
06:30:10 <cluid> Bike is smart
06:32:07 <Bike> the only people who argue whether some variant DNA encoding is better or worse have PhD's. unlike unicode. though they're still pretty stupid arguments, probably.
06:33:26 <Bike> anyway, now look up ribozymes.
06:33:44 <cluid> ok but ihave a lot to read already
06:34:48 <oerjan> "In Modern Greek the name of the letter, Λάμδα, is pronounced [lamða]"
06:34:49 -!- qwertyo has quit (Ping timeout: 264 seconds).
06:35:01 -!- qwertyo has joined.
06:36:07 <OOOren> so its lamtha
06:36:58 <OOOren> with th as in then
06:37:51 <fizzie> We've got a lot of bioinformaticists at the university. You can do biology and still keep doing stupid computer things.
06:38:22 <Bike> nobody likes bioinformaticians though.
06:38:34 <Bike> i mean they're cool, but they complain about nobody caring about them a lot.l
06:40:02 <fizzie> Given how much funding they must have to be so many, it sounds slightly disingenuous.
06:40:20 <Bike> Do you have, like, an actual department for them?
06:40:31 <shachaf> bioïnformatics
06:40:37 <shachaf> people would like them more with the extra dot
06:40:42 <Bike> Probably.
06:42:25 <fizzie> It might be technically part of something, but it's at least a clear clique.
06:43:17 <fizzie> All I know is, I never understand their posters when there's some sort of common event.
06:43:23 <Bike> «Had the "no money for bioinformatics but could you help us in your spare time" conversation this week. Depressing in so many ways.» e.g.
06:43:41 <Bike> i actually don't know where they are at this school. I saw a hiring notice in the EE building once and that's it.
06:44:00 <oerjan> shachaf: shouldn't that really be biöïnformatics
06:44:05 <Bike> oh, and i saw an undergrad presentation about finding SNPs causing antibiotic resistance
06:44:17 <Bike> a lot of it's, like, straight out of Knuth, though.
06:44:48 <fizzie> The studients have their own guild ("Inkubio") though.
06:45:55 <fizzie> http://www.inkubio.fi/
06:46:27 <Bike> oh, the bioinformatics here looks like 90% ag forestry. figures.
06:47:17 <int-e> computer science likes trees?
06:47:54 <Bike> i go to a semi farm school.
06:47:58 <Bike> in washington. it's all trees
06:50:08 -!- _AndoDaan has joined.
06:50:13 <OOOren> i specifically went to uoft because york had too much trees and grass and stuff around
06:50:34 <OOOren> and so did waterloo. i am a city person
06:52:02 <OOOren> is that a good way to choose a university?
06:52:08 -!- _AndoDaan_ has joined.
06:52:24 -!- _AndoDaan_ has quit (Client Quit).
06:52:40 -!- Andoodan has quit (Ping timeout: 245 seconds).
06:52:57 <OOOren> uhhhh dude what is this
06:53:14 -!- drdanmaku has quit (Quit: ,).
06:54:34 -!- _AndoDaan has quit (Ping timeout: 244 seconds).
06:55:29 <oerjan> OOOren: if you have pollen allergy, i'd say yes
07:02:17 <cluid> "frameshift mutations. These mutations usually result in a completely different translation from the original, and are also very likely to cause a stop codon to be read, which truncates the creation of the protein" <- that's so cool! some error correcting behavior
07:05:07 -!- qwertyo has quit (Ping timeout: 256 seconds).
07:05:27 -!- qwertyo has joined.
07:06:06 -!- J_Arcane_ has joined.
07:07:43 -!- J_Arcane has quit (Ping timeout: 258 seconds).
07:07:46 -!- J_Arcane_ has changed nick to J_Arcane.
07:19:01 <cluid> RNA, in essence, can be both the chicken and the egg
07:19:24 <cluid> http://en.wikipedia.org/wiki/Ribozyme
07:24:58 -!- dts has changed nick to dts|pokeball.
07:26:14 <int-e> One interesting fact I learned this year is that mammalian DNA is simpler than amphibian DNA, and can be because their embryos develop in a tightly controlled environment rather than having to hatch at any temperature between 5 and 25 degrees Celsius (or so)...
07:28:48 <int-e> (Obviously this idea extends to grown animals, too, where mammals can rely on a fairly constant internal temperature.)
07:30:59 <fizzie> I learned that from the Science of Discworld books, I think.
07:31:09 <fizzie> (Assuming it's true.)
07:34:12 <oerjan> hm GG: i'm going to reserve my judgement on whether that lady is truly dead.
07:35:02 <fizzie> That is not dead which can eternal lie.
07:35:13 -!- qwertyo has quit (Ping timeout: 272 seconds).
07:35:58 -!- qwertyo has joined.
07:38:46 -!- Patashu has joined.
07:41:49 -!- cluid has quit (Quit: Leaving).
07:44:35 <Bike> "simpler"?
07:47:38 <int-e> oerjan: yeah it's too easy, there must be a twist.
07:48:33 <int-e> perhaps she had a metal brain and is slowly taking control of the beast now
07:48:59 <oerjan> heh
07:49:00 <int-e> (I'm wondering about the covered face)
07:53:13 <int-e> oerjan: I'm slightly disappointed about the fact that my foreshadowing-inspired guess that the Lady Selyenikov was heading towards the Beast turned out to be correct.
07:54:00 <oerjan> hm right
07:54:19 <oerjan> the beast doesn't seem like the thing you'd plot to get hold of
07:54:50 <oerjan> unless it carries some other secret
07:54:52 <int-e> phew. it's a hell of a diversion though.
07:55:25 <oerjan> *the kind of thing
07:55:47 <int-e> but what for; I believe theat Tarvek was actually unaware of her actions.
07:55:56 <int-e> *that
07:56:05 <int-e> so there must be something else...
07:56:57 <oerjan> um tarvek has been in absentia for several years, as far as she would be concerned
07:57:15 <int-e> And btw, what happened to all the Lady Lucrecia puppets? There were two of them, one is with the Baron's son now ...
07:57:29 <int-e> oerjan: exactly. That's why I believe him :P
07:58:06 -!- _AndoDaan has joined.
07:58:21 <oerjan> which one is with gil?
07:59:06 <oerjan> and dimo said gil had found a way to disable their obedience to her
08:00:03 * oerjan is not entirely sure what you mean with "lady lucrecia puppet"
08:00:12 <OOOren> the geisterdamen
08:00:16 <oerjan> oh those
08:00:23 <OOOren> that is i think what he means
08:00:38 <oerjan> um in that case i don't remember _any_ that are with gil.
08:00:51 <OOOren> maybe he means the revenants?
08:01:10 <OOOren> OOOO
08:01:14 <oerjan> if he means the revenants, there were at least a city (sturmhalten) full of them
08:01:23 <OOOren> He means that robot girl
08:01:34 <OOOren> who lucretia uploaded herself into
08:01:47 <OOOren> and the fake heterodyne
08:02:14 <oerjan> well there was only one robot. and it seems sort of dubious that's she's still around gil if it's true that he's fighting her.
08:03:11 <OOOren> lucretia copied herself into the fake heterodyne so she has 3 bodies: the van rijn robot, the fake heterodyne and the copy inside Agatha
08:03:12 <oerjan> well there were 3 of those, the robot girl, zola, and agatha herself. but if the robot girl is at large she should have had time to make as many more as she wishes
08:03:27 <OOOren> good point
08:03:53 <oerjan> but zola may have messed things up for lucrezia
08:04:11 * oerjan will go check the spelling now
08:04:16 <OOOren> maybe that should be van rijn?
08:04:30 <oerjan> it's z
08:05:07 -!- qwertyo has quit (Ping timeout: 264 seconds).
08:05:10 <oerjan> i don't know that ligatures are obligatory in dutch spelling...
08:07:10 <oerjan> she should also have had time to make more spark wasps if she has the design...
08:08:14 <oerjan> hm what was the last time we saw the robot? the mechanicsburg hospital?
08:08:30 <OOOren> that too... hold on where was the robot girl when mechanicsburg blew up/temporally screwed
08:09:07 <oerjan> it seems _logical_ that she would have left when klaus did
08:09:28 <oerjan> and especially before agatha got in control
08:10:15 <oerjan> but then, klaus seems to have been able to plot to escape her control
08:10:46 <oerjan> unless it's even more fiendish and she actually wanted klaus to make it look that way
08:11:59 * oerjan checks the wikia
08:12:37 -!- _AndoDaan has quit (Ping timeout: 264 seconds).
08:13:53 <shachaf> fizzie: do you have a graph of oerjan "f.endish" frequency over time
08:16:11 -!- AndoDaan has joined.
08:18:46 <fizzie> shachaf: Not a graph, but http://sprunge.us/AgCb
08:23:39 -!- dts|pokeball has changed nick to dts.
08:24:28 <shachaf> looks like we're safe
08:24:56 <int-e> oerjan: hmm. there was this unresolved wasping incident, http://www.girlgeniusonline.com/comic.php?date=20061201 and I thought one of the puppets turned up in the Mechanicsburg hospital a while later, or perhaps on the Baron's ship. I can't find it right now; I forgot how slowly this comic moves.
08:25:38 <fizzie> shachaf: It looks a bit more alarming if you take it yearwise, http://sprunge.us/WNGT
08:25:59 <oerjan> int-e: duh.
08:26:03 <shachaf> uh oh
08:26:20 <fizzie> (Exercise for the reader: fit an exponential, see when it overtakes the rest of channel traffic combined.)
08:26:31 <oerjan> XD
08:26:41 <shachaf> that's the sort of thing i had in mind
08:27:13 <int-e> let's take 0.9^(t/1h)
08:27:37 <int-e> oerjan: I'm not certain either, all those muses look the same to me.
08:27:54 <int-e> (except Ophelia's new shell, of course.)
08:29:02 <elliott> fizzie: could you query "words said by X that have increased their usage the most over time"?
08:29:21 <elliott> (total uses > some threshold and then order by the derivative over the years, or something.)
08:29:52 <oerjan> searching for the oerjan singularity
08:31:52 <oerjan> int-e: i think we've only seen 3 muses and i didn't think anevka's clank body was one.
08:33:06 <int-e> oerjan: It was so long ago, I don't know anything for sure anymore. (Actually I reread the whole thing earlier this year, but there's just too much going on.)
08:33:24 <oerjan> indeed
08:33:50 <int-e> bbl
08:34:12 <fizzie> elliott: Perhaps, but now: lunch.
08:34:46 -!- CakeMeat has quit (Quit: Connection closed for inactivity).
08:34:50 <shachaf> fizzie: what about hth over time
08:35:08 <fizzie> I think I've done that.
08:35:36 <shachaf> Ah. I didn't see it.
08:37:05 <fizzie> http://sprunge.us/IUfH quickly monthly '% hth' so only suffix
08:37:55 <shachaf> For everybody or just oerjan?
08:38:33 -!- AnotherTest has joined.
08:41:08 -!- shikhout has joined.
08:41:37 <fizzie> Just the big O.
08:42:10 <shachaf> whoa, is *that* who the book is about?
08:42:26 <shachaf> I wrote "whom" at first but I couldn't take it.
08:43:04 -!- AnotherTest has quit (Ping timeout: 244 seconds).
08:43:15 <fizzie> http://sprunge.us/AVdN in general
08:44:01 -!- shikhin has quit (Ping timeout: 250 seconds).
08:48:30 <oerjan> you can see from the table when the script was made.
08:49:05 <mroman> !blsq_uptime
08:49:05 <blsqbot> 18h 42m 47s
08:58:12 <mroman> I should start training climbing again.
09:08:23 -!- dts has changed nick to dts|pokeball.
09:29:07 <HackEgo> [wiki] [[Talk:Mmmm()]] http://esolangs.org/w/index.php?diff=41316&oldid=41314 * Rdebath * (+635)
09:30:05 -!- hjulle has joined.
09:41:39 -!- cluid has joined.
09:44:17 <cluid> hi
09:51:11 -!- shikhout has quit (Ping timeout: 250 seconds).
09:52:10 -!- shikhin has joined.
09:56:36 -!- Phantom_Hoover has joined.
10:21:57 -!- tam has joined.
10:22:30 -!- tam has quit (Client Quit).
10:22:32 <OOOren> good morning
10:22:37 <cluid> good morning
10:25:32 <OOOren> i have just finished this little project in only 8 hours work
10:25:55 <OOOren> should really have taken me less time though
10:26:09 <cluid> what project?
10:26:30 <HackEgo> [wiki] [[Pendulum Instruction Set Architecture]] M http://esolangs.org/w/index.php?diff=41317&oldid=41151 * Cluid Zhasulelm * (+349) Added more useful links
10:26:37 <OOOren> i made an online connect 4 game in php
10:26:42 <cluid> oh cool
10:28:37 <OOOren> http://54.174.150.35/connect4/
10:29:17 <mroman> `? Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch
10:29:19 <HackEgo> Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch? ¯\(°​_o)/¯
10:30:33 <OOOren> what is that llan thing?
10:30:54 <cluid> its a place
10:31:17 <cluid> http://upload.wikimedia.org/wikipedia/commons/b/bd/Cy-Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch_%28Welsh_pronunciation%2C_recorded_17-05-2012%29.ogg
10:31:22 <OOOren> in wales i assume
10:31:26 <mroman> yeah
10:32:23 -!- OOOren has changed nick to Or3n.
10:34:22 <cluid> im too lazy :(
10:34:50 <Or3n> to do what?
10:35:02 <cluid> implement this language i want
10:35:32 <Or3n> then why don't you implement the language you need
10:35:38 <Or3n> as the song goes
10:35:52 <cluid> lol
10:36:54 <Or3n> i implemented scrip7 to serve a legitimate need (if massively unsafe power is a need)
10:37:27 <cluid> scrip7 is cool but have you been able to generate constants like 0x0707070707070 in a short way yet
10:38:34 <Or3n> i am working on a preprocessor
10:39:27 <Or3n> it will look like 0x[07]*8
10:40:12 <Or3n> the problem is the interaction between s7pp grammar and s7 grammar. i am going to reserve [] for the s7pp
10:40:25 <cluid> neat!
10:40:38 <Or3n> so the new version will only allow () and {} for loops
10:40:54 <b_jonas> what?
10:40:57 <Or3n> or maybe it should be the opposite
10:41:46 <Or3n> s7 currently does not distinguish between {} [] or (). they are all basically C if(0)while(1){...}
10:42:16 <Or3n> and then you use jumps to get in or out
10:47:38 -!- oerjan has quit (Quit: leaving).
11:00:00 -!- Or3n has quit (Quit: going to eat brekfst).
11:15:41 -!- ais523 has joined.
11:20:57 -!- boily has joined.
11:22:53 -!- ais523 has quit (Read error: Connection reset by peer).
11:22:59 -!- callforjudgement has joined.
11:26:22 -!- dts|pokeball has quit (Ping timeout: 256 seconds).
11:28:24 <callforjudgement> hey, could someone check their DNS for nethack4.org and tell me what IP is given for the A and AAAA addresses?
11:28:39 <callforjudgement> the IP I'm getting is not the IP I should be getting
11:29:14 <cluid> $ host nethack4.org
11:29:14 <cluid> nethack4.org has address 92.243.3.23
11:29:19 <elliott> same as cluid
11:29:20 <cluid> what command is better to use?
11:29:24 <elliott> you can use dig
11:29:31 <callforjudgement> OK, you're both getting the correct IP
11:29:32 <elliott> and 2001:4b98:dc0:41:216:3eff:fedd:d4e3
11:29:35 <callforjudgement> the IP I'm getting belongs to my ISP
11:29:43 <callforjudgement> perhaps someone's trying some really bad filtering, or something
11:29:50 <cluid> callforjudgement, my terrible ISP talktalk does thiat with google sometimes
11:29:55 <callforjudgement> nethack4.org.0INA62.252.172.241
11:29:55 <cluid> it goes to their ip rather than google
11:30:03 <elliott> cluid: virgin media does something even worse
11:30:07 <callforjudgement> well, it was making it impossible to ssh in
11:30:07 <elliott> they don't spoof DNS, you get the right IPs back
11:30:11 <elliott> but they route those IPs to their server(!!!!)
11:30:13 <elliott> to display a block page
11:30:18 <cluid> :(
11:30:24 <elliott> so instead of breaking their DNS servers, which you can just change, they break IP :p
11:30:55 <elliott> it took me like 10 minutes of poking to realise that was happening. there was such a sinking feeling
11:31:09 <callforjudgement> elliott: they seem to be doing something entirely different dubious here
11:31:44 <elliott> fwiw I am on virgin media and using their DNS servers.
11:32:32 <callforjudgement> when I send a GET request to 62.252.172.241 manually
11:32:36 <callforjudgement> I get my own site back
11:32:47 <callforjudgement> so AFAICT Virgin have placed a transparent proxy in front of my site
11:32:53 <callforjudgement> in a way that breaks everything other than HTTP
11:33:14 <callforjudgement> via a DNS redirect
11:33:21 <callforjudgement> so the next question is, why?
11:33:27 <callforjudgement> are they planning to inject adverts or something?
11:33:48 <cluid> ISPs are so nasty :(
11:34:21 <callforjudgement> a side-effect of this is that I can't easily check my email
11:34:26 <callforjudgement> time to go use the hosts file for its intended purpose
11:36:31 <b_jonas> elliott: ouch
11:36:55 -!- callforjudgement has changed nick to ais523.
11:42:44 -!- cluid has quit (Quit: Leaving).
11:43:46 <fizzie> Internet == HTTP, as everyone knows.
11:44:08 <fizzie> Googling for 62.252.172.241 finds a couple of other examples associating that address with various names.
11:44:27 <fizzie> "Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|62.252.172.241|:443" ... "Tracing route to coaa.co.uk. [62.252.172.241]" ... and so on.
11:44:54 <fizzie> The first one continues with "GnuTLS: A TLS packet with unexpected length was received" so I guess it also breaks HTTPS.
11:45:03 <fizzie> (Perhaps hoping for clients to downgrade to http?)
11:45:27 <fizzie> "At least it's not a MITM with a stolen certificate."
11:47:27 <fizzie> It's also a still-open github issue with many confused replies, so they've at least wasted the time of several people as collateral damage.
11:48:18 -!- oren has joined.
11:49:44 <ais523> I think it breaks everything other than unencrypted port 80 HTTP
11:50:42 <ais523> hmm, I'm going to try changing the DNS over entirely to level3
11:50:53 -!- ais523 has quit (Read error: Connection reset by peer).
11:51:06 -!- ais523 has joined.
11:51:28 <b_jonas> level what?
11:51:37 <ais523> b_jonas: level3 is one of the backbone companies
11:51:47 <b_jonas> ah
11:51:49 <ais523> they have their own publicly usable DNS at 4.2.2.1
11:52:25 <ais523> (one thing you have to bear in mind with DNS servers is that there's no point in them having actual domain names as you'd need a working DNS to connect to them; so they aim for memorable IPs instead)
11:52:37 <b_jonas> yeah, I know
11:53:34 <oren> i think googles is 4.4.4.4 right?
11:53:58 <b_jonas> oren: no, it's 8.8.4.4
11:54:02 <fizzie> And 8.8.8.8.
11:54:29 <oren> which is 4.4.4.4?
11:54:35 <fizzie> (Or 2001:4860:4860::8888 and 2001:4860:4860::8844 but that's slightly more difficult to remember.)
11:54:42 <ais523> oren: you can whois an address to see who owns it
11:54:53 <fizzie> The whole 4.4.0.0/16 is owned by Level3.
11:55:04 <oren> i see
11:55:13 <fizzie> There seems to be no DNS replies at least for me from 4.4.4.4 though.
11:55:30 <fizzie> (You'd think that'd be easier to remember than 4.2.2.1.)
11:56:20 <elliott> ais523: level3 don't like non-customers using their DNS, I think
11:56:21 <oren> looks like 4.4.4.4 doesn't respond to port 80 either
11:56:55 <ais523> elliott: hmm, I might have to check to see if I'm a level3 customer or not, over 10% of the entire Internet is
11:57:02 <ais523> but it's hard to tell due to the number of layers of indirection in between
11:57:04 <elliott> not quite :p
11:58:56 <oren> `whois 4.4.4.4
11:58:58 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: whois: not found
11:59:04 <fizzie> Level3's listed in all these public DNS lists, but don't seem to have their own page about their public DNS servers, the way e.g. Google have.
11:59:23 <fizzie> So you could possibly infer that they're at least slightly more ambivalent about it.
11:59:39 <ais523> fizzie: my guess is that they don't want to make any sort of guarantee or SLA about how long it'll be up
11:59:45 <elliott> I think there's some article about how they don't like it somewhere :p
12:01:56 <ais523> I'll probably put it back in a while
12:02:44 <ais523> suddenly come up with a really simple way to determine if I'm a level3 customer or not
12:02:53 <ais523> use traceroute, and see if it goes past any of the other backbone providers
12:02:56 <ais523> on the way
12:02:56 -!- yorick has joined.
12:03:41 <ais523> hmm, the tier 1 for virgin media seems to be GTT, who I've never heard of
12:03:53 <ais523> there is something quite worrying about the phrase "tier 1 I've never heard of"
12:04:52 <b_jonas> I don't think I've ever heared of any of the internet backbone stuff. It's all magic to me, and a miracle that it keeps holding up still. And I hope it won't all break down when nobody has enough incentive to make it work.
12:05:13 <ais523> "With over 140,000 routes, GTT connects your network directly to over one-third of the Internet prefixes with no traffic delays and guaranteed packet delivery."
12:05:20 <ais523> b_jonas: most of the backbone companies are rather well known
12:05:36 <fizzie> That's a rather wide definition of "well known".
12:05:41 <fizzie> If you made a survey on the street...
12:05:46 <b_jonas> known for being internet backbone, or known for something else?
12:05:59 <oren> guaranteed packet delivery isn't that the opposite of what IP is supposted to be?
12:06:08 <ais523> b_jonas: they're mostly large enough that they're known for something else
12:06:23 <b_jonas> can you list some of them?
12:06:32 <ais523> here: http://www.internethealthreport.com/
12:06:43 <ais523> that contains the ping time between pairs of tier 1s
12:06:47 <ais523> among other things
12:06:59 <ais523> apparently not all piers of tier 1s, though, because GTT aren't listed
12:07:20 <fizzie> I'd say AT&T, Sprint and Verizon are all well known.
12:07:29 -!- Patashu has quit (Ping timeout: 258 seconds).
12:07:31 <oren> guaranteed paket delivery... how is that even possible anyway
12:07:41 <ais523> but OK, I'll change the DNS over to Google's for now
12:08:03 <ais523> oren: I don't see how it can be, unless they define it as "we guarantee that the packets will be delivered to the server's tier 1" (which is what a tier 1 network's supposed to do)
12:08:12 <ais523> because if they /are/ the tier 1, then that's a vacuous operation
12:08:44 <oren> lol. yeah meybe that's it
12:09:07 <fizzie> It could just mean guaranteed delivery within their network.
12:09:13 -!- Phantom_Hoover has quit (Ping timeout: 244 seconds).
12:09:21 <oren> i don't think that's possible either
12:09:32 <b_jonas> it's marketing text, don't take it seriously
12:10:04 <ais523> it looks to me like outright lies
12:10:12 <ais523> or possibly, very dubious definitions
12:10:16 <ais523> which are technically true but misleading
12:10:29 <ais523> "internet prefixes" is a pretty interesting term, too
12:10:38 <fizzie> oren: Why wouldn't it be possible?
12:11:08 <oren> becuase their network is subject to accidents
12:11:35 <fizzie> Yes, but a "guarantee" does not mean "will happen always", as far as I know.
12:11:42 <b_jonas> "guaranteed package delivery" -- are you looking at a UPS ad?
12:11:57 <oren> packet paket delivery
12:12:12 <b_jonas> same thing
12:12:26 <oren> i don't understand why the word has a useless c in it
12:12:42 <ais523> I know that in the UK, a lot of companies got in trouble for saying "unlimited" when there were limits, even very large ones
12:13:02 <b_jonas> ah yes
12:13:13 <ais523> (or ones they claimed were very large)
12:13:33 <oren> anyway they also saidtheir network isn't subject to traffic delays which is impossible
12:14:00 <oren> based on my intro to networking course, all routers have queues
12:14:07 <b_jonas> they have faster than light transmission technology
12:14:23 <oren> unless they drop packets in which case the other claim is false
12:14:35 <boily> the way to be faster than light is to already be faster than light.
12:14:44 <fizzie> Nobody's complaining about post offices with "guaranteed next-day delivery" that also would be "impossible" by your definition. I don't think there's any rule that implies "unconditional" in marketing material.
12:15:06 <fizzie> http://www.royalmail.com/personal/uk-delivery/special-delivery "Special Delivery Guaranteed™ -- On time or your money back!"
12:15:10 <oren> there is in some countries.
12:15:28 <ais523> hmm, this reminds me of the actual definition of "guarantee"
12:15:36 <ais523> which is "if this doesn't happen, we'll compensate you"
12:15:40 <ais523> that is physically possible, at least
12:15:44 <oren> that
12:16:13 <fizzie> Yes, that's what I was alluding to.
12:16:14 <oren> is very wierd, what are they going to do, give me a penny when they drop my packet?
12:16:16 <b_jonas> ais523: yeah, that's used often: "100% uptime guarantee" means they're up 95% of the time and pay back 5% of the fees you paied to them
12:17:09 <oren> although the penny would probably be taken by the tier 2 isp
12:17:32 <b_jonas> also, this reminds me to "http://www.giantitp.com/comics/oots0632.html" "Magical power beyond your wildest imaginings! (Based on typical wild imaginings of previous customers matching your demographic profile. Additiona lterms and restrictions may apply.)"
12:17:55 <fizzie> I'm sure their actual contracts sound more like that.
12:18:08 <b_jonas> oren: certainly not a penny when they drop a packet. that would be very expensive.
12:18:18 <oren> ok 0.001 penny
12:18:27 <oren> or 0.000001 penny
12:19:47 <fizzie> (Perhaps with less occurrences of the word "magic" in them.)
12:20:20 <oren> maybe they define magic as a term of art
12:20:53 <b_jonas> There are some paper ads here that claim the new trams have 99.9% uptime. That's completely impossible. I wouldn't believe even 99% uptime.
12:21:22 <oren> trams means streetcars right?
12:21:31 <b_jonas> yes
12:21:34 <b_jonas> electric ones
12:21:49 <oren> the ones in my city have about 30% uptime
12:22:20 <oren> because of construction and accidents and barfing on the seats
12:22:33 <ais523> there were some trams installed between Birmingham and Wolverhampton a while back
12:22:37 -!- boily has quit (Quit: PRECIPITATED CHICKEN).
12:23:00 <ais523> I think they work properly nowadays, but during early days of the service, the doors wouldn't shut unless everyone put their weight on a particular side of the tram
12:23:36 <b_jonas> it's not that bad here, but still, 99.9% is an insane promise that they could keep only if they redefine uptime the way they want.
12:23:40 <ais523> the tram service is pretty much treated identically to the train service by the public transport thing
12:24:54 <ais523> actually the way the train service works here is interesting
12:25:10 <ais523> they guarantee (in the same sense of "compensation if it doesn't happen") transport from one train station to another, at a certain speed
12:25:16 <ais523> however, they don't necessarily guarantee it's by train
12:25:48 <ais523> if something goes wrong with the train lines, they'll sometimes hire coaches or buses in order to keep the journeys possible
12:26:09 <b_jonas> of course
12:26:19 <b_jonas> replacement with buses is the norm everywhere
12:26:27 <b_jonas> for trains and for trams
12:26:32 <b_jonas> and for metro too
12:27:11 <ais523> now I wonder what they replace buses with when they go wrong
12:27:15 <ais523> my personal experience is "other buses"
12:27:56 <b_jonas> sure, other buses
12:28:05 <b_jonas> possibly buses on other routes
12:28:17 <b_jonas> it's that trams and metro are more difficult to re-route
12:28:39 <fizzie> ais523: Those look rather light-raily for trams. Though the terminology is hopelessly muddy, or so I understand.
12:28:58 <fizzie> They replace buses with just freight trucks filled with something soft.
12:29:05 -!- callforjudgement has joined.
12:29:24 <oren> in japan they don't have many buses
12:29:51 <fizzie> Kyoto certainly had a lot of buses.
12:29:55 * oren 's experience in japan is limited to urban tokyo
12:30:17 <fizzie> It's probably quite location-dependent.
12:31:02 <oren> tokyo has subways, streetcars and trains
12:31:20 <oren> all of which were very reliably
12:31:47 <oren> except that one time when some drunk barfed alcohol all over the floor
12:32:33 <fizzie> Kyoto had all of those (a bit less extensively, though) but buses too.
12:33:27 <fizzie> The JR West lines weren't very useful for actual in-the-city stuff, though, which was a shame. (We had a rail pass dealie.)
12:33:31 -!- ais523 has quit (Ping timeout: 272 seconds).
12:33:40 -!- callforjudgement has changed nick to ais523.
12:34:37 <oren> the best thing about the trains in Tokyo is thatyou pay based on how far you go. in Toronto it is a flat and vry high rate
12:36:09 <fizzie> London has those zones and the whole "touching in and out" thing.
12:38:10 <fizzie> There's been a lot of talk here about making the new (Helsinki metropolitan area) public transit system do exit fares and be based on travel distance.
12:38:39 <fizzie> Especially those living right next to a zone border complain about the prices a lot.
12:39:52 <oren> in Toronto you pay $2.50 whether you are going one stop or he entire length.that is 1.40 pounds or, or 262 yen.
12:40:05 <oren> rip offf
12:40:33 <ais523> fizzie: the way train fares are calculated in the UK is massively complex
12:40:47 <ais523> basically a ticket has a start destination and an end destination
12:41:19 <ais523> you can travel along any legal route between them, and in most cases, can get on and off multiple times during the journey and catch a later train for the remaining portion, also you can skip portions (including the start and end)
12:41:33 <ais523> and to prevent this being abusable, there's crazy complex rules for what a legal route is
12:41:59 <shachaf> I remember a discussion of that in #trains once.
12:43:58 <fizzie> You can make a 20 km ride within Espoo for the "intra-muncipality" price of 1.95€ (£1.54, $2.40), but going just, say, 200 metres between stops, if they cross the Helsinki/Espoo border, would cost the "inter-muncipality" rate of 3.65€ (£2.87, $4.50).
12:45:24 <oren> that is crazy expensive
12:45:33 <fizzie> ais523: I think Finnish railways used to have something similar, but now the "default" non-commuting tickets are pretty much sold for a particular train.
12:45:47 <ais523> the UK version is a cross between zones and travel distance, just to make things more confusing
12:45:59 <ais523> it's basically impossible to figure out the correct fare for a journey without a computer
12:46:50 <oren> that is also nuts. even someone who doesn't speak japanese could easily firgure out how to use the metro in tokyo.
12:46:53 <fizzie> oren: Cash peak-period prices for London subway rides go from £4.80 to £8.40 depending on how many zones you cross, so...
12:47:09 -!- S1 has joined.
12:47:28 <ais523> I'm talking about long-distance
12:47:36 <oren> holy crap... why so expensive?
12:47:40 <ais523> in London, I think there are only six different fares you're likely to come across?
12:47:54 <fizzie> All I know is that zone 6 is where Heathrow is.
12:47:54 <ais523> oren: the peak periods, there isn't enough capacity for everyone who /wants/ to use the service
12:48:05 <ais523> so they put the prices up as a method of reducing demand
12:48:15 <oren> that is why you hire people to push people into the train
12:48:28 <fizzie> Even the non-peak pay-with-the-smartcard prices are £2.30 to £4.00, which is quite expensive compared to many places.
12:48:33 <b_jonas> ais523: the train tickets in Hungary are sold for a route between a source and destination, but you can take any trains and stop any number of times on that route
12:48:47 <ais523> b_jonas: that's pretty much how most UK tickets work
12:48:52 <b_jonas> yes
12:49:08 <b_jonas> and the price is based on the distance, though there's some complications
12:50:52 <fizzie> ais523: If you chose the right options in the Finnish railways webshop, you could buy a ticket from city A to a city B in Northern Finland, and it would (due to lack of matching options) route it via Helsinki, and since the price was based on the A-B distance, the ticket would cost something like 1/3 of the regular price from A to Helsinki.
12:51:11 <fizzie> ais523: Then you could just get off from the train in Helsinki, because we don't check tickets at exit.
12:51:12 <b_jonas> fizzie: what...
12:51:29 <ais523> fizzie: there are probably a bunch of exploits like that in the UK system
12:51:29 <fizzie> I guess technically it was still against the terms.
12:51:44 <ais523> I say "probably", because someone wrote to the people in charge asking them if various exploits were legal
12:51:50 <b_jonas> I'm quite sure the price here is based on the distance on the route. the distances on each line are listed in the timetable book.
12:52:10 <ais523> and they came up with arbitrary reasons that weren't in the rules to disallow some of the more egregious ones, and then told the original questioner to stop asking hypothetical questions
12:52:19 <oren> in tokyo the prices are on the wall in every station
12:52:23 <fizzie> Also rumour has it the officials in the A-to-Helsinki trains sometimes refused to honour those tickets.
12:52:41 <fizzie> Even though technically they had no way of telling you intended to not continue.
12:52:45 <b_jonas> ais523: they didn't say "they're not allowed now"?
12:52:56 <b_jonas> as in, changing the rules?
12:52:58 <ais523> b_jonas: the rules are already something like 1000 pages long
12:53:07 <ais523> trying to figure out /how/ to change them to get a desired effect is quite difficult
12:53:08 <b_jonas> wow
12:53:36 <ais523> oh, another discovery we made was that it was theoretically possible to have two stations such that you just couldn't have a journey between them at all, because even the most direct route would be too indirect
12:53:40 <oren> why can't we have simple systems?
12:53:52 <ais523> and someone identified such a pair of tickets, and it turns out that the ticket machines in fact do not sell them
12:54:00 <ais523> so we think the machines are programmed to enforce the rules literally
12:54:21 -!- S1 has left.
12:54:28 <b_jonas> ais523: or maybe backwards, the rules document what's programmed in
12:54:36 <ais523> huh, possibly
12:54:51 <b_jonas> I don't think the direct route is documented here, but they needn't really be because you buy the tickets for a specific route
12:54:58 <fizzie> Also learned today: the TfL fare chart for London tube/DLR/overground rail on their website is a .xlsx file.
12:55:04 <oren> someone wrote an abomination to read the rules nd produce code?
12:55:07 <fizzie> I'm pretty sure I looked at it once, and it was a PDF.
12:55:08 <oren> amybe
12:55:09 <b_jonas> they can list intermediate statoins on the route when it's not obvious what the route is
12:55:55 <b_jonas> there's a particular case about routes I'll try to tell
12:56:30 <fizzie> These .xlsx ones are "effective from 2 January 2015", so perhaps they've gone from bad (.pdf) to worse (.xlsx).
12:57:39 <oren> so someone decided 'hey i have this php xlsx generator lets use that' probably
12:58:12 <oren> instead of even trying to make a human readable document
12:58:37 <fizzie> The xlsx file has a fixed header and a scrollable body (so it's easier to see the column headings), which I suppose is its main selling point.
12:58:51 <fizzie> Not that you couldn't accomplish that with HTML and styling.
12:58:56 -!- sebbu has quit (Ping timeout: 245 seconds).
13:00:17 <oren> i have done something similar at a job (export business logic from database into xlsx)
13:01:13 <oren> the main point is, accountants love Excel
13:06:29 <oren> so you have some sort of view used by web store to find prices -- behind it is screwed up business logic written in SQL stored procedures. all you do is SELECT * from that view, and then format it into excel. that is likely what they did
13:08:14 -!- sebbu has joined.
13:08:48 -!- sebbu has quit (Changing host).
13:08:48 -!- sebbu has joined.
13:08:59 <oren> hi
13:09:00 <fizzie> Well, I don't know. It looks more manually-constructed than that. But perhaps there was an initial Excel dump from some system.
13:11:45 <HackEgo> [wiki] [[Mmmm()]] http://esolangs.org/w/index.php?diff=41318&oldid=41315 * 50.207.43.222 * (-103)
13:14:40 <HackEgo> [wiki] [[Talk:Mmmm()]] http://esolangs.org/w/index.php?diff=41319&oldid=41316 * SuperJedi224 * (+239)
13:16:09 <HackEgo> [wiki] [[Talk:Mmmm()]] http://esolangs.org/w/index.php?diff=41320&oldid=41319 * SuperJedi224 * (+144)
13:19:01 <J_Arcane> Heh. That one reminds me of lambda calculus.
13:20:19 <oren> you mean lamda calculus
13:22:30 <HackEgo> [wiki] [[Talk:Mmmm()]] http://esolangs.org/w/index.php?diff=41321&oldid=41320 * SuperJedi224 * (+18)
13:22:41 <J_Arcane> λfx.f (f (f x))
13:27:09 <int-e> @tell oerjan and then over 4 years later we have this little scene... http://www.girlgeniusonline.com/comic.php?date=20110221
13:27:09 <lambdabot> Consider it noted.
13:37:19 <int-e> @tell oerjan and this is the one I was looking for: http://www.girlgeniusonline.com/comic.php?date=20110516
13:37:19 <lambdabot> Consider it noted.
13:45:42 <FireFly> over 4 years later after what?
13:46:34 <int-e> FireFly: four years after http://www.girlgeniusonline.com/comic.php?date=20061201
13:48:26 <int-e> (Publishing time. In comic time I guess it's two to four weeks.)
13:59:53 -!- GeekDude has joined.
14:06:46 <oren> hello
14:07:22 <int-e> orello
14:10:12 <oren> today i made a connect 4 game in php
14:10:22 <oren> how was your day so far?
14:11:07 <ais523> I haven't been writing PHP so far today
14:11:14 <ais523> so I suspect my day went better than yours ;-)
14:11:20 <oren> yeah...
14:14:16 <oren> at leasti dont have to pay for aws
14:19:20 <oren> afk peanut butter toast
14:33:52 -!- augur_ has quit (Remote host closed the connection).
14:34:30 -!- augur has joined.
14:36:17 * J_Arcane has a mad function idea
14:39:02 -!- augur has quit (Ping timeout: 256 seconds).
14:41:51 -!- shikhout has joined.
14:41:56 <J_Arcane> Hah hah! I can now index nested lists to arbitrary dimensions.
14:42:37 -!- Phantom_Hoover has joined.
14:45:01 -!- shikhin has quit (Ping timeout: 264 seconds).
14:48:01 <b_jonas> oren: ah, I think I'm ahead of you then. I didn't code anything in php today.
14:53:38 <oren> everyone is ahead of me today... oh well atleast i have peanut butter
14:54:04 <fizzie> Oh, dailywtf, you never cease finding new lows to sink to.
14:54:06 <fizzie> "buf[strlen(buf)] = '\0'; -- But even on null terminated strings, this code is dangerous. Since arrays in C, like any sane language, are zero indexed, this code may attempt to access memory beyond the end of the array, overwriting whatever’s there with a null terminator."
14:54:14 <fizzie> That's just nonsense, and the code is perfectly safe (if completely useless) if there is a string in buf.
14:55:14 <oren> what i dont understand is why someone used '\0' instead of 0
14:55:17 <fizzie> (Okay, just having a string isn't quite enough, it needs to be one that can be modified. But still.)
14:55:25 <fizzie> Some think it's more self-descriptive.
14:55:34 <fizzie> Probably the same people who use NULL instead of 0.
14:55:35 <oren> they are both of type int
14:55:53 <oren> whereas NULL is of type void*
14:55:57 <fizzie> No, it's not.
14:56:05 <oren> huh?
14:56:11 <fizzie> It's an implementation-defined null pointer constant, or one cast to void *.
14:56:11 <ais523> fizzie: AFAICT, the code is exactly equivalent to strcat(buf, "")
14:56:16 <fizzie> It can be of type int, too.
14:56:40 <ais523> ever considered that tdwtf might be intentionally incorrect to try to trick people into using its forums?
14:56:55 <fizzie> ais523: No, but that's indeed plausible.
14:57:08 <oren> i will never look at those computer-killing forums again
14:57:34 <fizzie> (E.g. #define NULL 0 is a valid definition for NULL. As is #define NULL '\0' for that matter.)
14:58:26 <ais523> oren: the forums are awful even for computers that work better than yours
14:58:38 <oren> wow. but you don't need a cast to assign it to a pointer, unlike other integers?
14:59:22 <fizzie> Indeed.
14:59:22 <oren> so the forums content is bad too
14:59:23 <oren> ?
14:59:24 <fizzie> "-- NULL which expands to an implementation-defined null pointer constant --" (C11 7.19p3) + "An integer constant expression with the value 0, or such an expression cast to type void *, is called a null pointer constant." (C11 6.3.2.3p3)
14:59:52 <b_jonas> fizzie: be careful, those things have like three different definitions depending on the version of C and c++
15:00:04 <oren> screw c++
15:00:28 <oren> if im in c++ i rarely use pointers anyway
15:00:40 <fizzie> I don't think the version of C affects this.
15:00:43 <b_jonas> fizzie: in particular, the latest C++ standard closes the loophole that lets you detect wheteher an expression is a constant expression by testing if their zeroed version converts to a null pointer
15:00:49 <fizzie> At least the parts I quoted are identical in C89 and C11.
15:01:07 <b_jonas> fizzie: in plain words, (3-3) converts to a null pointer in C and in old C++, but not in future C++
15:01:15 <b_jonas> I don't know the exact version where it changes
15:01:33 <oren> screw c++ i don't use pointers in c++
15:02:01 <oren> because all the data structures come ready made anyway
15:02:45 <fizzie> b_jonas: Well. They've got the nullptr too. It's a whole 'nother language, sure.
15:02:51 <oren> c++ should have stopped pretending to be c a long time ago
15:03:11 <b_jonas> oren: sure, this change is something only #esoteric cares about. you people can still write 0 or NULL or nullptr
15:03:21 <b_jonas> oren: no, it should not stop that
15:04:00 <b_jonas> it is important for us people who use C++ for actual work to be easy to interoperate with C libraries, and be able to just include the C headers with almost no changes
15:04:09 -!- ais523 has quit.
15:04:11 <b_jonas> fizzie: doesn't C have nullptr too these days?
15:04:18 -!- ais523 has joined.
15:04:19 <b_jonas> or is that still C++ exclusive?
15:04:29 <fizzie> b_jonas: It's still C++.
15:04:35 <b_jonas> ok
15:04:46 <oren> virtually all languages have easy ways to work with C libraries.
15:04:50 <fizzie> b_jonas: You'd have to speak real fast to get the C committee to add a keyword that does not begin with a _ followed by an uppercase letter.
15:05:08 <b_jonas> fizzie: so what? they'd call it _Nullptr and put nullptr as a macro in some header
15:05:17 <b_jonas> that's what they did with alignas too
15:05:21 <oren> there is no reason that the method has to involve copypasting a file into your file
15:05:38 <oren> (that is what #include does)
15:06:01 <fizzie> b_jonas: Did alignas come from C++?
15:06:07 <b_jonas> fizzie: dunno
15:06:30 <b_jonas> fizzie: how about bool then
15:06:30 <fizzie> Apparently it's a keyword in C++11, at least.
15:06:32 <oren> some of this stuff was thought up by compilers
15:06:45 <b_jonas> fizzie: bool definitely comes from C++, and C took it as _Bool to which bool is a macro
15:06:46 <oren> (byt the writters of compilers that is)
15:06:57 <fizzie> There's also _Static_assert / static_assert, and _Thread_local / thread_local, but I don't know which way those went.
15:07:11 <b_jonas> ah yeah, static_assert almost certainly comes from C++
15:07:15 <oren> _Complex
15:07:16 <b_jonas> C people don't invent that kind of stuff
15:07:34 <b_jonas> oren: _Complex is different, C invented that and C++ SHOULD steal it, but they take it in pride and they don't
15:07:45 <b_jonas> they think their inferior std::complex template is better
15:08:04 <b_jonas> they're not even compatible, you can't just convert from one to another
15:08:26 <oren> the problem with c++ is that they did not make the standard template things builtins
15:08:40 <oren> std::vector should be a builtin
15:08:44 <b_jonas> um... no
15:08:48 <b_jonas> std::vector should not be builtin
15:08:54 <oren> why not
15:09:30 <b_jonas> why should it be? it can be implemented in C++ fine as a class, and this way it's easier to add methods to it later
15:09:46 -!- `^_^v has joined.
15:10:10 <oren> becuase then the compiler would not have to parse all that template garbage every time
15:10:51 <oren> and it would be faster becuase the algorithms can be tailored to the exact processor
15:11:09 <oren> and the type that it is instantiated over
15:13:03 <J_Arcane> https://www.pouet.net/topic.php?which=10164
15:14:00 <oren> link does not load
15:14:06 -!- augur has joined.
15:14:49 <oren> anyway there should be a builtin string, vector, and matrix type at least
15:15:29 <oren> oh now it loads
15:16:01 <oren> cool!
15:18:50 -!- augur has quit (Ping timeout: 244 seconds).
15:26:12 -!- shikhout has changed nick to shikhin.
15:27:46 -!- dts has joined.
15:29:10 -!- oren has quit (Ping timeout: 244 seconds).
15:31:21 -!- oren has joined.
15:37:55 -!- Sprocklem has joined.
15:40:59 -!- conehead has quit (Ping timeout: 272 seconds).
15:41:45 -!- drdanmaku has joined.
15:44:27 -!- conehead has joined.
15:48:06 -!- callforjudgement has joined.
15:48:10 -!- ais523 has quit (Remote host closed the connection).
15:50:23 -!- dts has quit (Ping timeout: 252 seconds).
16:19:42 -!- dts has joined.
16:19:52 -!- dts has changed nick to dts|pokeball.
16:21:00 <oren> re notation for long repeating integers
16:21:33 <oren> extend 0xffff notation by allowing other numbers before the x
16:21:56 <oren> so that 3xff is 0xffffff
16:23:54 <oren> up to 8 for an eight byte number
16:25:02 <oren> now the x means "times" as well as "hex" dth?
16:26:25 <Bike> it's not multiplication though.
16:26:57 <oren> it is string multiplication
16:27:05 <oren> like in perl x operator
16:31:43 -!- AndoDaan has quit (Read error: Connection reset by peer).
16:36:36 -!- mihow has joined.
16:38:42 <int-e> but then why does 0xff mean ff, rather than 0?
16:39:03 <callforjudgement> do it like Befunge-98
16:39:26 <callforjudgement> and have, in 1xff, the "1x" mean "1 repeat of ff", but then have the actual ff still there after it
16:39:31 <callforjudgement> so you end up with ffff
16:40:04 <int-e> anyway I don't think I'd be a fan of that notation
16:41:18 <HackEgo> [wiki] [[User:Orenwatson]] http://esolangs.org/w/index.php?diff=41322&oldid=41278 * Orenwatson * (+248) added mini-description for extended hex notation.
16:41:54 <oren> 3X7f7 is 0x77ff77
16:42:07 <oren> 3x7f7 us 0x7f77f7
16:42:24 <int-e> ...
16:42:35 <int-e> so now 3x is reapeating things twice?
16:42:52 -!- FreeFull has quit (Ping timeout: 250 seconds).
16:42:56 <oren> the number is the number of bytes
16:43:15 <oren> anything stating with 4 has 4 bytes
16:43:16 <Bike> well this went nuts quickly
16:43:42 -!- FreeFull has joined.
16:43:52 <oren> 3x7f is 7f7f7f
16:44:03 <oren> 3X7f is 777fff
16:44:22 <oren> nuts? hop hop i'm a squirrel!
16:45:54 <oren> 5x789 = 0x9789789789
16:48:06 <oren> or yknow, the thing from ice age the... Scrat, that thing
16:48:56 <oren> actually you may be right... repeating it the number of times may be easier to calculate
16:50:01 <tromp_> maybe some of you would be interested in the programming challenge at http://domino.research.ibm.com/Comm/wwwr_ponder.nsf/Challenges/December2014.html
16:50:22 <oren> ok new rule: 3x7f is 0x7f7f7f, 3X7f is 777fff but 2X7f7 is 0x77ff77
16:51:06 <oren> and 1 can be reserved for something... hmmm...
16:51:55 -!- Sprocklem has quit (Ping timeout: 272 seconds).
16:52:13 <Taneb> A few days ago there was mentioned in here a Magic deck designed to instantly lose
16:52:51 <HackEgo> [wiki] [[User:Orenwatson]] M http://esolangs.org/w/index.php?diff=41323&oldid=41322 * Orenwatson * (-22) revised the notation to be more sane.
16:54:04 <Taneb> Does anyone still have the link?
17:04:57 <int-e> Taneb: <shachaf> Sgeo: http://tappedout.net/mtg-decks/fastest-turn-1-kill-guaranteed/
17:05:49 <int-e> (I didn't. I searched the logs for "deck" from codu.org)
17:06:02 <int-e> Oh the word order scrambled got.
17:06:16 <Taneb> Thanks
17:07:25 <callforjudgement> that doesn't count, playing a pact makes you lose turn 2
17:07:47 <int-e> they say that you can take an extra turn.
17:07:59 <int-e> (if you can)
17:08:17 <int-e> so it still happens before your opponent ever takes a turn.
17:09:01 <callforjudgement> the extra turn cards make you lose at the end of that turn, so the pacts don't help there
17:12:12 <int-e> Right. Reading again, it actually says that the extra turn cards are the way to lose if you can; the pacts are more of a fallback (you have to fill the deck with something...).
17:15:30 <callforjudgement> this deck looks week to force of will
17:15:35 <callforjudgement> *weak to
17:15:38 <callforjudgement> like other turn 1 kill decks
17:15:49 <int-e> "These 2 routes will end the game without any decision-making on the part of your opponent." is false, of course. They can play pacts of their own, for example.
17:16:20 <oren> misere magic
17:17:17 <callforjudgement> actually
17:17:21 <callforjudgement> they can pact of negation your extra turn card
17:17:27 <callforjudgement> what are you going to do /now/?
17:17:59 <int-e> callforjudgement: I know!
17:19:01 <int-e> callforjudgement: that's when you use the extra turn cards, hoping that there isn't a second pact of negation waiting for them ;)
17:19:01 <coppro> callforjudgement: Pass the turn
17:19:03 <coppro> the goal is to end the game
17:19:04 <coppro> not to lose
17:19:10 <coppro> if you pass the turn after they pact, you win!
17:19:46 <coppro> if they force you, then you pact it
17:21:36 <callforjudgement> coppro: then you run the risk of them angel's gracing their own pact
17:21:43 <callforjudgement> or stifling it
17:23:27 <int-e> can you do that without mana?
17:23:48 <callforjudgement> gemstone caverns
17:23:58 <callforjudgement> was waiting for someone to ask how I paid for it :-)
17:24:53 <int-e> funny card
17:25:13 * int-e wonders if there's something you can discard for colored mana
17:25:35 <callforjudgement> you can exile simian spirit guide / elvish spirit guide for red and green respectively
17:25:38 <callforjudgement> both of which are the wrong colors
17:25:50 <callforjudgement> two of them let you play manamorphose and get the correct colors
17:26:03 <callforjudgement> but that's way more complex than just gemstone caverns, which is one card
17:28:41 <int-e> lovely. "If multiple Gemstone Caverns are put onto the battlefield under a single player's control before the game begins, the "legend rule" won't put the extras into that player's graveyard until just before the first player gets priority during his or her first upkeep step. There's no opportunity to tap the extras for mana."
17:29:06 <int-e> ... "You can do that, but it won't help you."
17:29:53 <int-e> unless you need cards in your graveyard, I guess
17:30:08 <int-e> but there must be easier ways to accomplish that :P
17:32:31 <callforjudgement> lion's eye diamond is the normal way
17:32:37 <callforjudgement> it's kind-of crazy
17:32:56 <callforjudgement> black lotus is considered one of the best magic cards ever, it generates 3 mana on sacrifice and costs 0
17:33:12 <callforjudgement> some time later, they made a black lotus variant where you have to discard your hand, everyone thought it sucked
17:33:26 <callforjudgement> then people developed storm decks that could work around the discard-your-hand drawback, and it became very expensive
17:33:44 <callforjudgement> and now there are decks like manaless dredge that play lion's eye diamond for the discard, and don't even have a use for the three mana
17:33:57 -!- GeekDude has quit (Quit: AdiIRC is updating to v1.9.6 Beta Build (2014/12/03-1) 32 Bit).
17:34:19 -!- GeekDude has joined.
17:34:41 <callforjudgement> turns out that the only problem with one with nothing is that it's one mana too expensive ;-)
17:34:58 <HackEgo> [wiki] [[User:Orenwatson]] http://esolangs.org/w/index.php?diff=41324&oldid=41323 * Orenwatson * (-226) i've just realized this leads to a syntactic ambiguity impossible to resolve with an LR(0) parser so back to the drawing board
17:35:45 <callforjudgement> oren: is being LR(0) parsable important to you?
17:36:16 <callforjudgement> INTERCAL would be LR(infinity), except that it has a specific exception banning programs that don't parse in LR(1)
17:36:29 <callforjudgement> i.e. the grammar itself isn't LR(1), but individual programs have to be
17:36:30 <oren> because scrip7 is interpreted yet is a 'systems' or 'game' language the parser has to be very very fast
17:37:22 <callforjudgement> I take it you can't just JIT the parsing?
17:37:39 <oren> and so i want it to read each character once only
17:37:53 <callforjudgement> you are possibly optimizing for the wrong thing
17:37:57 <oren> it can be self-modifying
17:38:19 <callforjudgement> ah, in that case you're definitely optimizing for the wrong thing, as you'll have to reread a character when it's modified anyway
17:38:41 <oren> but we don't want to backtrack ever
17:39:13 <oren> or build a parse tree. the grammar is also flat
17:39:31 <callforjudgement> oh, so this is lexing, rather than parsing
17:39:32 <oren> (except for nested parens)
17:39:42 <callforjudgement> what happens if someone overwrites one of a paren pair?
17:39:44 <oren> there effectively is no parse step
17:39:56 <callforjudgement> then you have to reparse everything anyway, because the parens no longer match the same way
17:40:40 <oren> the parens are jump vectors on a stack in the newest version (not uploaded yet)
17:41:24 <oren> but anyway not exactly. you can decide which paren matches based on the stack
17:41:33 <callforjudgement> well, say you modify a paren that's already on the stack
17:41:38 <callforjudgement> don't you have to remove it from the stack when that happens?
17:41:59 <callforjudgement> or are you using an intrusive linked list into the program?
17:43:53 <oren> uh... well it is a little complicated but the parens essentially represent the C if(0)while(1){...}
17:44:11 <oren> so when you jump in, it is stacked
17:44:24 <oren> and when you jump out it is unstacked
17:44:50 <oren> but when you hit them, it simply jumps to the vector at the top
17:45:24 <oren> in current version on wiki, it instead searches backward for match, but i am changing it
17:46:47 <oren> to get faster execution speed
17:47:02 -!- cluid has joined.
17:47:57 <oren> the semantics of self-modification are not yet well defined for this language
17:48:36 <cluid> hi oren
17:48:40 <oren> hi
17:49:13 <oren> i am explaining why i want scrip7 to be parsed LR(0)
17:50:47 <cluid> Who cares about LR whatever?
17:50:57 <cluid> isn't that just compiler textbook filler?
17:51:14 <oren> it defines how complex the parser code is and therefore
17:51:20 <oren> determines parsing speed
17:52:30 <oren> and then there is septh of parse tree which i want to be about 2 at most here
17:52:41 <oren> s/septh/depth
17:53:07 <Melvar> If your parser isn’t doing big transformations, isn’t parsing speed determined by how quickly you can feed it?
17:53:23 <cluid> What is the largest program you will ever write?
17:53:34 <cluid> you will probably be able to parse it in <1second
17:53:44 <cluid> therefore: Fuck parsing theory
17:53:45 <oren> how many times a second
17:53:52 <cluid> you have to parse multiple times a second?
17:53:55 <cluid> or
17:54:01 <cluid> you have to parse the same file multiple times?
17:54:25 <oren> yes it is an interpreted language, and i will be using it (maybe) to define entity behaviour in a game
17:54:56 <oren> entity means enemies, objects, bullets whatever
17:55:50 <oren> so in other words run 100 programs every frame
17:56:18 <oren> if i can get it to be fast enough, 1000 prgrams
17:56:27 <callforjudgement> in this case, you parse once and cache the parse
17:56:47 <cluid> I thoughht you compiled your code
17:56:51 <cluid> i thought it generated C code
17:57:07 <cluid> Ive totally misunderstood scrip7
17:57:14 <oren> no it is embedded inside a C program as a string, or fed from a file
17:57:22 <cluid> ok im sorry then
17:57:36 <cluid> everything i sadi about parsing wascoming from my false assumption
17:59:23 <oren> so essentially the idea is to designe language in such a way as to keep anything from needing a complex parse tree
17:59:58 <oren> ideally there will be no parse tree at all. the interpreter will execute code as it reads it, directly.
18:00:56 -!- S1 has joined.
18:01:01 <oren> so then, i am dealing with problem that 0xff notation is ambigious and requires lookahead or backtracking
18:01:14 <oren> because x could be a variable name
18:01:42 <callforjudgement> this notation seems like it's of very marginal use in this sort of language
18:02:17 <oren> i am considering a different sigil such as %ffff instead
18:02:22 <cluid> nah its good
18:02:41 <callforjudgement> something as simple as changing the 'x' to a digit means you have to completely reparse the constant
18:02:51 <callforjudgement> IMO, self-modification should be at the token level, not the byte level
18:03:28 <oren> as i jsut said the interpreter does not build any kind of parse tree, it reads bytes directly
18:04:42 <oren> and executes directly upon reading, for maximum speed short of a JIT
18:05:01 <cluid> cool
18:05:30 <callforjudgement> oren: I'm trying to tell you that if you want extreme speed
18:05:41 <callforjudgement> building a parse tree once is faster than executing bytes thousands of times
18:05:55 <callforjudgement> and it also makes your language's semantics cleaner
18:06:01 <oren> but the parse tree then is read many times?
18:06:12 <oren> why does that help?
18:06:21 <callforjudgement> you use an appropriate data structure for the parse tree so that you can navigate in it without needing to read the whole thing
18:06:43 <callforjudgement> for interpreting, you normally use something like a linked list, where the links represent possible flows of execution
18:06:50 <oren> already we navigate in string without reading the whole thing.
18:06:55 <callforjudgement> then you can move around in the parse tree just by following links
18:07:02 -!- oerjan has joined.
18:07:10 <callforjudgement> this means that it's always just the one memory access to load the next command
18:07:31 <callforjudgement> (actually one is too many, really, but rather better than trying to match brackets on every run)
18:07:56 <oerjan> @messages-
18:07:56 <lambdabot> int-e said 4h 40m 46s ago: and then over 4 years later we have this little scene... http://www.girlgeniusonline.com/comic.php?date=20110221
18:07:56 <lambdabot> int-e said 4h 30m 36s ago: and this is the one I was looking for: http://www.girlgeniusonline.com/comic.php?date=20110516
18:09:13 <oren> hmm... i will look at a better method for matching brackets, and simply undefine behviour of erasing brackts
18:09:48 <oren> it was never defined in first place so ok
18:11:18 <oren> this is a C-style language where things are undefined to make implementers job easier
18:12:34 <oerjan> int-e: the last scene is the last time i remember seeing her
18:19:25 <oerjan> @tell int-e the last scene is the last time i remember seeing her
18:19:25 <lambdabot> Consider it noted.
18:20:04 <int-e> yeah
18:22:28 <int-e> oerjan: The next time Klaus turns up he's testing Gil with one of the slaver ferret things (after, apparently, Gil poisoned Dupree with a recipe by Tarvek), and seems to be in control. I'm really interested in an explanation for that.
18:26:50 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
18:30:25 -!- MDude has quit (Quit: later chat).
18:33:13 <oren> i am back. was roped into chopping and stacking yuletide logs
18:34:29 <oerjan> int-e: i've always been assuming he faked the ferret
18:35:28 <oerjan> it's more likely than gil being wasped, at least
18:35:56 <myname> i always thought C is a C-style language where things are undefined to make implementers job easier
18:36:11 <oerjan> what i am not sure about is whether the copy of klaus inside gil obeys lucrezia or not
18:37:16 -!- perrier has quit (Read error: Connection reset by peer).
18:37:28 -!- S1 has changed nick to |S}.
18:38:27 <oerjan> also, i'm expecting dupree's thus induced immunity to wasps to become an issue.
18:38:28 -!- perrier has joined.
18:38:47 <oerjan> or well hm
18:39:01 <oerjan> it does seem moot now that gil is kind of in charge
18:40:53 -!- perrier has quit (Remote host closed the connection).
18:42:08 -!- perrier_ has joined.
18:53:08 -!- |S} has quit (Quit: |S}).
18:55:09 <coppro> callforjudgement: ok, new idea
18:55:12 <coppro> present a 59-card deck
18:55:13 <coppro> call a judge
18:55:15 <coppro> get DQed for cheating
18:55:20 <coppro> your opponent can't stop that!
18:55:39 <callforjudgement> coppro: that only works once per tournament, at most
18:55:42 <oerjan> is this in the right channel
18:56:01 <callforjudgement> oerjan: it's pretty eso
18:56:07 <callforjudgement> but only arguably programming
18:56:15 <callforjudgement> I'd say it's more ontopic than usual
18:56:31 <oerjan> it sounded more related to recent agora discussions :P
18:56:42 <callforjudgement> agora is also more ontopic here than this channel normally is
18:56:51 <callforjudgement> but less ontopic than the actual topic
19:03:17 <oren> so the idea is to waste everyone's time at a round-robin?
19:16:55 <oerjan> <ais523> b_jonas: the rules are already something like 1000 pages long <-- so basically mornington crescent is "based on a true story"?
19:17:25 <callforjudgement> oerjan: to be fair, it's almost entirely consists of tables
19:18:55 <coppro> callforjudgement: Regarding silly fare rules, airline tickets are quite similar
19:19:22 <coppro> I have a friend who managed, after some finessing an online interface to get it to accept entry of the route, to successfully book a $300 ticket with like 10 connections
19:20:21 <coppro> since under the rules for the fare, the price is based only on the endpoints, and there was a list of airports that he was allowed to connect through, and while it made no sense for getting there quickly, you could legally connect through all of them
19:20:30 <coppro> which let him rack up an insane amount of frequent flyer miles
19:21:21 -!- CakeMeat has joined.
19:34:39 -!- Frooxius has quit (Quit: *bubbles away*).
19:36:33 -!- Frooxius has joined.
19:36:57 -!- mihow has quit (Quit: mihow).
19:47:29 -!- Sprocklem has joined.
19:47:57 -!- Sprocklem has changed nick to Guest12721.
19:53:16 -!- password2 has joined.
19:53:49 -!- password2 has quit (Max SendQ exceeded).
19:55:27 -!- password2 has joined.
19:56:38 <callforjudgement> coppro: how long did the flight take? or did he intentionally miss some of the endpoints?
19:57:08 <coppro> like two days I think
19:57:08 <callforjudgement> or are there people who book flights then don't take them, simply for the frequent flier miles?
19:57:18 <coppro> you need to actually take them for the miles
20:03:37 -!- Guest12721 has quit (Ping timeout: 264 seconds).
20:05:10 <elliott> they fixed that loophole I think
20:05:11 <elliott> I forget how
20:05:18 <elliott> I saw an article about it
20:06:24 <fizzie> callforjudgement: There was that one guy who booked a first-class flight that (a) was freely transferrable/cancellable and (b) included a before-flight meal at the airline's lounge, went and ate there, moved the flight to the next day, and repeated this for a few months or something.
20:06:53 <callforjudgement> fizzie: oh, beautiful
20:07:16 <fizzie> Of course this is again one of those "a man in China" news stories, so the verity might be questionable.
20:07:36 <fizzie> http://nypost.com/2014/01/29/man-uses-first-class-plane-ticket-to-eat-free-for-a-year/ and there's probably several other copies of it.
20:08:11 <fizzie> (At least it mentions the airline, but that's about it.)
20:11:50 -!- Patashu has joined.
20:27:07 <HackEgo> [wiki] [[User talk:SuperJedi224]] http://esolangs.org/w/index.php?diff=41325&oldid=41266 * SuperJedi224 * (+946)
20:28:05 -!- oerjan has quit (Quit: Nite).
20:29:56 -!- Patashu has quit (Ping timeout: 250 seconds).
20:32:39 -!- password2 has quit (Read error: Connection reset by peer).
20:34:46 -!- callforjudgement has quit (Ping timeout: 245 seconds).
20:36:07 -!- callforjudgement has joined.
20:39:55 <b_jonas> hehehe, that before flight meal thing is funny
20:41:12 -!- shikhout has joined.
20:42:30 -!- cluid has quit (Remote host closed the connection).
20:44:44 -!- shikhin has quit (Ping timeout: 264 seconds).
20:46:56 <HackEgo> [wiki] [[Tag]] http://esolangs.org/w/index.php?diff=41326&oldid=8814 * BCompton * (+25) Output only
20:49:17 -!- S1 has joined.
20:54:20 -!- G33kDude has joined.
20:54:49 <myname> there was a man who bought a first class card for trains for a year, eating and sleeping in there, traveling from town to town to beg for money for the next card
20:55:51 -!- G33kDude has quit (Read error: Connection reset by peer).
20:56:06 -!- G33kDude has joined.
20:56:14 -!- GeekDude has quit (Ping timeout: 244 seconds).
20:56:15 -!- S1 has changed nick to S0.
20:56:20 -!- G33kDude has changed nick to GeekDude.
20:57:22 -!- GeekDude has quit (Read error: Connection reset by peer).
20:57:38 -!- GeekDude has joined.
20:57:53 -!- GeekDude has quit (Remote host closed the connection).
21:06:10 -!- shikhout has changed nick to shikhin.
21:20:28 -!- augur has joined.
21:20:44 -!- GeekDude has joined.
21:21:20 -!- S0 has changed nick to S1.
21:21:41 -!- augur has quit (Read error: Connection reset by peer).
21:21:45 -!- augur has joined.
21:22:57 -!- Bicyclidine has joined.
21:24:46 -!- CakeMeat has quit (Quit: Connection closed for inactivity).
21:40:30 -!- mihow has joined.
22:00:31 -!- dts|pokeball has quit (Ping timeout: 258 seconds).
22:04:10 -!- callforjudgement has quit (Read error: Connection reset by peer).
22:04:26 -!- callforjudgement has joined.
22:04:28 -!- AnotherTest has joined.
22:07:40 -!- scarf has joined.
22:08:11 -!- Bicyclidine has quit (Ping timeout: 258 seconds).
22:11:57 -!- callforjudgement has quit (Ping timeout: 255 seconds).
22:14:42 -!- Bicyclidine has joined.
22:17:36 -!- GeekDude has changed nick to GeekAfk.
22:28:28 <shachaf> Taneb, int-e: I don't know much about this deck, it was just vaguely similar to Sgeo's description and I heard of it once.
22:30:38 -!- GeekAfk has changed nick to GeekNomz.
22:31:28 -!- scarf has changed nick to ais523.
22:39:55 -!- GeekNomz has changed nick to GeekDude.
22:43:45 <elliott> 14:53:20 <fizzie> Oh, dailywtf, you never cease finding new lows to sink to.
22:43:45 <elliott> 14:53:22 <fizzie> "buf[strlen(buf)] = '\0'; -- But even on null terminated strings, this code is dangerous. Since arrays in C, like any sane language, are zero indexed, this code may attempt to access memory beyond the end of the array, overwriting whatever’s there with a null terminator."
22:43:50 <elliott> 14:53:30 <fizzie> That's just nonsense, and the code is perfectly safe (if completely useless) if there is a string in buf.
22:43:53 <elliott> TRWTF, etc.
22:44:16 <elliott> I suspect the "anonymisation" they do to TDWTF submissions often completely loses the nuance because the people running it are .NET guys or whatever.
22:44:43 <Bicyclidine> Transwritten Reformedly Winnelstrae Trist Film
22:45:06 <Bicyclidine> Topsman Dinghee Woodmanship Tensibility Florimanist
22:45:19 <ais523> elliott: sometimes the submitter posts the original WTF in the comments, and it's much better than the posted one
22:45:44 -!- AnotherTest has quit (Remote host closed the connection).
22:51:18 <elliott> Bicyclidine: I'm not sure all of those are words
22:52:08 <myname> well, isn't strlen(buf) > size of the buffer if there is no null?
22:52:19 <b_jonas> myname: no
22:52:25 <Bicyclidine> elliott: you're not a word
22:52:33 <myname> b_jonas: how so?
22:52:43 <elliott> if there's no nul, it's not a C string
22:52:50 <Bicyclidine> i'll transwrite your ass, you tensible fucker
22:52:53 <elliott> "But even on null terminated strings," is where the nonsense begins
22:53:04 <myname> i thought strlen is basically while(*str++!=0) len++;
22:53:15 <elliott> NULL terminated strings, where you terminate strings with the actual bitpattern of null pointers, downcasted to a char
22:53:26 <elliott> myname: strlen("abc\0") == 3
22:53:31 <elliott> "abc\0"[3] == '\0'
22:53:32 <myname> yeah
22:53:49 <elliott> you need strlen(s) + 1 chars to store a nul-terminated string
22:53:54 <myname> but if you have buf of len 3 you might screw you
22:54:00 <elliott> you don't have a buf of len 3
22:54:05 <elliott> because then it's not nul-terminated
22:54:12 <elliott> and calling strlen on it is UB
22:54:17 <myname> that line is a nop on null terminated strings
22:54:21 <elliott> yes
22:54:25 <elliott> 22:43:01 <elliott> 14:53:22 <fizzie> "buf[strlen(buf)] = '\0'; -- But even on null terminated strings, this code is dangerous. Since arrays in C, like any sane language, are zero indexed, this code may attempt to access memory beyond the end of the array, overwriting whatever’s there with a null terminator."
22:54:31 <elliott> the nonsense is the part that's actually written there.
22:54:42 <myname> okay
22:54:45 <myname> yeah
22:55:31 <elliott> if you call strlen on a non-nul terminated string, you're doomed even if you don't then use that result as an index
22:56:15 <myname> i wonder what will happen if you try to read from after the end of your memory
22:56:30 <myname> like, the physicsl memory
22:56:41 <Bicyclidine> a memory access violation?
22:56:44 -!- `^_^v has quit (Ping timeout: 264 seconds).
22:57:05 <elliott> well, virtual memory gets in the way of that
22:57:08 <elliott> in user mode
22:57:11 <Bicyclidine> or just accessing some other thing because ok you beat me.
22:57:43 <elliott> s/in user mode//, I guess.
22:58:16 <myname> for science?
22:58:37 <elliott> if you have an architecture without virtual memory then I would guess that either it wraps, or it's a fault.
23:08:14 -!- Bicyclid1ne has joined.
23:08:58 -!- Bicyclidine has quit (Ping timeout: 250 seconds).
23:32:35 <FreeFull> elliott: It's clearly wrong for nul-terminated strings too, though
23:32:50 <elliott> depends what you mean by wrong
23:32:52 <elliott> it's defensive programming!!
23:33:38 <FreeFull> elliott: Making sure that \0 really is a \0?
23:33:57 <elliott> what if buf is volatile
23:34:03 <FreeFull> true
23:34:18 <elliott> (then it's probably UB because you can't guarantee enough sync between the strlen and the write, or something)
23:34:49 <Bicyclid1ne> what if buf is actually a #define for an array access of an inline function call!!
23:34:52 <FreeFull> Anyway, for the string "a", strlen will give 1, which is the index of the \0
23:35:53 <FreeFull> I can see how fizzie made his error though
23:36:47 <FreeFull> ( you can tell I didn't read up first )
23:36:48 <idris-bot> (input):1:37: error: expected: "!!",
23:36:48 <idris-bot> "$", "$>", "&&", "&&&", "*",
23:36:48 <idris-bot> "***", "+", "++", "-", "->",
23:36:48 <idris-bot> ".", "/", "/=", ":+", ":-",
23:36:48 <idris-bot> "::", ":::", ":=", "<", "<#>",↵…
23:37:00 <FreeFull> Woops
23:37:04 <elliott> fizzie didn't make an error, he was quoting the daily wtf
23:37:10 <elliott> fizzie is an infallible language lawyer :p
23:37:19 <FreeFull> Ah, that's ok then
23:37:46 <Bicyclid1ne> you are under arrest for abrogation of language law
23:42:25 -!- AndoDaan has joined.
23:42:34 -!- dts|pokeball has joined.
23:46:25 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)).
23:51:28 -!- callforjudgement has joined.
23:54:29 -!- ais523 has quit (Ping timeout: 244 seconds).
←2014-12-02 2014-12-03 2014-12-04→ ↑2014 ↑all