←2013-11-05 2013-11-06 2013-11-07→ ↑2013 ↑all
00:08:02 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.90.1 [Firefox 25.0/20131025151332]).
00:10:32 -!- nooodl has quit (Quit: Ik ga weg).
00:10:55 -!- Sprocklem has joined.
00:13:05 -!- Bike has quit (Ping timeout: 246 seconds).
00:20:08 -!- Bike has joined.
01:00:29 <kmc> shachaf: when you write match x { Foo => 1 }, that can either bind a variable named Foo, or match an enum constructor named Foo if there's one in scope
01:00:40 <kmc> because there's no lexical distinction between constructors and variables :/
01:01:23 <kmc> fortunately unreachable patterns are an error, so match x { Foo => 1, _ => 2 } won't be accepted if you didn't import Foo, but the error message is not very helpful
01:17:32 -!- avid has joined.
01:19:08 -!- Lymia has joined.
01:19:16 -!- Lymia has quit (Changing host).
01:19:16 -!- Lymia has joined.
01:22:10 <zzo38> O, I realized yesterday I also had a dream where I can fly (for the same reason as before, I think). I don't remember anything else except that a computer functioned in an unexpected way (something that happens a lot in my dreams).
01:23:05 <Bike> that happens to me a lot in real life too.
01:23:27 <zzo38> Computers functioning in the unexpected way?
01:23:59 <ion> I had a dream where i extracted the key data from the chip in my driver’s license (there’s no such thing actually) and imported it to gnupg.
01:24:56 <Bike> yes. it happens to me a lot.
01:26:42 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:27:25 -!- Sgeo has joined.
01:29:44 <Sgeo> I think I'm done using Fiddler.
01:29:46 <Sgeo> Charles is the one for me.
01:30:02 <zzo38> Fiddler? Charles? What is that?
01:31:54 <Sgeo> HTTP proxy/debugger things
01:32:04 <Sgeo> Let you view and manipulate HTTP traffic on your computer
01:34:17 <shachaf> kmc: You could also avoid that by requiring people to write Foo().
01:34:33 <shachaf> But that's probably worse than the capitalization thing.
01:34:55 * shachaf isn't sure whether Haskell made the right choice there, but the syntatic distinction is nice.
01:52:33 <elliott> ais523: CAPTCHAs and abusefilter settings changed
01:53:14 <ais523> elliott: thanks
01:53:19 <ais523> let's see how long this keeps the spambots down for
01:53:45 <elliott> ais523: btw, if you want them changed faster in the future then you can use a format like
01:53:48 <elliott> $wgCaptchaQuestions[] = array( 'question' => 'In which year was <a href="/wiki/LOLCODE">LOLCODE</a> created?', 'answer' => '2007',
01:53:51 <elliott> );
01:53:53 <elliott> uh, there were more newlines there originally
01:53:55 <elliott> :p
01:54:04 <Fiora> that sounds pretty easy to bruteforce xD
01:54:34 <elliott> Fiora: well, the spambots aren't actually being hardcoded for the wiki
01:54:39 <elliott> they're just getting people to fill out the CAPTCHAs
01:56:17 <Bike> looking forward to anti-esolang AIs
01:57:03 <Fiora> "write a BF program to print hello world"
01:57:36 <Bike> eventually the wiki becomes run by only the strongest - only those who can defeat the hill in bfjoust. it's like mad max
01:58:03 <Fiora> "write a bfjoust program better than one of the top 50 to make an edit"
01:58:18 <Fiora> wiki-powered human algorithms or something xD
02:03:36 <ais523> elliott: right, I didn't know what it looked like internally
02:04:03 <ais523> also wouldn't the spambots just submit a slightly tweaked copy of omnipotence or whatever?
02:06:07 <ais523> incidentally, so far my spam filters have blocked 3,440 attempted edits by spambots
02:06:19 <ais523> and that's just the ones that got past the CAPTCHA
02:06:52 <ais523> the actual editing doesn't seem to have human intervention
02:07:03 <ais523> because it'd be trivial to change the content of the edit to avoid the filter
02:07:05 -!- copumpkin has joined.
02:08:13 <ais523> or in the case of the latest batch of spambots, use the "edit this page" link rather than the "new section" link
02:08:32 <ais523> (which interestingly, doesn't even exist on user pages by default, the spambots are getting there via URL editing)
02:10:01 <ais523> oh wow, I opened Chromium halfway through a distro update
02:10:06 <ais523> and it's missing its graphics for drawing tabs
02:10:07 <ais523> so they're red
02:18:53 <ais523> bleh, the distro upgrade tool thing that shows distro upgrade progress has frozen
02:19:00 <ais523> I think the upgrade is still happening, though
02:19:03 <ais523> and those things can't be interrupted
02:19:46 * ais523 reads dpkg.log instead
02:23:26 -!- tswett has joined.
02:24:00 <tswett> So, you know self-solving multi-king chess puzzles.
02:24:23 <zzo38> I haven't seen any, but now I understand once you explained it.
02:24:27 <Bike> really, aren't we all self-solving multi-king chess puzzle, on some level
02:24:28 <tswett> I still can't think how you'd make a computer out of one if you were allowed to put walls in.
02:24:52 <tswett> Bike: whoa. I think you're right.
02:25:00 <zzo38> Bike: What? ???
02:25:15 <Bike> When
02:25:20 <tswett> Like, evolution. It's a multi-king chess puzzle because there are lots of different things that could kill you, and it's self-solving because we evolve defenses to deal with it without any particular effort on our parts.
02:26:23 <Bike> makes you think.
02:26:24 <zzo38> I still don't think that is a proper analogy.
02:26:39 <tswett> Tal vez no.
02:27:54 <oerjan> the world is a self-solving multi-king chess puzzle. note how the number of kings has been going down.
02:28:29 <oerjan> when there's only one king left, he wins.
02:28:48 <tswett> Dang.
02:28:57 <zzo38> In tsumeshogi there is only king on one side though.
02:29:11 <tswett> So *that's* why Britain's had a queen for so long.
02:29:15 <tswett> A great conspiracy to keep her alive.
02:29:37 <tswett> And why there's a new convention saying that the line to the throne will no longer depend on people's sexes.
02:30:10 <oerjan> yep, norway made that change too. sadly we still have a crown prince, but his oldest child is a daughter.
02:30:49 <Sgeo> I have learned more about X-UA-Compatible than I ever wanted to know.
02:30:52 <oerjan> and sweden has victoria.
02:31:02 <ais523> OK, I just killed saucy(8), let's continue this distro update by hand
02:31:15 <Sgeo> I am now an empty shell of a web developer.
02:31:28 <zzo38> I think I may have figured out how to use category theory in Icosahedral RPG to make a category of spells. Each spell is a morphism, and the objects have to be correct in order to cast a spell. I haven't completely figured it out but I have figured out more ideas than just this too.
02:31:57 <Sgeo> http://ie.microsoft.com/testdrive/ieblog/2010/Jun/16_IEsCompatibilityFeaturesforSiteDevelopers_1.svg
02:31:58 <ais523> zzo38: do you have some sort of cartesian or closed monoidal structure on the category?
02:32:03 <ais523> if not, each spell could only take one object
02:32:19 <zzo38> ais523: Well, I did think to make it a tensor category.
02:33:32 <Sgeo> That chart is for IE9 specifically
02:35:30 <zzo38> I have figured out composing spells though; you add together their mana costs and casting times, causing to do both spells together simultaneously once the casting time is finished, if they are both castable spells normally. Otherwise, the objects might specify that the spells have to be connected together in a certain way so that their effects depend on each other.
02:35:33 <quintopia> ais523: did you see i was able to split the wiggle clear algorithm into two pairs of contiguous cells rather than four contiguous cells.
02:35:52 <ais523> quintopia: no, although that makes sense given how it works
02:36:10 <ais523> actually it just needs cells A B C D where the distance between A and B equals the distance between C and D, right?
02:36:15 <oerjan> finally bfjoust is giving features back to bf
02:36:17 <zzo38> ais523: I am not sure how it owuld be cartesian closed though
02:36:32 <ais523> oh, it wouldn't be closed
02:36:34 <quintopia> ais523: yeah pretty much. it's on the algorithms page now.
02:36:35 <ais523> it would be cartesian, though
02:36:38 <zzo38> But, does this way I described seems to work OK?
02:36:40 <ais523> unless you could send the results of spells back in time
02:38:12 <ais523> a category being "closed" basically means that the left and right of morphisms are mostly arbitrary, you can curve them around to move something from one side to the other
02:38:28 <zzo38> If there is a result to send back in time, there would need some other spells to make it do that, I think
02:39:05 <ais523> e.g. Set is closed because a function from A to B is isomorphic to a function from (Unit) to (functions from A to B)
02:39:21 <zzo38> OK
02:39:27 <quintopia> all spells should be metaspells which affect spells as well as objects
02:39:30 <ais523> that probably doesn't work for spells, though
02:39:35 <ais523> quintopia: category theory doesn't work like that
02:39:49 <quintopia> ais523: magic does!
02:40:12 <ais523> btw, for anyone here who doesn't understand category theory and wants to
02:40:14 <oerjan> hm if someone triggers the abuse filter, wouldn't the logical thing be to make them redo the captcha.
02:40:18 <ais523> I'm planning to write a short tutorial in my PhD thesis
02:40:30 <oerjan> (does it?)
02:40:31 <ais523> oerjan: no because we think the spambots have a database of CAPTCHA solutions
02:40:41 <oerjan> oh well.
02:40:53 <ais523> I have an alternative CAPTCHA, "make an edit to some other page that gets past the spam filter"
02:41:21 <elliott> they don't have such a database any more
02:41:23 <ais523> and suggest using the sandbox
02:41:27 <ais523> elliott: indeed
02:41:32 <ais523> they may recreate it at some point though
02:42:32 <zzo38> Category theory isn't the only kind of mathematics involved in this game. I think multimanas form a free semiring over a set of five elements.
02:42:50 <Bike> so can i use these spells to light plants on fire
02:43:20 <zzo38> Bike: Maybe some of them might be able to create fire, and those ones can be used for such purpose, if you target the plants with the fire.
02:43:32 <zzo38> I don't know if the partial ordering I have defined on the multimanas has another name already in mathematics.
02:43:45 <Bike> the partial ordering of burning stuff
02:44:03 <ais523> zzo38: what's your addition, and what's your multiplication?
02:45:25 <zzo38> ais523: It is a free semiring... I hope I have the correct terminology. (Over the elements named w, u, b, r, g, then you will have (w^2+3)(wb)=w^3b+3wb, I hope?)
02:45:35 <zzo38> Well, actually, a free commutative semiring, I mean.
02:46:04 <ais523> zzo38: yes, that's how free semirings work
02:46:10 <zzo38> ais523: Now that I said it is actually a free commutative semiring, do you understand how I mean?
02:46:14 <ais523> yes
02:48:35 <zzo38> The partial ordering I have defined is that X is less than or equal to Y if X is a sum of terms, and if you add zero or more additional terms and/or multiply any of the terms in X by anything (not necessarily the same thing every time), then you get Y.
02:49:28 <zzo38> (Hopefully I haven't made some mistake in writing this.)
02:49:39 <zzo38> Is this correct, and if so, does it have a name?
02:52:35 <ais523> bleh, something's wrong with the filter
02:52:42 <ais523> it's matching, but letting the edits through anyway
02:52:52 <ais523> I would clean up this spam but my trackpad's stopped working properly
02:53:43 <zzo38> A mana is basically a multiset of {w,u,b,r,g}; you can only multiply. With a multimana you can add and multiply. The five manas (w), (u), (b), (r), and (g) are called "prime"; (1) is called "colorless"; all other manas are called "composite".
02:55:41 <ais523> zzo38: and r^2 is different from r?
02:55:44 <ais523> ah right, multiset
02:56:49 <zzo38> ais523: Yes, it is different.
02:57:44 -!- Oj742 has joined.
02:58:07 <quintopia> which esolang was it that has stacks on stacks on stacks?
02:58:39 <ais523> Funge-98 has a stack stack, but that only goes two levels of nested stacks deep
03:02:09 <ais523> you know what Ubuntu needs? fully transactional distribution upgrades
03:02:16 <ais523> so that you can interrupt them at any point and the system still works
03:02:53 <oerjan> ais523: cleaned up
03:03:06 <ais523> thanks
03:03:51 -!- Sprocklem has quit (Ping timeout: 260 seconds).
03:04:21 <ais523> oh huh, I think the spambots still haven't figured out newlines
03:04:30 <ais523> I just noticed the <br><br> in the summaries of the page content
03:04:50 <ais523> but the previous filter was getting stuck because there were newlines added by the new section link
03:05:30 <oerjan> sadly, some real editors keep using the dang <br>s
03:05:40 <ais523> oerjan: the test's against <br> but no \n
03:05:46 <ais523> which is pretty unique to the spambots
03:05:59 <ais523> if linebreaks are useful, paragraphing's going to be useful too
03:06:29 <ais523> also pages should be categorised, and thus have a \n before the categories
03:17:32 <zzo38> There are some things Pin Eight has done to avoid spam; this is effective (not 100%, but reasonably effective) for them at least.
03:24:19 <zzo38> Another rule I was thinking of for Icosahedral RPG is the "MBL%" rule (it stands for "magical bad luck"). Every time you cast a spell there is a (spell level + 1)% chance to increment your MBL%, and then your MBL% chance to lose 1 XP. Every day your MBL% is cut in half, and there is the MBL% chance that you will not naturally heal that time.
03:24:45 <Bike> sounds complicated. what's the plot purpose
03:24:47 <zzo38> In addition, when you succeed at a saving throw there is a MBL% chance that you have to try again (only once, though; it doesn't repeat)
03:25:23 <ais523> how much is 1XP? I guess it's a lot more than in Dungeons & Dragons?
03:25:34 <zzo38> ais523: Ten times as much.
03:26:57 <zzo38> But all XP gained for playing the game is ad hoc (unlike D&D), and some spells may be able to heal MBL%, and possibly recover the XP loss in a few cases (not all)
03:28:07 <zzo38> (Actually when I play D&D all the XP gain is ad hoc too; the standard tables are not used at all. Icosahedral RPG simply doesn't even have such tables.)
03:29:40 <zzo38> Actually, in this game I say ten times as much, but that is considering the level advancement. Standard level advancements max at level 100 though rather than level 20 (and non-standard maxes as level 125), so it isn't exactly the same.
03:29:56 <Bike> what is the backstory
03:30:30 <zzo38> The backstory is made up by the players and referee during the game.
03:32:12 <zzo38> There are a whole lot of other differences too, such as how alignments work, pseudolevels, and segments as a unit of time, and more
03:32:50 <zzo38> I have described some of these already in the past.
03:33:22 <zzo38> (Pseudolevels are similar to the D&D concept of level adjustment.)
03:36:19 <zzo38> (Challenge rating is gone too.)
03:39:00 <zzo38> Hopefully this is suffuciently understandable so far?
03:40:51 <zzo38> (I will recommend that you do not mark off the XP lost due to MBL% right away, but rather tally them and at the end of the session, subtract it from the session XP gained.)
03:50:25 <zzo38> Another feature of this game is that all of the ability scores are useful to all characters, although all for different purposes; for example, a high-level wizard may need a lot of strength to carry books if he wants to have a large selection of spells available to him at the time.
03:52:13 -!- ais523 has quit.
03:58:03 -!- ais523 has joined.
03:59:51 <tswett> Or if he wants to move heavy furniture around.
04:00:13 <zzo38> Yes, anyone would need strength to move heavy furniture, though.
04:01:28 <tswett> True.
04:10:03 <Bike> i've always wanted a game where i have to take a few minutes to solve the knapsack problem in order to load up my spells
04:11:56 <zzo38> Bike: Ah. I like the idea but this game isn't quite like that; it could be done by making some spells take up multiple slots, though, or by the category theory way above where you need to compose two spells in order that they would work together to make the effect you want.
04:12:12 <Bike> jesus
04:13:56 -!- tswett has left.
04:15:51 <zzo38> Bike: Do you know of any such game like you described?
04:16:02 <Bike> god i hope not
04:16:03 <zzo38> You can try to make up such things, whether card games or computer games or otherwise
04:19:33 -!- lifthras1ir has joined.
04:21:29 <Sgeo> !ping
04:21:54 <Bike> sprong
04:22:49 -!- SirCmpwn_ has joined.
04:23:28 -!- FreeFull has quit (*.net *.split).
04:23:28 -!- lifthrasiir has quit (*.net *.split).
04:23:29 -!- aloril_ has quit (*.net *.split).
04:23:29 -!- SirCmpwn has quit (*.net *.split).
04:24:31 -!- SirCmpwn_ has changed nick to SirCmpwn.
04:26:43 -!- FreeFull has joined.
04:31:39 -!- aloril_ has joined.
04:38:07 <oerjan> a game with tetris shaped spell slots
04:38:45 <kmc> a game where you solve captchas to cast spells
04:43:11 <oerjan> @tell elliott There is something unsatisfying when your deletions and blocks take up _more_ space in recent changes than the original spam did :(
04:43:12 <lambdabot> Consider it noted.
04:43:36 <Bike> well only nerds would read recent changes
04:43:46 * oerjan swats Bike -----###
04:43:53 <kmc> ♥ nerds
04:43:56 <kmc> as previously discussed?
04:44:00 <Bike> prove me wrong mother fucker
04:44:21 <oerjan> NERDS WANT TIDY WEB PAGES
04:45:45 <zzo38> Then just add an option in the recent changes menu that says "Hide deleted/blocked"
04:47:08 -!- prooftechnique has joined.
04:57:52 <elliott> oerjan: there are new CAPTCHAs and abusefilter settings now, so should end
05:01:15 <ais523> also several rangeblocks, which should slow the rate a bit
05:01:26 <ais523> sadly, there needs to be lots of spam to be able to aim a rangeblock correctly
05:01:57 <ais523> also, bleh, there's definitely something wrong with abusefilter
05:02:31 <ais523> it's set to disallow, but the filter seems to not be matching live
05:02:37 <ais523> even though it does in the retrospective test thing
05:07:34 <oerjan> elliott: well i blocked another one just before doing that @tell
05:08:14 <elliott> oerjan: right, the existing accounts will still edit for a while
05:08:29 <oerjan> yeah that one should have been trapped
05:09:05 <ais523> the point is that the abusefilter is matching the new edits
05:09:18 <ais523> and yet somehow, they're not being stopped
05:14:38 <zzo38> Are the abusefilters misconfigured?
05:14:56 <ais523> zzo38: I don't think so, although it's possible
05:17:16 -!- tertu has quit (Ping timeout: 264 seconds).
05:17:41 <oerjan> are there any other filters than /4 ?
05:17:52 <ais523> oerjan: there are /1, /2, and /3
05:17:57 <ais523> all of which seem to be working correctly
05:18:09 <oerjan> huh? i couldn't get them listed..
05:18:16 <prooftechnique> Anyone have a TeX file generated from the TeX source? cweave is choking on it for me and #latex is silent.
05:18:31 -!- Chat9490 has joined.
05:18:42 <zzo38> prooftechnique: Yes, I do have.
05:19:02 <prooftechnique> Cool beans. Any way you can share it?
05:19:12 <zzo38> Do you mean tex.web?
05:19:16 <prooftechnique> Yeah
05:19:36 <prooftechnique> I was trying to generate a TeX file from the one on CTAN, but cweave is giving me errors
05:19:46 <zzo38> Use weave, not cweave.
05:19:46 -!- Chat9490 has left.
05:19:57 <prooftechnique> Oh, maybe that's all I did wrong :D
05:20:08 <kmc> http://www.openwall.com/lists/oss-security/2013/07/26/5 "remote command injection vulnerability in xmonad-contrib"
05:20:12 <kmc> that's exciting (also old news I guess)
05:20:15 -!- Oj742 has quit (Quit: irc2go).
05:20:21 <prooftechnique> Thanks, zzo38!
05:20:26 <prooftechnique> That totally worked
05:21:23 <oerjan> ais523: i can only get to the page for /4, although the rest are listed in Special:AbuseFilter
05:21:52 <ais523> oerjan: hmm, those pages had been crashing before
05:22:05 <ais523> but when I created /4, I assumed it was fixed
05:22:22 * Sgeo vaguely wonders how or works in Icon
05:22:32 <Sgeo> Can't work like < etc. do, right?
05:24:34 -!- conehead has quit (Quit: Computer has gone to sleep.).
05:24:54 <kmc> how does < work and why not
05:25:28 <Sgeo> a < b fails if a isn't less than b, and if a is less than b returns b
05:25:44 <Sgeo> So you can do a < b < c and things like that comfortably
05:26:30 <Sgeo> But with ||, then you still need to do the right-hand expression if the first fails.. hmm, just requires the operator to be able to succeed despite a failure
05:26:47 <Bike> zen
05:30:04 <kmc> dazed and confused but trying to continue
05:47:31 -!- nisstyre has quit (Quit: Leaving).
05:48:10 -!- nisstyre has joined.
05:50:14 <Sgeo> The most recent spam is using wiki syntax
05:52:52 -!- glogbackup has quit (Remote host closed the connection).
05:55:36 <prooftechnique> THEY'RE LEARNING
05:58:56 <zzo38> How often are you flying in a dream, and if so is it ever because you have wings?
06:00:50 -!- Lymia has quit (Ping timeout: 245 seconds).
06:00:54 <zzo38> Some people say they fly without wings. Someone else has said to me that in their dream they use a boat, once they learned that the boat was built in a way that wouldn't work, it sink immediately.
06:01:20 <kmc> i rarely remember flying dreams and I don't think I ever had wings but it could be
06:01:36 <zzo38> Were you still you, though?
06:01:43 <kmc> usually
06:01:45 -!- Lymia has joined.
06:01:54 <zzo38> In which cases are you not you?
06:01:55 <kmc> i don't have a specific memory of being someone else in a dream ever
06:02:06 <Bike> in my dreams i'm only a blank puppet of the gods, acting out their fantasies for their amusement
06:02:29 <oerjan> i sometimes fly in my dreams, strangely enough by grabbing my legs.
06:03:25 <ais523> oerjan: I used to be able to fly in dreams via repeatedly jumping
06:03:25 <oerjan> i can never fly very high though, because there's always bloody power lines in the way.
06:03:36 <ais523> nowadays I tend not to have a physical form at all though
06:03:50 <zzo38> Interesting.............???
06:04:10 <Bike> is it interesting, zzo
06:04:21 <kmc> i often attempt autofellatio in dreams and it usually works
06:04:30 <kmc> which is odd because I rarely attempt it while awake and it never works
06:04:35 <kmc> and yet this doesn't trigger lucid dreaming
06:04:48 <kmc> `addquote <ais523> nowadays I tend not to have a physical form at all though <zzo38> Interesting.............???
06:04:53 <HackEgo> 1128) <ais523> nowadays I tend not to have a physical form at all though <zzo38> Interesting.............???
06:05:13 <zzo38> I was someone else I think three times, in all cases being a different species rather than human. Those are only reason I can fly is if I am of some species that has the ability to fly. In a few cases, I am nobody at all, just an observer, having no form or anything.
06:05:18 <ais523> OK, those lines are only funny out of context
06:05:24 <ais523> but they are pretty funny out of context
06:05:24 <kmc> which species zzo38?
06:05:31 <Bike> what's the mean and standard deviation of the number of cocks you have in dreams
06:05:33 <kmc> ais523: I think zzo38's reaction is funny regardless
06:05:51 <zzo38> However I find that sometimes even when I am myself, I can levitate half an inch above the ground for some reason, without doing anything unusual.
06:06:15 <kmc> Bike: I think it's always one so maybe the sd is undefined
06:06:25 <Bike> wouldn't that make it zero?
06:06:35 <kmc> would it?
06:06:48 <kmc> i guess so
06:06:57 <Bike> since you're not deviating from the norm
06:07:02 <Bike> how limited of you
06:07:10 <kmc> variance is expected square of deviation, yeah
06:07:12 <Bike> conformist.
06:07:19 <kmc> :<
06:07:25 <zzo38> kmc: Well, once I was illithid like my Dungeons&Dragons character. In the two cases I could fly it is because I was mi-go (I played in a computer game once). In both cases, I had additional memories as myself, which happened to be false memories, and uncombinable with the memories of the form I had in the dream.
06:07:38 <Bike> what the heck, you're playing as an illithid?
06:07:45 <zzo38> kmc: Ah. So that is how standard deviation works?
06:07:48 <Bike> http://en.wikipedia.org/wiki/Unbiased_estimation_of_standard_deviation is kind of neat
06:08:02 <kmc> oh yeah
06:08:11 <zzo38> (I don't actually know a lot about it, but I have found the formula once and put it into the computer)
06:08:15 <kmc> the sample s.d. is a biased estimator
06:08:17 <kmc> wake up sheeple
06:08:41 <kmc> \rainbow{KURTOSIS}
06:08:43 <Bike> standard deviation is basically the sqrt of the variance, yeah
06:08:53 <kmc> isn't it exactly that?
06:08:53 <Bike> kurtosis is such an awesome word, i ahve no idea what the fuck it means too
06:09:03 <zzo38> Bike: Yes, I know that is what standard deviation is.
06:09:08 <kmc> "Distributions with negative or positive excess kurtosis are called platykurtic distributions or leptokurtic distributions respectively."
06:09:12 <kmc> now those are some awesome words
06:09:13 <zzo38> (For your other question: See my D&D recording)
06:09:50 <zzo38> I always try to record my and other people dream sequence things, so I will do that too now.
06:09:51 <Bike> kmc: well there's the n-1 correction and other shit i don't remember so i dun wanna commit
06:09:54 -!- nisstyre has quit (Quit: Leaving).
06:10:03 <Bike> also wow the unbiased sd estimator for the normal distribution is awesomely complicated.
06:10:15 <Bike> http://upload.wikimedia.org/math/b/3/a/b3a3e6627a48873e4a582fc64a249cd2.png get it on
06:10:43 <kmc> haha
06:10:52 <kmc> now i wanna know what the n^-4 term is!!
06:11:14 <zzo38> That is a sd estimator? What is the Gamma and O doing?
06:11:27 <Bike> "c4(n) is the scale mean of the chi distribution with n − 1 degrees of freedom"
06:11:48 <kmc> i should learn more terrifying statistics facts
06:11:51 <Bike> zzo38: http://en.wikipedia.org/wiki/Unbiased_estimation_of_standard_deviation#Results_for_the_normal_distribution i guess it's part of the mean of a chi distribution
06:11:56 <kmc> use them to scare small children in my neighborhood
06:12:13 <kmc> mmm chai distribution
06:12:23 <Bike> http://upload.wikimedia.org/math/1/7/f/17f3c3655c300615607d0712fd73c09b.png oh, yes. (this is the mean of a chi with k dof)
06:12:40 <Bike> i feel kind of bad since i have a favorite distribution.
06:12:59 <zzo38> When I open F:\HTML\backup in Windows Explorer, it crashes, for some reason. (Opening it in the command prompt, or in any other program, works fine though; subdirectories also work fine.)
06:14:42 <Bike> well, actually, i guess it's a tie, between cauchy (because practically all the moments are undefined) and solomonoff's (because it's uncomputable)
06:14:56 <zzo38> O, the Gamma is factorial of (n-1). I still don't know what the "O" does?
06:15:44 <Bike> It's saying that the series continues in terms of n^-4, n^-5, etc., and these all keep decreasing and don't affect the result much.
06:15:53 <kmc> wtf is Solomonoff's distribution, is that the universal prior?
06:16:02 <Bike> am i missing something because i'm pretty sure zzo knows what big o means
06:16:03 <Bike> kmc: yeah
06:16:10 <Bike> "The only assumption that the theory makes is that the environment follows some unknown but computable probability distribution. It is a mathematical formalization of Occam's razor." how can you not love this
06:16:16 <Bike> it only makes that one tiny assumption
06:16:20 <kmc> http://www.scholarpedia.org/article/File:RaySolomonoff2001.jpg
06:16:23 <zzo38> Bike: I don't know what the big O means in this context though.
06:16:36 <zzo38> (I do know what it means in general)
06:16:43 <Bike> zzo38: it means the same as usual. the value is less than a cconstant times n^-4
06:17:04 <Bike> have you never seen it used like this before? it comes up all the time...
06:17:17 <kmc> Bike: maybe if you don't love uncomputable things? but imo that's like not loving kittens or sunshine
06:17:34 <Bike> damn straight
06:17:54 <Bike> hardcore bayesians are so awesomely out of it i love them. it's just the facts
06:18:34 <kmc> hardcore bayesians in $YOUR_CITY want to update your prior TONIGHT
06:19:23 <Bike> distribute their prior uniformly over your body
06:21:09 <kmc> =D
06:22:42 <kmc> shachaf: I think the lexical distinction at the value level would be good for Rust. people already mostly follow the style
06:24:28 <kmc> you might want to make an exception for constants (static FOO: int = 3)
06:25:54 <kmc> actually we already have -W non-camel-case-types which warns about variants too
06:27:20 <kmc> rust has nice control over warnings; there are attributes for lexically scoped allow / warn / error plus another that's "error and forbid overrides of that within this scope"
06:27:49 <zzo38> I had one dream where the first computer game ever invented was an implementation of a card game called "One Draw", played on hardcopy terminals.
06:28:52 <kmc> shachaf: I think Haskell's lexical distinction wouldn't fly for types; stuff like int is lowercase while structs are mostly camelcase, also using uppercase for tyvars is firmly established
06:30:48 <zzo38> I tend to use capitalized names for structs in C, but lowercase for other types such as "byte" and "boolean". In BASIC, I usually give a structure name capitalized and then if a single variable uses it, it has the same name (including capitalization) (I do this often in BASIC in order to serialize data structures more easily)
06:32:01 -!- doesthiswork has joined.
06:32:31 <doesthiswork> I have found my new bible.
06:32:49 <zzo38> doesthiswork: Which one is that?
06:32:55 <Bike> The Guru Granth Sahib?
06:33:24 <doesthiswork> out of the crisis by Edwards Deming
06:33:47 -!- nisstyre has joined.
06:34:21 <doesthiswork> I can finally get rid of my copy of a new kind of science because Deming is a more exciting guru
06:34:33 <Bike> you hurt me.
06:34:38 <zzo38> In another dream, I lived in an apartment; this apartment building was really strange, including elevators in strange places. In addition, the furniture store was also a video game arcade (without any separations between them); some of the games involved escalators to go around the building (both of them).
06:35:08 <prooftechnique> What's a strange place for an elevator?
06:35:08 <Bike> "The Deming System of Profound Knowledge" god
06:35:10 <Bike> fuc
06:35:19 <Bike> fuck this earth
06:35:43 <zzo38> prooftechnique: At this time, I do not know. (Either I forgot or there was no data.)
06:36:32 <prooftechnique> Bike: The sequel is "The Deming Pyramid: Enlighten Your Friends for Fun and Profit"
06:36:43 <Bike> shut up\
06:37:37 <doesthiswork> I haven't gotten to the profound knowledge yet
06:38:31 <doesthiswork> I'm enjoying reading about how corporate slogans are stupid
06:39:34 <doesthiswork> and performance reviews are stupid
06:42:26 <prooftechnique> Work is also stupid and people with jobs are no better than sheep, MOM
06:42:55 <doesthiswork> bike: what's wrong?
06:43:34 <zzo38> "Why are you driving the subway train the wrong way?" ... "I am a druid and I am driving this way because I like to." ... What???
06:44:33 <doesthiswork> prooftechnique: Isn't there some philosophy about the nobility of labor and all that?
06:44:56 <prooftechnique> Of course, but philosophy is also stupid
06:46:37 <zzo38> Someone told me they had a dream that ended in credits.
06:47:08 <doesthiswork> who was listed?
06:47:16 <zzo38> I don't know; they didn't say.
06:53:53 <zzo38> Philosophy is not necessarily so stupid to me.
06:54:10 -!- copumpkin has quit (Ping timeout: 245 seconds).
06:54:11 <zzo38> And work isn't stupid either.
06:58:24 <zzo38> I once had a dream that changed every time I blink.
06:59:04 <kmc> zzo38: have you ever taken psychedelic drugs
06:59:47 <zzo38> kmc: No, I don't think so.
07:00:27 <kmc> Okay
07:00:29 <kmc> would you like to
07:00:38 <zzo38> No, I don't think so that either.
07:11:45 <oerjan> > (0$0`seq`)
07:11:46 <lambdabot> The operator `GHC.Prim.seq' [infixr 0] of a section
07:11:46 <lambdabot> must have lower pr...
07:13:12 <zzo38> I once had a dream where I was trying to throw away a key, but the people outside kept catching it.
07:14:22 * kmc . o ( `addquote <kmc> zzo38: have you ever taken psychedelic drugs <zzo38> I once had a dream where I was trying to throw away a key, but the people outside kept catching it. )
07:14:27 <zzo38> kmc: Someone made up a computer game called "Tetanus on Drugs", so you can play Tetris and you do not need any psychedelic drugs!
07:14:55 <zzo38> kmc: It is a miss of a lot of things; add [...] in the middle perhaps
07:16:03 <kmc> yeah i'm not going to add it really
07:16:13 -!- Slereahphone has joined.
07:16:23 <zzo38> Yes I don't expect you to.
07:16:42 <kmc> hooray for realistic expectations
07:16:44 <zzo38> I just mean that even if things like that are added for whatever reason it should add [...] on it
07:16:48 <kmc> i agree
07:20:23 <^v> i dissagree
07:21:39 <Sgeo> Why is everything identity?
07:22:06 <Sgeo> From a certain convention's point of view, Prolog's =/2 could be called identity
07:22:14 <prooftechnique> The answer is id
07:22:27 <Sgeo> In Kernel, (unwrap id) == quote, I think
07:22:27 <zzo38> I don't know what Prolog's =/2 is (or much else about Prolog)
07:23:21 <kmc> woah
07:25:33 <oerjan> it's an infix predicate defined by the clause X = X, so it simply tries to unify its arguments when called. i think.
07:25:43 <mroman> I only need three registers at max for binary expressions, right?
07:25:45 <shachaf> kmc: Sounds reasonable.
07:25:57 <mroman> (assuming I have no constraints on which operations can be performed on which registers)
07:26:51 -!- ^v has quit (Ping timeout: 245 seconds).
07:28:27 <kmc> what kind of expressions?
07:29:34 <mroman> a + b, a * b, a << b and such
07:30:04 <mroman> even though WP says that for every register machine there's an equivalent register machine with only two registers
07:30:54 <mroman> althouh I couldn't get how I can implement it with only two registers
07:30:57 <oerjan> mroman: that assumes unbounded registers. also, exponential slowdown. or was it doubly exponential.
07:32:40 <zzo38> I once had a dream where the presence of the electric pokemon Voltorb caused the radio to explode every time it was turned on. I realized it could be prevented by turning on the TV set at the same time, which worked because the TV used more power than the radio.
07:33:14 <kmc> how much more?
07:33:24 <prooftechnique> Doubly exponential sounds awful
07:33:25 <oerjan> mroman: basically you go via a single register multiplication/division machine. see also http://esolangs.org/wiki/Minsky_machine
07:33:51 <oerjan> prooftechnique: i'm not quite sure if it is that.
07:34:06 <zzo38> kmc: I don't know, but it was CRT, so probably a lot more.
07:34:15 <prooftechnique> I mean just in general, but yes, in that particular case I'm sure it would also be unpleasant
07:34:24 <mroman> Ok. Then I stick to using three registers
07:34:27 <oerjan> perhaps i'm thinking of getting from there to a turing machine.
07:34:34 <olsner> I had a dream about a bucket collecting contest
07:34:51 <mroman> except on x86 because there are some nasty register constraints there
07:34:51 <oerjan> mroman: technically three registers don't necessarily help enough.
07:34:59 -!- Slereahphone has quit (Ping timeout: 260 seconds).
07:35:22 <mroman> oerjan: My allocation tree skizzes tell me that three registers are enough
07:35:37 <mroman> at max three registers are used at the same time
07:35:53 <oerjan> mroman: um are you assuming you have RAM in addition to this.
07:36:13 <mroman> Yes
07:36:24 <oerjan> in which case 2 is obviously enough, it's a different problem.
07:36:54 <oerjan> you just put the result in one of the input registers.
07:37:33 <mroman> yeah
07:37:36 <kmc> x86 is probably turing complete with no registers
07:37:36 <mroman> I can load two values
07:37:39 <mroman> add them together
07:38:04 <mroman> use the other register as a memory pointer
07:38:09 <mroman> write the result there
07:38:21 <mroman> that's esentially doable
07:38:33 <mroman> but three registers are probably more practical
07:39:21 <mroman> because if I can keep results in registers it's probably faster than writing/reading from memory all the time
07:39:37 <mroman> but ok.
07:39:41 <mroman> That answers my question.
07:39:44 <zzo38> How is x86 Turing complete with no registers?
07:40:19 <zzo38> olsner: What else about such dream which is about a bucket collecting contest? How does such contest work in a dream?
07:40:34 <mroman> you can increment/decrement in memory
07:41:04 -!- Slereahphone has joined.
07:41:06 <mroman> and you can compare with memory and immediate
07:41:18 <mroman> i.e CMP m32, imm32
07:41:23 <mroman> which means you can check for 0
07:41:39 <mroman> and you can JMP imm32
07:42:00 <mroman> which means you can translate brainfuck to x86 without using any registers
07:42:05 <mroman> probably
07:42:08 <prooftechnique> I think the important question is "How are the contents of the bucket factored into the scoring of the game?"
07:42:15 <olsner> zzo38: basically, collect buckets inside a specific apartment in a house, stack them and see which team gets the longest/tallest stack
07:42:44 <zzo38> olsner: Ah, OK. Any other details of such a dream, or just that?
07:43:10 -!- oerjan has quit (Quit: leaving).
07:43:13 <olsner> not sure, I think we were tearing out stuff for a building to be demolished before then
07:43:17 <mroman> I'm not yet certain how to address cells on the tape though
07:43:17 <prooftechnique> Ah, so a bucket full of sand is potentially much more valuable than an empty bucket
07:43:36 <zzo38> I do not think x86 or any CPU is really Turing complete by itself (whether or not you have any registers), but you probably can a CPU connected to an unbounded tape in the I/O ports
07:43:38 <olsner> prooftechnique: it's also cheating, that must be emptied before scoring
07:43:51 <kmc> zzo38: right
07:44:15 <prooftechnique> Hmm. Tall, shallow buckets, then
07:46:23 -!- Slereahphone has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
07:48:12 <olsner> prooftechnique: unfortunately no-one puts buckets like that in their derelict buildings, but if there are such buckets they would indeed be good to find and collect
07:50:08 <kmc> it's harder if you forbid using the flags register as well
07:52:23 <kmc> but might be doable using tricks like those in the "mov is Turing-complete" paper
07:53:51 -!- zzo38 has quit (Remote host closed the connection).
07:54:28 <shachaf> "mov is Turing-complete"
07:54:50 <shachaf> I,I "I used to have a little tube of jmp here to sharpen it up a bit -- then this'll be Turing-complete."
07:55:40 <mroman> "As long as someone else implements the compiler"
07:55:44 <mroman> :)
07:56:16 <ais523> shachaf: mov-only machines work, they have the instruction pointer as something you can move to
07:56:18 <ais523> *mov to
07:56:29 <kmc> i thought maybe not, because maybe mov doesn't support the right indirect modes if you can't use registers
07:56:54 <kmc> but you can do a memory-indirect jump!
07:57:01 <kmc> 0000000000000000 ff2425efbead0b jmp qword [0xbadbeef]
07:57:12 <ais523> oh, this is x86 mov?
07:58:00 <mroman> the paper?
07:58:00 <shachaf> Yes, that paper was about x86.
07:58:02 <mroman> yes.
07:58:11 <kmc> i am thinking about whether x86 is turing complete with no registers, including no flags register
07:58:25 <kmc> (still allowing the instruction pointer though!)
07:58:27 <shachaf> and no instruction pointer register?
07:58:29 <shachaf> aw
07:58:32 <kmc> :3
07:58:36 <mroman> kmc: so. cmp is not allowed?
07:59:08 <Fiora> that sounds really hard. like. the only non-flaggy conditional jump I can think of is the jecz thing or something?
07:59:49 <olsner> something like jmp [mem] is conditional on the contents of memory
08:00:01 <Fiora> that makes sense
08:00:01 <ais523> Malbolge-style loops
08:00:04 <olsner> ret too
08:00:15 <Fiora> so I guess you could add/xor/etc constants to memory to change its address
08:00:18 <kmc> olsner: ret counts as using the stack pointer
08:00:23 <kmc> mroman: I would allow cmp without register operands but I wouldn't allow anything which depends on the condition flags
08:00:55 <Fiora> so I guess if your turing machine has N states you could like um
08:01:15 <Fiora> have [foo] be the address of the next state
08:01:24 <mroman> kmc: ah
08:01:25 <mroman> ok
08:01:26 <Fiora> and like, mov [foo], state2 would set the next state to 2?
08:01:32 <mroman> because DEC for example affects flags as well
08:01:45 <mroman> it's gonna be difficult finding instructions that don't affect any flags
08:01:56 <kmc> right, I'm ok with that as long as it's not observable :)
08:02:06 <mroman> No fair :(
08:02:26 <mroman> but ok
08:02:33 <mroman> no instructions depending on flags
08:02:35 <fizzie> "Hey I want to make a registerless x86 program but the TSC keeps changing what do I do?"
08:02:49 <mroman> well
08:02:50 <kmc> hehe
08:02:57 <mroman> jecxz/jmp
08:03:04 <mroman> TSC?
08:03:26 <ais523> timestamp counter
08:03:29 -!- drlemon has quit (Remote host closed the connection).
08:03:38 <kmc> you can't even forbid instructions that depend on EFLAGS because of, like, trap flag and alignment check flag
08:03:41 <ais523> I think it's OK for the registers to change
08:03:44 <ais523> so long as you don't read/write them
08:03:51 <mroman> I didn't know about any TSC register
08:04:05 <fizzie> See "rdtsc".
08:04:05 <kmc> every instruction is implicitly a read of the trap flag woah
08:04:37 <mroman> ah
08:04:39 <mroman> ok
08:04:46 <mroman> TSC is not *really* good ol' x86
08:04:57 <mroman> it's some new age thing
08:05:39 <fizzie> Arguably, every access to memory involves "reading" a segment register.
08:05:41 <kmc> how much architectural state does x86 actually have? the answer is "a lot" and it's all listed in one place in the Intel manuals
08:06:00 <kmc> specifically, the documentation for the virtual machine state struct thingy used by VMX
08:07:06 <fizzie> Since, y'see, "mov [foo], 42" is actually "mov ds:[foo], 42" and that's a register right there.
08:07:09 <kmc> some of it's not directly accessible but observable state nonetheless
08:07:38 <kmc> for example the segment descriptors, which are loaded from memory when you load a segment selector register
08:08:43 <kmc> i wonder if the TLB is in there... because there are some fantastic VM tricks which involve deliberately making stale TLB entries
08:09:09 <kmc> do they not work in virtualization?
08:09:22 * kmc should probably not have used the acronym "VM" there but meant virtual memory
08:10:18 * Fiora is being dumb and is trying to implement that registerless turing machine thing but can't figure out how to do the tape
08:10:29 <Fiora> the state seems doable but storing the current tape position sounds hard
08:12:28 <fizzie> I think there's just one TLB. (That's why there's the whole VPID stuff, so that everything VMX-related doesn't invalidate the whole TLB.)
08:13:44 <kmc> ah
08:13:45 <fizzie> "The original architecture for VMX operation required VMX transitions to flush the TLBs and paging-structure caches. This ensured that translations cached for the old linear-address space would not be used after the transition. Virtual-processor identifiers (VPIDs) introduce to VMX operation a facility by which a logical processor may cache information for multiple linear-address spaces. --"
08:14:02 <kmc> then I think those tricks should still work
08:15:51 <kmc> is measuring the effective size of the TLB a good way to detect whether you're running in hardware virtualization?
08:16:18 <kmc> are there easier ways that can't be thwarted by the hypervisor?
08:16:51 <fizzie> I was under the impression that there were ways, in general. No idea about their fakability.
08:17:06 -!- prooftechnique has quit.
08:18:39 <ais523> theoretically, any way can be thwarted by a sufficiently AI-complete hypervisor
08:19:01 <ais523> or, like, qemu
08:19:02 <kmc> the TLB thing would involve timing measurements and so could be thwarted by virtualizing time
08:19:20 <fizzie> "The classic trick to detect a VM is to populate the ITLB, run an instruction that must be virtualized (which necessarily clears out such processor state when it gives control to the hypervisor), then run some more code to detect if the ITLB is still populated."
08:19:43 <kmc> but yeah, if you care about hardware virtualization then you are not willing to virtualize time to an arbitrary degree
08:20:43 <kmc> fizzie: cool my idea works hooray &c
08:22:46 <mroman> shouldn't it be impossible to detect low-level emulation of a system?
08:22:55 <olsner> I wonder if you could do virtualization by just giving the virtualized system one of your cpus, and use the iommu or something similar to sandbox it
08:24:03 <fizzie> mroman: The question was limited to the context of hardware-assisted virtualization.
08:24:51 <olsner> (but the iommu would still be detectable of course, and probably even easier to detect there since the tsc would be reliable)
08:24:52 <fizzie> (We're all just snippets of code running in someone's universe simulator, anyway.)
08:25:08 <kmc> does the iommu let you isolate a single processor from parts of memory and also prevent that processor from reprogramming the iommu?
08:25:21 <kmc> maybe but I don't think so
08:27:16 <kmc> are bizarrely restricted subsets of x86 the new turing tarpits? imo yes
08:27:48 <mroman> yeah
08:27:50 <kmc> like "only the MMU" https://github.com/jbangert/trapcc
08:28:00 <mroman> those computer scientist must've really run out of better stuff to do
08:28:50 <olsner> I'm not sure how/if the iommu affects cpu memory access, but if it does work I imagine you would simply hide the iommu from that cpu
08:29:43 <mroman> how does that mmu turing thing work anyway?
08:30:08 <kmc> there are some talks and papers and stuff
08:30:22 <kmc> https://www.youtube.com/watch?v=NGXvJ1GKBKM is the one i watched
08:30:32 <olsner> you'd also need to somehow set it up so the iommu faults go somewhere else and not to the sandboxed cpu, and make sure that the sandbox cpu can't override it (which I think is not currently possible)
08:30:44 <kmc> but it also covers other cool stuff like the stale TLB tricks i mentioned earlier
08:35:15 -!- doesthiswork has quit (Quit: Leaving.).
08:59:32 -!- ais523 has quit.
09:10:31 * kmc -> sleep
09:19:36 -!- FreeFull has quit.
09:20:05 -!- shikhin_ has joined.
09:25:30 <fizzie> Oh for... *another* HTK filename length issue.
09:26:14 <fizzie> The result-analysis tool segfaults if paths in the label file are over 256 characters.
09:27:10 -!- Taneb has joined.
09:36:54 -!- FireFly has quit (Excess Flood).
09:37:18 <fizzie> char name[256]; /* file name for error messages */
09:38:31 -!- FireFly has joined.
09:49:40 -!- shikhin_ has changed nick to shikhin.
09:52:56 -!- shikhin_ has joined.
09:55:11 -!- shikhin has quit (Ping timeout: 272 seconds).
09:59:48 -!- nisstyre has quit (Quit: Leaving).
10:11:52 -!- Ngevd has joined.
10:12:14 <Ngevd> I'm trying voice recognition again
10:12:14 -!- realz has quit (Ping timeout: 264 seconds).
10:12:39 -!- shikhin_ has quit (Ping timeout: 240 seconds).
10:12:43 <Ngevd> Hello
10:12:51 <Ngevd> This is going pretty well
10:13:03 <Ngevd> Much better than last time I tried
10:13:13 <Ngevd> I don't even need to type
10:13:31 <Ngevd> All I need to do is speak and occasionally press send
10:13:41 <Ngevd> It's quite improving my diction
10:13:47 <Ngevd> because I'm forced to speak quite clearly
10:14:04 <Ngevd> I'm not sure what's with the spaces at the beginning of some lines
10:14:11 <Ngevd> maybe that's for a partial sentence
10:15:30 <Ngevd> This is actually working really well
10:15:43 <Ngevd> real fast norris hair salon 3 she deserves to download
10:15:53 <Ngevd> almost
10:16:19 <Ngevd> Real fast nora's hair salon 3 shear disaster download
10:16:24 <Ngevd> that was much better
10:19:14 <Taneb> (note: Taneb has a keyboard, Ngevd has a microphone)
10:19:22 <Taneb> Another bad PHP example: https://eval.in/60631
10:20:21 <FireFly> Try entering that URL via voice recognition
10:20:38 <Ngevd> Okay
10:21:00 <Ngevd> https: slash slash eval dart in slash 6 06 31
10:22:29 <Ngevd> Is voice recognition have something to dance judges
10:22:46 <Ngevd> Phone now it started
10:22:51 <Ngevd> airedale
10:24:09 -!- realz has joined.
10:24:22 -!- realz has quit (Changing host).
10:24:22 -!- realz has joined.
10:29:17 <fizzie> Dart in.
10:30:21 <fizzie> I see you got the ':' in, but that was the only punctuation.
10:32:04 -!- KingOfKarlsruhe has joined.
10:33:08 <fizzie> (I sort of didn't catch those last three lines.)
10:34:39 -!- shikhin has joined.
10:40:14 -!- Ngevd has quit (Remote host closed the connection).
10:40:21 -!- Ngevd has joined.
10:41:46 <Taneb> "This voice recognition has" then I forgot
10:41:51 <Taneb> "Oh no, it's started"
10:41:59 <Taneb> And I can't remember what airedale was
10:44:28 -!- MindlessDrone has joined.
10:51:13 <fizzie> Well, it was nice while it worked.
10:57:24 <fizzie> Today's ##c extract: http://sprunge.us/bPch
10:57:56 <Taneb> :(
10:58:34 <fizzie> Can't argue with mathematical proof.
11:11:33 <Jafet> There are so many superior languages, but not many posterior ones.
11:29:24 <mroman> so
11:29:28 <mroman> PHP has a type system?
11:29:30 <mroman> Since when?
11:29:37 <mroman> I only knew PHP 4 once
11:29:54 <mroman> but they're probably at PHP 6 or something
11:31:55 <mroman> I wonder how he measures language sanity
11:32:34 <fizzie> mroman: <Radditz> PHP as a language is great, static typing, + sum types you can create types yourself, functional, latest version has algebraic data types amongst others
11:32:37 <fizzie> I think they're perhaps talking about some whole other PHP altogether -- or just generally trolling -- because I could not really verify any of this from the webs.
11:33:15 <fizzie> (Last I heard, PHP didn't really have much to do with the words "static typing".)
11:34:58 <fizzie> Also they seem to be in 5.x still.
11:37:03 <mroman> ok
11:37:08 -!- Ngevd has quit (Remote host closed the connection).
11:37:14 -!- Ngevd has joined.
11:37:34 <mroman> I hope PHP 6 will clean up the whole mess of functions
11:46:52 <mroman> That, or mod_python becomes the new standard for webhosters
11:51:45 <mroman> fizzie: Are you the boobie lover btw?
11:52:24 <mroman> Why do people use stupid nicknames.
11:53:04 <fizzie> No, I was just a bystander.
11:54:16 <myname> is there something simpler to prove turing completeness rather than a bf interpreter?
11:54:33 <fizzie> BCT is quite common in some circles.
11:54:47 <myname> thought of that
11:54:56 <myname> it may be suitable
11:55:10 <fizzie> Or something SKIttish.
11:55:12 <mroman> underload?
11:56:01 <myname> i do think anything stack based is too hard
11:56:10 <myname> BCT may be the perfect choice
11:56:39 <myname> but i may get better with a compiler from BCT
11:57:39 <fizzie> Going at it "directly" with a plain UTM can also be reasonable.
11:57:41 <Taneb> Fractran maybe?
12:00:30 -!- yorick has joined.
12:05:57 -!- Ngevd has quit (Remote host closed the connection).
12:06:03 -!- Ngevd has joined.
12:06:58 <myname> okay, maybe it's just impossible
12:08:28 <mroman> what are you trying to translate to what?
12:08:35 <Taneb> What language are you trying to prove TC?
12:08:53 <myname> http://esolangs.org/wiki/Wolfgang
12:14:47 <myname> wikipedia states, that petri nets with inhibitor arcs are turing complete
12:14:59 <myname> i don't see why, though
12:15:02 <mroman> Well
12:15:09 <mroman> [citation needed] then :P?
12:15:28 <myname> there is one
12:15:54 <myname> "A universal Petri net with 14 places, 42 transitions, and 218 arcs was built"
12:15:56 <myname> oh dear
12:16:24 <myname> there should be a shorter way due to determinism of wolfgang
12:17:27 <mroman> This might sound like a dumb question.. but: Aren't TC languages per 'definition' not deterministic?
12:17:46 <myname> why?
12:18:09 <myname> i find brainfuck pretty deterministic
12:18:13 <mroman> halting problem
12:18:21 -!- Ngevd has quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )).
12:18:55 <myname> what does halting problem have to do with determinism?
12:19:05 <mroman> I have no idea.
12:19:13 <myname> :D
12:19:18 <mroman> But at least you can't say if it terminates or not
12:19:27 <mroman> and that sounds like it's not really deterministic at all
12:19:37 <mroman> because you can't "foresee" what will happen
12:19:59 <myname> well, if it does not terminate with a given input, it should never terminate with that same input
12:20:05 <mroman> that somehow violates my brain's definition of determinism
12:20:47 <myname> well, short way: if input is equal, output should be equal
12:20:50 <mroman> i.e. if you treat the program as a state machine
12:20:53 <mroman> and the input as an event
12:21:10 <mroman> where terminated is a state
12:21:15 <mroman> and still running is a state
12:21:57 <mroman> no.. wait...
12:22:18 <mroman> yeah... scratch that
12:24:29 <mroman> I'm thinking of predeterminism probably
12:27:18 <mroman> Predeterminism is the idea that all events are determined in advance
12:27:21 <mroman> ^- that one.
12:35:45 <Jafet> Every program either terminates or does not terminate, and this is true in advance.
12:39:13 -!- Bike_ has joined.
12:40:25 -!- Bike has quit (Ping timeout: 265 seconds).
12:46:05 -!- Sgeo has quit (Read error: Connection reset by peer).
12:55:13 -!- shikhin_ has joined.
12:56:52 -!- shikhin has quit (Ping timeout: 264 seconds).
12:58:27 -!- shikhin__ has joined.
13:00:16 -!- shikhin_ has quit (Ping timeout: 260 seconds).
13:01:07 -!- Taneb has quit (Quit: late breakfast).
13:02:45 -!- boily has joined.
13:03:03 -!- metasepia has joined.
13:11:16 -!- copumpkin has joined.
13:36:28 -!- shikhin__ has quit (Ping timeout: 264 seconds).
13:36:32 -!- tertu has joined.
13:38:33 -!- shikhin__ has joined.
13:43:21 -!- shikhin_ has joined.
13:44:51 -!- shikhin__ has quit (Ping timeout: 246 seconds).
14:01:46 <john_metcalf> The internet archive / wayback machine is down.
14:02:36 <john_metcalf> Apparently they're on fire. They tweeted about a building being on fire (there's also a donate link in the same tweet!)
14:03:20 <john_metcalf> Odd how they mention the safety of the data before the safety of the people.
14:06:03 -!- Phantom_Hoover has joined.
14:14:57 -!- tertu has quit (Ping timeout: 246 seconds).
14:18:03 -!- tertu has joined.
14:18:21 -!- FreeFull has joined.
14:19:27 -!- ter2 has joined.
14:22:39 -!- tertu has quit (Ping timeout: 246 seconds).
14:23:46 <boily> they should store data on people. people tend to catch fire less often than buildings, so the data would be safer.
14:25:41 -!- shikhin_ has quit (Ping timeout: 246 seconds).
14:40:05 -!- shikhin_ has joined.
14:51:07 -!- ter2 has quit (Ping timeout: 240 seconds).
14:54:57 <fizzie> "The class "false" is undefined. Perhaps Java is not running."
14:55:02 <fizzie> Oh, MATLAB, you and your errors.
14:58:21 -!- ter2 has joined.
15:02:29 <fizzie> MDCS on the cluster seems to have broken down *again*.
15:02:35 <fizzie> Bah, I think I'll worry about it tomorrow.
15:02:57 <fizzie> (It's all "Reason: sbatch: error: Batch job submission failed: Invalid account or account/partition combination specified" about it.)
15:12:40 -!- asie has joined.
15:15:11 -!- conehead has joined.
15:27:22 -!- shikhin_ has changed nick to shikhin.
15:28:05 -!- Bike_ has changed nick to Bike.
15:29:35 -!- mrhmouse has joined.
15:49:35 -!- ter2 has quit (Ping timeout: 245 seconds).
15:54:00 -!- shikhin has quit (Ping timeout: 246 seconds).
16:01:07 -!- asie has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz...).
16:02:29 -!- asie has joined.
16:04:10 -!- shikhin has joined.
16:10:39 -!- shikhin has quit (Ping timeout: 272 seconds).
16:22:19 -!- shikhin has joined.
16:25:38 -!- ter2 has joined.
16:30:50 -!- ter2 has quit (Quit: Leaving).
16:33:41 -!- Taneb has joined.
16:36:35 -!- S1 has joined.
16:50:11 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
16:52:07 -!- carado has joined.
17:05:57 -!- Phantom_Hoover has joined.
17:06:54 -!- Sprocklem has joined.
17:08:26 -!- Koen_ has joined.
17:11:57 -!- Tawo has joined.
17:12:38 -!- Tawo has left.
17:22:05 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
17:24:35 -!- Sprocklem has quit (Ping timeout: 245 seconds).
17:33:40 -!- ^v has joined.
17:33:52 -!- oerjan has joined.
17:36:50 -!- Phantom_Hoover has joined.
17:37:05 -!- asie has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz...).
17:37:24 -!- S1 has quit (Quit: ChatZilla 0.9.90.1 [Firefox 24.0/20130910160258]).
17:44:05 -!- zzo38 has joined.
17:44:15 -!- yorick has quit (Remote host closed the connection).
17:49:36 -!- conehead has quit (Quit: Computer has gone to sleep.).
17:50:08 -!- asie has joined.
17:53:36 <oerjan> <fizzie> mroman: <Radditz> PHP as a language is great, static typing, + sum types you can create types yourself, functional, latest version has algebraic data types amongst others <-- all of this fits haskell except "latest version" (it had them from the start)
17:53:39 -!- nooodl has joined.
17:55:01 -!- asie has quit (Ping timeout: 244 seconds).
17:58:10 -!- augur_ has quit (Remote host closed the connection).
17:58:36 -!- augur has joined.
17:58:48 <`^_^v> this is a cool book cover http://ecx.images-amazon.com/images/I/5121HYFTK0L.jpg
17:59:17 <oerjan> <john_metcalf> The internet archive / wayback machine is down. <-- THUS IT BEGINS
17:59:27 <Bike> they had a ire :(
17:59:28 <Bike> fire*
17:59:47 <oerjan> well that was the next line.
18:00:28 <oerjan> `^_^v: finally something for the programming sheeple!
18:00:29 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ^_^v:: not found
18:01:24 <oerjan> hm there's no way to get HackEgo to simply not respond to a command, is there
18:01:31 <oerjan> on purpose
18:03:45 -!- augur has quit (Ping timeout: 272 seconds).
18:06:31 -!- Sprocklem has joined.
18:09:47 -!- oerjan has quit (Quit: leaving).
18:11:09 -!- mrhmouse has quit (Quit: Leaving.).
18:15:19 <boily> fungot: can you mute HackEgo?
18:15:19 <fungot> boily: laf. they are
18:15:38 <boily> what's a laf? is it another Nordic Delicacy, like a fternooner?
18:17:06 -!- prooftechnique has joined.
18:17:51 <boily> `relcome prooftechnique
18:17:54 <HackEgo> prooftechnique: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <http://esolangs.org/wiki/Main_Page>. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
18:18:07 <prooftechnique> `wercome boily
18:18:09 <HackEgo> boily: エソテリックプログラミング言語のディザインとデプロイメントの国際な場所へようこそ!詳しく、ウィキを見て: http://esolangs.org/wiki/Main_Page。(他のエソテリック、irc.dal.netの#esotericへ)
18:18:37 <Slereah_> Guys
18:18:40 <Slereah_> I be wonderin'
18:18:50 <Slereah_> Are there any OS in esoteric languages written around
18:18:56 <boily> I deduce from that random act of wercoming that prooftechnique's already been through that ritual.
18:19:00 <Slereah_> I remember hearing projects of BF OS
18:19:06 <Slereah_> But not sure if any of them came through
18:19:11 <prooftechnique> boily: Quite so
18:19:44 <prooftechnique> I switched my handle to my github name
18:19:50 <prooftechnique> I'm usually NihilistDandy
18:19:59 <boily> oooooh! quite the subterfuge!
18:20:11 <boily> (and an opportunity to cocoonspire you to the Wisdom Repo!)
18:20:12 * prooftechnique is a master of disguise
18:20:28 <boily> Slereah_: I think the closest we have to an esoteric OS is NixOS.
18:21:08 <prooftechnique> Or TempleOS, or whatever it's called now
18:21:08 <boily> prooftechnique: there, you are added.
18:21:19 <prooftechnique> Hurrah
18:21:24 <prooftechnique> Also, Wisdom Repo?
18:21:39 <prooftechnique> I don't know that I'm familiar with that
18:21:51 <boily> cf. the /topic of this chännel ↑
18:21:54 <prooftechnique> Oh, I see
18:22:25 -!- Ghoul_ has quit (Remote host closed the connection).
18:22:32 <fizzie> I think I liked it more when it was called LoseThos.
18:23:00 <fizzie> (Also isn't PSOX a bit like an operating system?)
18:23:18 <prooftechnique> `?
18:23:20 <HackEgo> ​? ¯\(°_o)/¯
18:23:33 <prooftechnique> Already my wisdom increases
18:23:37 <boily> prooftechnique: I think now is a good moment to ask you the The Question: what are your approximate coördinates and body weigh?
18:23:49 <Slereah_> >coördinates
18:23:57 <Slereah_> This isn't the 20's Daddy-o
18:24:14 <boily> not yet.
18:25:32 <prooftechnique> I'll have to send a pull request for this alias :D
18:25:47 <prooftechnique> Also, let me look up coördinates
18:25:50 -!- realz has quit (Ping timeout: 245 seconds).
18:25:53 <boily> you have commit access. commit your heart away!
18:28:22 <prooftechnique> 10 whole megabytes of wisdom
18:28:30 -!- upgrayeddd has quit (Remote host closed the connection).
18:28:30 -!- ggherdov has quit (Remote host closed the connection).
18:28:31 <prooftechnique> I would expect nothing less from #esoteric
18:29:48 <boily> there are some wisdom entries that I didn't get to format yet, such as “wisdom/c” and suchlike.
18:36:59 -!- Sprocklem has quit (Ping timeout: 246 seconds).
18:39:28 -!- realz has joined.
18:39:29 -!- realz has quit (Changing host).
18:39:29 -!- realz has joined.
18:40:47 <prooftechnique> When did I say "Benchmarks are only a good measure of surprise"? I like that, and I'm thrilled that I said it :D
18:41:06 <^v> does a random name for a language generator exist? xD
18:41:29 <Taneb> ^v, that's what spambots are for
18:41:40 <Taneb> cf. Real Fast Nora's Hair Salon 3: Shear Disaster Download
18:41:59 <^v> no, not random word generation
18:42:04 <^v> :P
18:44:33 <zzo38> ^v: For generating random names for D&D characters I have used an algorithm I read about somewhere and programmed in my TI-92 calculator, but I don't know if that works for your purpose.
18:44:54 <zzo38> I don't know what exactly you want.
18:44:59 <boily> quintopia: hi!
18:45:23 <zzo38> Maybe FurryScript can be made to do it somehow, though.
18:45:50 <^v> im just going to generate a large amount of random letters and pick the best looking one
18:46:13 -!- augur has joined.
18:46:41 <zzo38> ^v: OK, how do you want to do that? Pick letters from a Scrabble game?
18:47:02 <Taneb> God, I need to get my laptop working by Friday
18:47:04 <boily> ^v: pwgen -c 12?
18:48:21 -!- upgrayeddd has joined.
18:49:18 <zzo38> Add some more `? files for other esolangs and other various things too
18:49:32 <zzo38> `? TwoDucks
18:49:33 <HackEgo> TwoDucks programming language was invented in 2023.
18:50:01 <Taneb> `? Real Fast Nora's Hair Salon 3: Shear Disaster Download
18:50:02 <HackEgo> Real Fast Nora's Hair Salon 3: Shear Disaster Download? ¯\(°_o)/¯
18:50:23 <boily> huh? how did I manage to miss TwoDucks?
18:50:38 <^v> zzo38, its trivial in lua
18:50:38 <zzo38> boily: I added it just a few minutes ago.
18:50:54 <zzo38> ^v: Ah, then use that.
18:51:07 <Taneb> `run echo "Real Fast Nora's Hair Salon 3: Shear Disaster Download is the most readable functional programming language out there." > wisdom/Real\ Fast\ Nora\'s\ Hair\ Salon\ 3\:\ Shear\ Disaster\ Download
18:51:11 <HackEgo> No output.
18:51:21 <Taneb> `? Real Fast Nora's Hair Salon 3: Shear Disaster Download
18:51:23 <HackEgo> Real Fast Nora's Hair Salon 3: Shear Disaster Download? ¯\(°_o)/¯
18:51:26 <zzo38> (Although I still prefer FurryScript for random text generation)
18:51:27 <Taneb> `? Real Fast Nora's Hair Salon 3\: Shear Disaster Download
18:51:29 <HackEgo> Real Fast Nora's Hair Salon 3\: Shear Disaster Download? ¯\(°_o)/¯
18:51:33 <Taneb> I messed up
18:52:30 <Taneb> Wow, this is the closest I've ever lived to London
18:53:03 <prooftechnique> `run echo "Real Fast Nora's Hair Salon 3: Shear Disaster Download is the most readable functional programming language out there." > "wisdom/Real Fast Nora's Hair Salon 3: Shear Disaster Download"
18:53:05 <HackEgo> No output.
18:53:12 <prooftechnique> `? Real Fast Nora's Hair Salon 3\: Shear Disaster Download
18:53:13 <HackEgo> Real Fast Nora's Hair Salon 3\: Shear Disaster Download? ¯\(°_o)/¯
18:53:17 <Taneb> `? Real Fast Nora's Hair Salon 3: Shear Disaster Download
18:53:19 <HackEgo> Real Fast Nora's Hair Salon 3: Shear Disaster Download? ¯\(°_o)/¯
18:54:00 <zzo38> Esolang wiki even has something about Perl.
19:00:05 -!- Ghoul_ has joined.
19:01:06 <boily> welcome to esolang wiki. you can do anything on esolang wiki. anything at all. the only limit is yourself. welcome... to esolang wiki!
19:01:38 -!- tswett has joined.
19:01:53 <tswett> Hey guys.
19:02:09 <zzo38> Which people are not put on wisdom/ yet?
19:02:11 -!- Phantom_Hoover has quit (Ping timeout: 244 seconds).
19:02:19 <tswett> I dunno. Am I on wisdom/?
19:02:30 <zzo38> `? tswett
19:02:32 <HackEgo> tswett is livin' it up with the penguins
19:02:41 <tswett> Yup, I guess I am.
19:02:55 <tswett> Right, right, I live in Antarctica. I forgot about that.
19:03:49 <prooftechnique> `? NihilistDandy
19:03:51 <HackEgo> NihilistDandy? ¯\(°_o)/¯
19:03:57 <prooftechnique> `? prooftechnique
19:03:59 <HackEgo> prooftechnique? ¯\(°_o)/¯
19:04:44 <zzo38> There is a file for LaTeX but not for TeX and Plain TeX.
19:05:08 <tswett> I have a function that translates from the Haskell type "IO a" to the Hylisk type "World -> (Foreign a * World)". Now I'm writing a function that does the reverse.
19:05:56 <tswett> As far as I've found, there isn't an isomorphism from Hylisk's type system to part of Haskell's, but there is a homomorphism, which is really all that matters.
19:06:11 -!- Bike has quit (Ping timeout: 272 seconds).
19:06:16 -!- shikhin has quit (Read error: Operation timed out).
19:06:21 <tswett> Which is to say, if you convert a Hylisk type "A" to a Haskell type "B", then the type "B" will contain stuff that the type "A" doesn't.
19:06:51 <tswett> But that doesn't really matter, because any value of type "B" can be used as we expect to be able to use a value of type "A".
19:07:30 <tswett> So yeah. When my functions are composed together, the result ought to be the identity.
19:07:46 -!- Bike has joined.
19:09:45 <tswett> It's ultimately a matter of converting something of the Haskell type "IO t" to something of the Haskell type "forall e. (IO e -> e, (t, IO e -> e) -> e) -> e". Obviously.
19:10:26 <kmc> Hylisk? is that Haskell with Lisp syntax for the CPython VM?
19:10:37 <tswett> kmc: astonishingly, no.
19:10:43 <tswett> It's Haskell with a linear type system.
19:11:15 <kmc> cool
19:11:19 <kmc> I'm all about substructural types now
19:11:31 <zzo38> tswett: I don't know how such a type is supposed to work.
19:11:33 <kmc> I was wondering if relevance logic has any applications in programming
19:11:38 <Bike> that's so mainstream, i'm into structsubural types
19:11:45 <tswett> zzo38: I barely know myself.
19:12:01 <kmc> Bike: we should invent a language with subliminal types
19:12:36 <zzo38> kmc: What does subliminal types means?
19:12:48 <kmc> i don't know, that's why we need to invent it
19:12:54 <tswett> Okay, lemme see. So I'm importIO. I have an "IO t", an "IO e -> e" (but don't ask me what an "e" is), and a "(t, IO e -> e) -> e". I have to use all this to make an "e", in the obvious way.
19:13:06 <zzo38> OK. Perhaps make it in a list of ideas
19:13:27 <tswett> This task might be impossible. Hopefully it is possible, but it'll be pretty inconvenient if it turns out to be impossible.
19:13:50 <kmc> maybe it's a system where types are inferred but can't be written down and instead of the compiler giving specific type errors it just induces a vague feeling of unease
19:14:33 <prooftechnique> Java has superliminal types
19:14:45 <kmc> HEY YOU! JOIN THE NAVY!
19:15:15 <prooftechnique> ABSTRACTNAVYRECRUITFACTORYFACTORY
19:16:10 -!- ggherdov has joined.
19:16:29 <tswett> Let's see. If I apply liftM to the third thing there, I get "IO (t, IO e -> e) -> IO e". So I can just take my "IO t" and my "IO e -> e" and combine them to make "IO (t, IO e -> e)", and combine this with the liftM thing to get an "IO e", and then I can use the "IO e -> e" again to produce an "e".
19:16:35 <tswett> The question is, does this make sense?
19:17:43 <zzo38> tswett: I don't know.
19:19:02 -!- shikhin has joined.
19:21:44 <tswett> So I'm importIO. What am I supposed to do? I'm given a world, and I have to produce a bare value along with a new world. But a world is really just an "IO e -> e", and I'm supposed to tie actions into it by composing them with it on the right. I think.
19:23:42 <tswett> This sounds backwards.
19:25:06 <tswett> According to my notes, the "presumed way" to do things is to take this "IO t", compose it with the "IO e -> e", and drop the result into the function "(t, IO e -> e) -> e".
19:25:38 <tswett> Of course, you can't combine "IO t" and "IO e -> e" together to get "(t, IO e -> e)".
19:27:27 <Taneb> There's a gamejam this weekend here and I'm entering
19:29:02 <kmc> lol
19:29:06 -!- MindlessDrone has quit (Quit: MindlessDrone).
19:29:10 <kmc> er whoops I was *way* scrolled back
19:29:17 <kmc> just pretend i was lolling at the most recent amusing thing
19:29:38 * kmc was reading Taneb's speech recognition adventure
19:31:03 <Taneb> I think it's exactly the same software as last time
19:31:32 <Taneb> kmc, do you have any gamejam-entering advice?
19:31:35 <kmc> no
19:32:04 <tswett> Woohoo, a type error I don't understand because I don't understand the code I just wrote.
19:32:38 <kmc> tswett: who does that compiler think he is?!?
19:33:14 <tswett> Apparently he thinks he's someone qualified to try to understand my code.
19:33:44 -!- Koen_ has quit (Quit: Koen_).
19:39:44 -!- Sprocklem has joined.
19:40:13 -!- conehead has joined.
19:42:25 -!- prooftechnique has quit.
19:51:19 <tswett> So, dang, now it works.
19:51:44 <tswett> Now I'm afraid that something else will go wrong somewhere down the line.
19:54:53 <tswett> Maybe IO actions will be performed in the wrong order, or the wrong number of times...
19:56:43 -!- Slereah has joined.
19:57:24 <mroman> hm
19:57:39 <mroman> does a C compiler cache a result in a register even if there's a pointer to that variable?
19:57:58 <tswett> Why do you ask?
19:58:20 <mroman> e.g. int i; while(i < N) { /* do stuff */ i++;}
19:58:21 <zzo38> mroman: I expect it might only if it can prove that it won't cause it to go wrong, probably
19:58:43 <mroman> there you could keep i in a register and not write it back to memory after each increment
19:59:03 <tswett> Yeah, you could.
19:59:05 <mroman> int i; foo(&i); while(i < N) { /* do stuff */ i++; }
19:59:10 <mroman> on the other hand, is a different story
19:59:20 <tswett> And you ask because i might be simultaneously read by another thread or something?
19:59:41 <mroman> well
19:59:54 <mroman> it could be, that the order in which stuff happens is different for an observing thread
19:59:57 <mroman> i.e
20:00:52 <mroman> int a,b; foo(&a, &b); while(a < N) { i++; b = 5; } return i
20:00:57 <mroman> oh
20:01:02 <mroman> that should be an a there
20:01:06 <mroman> since the compiler caches a
20:01:29 <mroman> an obverver might see b = 5 before i changes
20:01:45 <mroman> or a
20:01:47 <mroman> :)
20:02:04 -!- ais523 has joined.
20:02:22 <mroman> so esentially
20:02:38 <mroman> i might actually never change
20:02:48 <mroman> because you can keep it cached in a register the whole time
20:03:03 <tswett> I suppose.
20:03:14 <mroman> as return i wouldn't even need a writeback to memory
20:03:51 <tswett> Are you actually doing something that depends on what C compilers do here?
20:04:18 <mroman> I assume the standard says, that concurrent modificiation is undefined behaviour
20:04:23 <mroman> it should at least say that
20:04:37 <mroman> or concurrent reads in this case
20:04:56 <tswett> I would hope that it says unspecified at worst.
20:05:22 <mroman> esentially a compiler should perform a writeback after a pointer to that variable has been requested
20:05:28 <mroman> well
20:05:35 <mroman> not sure there
20:05:45 <mroman> probably depends on what foo does
20:05:45 -!- Bike has quit (Ping timeout: 244 seconds).
20:05:53 <mroman> but let's assume the compiler is dumb and has no idea what foo does
20:06:24 <tswett> The question still on my mind is whether or not you're actually doing something that depends on what happens here.
20:06:50 <mroman> int i = 0; while(..) { i++; /* i cached inside the loop */ }; /* writeback i due to &i */ foo(&i;)
20:06:59 <mroman> tswett: I'm writing a compiler :)
20:07:06 <tswett> Ah.
20:07:23 <ais523> you can'r put a semicolon inside parens like that
20:07:25 <ais523> *can't
20:07:37 <mroman> the question is
20:07:47 <mroman> If my compiler detects, that a pointer to a variable is held
20:07:56 <mroman> is he forbidden to cache it later?
20:08:11 <mroman> or can I he just say: Screw you, that's unspecified behaviour
20:08:16 <mroman> *I/he
20:08:26 <tswett> My guess is no, he can do that, but I'd suggest looking at the standard.
20:08:49 <mroman> because after foo nothing could actually change i
20:08:50 <ais523> brb, restarting my window manager
20:08:56 -!- ais523 has quit.
20:09:05 <mroman> unless foo started a thread or something that is now doing cstuff with i behind my back
20:09:34 -!- mtve has quit (Ping timeout: 240 seconds).
20:09:34 -!- Slereah_ has quit (Remote host closed the connection).
20:09:35 -!- shikhin has quit (Ping timeout: 240 seconds).
20:10:09 <mroman> even if I would writeback to memory every time I incremented i
20:10:10 <mroman> it would not be safe for that thread to change i
20:10:10 <mroman> the question still remains: What about reads?
20:10:30 <mroman> concurrent writes are undefined anyway
20:10:57 <mroman> but must that thread be able of observing a change in i?
20:11:45 <mroman> tswett: I'm just using C as an example.
20:11:45 <mroman> My source language is not actually c
20:12:00 <tswett> The answer to your question depends on what the source language is.
20:12:12 <boily> seems the solution is to instantiate a different thread for every value of i. that way, each thread only sees a single value, and doesn't have to worry about changes.
20:12:20 -!- ais523 has joined.
20:13:05 <boily> ais523: what's your window manager?
20:13:11 -!- shikhin has joined.
20:13:13 <ais523> boily: Unity
20:13:52 <mroman> tswett: the question is not really "what C says" but
20:13:55 <mroman> what makes more sense
20:14:11 <mroman> I'm voting for: It's not well defined behaviour
20:14:17 <mroman> and that thread may never see a change at all.
20:14:38 <mroman> after all, that thread might not even be scheduled before the loop completes
20:14:41 <mroman> but
20:14:45 <mroman> now comes to tricky trick
20:15:24 <mroman> http://codepad.org/jV9wdikK
20:15:34 <mroman> ^- what if the loop only terminates, if the thread detected a change
20:16:25 -!- Bike has joined.
20:16:38 <tswett> I'd say it's acceptable (but not desirable) for the main thread to loop forever, never yielding to the child thread.
20:17:45 <tswett> Gotta go. Adiós.
20:17:53 -!- tswett has quit (Quit: Page closed).
20:22:30 -!- asie has joined.
20:22:45 -!- asie has quit (Excess Flood).
20:23:09 -!- asie has joined.
20:31:15 -!- ^v has quit (Quit: http://i.imgur.com/MHuW96t.gif).
20:31:55 -!- J_M has joined.
20:32:43 <boily> `relcome J_M
20:32:45 <HackEgo> J_M: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <http://esolangs.org/wiki/Main_Page>. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
20:34:38 -!- J_M has left.
20:38:11 <boily> another Venezuelian scared away...
20:44:20 -!- shikhin_ has joined.
20:45:20 <mroman> well. apparentely using signals in C is undefined.
20:45:35 <mroman> and async callbacks
20:45:54 <Bike> that's why real programmers only use ada.
20:46:18 <mroman> i.e
20:46:25 <mroman> while(dontstop);
20:46:33 -!- shikhin has quit (Ping timeout: 244 seconds).
20:46:38 <mroman> int sigint_handler() { dontstop = 0; }
20:46:55 <mroman> the compiler can reason that, since you never call sigint_handler yourself
20:46:56 <kmc> dontstop believin
20:47:02 <mroman> that dontstop is never changed in your code
20:47:14 * boily strikes Bike with a hardcopy of the Ravenscar Profile
20:47:20 <mroman> and may replace while(dontstop) with while(1);
20:47:21 <kmc> mroman: is that so even if it's declared volatile?
20:47:21 <Bike> Isn't that what "volatile" is for
20:47:50 <olsner> if dontstop is a volatile sig_atomic_t that might be well-defined in C+POSIX (C itself doesn't say anything about signals, obviously)
20:47:50 <mroman> hm. yeah
20:47:54 <kmc> signals are ♫ the worst ♫ though
20:47:59 <boily> “volatile” tells the compiler “don't you dare optimising my variable away, you crapshoot”.
20:48:20 <kmc> i didn't know about sig_atomic_t, thanks olsner
20:48:25 <kmc> tholsner
20:48:42 <kmc> "Until C++11, which introduced std::atomic and std::atomic_signal_fence, about the only thing a strictly conforming program could do in a signal handler was to assign a value to a volatile static std::sig_atomic_t variable and promptly return."
20:48:55 <Bike> fantastic
20:48:56 <olsner> is there any way in plain C to use volatile except for setjmp/longjmp?
20:49:03 -!- Sprocklem has quit (Ping timeout: 265 seconds).
20:49:52 <Bike> i thought it was originally added for mov-triggered architecture sorts of things
20:50:09 -!- shikhin_ has quit (Ping timeout: 244 seconds).
20:50:11 <kmc> memory mapped hardware
20:50:30 <olsner> yeah, but C itself doesn't really have memory mapped IO (nor threads), does it?
20:50:31 <Bike> dunno if that's "plain C"
20:50:47 <Bike> https://mitpress.mit.edu/covers/9780262019538.jpg btw my field has better book covers than yours
20:50:49 <boily> olsner: GPIO on microcontrollers. it's essential to declare that stuff volatile.
20:51:40 <olsner> volatile int* gpio_thingy = [what goes here that's defined behavior by C?]
20:51:45 -!- yorick has joined.
20:53:19 <olsner> oh well, I suppose it's still pretty useful to have C-defined behavior when talking to those things, even if all the pieces don't necessarily come from C
20:54:05 <boily> fungot: are you defined?
20:54:06 <fungot> boily: hen. it is but so so, now fnord
20:56:46 <olsner> boily: fungot is fnord behavior
20:56:47 <fungot> olsner: second lord. it is too long; which makes it fiue and twenty yeares, and then why should we, in the smoake of warre: and formerly according to our appointment, when we were at work: my old master the iew to sup to night with a harlotry: and thither will i bring thee valentine
21:00:53 <boily> fungot: FNORD EAX, 0x2A
21:00:54 <fungot> boily: fabian. is't so, indeed? we men may say more, than tigers of hyrcania. see, by ten mile. for fnord being dead, i tell thee, iacke cade the fnord means to dress the commonwealth, as which of you saw eglamoure of late? ophe. my honor'd lord
21:01:11 <olsner> ^style irc
21:01:11 <fungot> Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams)
21:02:02 <olsner> fungot: rep fnords
21:02:02 <fungot> olsner: ( do we have? the translations are quite good. how dies sisc compare to plt?'
21:02:21 -!- asie has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz...).
21:05:13 <Slereah> Have you read your SICP today?
21:06:17 <boily> oh no. no no no no no no no.
21:06:24 * boily runs in fear far away from Slereah
21:07:12 <john_metcalf> I'm searching for scans of a Polish computer magazine called "Enter". Has anyone ever heard of it?
21:07:31 <john_metcalf> Not having much luck, probably due to the name...
21:07:44 <Bike> is that name translated?
21:07:54 <Slereah> boily seems to be deathly afraid of snakes
21:08:08 <olsner> snakes?
21:08:13 <Slereah> SNAKES
21:08:28 <Slereah> http://fuuka.warosu.org/data/lit/img/0037/37/1368047172925.gif
21:08:30 <Slereah> Snaaaakes
21:09:23 <Slereah> http://1-media-cdn.foolz.us/ffuuka/board/jp/image/1335/81/1335810578462.jpg
21:09:28 <Slereah> SNAAAAKE?!?
21:09:47 <Slereah> http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/wizard.jpg
21:09:52 <Slereah> Programming could use more wizards
21:10:53 <Bike> scheme code with lots of defines is the worst
21:11:08 <Slereah> Or is it
21:11:11 <Slereah> THE BEST
21:11:16 <john_metcalf> Bike: it's the original name. I've found a few copies on eBay, but that's about all.
21:11:23 <Bike> weird.
21:12:13 <Slereah> "Scheme allows you to do crazy things: (define + -) (define define 3)"
21:12:14 <Slereah> heh
21:12:47 <Bike> john_metcalf: well my library doesn't happen, but searching "Enter" does turn up some Lost episodes.
21:13:20 <Bike> Disc 3 (Episodes 9-12). Stranger in a strange land ; Tricia Tanaka is dead ; Enter 77 ; Par avion --
21:13:55 <Slereah> http://www.youtube.com/watch?v=rdj6deraQ6k
21:13:56 <Slereah> Oh god
21:14:20 <boily> john_metcalf: they have a website at enter.pl, but I can't read Polish.
21:14:34 <fizzie> I know of the Finnish computer magazine called "Enter", but that probably won't help.
21:14:43 <boily> Slereah: and, uh, why snakes?
21:15:19 -!- Oj742 has joined.
21:15:20 <Slereah> I don't have a fucking clue
21:15:26 <john_metcalf> Boily: found that and translated some with Google translate. It doesn't look like they have an online archive.
21:15:27 <Slereah> It's an old /prog/ meme
21:15:30 <boily> and WHAT THE FUNGOT IS THAT VIDEO?
21:15:31 <Slereah> Don't know where it came from
21:15:36 <Slereah> It is the SICP snake
21:15:45 <Slereah> Enquiring about your daily reading of SICP
21:15:59 <boily> I vaguely recall having stored a copy about that somewhere...
21:16:15 <Slereah> That video is what Scheme is all about
21:17:42 -!- tswett has joined.
21:18:00 * boily sings “一二三 一二三 one two three one two three いち に さん!♪”
21:18:47 -!- Sprocklem has joined.
21:18:48 <nooodl> it was some guy mentioning SICP and then someone else said "is that just your way of saying I'VE READ SICP" and then "I'VE READ SICP" became a /prog/ meme
21:19:09 <Slereah> But why the snake!
21:20:08 <nooodl> simultaneously someone else made a postscript file of a snake and posted it in a thread called "the /prog/snake" i think? and someone else put two and two together
21:20:31 <Bike> ddeep
21:20:31 <kmc> is /prog/ that 4chan thing
21:20:32 <Slereah> heh
21:20:35 <Slereah> Yes
21:20:36 <boily> what the snake says! SICP-SICP-SICP-SICP-SICP-SICP-SICP!
21:20:42 <Slereah> It's one of the TOP SECRET boards
21:20:44 <Slereah> (Textboard)
21:20:57 <fizzie> An antagonistic snake would make more sense. (See: Python replacing Scheme in the MIT course.)
21:21:19 <Slereah> I'm afraid that now, Scheme is all snake
21:21:40 <Slereah> Among the programming animals, such as the Ocaml camel or...
21:21:43 <Slereah> The B bee?
21:21:51 <Slereah> Does the B language still exist
21:22:15 <tswett> It turned out to have ceased to exist long before anyone realized it no longer existed.
21:22:26 <boily> is B the anti-Feather?
21:22:27 <nooodl> fizzie: the antagonist is, in the /prog/ canon, "the Abelson": http://www.youtube.com/watch?v=rdj6deraQ6k
21:22:43 <Bike> https://mitpress.mit.edu/covers/9780262518420.jpg my programming language
21:22:47 <Bike> book. thing
21:23:15 <nooodl> ah yes. the snake is in this too. i should just link http://www.youtube.com/watch?v=rdj6deraQ6k when people ask me about /prog/ always
21:23:32 <tswett> Well, gee, now what. I guess writing an "apply" function might end up being useful eventually.
21:23:32 <nooodl> the factorial of seven is also in this... amazing
21:23:38 <tswett> That's kind of a useful function.
21:23:41 <Bike> it's cool how the sinuses (or whatever) look like a mustache
21:23:47 <Slereah> nooodl : Same link!
21:23:54 <Slereah> which I already gave before, anyway!
21:26:10 <nooodl> oh. excellent
21:26:50 <Slereah> http://www.zazzle.com/my_other_car_is_a_cdr_bumper_stickers-128776132386843273
21:26:57 <Slereah> Four bucks for a sticker?
21:27:01 <Slereah> What madness is this!
21:27:16 -!- boily has quit (Quit: un un deux trois cinq poulet).
21:27:21 -!- metasepia has quit (Remote host closed the connection).
21:31:03 <Bike> http://i.imgur.com/gRbwf.png apparently jwz is on 4chan now, taking screens
21:31:42 <kmc> haha burn
21:32:00 <olsner> so where is this /prog/?
21:32:12 <Bike> hell
21:32:41 <nooodl> *that* /prog/ is gone, but the current /prog/, which is (even more) complete shit, is http://dis.4chan.org/prog/
21:33:05 <Bike> i'd like to point out that "dis" is indeed part of hell, in dante
21:33:24 <Slereah> The best board is actually http://dis.4chan.org/vip/
21:37:28 -!- shikhin has joined.
21:40:24 -!- carado has quit (Ping timeout: 252 seconds).
21:42:36 -!- Slereah has quit (Remote host closed the connection).
21:42:53 -!- Slereah has joined.
21:43:34 -!- shikhin_ has joined.
21:45:58 -!- shikhin has quit (Ping timeout: 244 seconds).
21:47:26 -!- Sprocklem has quit (Ping timeout: 268 seconds).
21:47:35 -!- Oj742 has quit (Ping timeout: 260 seconds).
21:47:50 -!- shikhin__ has joined.
21:50:44 -!- mtve has joined.
21:51:23 -!- shikhin_ has quit (Ping timeout: 272 seconds).
21:58:19 <zzo38> How to I append to a @ list in Perl?
21:58:50 <fizzie> push @foo, 'x'; is popular.
21:59:25 <zzo38> OK
21:59:41 <zzo38> I hope I did the rest of the program correctly.
21:59:51 <zzo38> I am trying to modify a Perl program.
22:00:09 <fizzie> Technically, @foo = (@foo, 'x') would also work, but I think 'push' is the usual thing for appending.
22:05:13 -!- zzo38 has quit (Remote host closed the connection).
22:05:48 <ais523> fizzie: or $foo[scalar @foo] = 'x';
22:05:55 <ais523> push is probably clearest, though
22:06:01 <ais523> and I think the compiler optimizes it into what I just wrote
22:08:09 <kmc> https://twitter.com/History_Pics/status/397393751527919616 golf used to be more exciting i guess
22:08:40 <fizzie> ais523: I had $foo[@foo] = 'x' and $foo[$#foo+1] = 'x' all written up, but decided not to.
22:08:56 <fizzie> (I don't think that needs a "scalar".)
22:09:07 <ais523> right, @foo[@foo] = 'x' would though
22:09:42 <fizzie> So many ways.
22:10:23 -!- Sprocklem has joined.
22:10:49 <fizzie> splice @foo, @foo, 0, 'x'; too.
22:13:59 <fizzie> splice @foo, -1, 1, $foo[-1], 'x';
22:20:26 -!- Sprocklem has quit (Ping timeout: 245 seconds).
22:21:00 -!- prooftechnique has joined.
22:27:49 -!- shikhin__ has quit (Ping timeout: 248 seconds).
22:28:27 <Taneb> Aaaah once again I am painfully aware of the leftist positive reinforcement bubble I live in
22:29:45 <prooftechnique> CORRECT, CITIZEN
22:30:26 <ais523> Taneb: ?
22:31:05 <Taneb> ais523, I was reading an article I saw on reddit, basically saying that the tories sucked, slowly nodding in agreement
22:31:11 -!- tswett has set topic: Pregnant memory client sialic Guillen Puede yen Ten del Est | Koirammekokaan ei lennä? :( | https://dl.dropboxusercontent.com/u/2023808/wisdom.pdf | logs: http://codu.org/logs/_esoteric/ or http://tunes.org/~nef/logs/esoteric/.
22:31:16 <Taneb> Then I realised there was almost nothing but tory-bashing
22:31:21 <Taneb> Little actual content
22:31:31 -!- tswett has quit (Quit: Page closed).
22:31:38 <Taneb> Just factoids for me to memorize and recite at those who disagree
22:31:39 <ais523> Taneb: if it helps, I normally vote Conservative (although I didn't last election)
22:31:40 <kmc> reddit is great for creating echo chambers like that
22:31:42 <kmc> don't read redditn
22:31:46 <ais523> although I'm well aware that I'm in the minority among my age group
22:31:55 <kmc> i used to troll /r/atheism but that got old too
22:32:01 <Taneb> My family all vote conservative, although in general I don't
22:32:16 <Taneb> kmc, I'm not sure if there are any non-trolls in /r/atheism
22:32:48 <kmc> well they mostly troll in the other direction, then?
22:32:58 <Taneb> Fair enough
22:33:02 <kmc> I said unpopular things that quickly got downvoted
22:33:44 <kmc> such as that if you want to blame the holocaust on hitler being a christian then you can also blame atheism for stalin
22:33:57 <nooodl> tory-bashing sounded like this was just going to be a big awful toribash pun
22:34:56 <Taneb> My childhood spent in a tory family with a lot of labour friends has left me with few to vote for
22:35:05 <prooftechnique> kmc: DID YOU KNOW THAT KING DAVID WAS JEWISH?
22:35:13 <ais523> Taneb: are you currently able to take the Lib Dems seriously?
22:35:29 <Taneb> ais523, no, but I can't take any of the other big parties seriously either
22:35:37 <Taneb> So I end up voting for lib dems anyway
22:35:41 <ais523> what about the small parties?
22:35:59 <prooftechnique> Yeah, like that white supremacist one. I imagine they're a fun bunch
22:36:01 <Taneb> They so far haven't ran in elections where I've voted for
22:36:15 -!- oerjan has joined.
22:36:38 <ais523> which constituency is hexham in anyway?
22:36:53 <ais523> I'm used to Birmingham which is lots of constituencies
22:36:58 <ais523> but Hexham's probably just a fraction of one
22:37:12 <Taneb> It's in Hexham
22:37:26 <ais523> oh, it's a constituency of its own?
22:37:28 <Taneb> Which is by area I think one of the largest in England
22:37:33 <ais523> ah right
22:38:41 <Taneb> Yeah, both times I've voted (once in the Police Commissioners election, once in a county council election), there have been precisely four candidates
22:39:01 <Taneb> One labour, one tory, one lib dem, and one ukip
22:39:12 -!- augur has quit (Remote host closed the connection).
22:39:49 -!- augur has joined.
22:40:59 <Taneb> Both times, I've voted lib dem, and both times, the lib dems have outright lost
22:41:03 <oerjan> ais523: you removed the check for number of edits? btw i tried to test run it, but nothing matched... oh wait we've already deleted those :D
22:41:09 <ais523> oerjan: yeah
22:41:19 <ais523> I thought that the edit count check might be causing the rule to not match
22:41:30 <ais523> and then match when I test ran it because the users had a different number of edits then
22:41:33 <ais523> but apparently not
22:41:41 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.90.1 [Firefox 25.0/20131025151332]).
22:44:47 -!- augur has quit (Ping timeout: 268 seconds).
22:45:12 <Bike> https://twitter.com/genometweet useful service
22:48:16 -!- tertu has joined.
22:49:37 <oerjan> ais523: ok now it blocks _me_ from starting my user page with a header so it must be doing _something_.
22:49:48 <ais523> oerjan: hmm
22:49:51 <ais523> try with the new section button
22:49:54 <ais523> that's what the bots are using
22:50:23 <oerjan> ooh...
22:50:36 <ais523> the button doesn't appear on user pages
22:50:45 <ais523> so you have to get that via link editing
22:51:47 <prooftechnique> I hope the people writing these spambots at least have the decency to write them in an esolang
22:52:03 <ais523> prooftechnique: the people writing them aren't the people running them
22:52:17 <oerjan> ais523: oooh i think i know why it doesn't work...
22:52:20 <ais523> oerjan: go on
22:52:50 <oerjan> when using add section, there are _no_ literal ==s added by the user, it's in a different form field...
22:53:05 <ais523> hmm, could work
22:53:56 <oerjan> hm this means something disturbing, let's check...
22:55:22 <oerjan> hm no, for some reason editing a section does not trigger the filter.
22:55:45 <oerjan> even though the edit area does start with == then
22:55:57 <oerjan> weird
22:56:49 <prooftechnique> http://www.youtube.com/watch?v=HiN6Ag5-DrU
22:57:48 <oerjan> ais523: oh i know i forgot an important test. trying again...
22:59:52 <oerjan> wait no i didn't, sheesh. oh well trying anyhow.
23:00:51 <oerjan> argh
23:01:09 <ais523> if the new section button gets round abusefilter
23:01:14 <ais523> then that may be why the spambots are using it
23:01:40 <oerjan> oh no.
23:01:53 <oerjan> it doesn't. i just managed to trigger it.
23:02:04 <Taneb> `seen Phantom_Hoover
23:02:09 <HackEgo> 2013-11-04 23:35:04: <Phantom_Hoover> imho keep fnord forever
23:02:43 <oerjan> ais523: ok it's _not_ that, the filter triggered this time.
23:03:04 <oerjan> unless there is some weirdness...
23:03:38 <ais523> well there's clearly weirdness
23:03:41 <shachaf> fungot_hoover
23:03:41 <fungot> shachaf: i think it's pretty clear, i think it's bbls that's confused. perl is a lisp
23:03:43 <ais523> we're just not sure what sort of weirdness yet
23:03:55 <oerjan> ok trying the really bad stuff
23:03:57 <ais523> "perl is a lisp" is gold :)
23:06:04 <oerjan> ais523: darn creating my page anew did _not_ trigger the filter.
23:06:35 <ais523> but we know that in general, it can trigger on page creations
23:06:39 <ais523> because 1/2/3 do that all the time
23:06:59 <oerjan> well if those pages didn't crash when we tried to load them...
23:07:02 <ais523> yeah
23:07:13 <ais523> maybe 4 doesn't work properly /because/ it doesn't crash on load
23:07:20 <ais523> also you may be able to load them indirectly
23:07:24 <ais523> via the batch tester
23:07:33 <ais523> it has a button to copy the filter condition from a filter
23:07:44 <ais523> so you could get at their conditions, even if you couldn't edit them
23:10:34 <oerjan> hm right lessee
23:11:28 -!- ^v has joined.
23:16:43 -!- prooftechnique has quit.
23:16:56 <quintopia> what do today
23:18:04 <Taneb> quintopia, which day is that?
23:18:22 <Taneb> I think my today is a different day to oerjan's, for example
23:18:26 -!- prooftechnique has joined.
23:19:09 <oerjan> ais523: nr. 1 just has user_editcount == 0 but i guess you modified that in 4 as a wild guess to why it wasn't working.
23:19:16 <ais523> oerjan: yes
23:21:49 -!- tertu has quit (Read error: Connection reset by peer).
23:22:05 -!- tertu has joined.
23:22:18 <oerjan> ais523: ok next question, why don't my blocked edits show up in the abuse log (for any of the filters)
23:22:39 <ais523> oerjan: possibly because you're an admin
23:23:01 <oerjan> goddammit
23:23:29 <oerjan> also, is a 40something error the right result to get on a blocked edit
23:23:46 <ais523> normally you get a warning, if "Warn" is set
23:24:11 <oerjan> well Warn is only set on nr. 1 afair
23:24:28 <ais523> yeah, to avoid blocking legitimate users
23:25:16 <oerjan> well i cannot be bothered to make another account just to test things.
23:25:46 <ais523> I did on Wikipedia, eventually
23:25:51 <ais523> but yeah MediaWiki's a mess
23:27:51 <oerjan> i have this feeling the world is approaching the bug singularity this year.
23:29:29 <oerjan> IE11 managed to add a bug that makes tab groups dissolve occasionally when you close tabs in them. :(
23:30:07 <oerjan> it did fix one bug that had annoyed me in IE10 though.
23:34:48 <oerjan> elliott: ais523: i'd like to point out that _all_ of the filters, not just 4, stopped registering anything in the abuse log after Nov 5.
23:35:00 <oerjan> while having plenty of hits on that day.
23:35:04 <ais523> oerjan: yeah but I haven't seen any edits that would have hit 1, 2, or 3
23:35:22 <ais523> probably because I did a bunch of rangeblocks on that day
23:35:23 <oerjan> well in that case, maybe something is wrong with the _logging_?
23:35:28 <oerjan> oh. maybe so.
23:37:13 -!- augur has joined.
23:51:31 -!- nooodl has quit (Ping timeout: 244 seconds).
←2013-11-05 2013-11-06 2013-11-07→ ↑2013 ↑all