←2013-12-04 2013-12-05 2013-12-06→ ↑2013 ↑all
00:00:16 -!- Phantom_Hoover has joined.
00:00:29 <oerjan> shachaf: nah too lazy
00:00:55 <shachaf> oerjan: what am i paying you for
00:00:57 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:01:29 <oerjan> nothing hth
00:03:55 -!- Phantom_Hoover has joined.
00:04:30 -!- Sgeo has joined.
00:04:49 -!- ShadowNinja has joined.
00:06:01 <Sgeo> Is Tardis usefully implementable as an operational?
00:06:05 <Sgeo> Because if I understand properly, operational's main limitation is laziness related
00:06:38 -!- Bike has quit (Ping timeout: 240 seconds).
00:07:03 <Sgeo> Also, where has the Eff monad been all my life? This is why I sometimes hate Haskell: It takes too long to replace garbage (e.g. monad transformers) with the stunningly beautiful abstractions Haskellers eventually (eventually!) find
00:07:05 -!- tertu has quit (Ping timeout: 245 seconds).
00:07:56 <oerjan> <shachaf> oerjan: or "p. and w. and g." if you prefer <-- hm i didn't know that, although apparently "bright" is the oldest version (sorry, conspiracy theorist i also found when googling)
00:07:56 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
00:08:49 <shachaf> oh, i thought that was a newer version
00:09:34 <oerjan> not according to imdb
00:11:04 <oerjan> according to the mention there, they changed it from "bright" to "gay" in the film because they changed the time of the scene from night to day
00:11:33 -!- tertu has joined.
00:12:27 <oerjan> Sgeo: soon edwardk will generalize the Eff monad into a lens variant, giving us the function effing
00:12:38 <kmc> :D
00:12:39 * oerjan doesn't know what the Eff monad is
00:12:48 <Sgeo> http://www.reddit.com/r/haskell/comments/1s3oba/24_days_of_hackage_extensibleeffects/
00:12:55 <Sgeo> Still don't totally know how it works
00:13:41 <oerjan> ic haven't got around to reddit today yet
00:14:13 <oerjan> and at this speed i might not
00:17:41 <Sgeo> Maybe I should just read the Oleg paper
00:18:37 -!- Bike has joined.
00:19:35 -!- muskrat has quit (Ping timeout: 245 seconds).
00:19:47 <shachaf> -Weff-c++
00:22:28 <shachaf> kmc: are you going to knuth's christmas tree lecture next week
00:23:33 -!- Phantom_Hoover has joined.
00:27:26 -!- nooodl has quit (Quit: Ik ga weg).
00:30:28 <oerjan> <kmc> the US is moving its Holy See embassy into the same building complex as the Italian embassy <-- hm wp says the holy see protested previously when the uk did that.
00:31:22 <Sgeo> http://hackage.haskell.org/package/pipes-aeson-0.2.0/docs/Pipes-Aeson.html
00:31:22 <Sgeo> err
00:31:23 <Bike> what kind of diplomatic affairs can you even have with the vatican? rescuing a tourist from your country who decided to replace fig leaves with cannabis?
00:31:49 <Sgeo> Why wouldn't encode take objects/arrays to encode as its incoming data?
00:32:33 <Bike> isn't that what it's doing
00:34:22 <Sgeo> Maybe, if Pipe is just a synonym for a function taking an argument or something
00:35:00 <Bike> i mean it says encode takes an Either Object Array
00:35:38 <Sgeo> Yes, but as a normal argument to a function to create a Producer
00:35:52 <Sgeo> So you make one producer out of a single object/array and feed downstream with it
00:35:56 <Sgeo> As far as I understand
00:36:57 <Sgeo> Producers are pipes with capped input
00:37:04 <Sgeo> So yeah :/
00:38:03 <Sgeo> decodeMany
00:38:31 <Sgeo> I don't know if there's a combinator in pipes to turn these into less sucky things
00:38:35 <Sgeo> If there is, I'd be satisfied
00:43:09 <oerjan> @tell FireFly <FireFly> ...or however you produced the list of ignored nicks <-- i think it's a fizzie-only command.
00:43:09 <lambdabot> Consider it noted.
00:45:44 <kmc> shachaf: dunno probably not
00:48:22 <oerjan> !bf +++++++++++++++++++++.
00:48:23 <myndzi>
00:48:23 <EgoBot> ​.
00:48:31 <oerjan> myndzi: wat.
00:48:54 <L8D> !bf +++++ +++++ [ > +++++ +++++ > + << - ] > ++++ . + . > .
00:48:54 <myndzi> hi
00:48:55 <EgoBot> hi
00:48:59 <L8D> wat
00:49:06 <oerjan> oh
00:49:36 <oerjan> i thought it was a bug in his people graphic script but he actually has a bf interpreter?
00:49:44 <L8D> kr
00:49:49 <L8D> ikr*
00:49:51 <oerjan> !help
00:49:51 <EgoBot> ​help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help <command>.
00:50:00 <Bike> nice choice of command character (not!!!)
00:50:14 <L8D> !!
00:50:18 <L8D> !asdf
00:50:26 <L8D> —.—
00:50:31 <Sgeo> Oh
00:50:32 <L8D> —–-
00:50:39 <Sgeo> You can compose producers
00:50:49 <Sgeo> Well, functions that take an argument and return producers
00:50:56 <L8D> in what?
00:51:01 <Sgeo> Or, just use for
00:51:10 <Sgeo> Still, I think a pipe makes more sense
00:51:39 -!- prooftechnique has joined.
00:52:36 <oerjan> Sgeo: i'm sure tekmo will explain at length why it's not done that way if you ask him.
00:53:59 <Bike> http://betabeat.com/2013/09/smell-ya-later-nerds/ "that time my editor tried to get me to go on a date with a sex robot"
00:54:52 -!- Bike has quit (Quit: Reconnecting).
00:55:00 <Sgeo> Wait, did Tekmo make the pipes-aeson library?
00:55:04 <Sgeo> I assumed it was some random
00:55:09 -!- Bike has joined.
00:55:45 <Sgeo> Oh, not Tekmo I think, just the person who is the biggest contributor to the Pipes ecosystem (iirc)
00:56:10 <shachaf> do we have to talk about pipes in here :'(
00:56:27 <Sgeo> shachaf: do you hate pipes?
00:58:13 <shachaf> i hate everything, remember
00:58:46 <ion> shachaf even hates hating everything
00:59:49 <ion> shachaf also hates the player *and* the game.
01:01:20 <kmc> hatepipe would be a good name for a band
01:01:50 -!- john_metcalf has quit (Ping timeout: 240 seconds).
01:02:04 <shachaf> `log good name for a band
01:02:11 -!- Sprocklem has joined.
01:02:34 <kmc> `pastelog name for a band
01:02:36 <HackEgo> No output.
01:02:39 <oerjan> `run cd wisdom; ls | shuf -n 1
01:02:39 <kmc> ????
01:02:40 <HackEgo> As the wisdom directory contains many files named after nicks, listing it in public annoys people. Try https://dl.dropboxusercontent.com/u/2023808/wisdom.pdf instead.
01:02:52 <oerjan> DUH
01:02:52 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.15313
01:03:29 <Bike> gütenbørg would be a good name for a band <-- i concur
01:03:50 <oerjan> Bike: your endoding is showing
01:03:54 <ion> cüncur
01:04:05 <oerjan> *c
01:04:22 <kmc> fuck the web
01:04:25 <Bike> that's how codu presents the file to me.
01:04:28 <kmc> als Gregor FIX YOUR SERVER
01:04:49 <shachaf> is an endoding when you ding yourself
01:05:52 <oerjan> shachaf: bossibly
01:07:17 <oerjan> `quote name for a band
01:07:18 <HackEgo> 1012) <shachaf> "would be a good name for a band when preceded by its quotation" would be a good name for a band when preceded by its quotation
01:07:58 <Gregor> kmc: It's not the server, it's Mercurial, and I have no idea how to make Mercurial do it right. Nor do I care enough to look into it.
01:08:51 <Bike> well thanks for giving us something to blame at least
01:08:56 <Bike> let's burn an effigy
01:11:04 <kmc> use a proxy or something
01:11:26 <Bike> http://www.youtube.com/watch?v=QEzhxP-pdos
01:11:29 <kmc> a reverse proxy just to change the Content-type header
01:20:09 <oerjan> @tell boily <boily> shuf is borken. <-- i think your diagnosis is wrong hth
01:20:10 <lambdabot> Consider it noted.
01:24:38 -!- Bike has quit (Ping timeout: 240 seconds).
01:32:17 -!- Bike has joined.
01:43:13 <oerjan> finally got around to the thing i was going to look up "Therefore, all embassies to the Holy See are located in Rome making Vatican City one of only two sovereign states, the other being Liechtenstein, with no resident embassies located within its territory."
01:44:50 -!- muskrat has joined.
02:20:01 -!- yorick has quit (Remote host closed the connection).
02:35:57 -!- Phantom_Hoover has quit (Remote host closed the connection).
02:58:33 -!- prooftechnique has quit.
03:07:47 -!- nisstyre has quit (Remote host closed the connection).
03:09:45 <Sgeo> Yesod uses Blaze for HTML generation by default?
03:09:47 <Sgeo> :/ :/
03:31:26 -!- Bike has quit (Ping timeout: 250 seconds).
04:09:34 -!- conehead has joined.
04:18:27 -!- Bike has joined.
04:22:16 -!- augur has joined.
04:23:13 -!- augur has quit (Read error: Connection reset by peer).
04:23:19 -!- augur has joined.
04:24:04 -!- augur has quit (Remote host closed the connection).
04:24:30 -!- augur has joined.
04:25:19 -!- augur has quit (Read error: Connection reset by peer).
04:25:40 -!- augur has joined.
04:27:43 -!- augur has quit (Remote host closed the connection).
04:28:10 -!- augur has joined.
04:29:41 -!- augur_ has joined.
04:29:48 -!- augur has quit (Read error: Connection reset by peer).
04:37:30 <kmc> why does twitter think i should follow @SailorMoonFic
04:44:23 <Fiora> maybe it thinks you're tuxedo mask?
04:47:19 <kmc> idgi
04:48:25 <Sgeo> "As a soft introduction to our approach, we implement the single,
04:48:25 <Sgeo> simplest effect: obtaining a (dynamically-bound) Int value from"
04:48:31 <Sgeo> I can think of a monad simpler than Reader
04:50:01 <Bike> id
04:50:59 <kmc> what about data M a = M
04:51:05 <kmc> simpler imo
04:51:12 <kmc> maybe it's not an "effect" tho
04:51:38 <kmc> suppressing all computation seems like an effect to me
04:51:49 <kmc> I guess there are even lazy and strict variants of that monad?
04:51:51 <Bike> is that like the monadic equivalent of the zero function
04:52:16 -!- ^v has quit (Quit: http://i.imgur.com/MHuW96t.gif).
04:55:09 <Bike> also i figured out how to get xilinx to tell me what it's synthesizing
04:55:22 <Bike> ais was right, half the report is "we found a multiplexor, you stupid human"
05:11:10 -!- nisstyre has joined.
05:23:28 -!- muskrat has quit (Read error: Connection reset by peer).
05:31:10 -!- nisstyre has quit (Remote host closed the connection).
05:41:52 -!- L8D has quit (Ping timeout: 250 seconds).
05:45:41 <Bike> oh sweet, the manual has a full listing of the logic table for a six input lut
05:46:14 <Bike> 000000: INIT[0]. 000001: INIT[1] ... 111111: INIT[63].
06:04:40 -!- nisstyre has joined.
06:05:03 -!- oerjan has quit (Quit: leaving).
06:31:27 -!- conehead has quit (Read error: No route to host).
06:41:40 -!- Sprocklem has quit (Ping timeout: 245 seconds).
07:04:18 <Sgeo> asdjfajsdfhajklsdfhajdfhlaksjdfhasjkldfhlasjkfaksljfhalkjsdfhsakfjhlafhalksfdjhalksjdfhlaskjdfhalkjdf
07:04:24 <Bike> yeah
07:05:14 <kmc> > sort "asdjfajsdfhajklsdfhajdfhlaksjdfhasjkldfhlasjkfaksljfhalkjsdfhsakfjhlafhalksfdjhalksjdfhlaskjdfhalkjdf"
07:05:15 <lambdabot> "aaaaaaaaaaaaaaadddddddddddfffffffffffffffhhhhhhhhhhhhjjjjjjjjjjjjjjkkkkkkk...
07:05:21 <Sgeo> The equivalent of gensym for Template Haskell can capture other names
07:05:26 <kmc> hilarious
07:05:59 <Bike> i'm worryingly close to thinking that i'll be able to get this audio jack out. i am mad with power and cannot be stopped.
07:06:41 <Bike> what does "capturing a name" mean
07:10:26 <Sgeo> Not totally sure, the example makes little sense to me
07:10:27 <Sgeo> http://hackage.haskell.org/package/template-haskell-2.8.0.0/docs/Language-Haskell-TH.html
07:10:31 <Sgeo> newName
07:11:09 <Bike> why would you put a line of crap into irc because of something offending you if you don't even understand the example
07:12:44 <Sgeo> Because I understand the example well enough to see it could cause pain (although also not sure about how much)
07:13:04 <Sgeo> As in, not sure if normal names in Haskell are more like mkName or more like newName
07:13:08 <lifthrasiir> isn't irc supposed to be the international repository of craps?
07:13:33 <Bike> actually, looking at it, it does seem silly, but whatever it's template haskell
07:14:13 <Bike> i don't know why everyone has such a big problem just having symbols be identifiers without doing all this weird stuff
07:17:03 <Bike> but then i also don't know why xilinx apparently won't let me export a schematic.
07:17:29 <Sgeo> It would be ... polite ... if the TH API docs actually said that {} indicates what the example relates to
07:17:39 <Sgeo> (phrasing it better than I just did ofc)
07:20:34 <Sgeo> It does, in one place
07:25:19 -!- augur_ has quit (Ping timeout: 260 seconds).
07:29:08 -!- augur has joined.
07:32:23 -!- FreeFull has quit.
08:04:47 <Halite[tablet]> I have an idea
08:05:06 <Halite[tablet]> How about we create a language for finite state machine
08:07:52 <kmc> there are many of those
08:07:55 <kmc> for example http://www.complang.org/ragel/
08:08:03 <Halite[tablet]> Ok...
08:08:59 <Bike> that looks so much better than lex, jesus
08:09:16 <kmc> yeah
08:09:43 <kmc> oh HarfBuzz uses Ragel? cool
08:10:02 <Bike> is that a company, a program, or a medical condition
08:10:06 <kmc> HarfBuzz is a library with a stupid name that most people haven't heard of
08:10:12 <Halite[tablet]> Can I make my own?
08:10:19 <kmc> but it's responsible for like, most text rendering in open source software
08:10:59 <lifthrasiir> I did know HarfBuzz uses Ragel, but why does it use that? Unicode bidirectional algorithm?
08:11:06 <Bike> your own what, fsm layout thingie? sure, probably educational
08:11:08 <kmc> i don't know
08:15:08 -!- augur_ has joined.
08:15:53 <Bike> writing your own regex implementation is fun too
08:16:04 <Bike> plus, you pretty much can't possibly make the syntax worse
08:16:22 -!- Sorella has quit (Read error: Connection reset by peer).
08:16:26 <kmc> required reading http://swtch.com/~rsc/regexp/regexp1.html http://swtch.com/~rsc/regexp/regexp2.html http://swtch.com/~rsc/regexp/regexp3.html
08:16:36 -!- augur has quit (Read error: Connection reset by peer).
08:16:44 -!- Sorella has joined.
08:17:20 -!- Sorella has quit (Changing host).
08:17:20 -!- Sorella has joined.
08:17:21 <Bike> oops i didn't know there were parts two and three >_>
08:19:05 <lifthrasiir> and part four. http://swtch.com/~rsc/regexp/regexp4.html
08:19:18 <kmc> ooh
08:19:20 <Bike> hey the unicode thing is cool.
08:23:27 <olsner> I think that article was my first exposure to the slow method for regexp matching
08:34:29 <kmc> "How I Learned to Stop Worrying and Love the Bubble: Airbnb's new office has a replica of the Dr. Strangelove war room"
08:56:23 -!- carado has joined.
09:17:45 -!- carado has quit (Ping timeout: 252 seconds).
09:51:12 -!- Taneb has joined.
10:09:35 -!- Sorella has quit (Ping timeout: 260 seconds).
10:28:29 -!- Taneb has quit (Quit: Page closed).
11:32:39 -!- nooodl has joined.
11:43:16 -!- Sellyme has quit (Excess Flood).
11:45:18 -!- Sellyme has joined.
11:54:05 <ion> “Finns are such a jealous people we are jealous for Scots being the world’s most jealous people.”
11:56:14 -!- Sellyme has quit (Excess Flood).
11:58:19 -!- Sellyme has joined.
12:00:40 -!- Sellyme has quit (Excess Flood).
12:02:19 -!- Sellyme has joined.
12:45:00 -!- Frooxius has quit (Read error: Connection reset by peer).
12:50:58 -!- muskrat has joined.
12:51:20 -!- Sgeo has quit (Read error: Connection reset by peer).
12:58:20 -!- Sorella has joined.
12:58:55 -!- Sorella has quit (Changing host).
12:58:55 -!- Sorella has joined.
13:03:07 -!- boily has joined.
13:03:15 -!- metasepia has joined.
13:19:23 <fizzie> Hey, that http://swtch.com/~rsc/regexp/regexp1.html example is a wrong.
13:19:29 <fizzie> (I also didn't know about part 4.)
13:20:34 <fizzie> "The following sections present an implementation written in portable ANSI C." "struct State { int c; State *out; State *out1; int lastlist; };" That's not C at all.
13:21:38 <fizzie> (It's missing the "struct" keyword for out/out1, and it does that same thing for all the types, and all member/variable declarations it shows.)
13:23:33 <fizzie> The downloadable version has separate typedefs, so I guess you could argue it's only showing an excerpt.
13:23:44 -!- yorick has joined.
13:23:53 <b_jonas> yeah, it probably has a separate typedef above
13:26:54 <boily> good typedefllä morning!
13:26:59 <boily> @messages-loud
13:26:59 <lambdabot> mrhmouse said 15h 1m 10s ago: "Marble Hornets" is supposedly good, according to my SO. I haven't watched it, myself.
13:26:59 <lambdabot> mrhmouse said 14h 59m 11s ago: Ignore that; I collect socks.
13:26:59 <lambdabot> oerjan said 12h 6m 49s ago: <boily> shuf is borken. <-- i think your diagnosis is wrong hth
13:27:52 <boily> @tell mrhmouse I won't ignore the sock collection.
13:27:52 <lambdabot> Consider it noted.
13:28:19 -!- realz has quit (Ping timeout: 260 seconds).
13:28:36 <boily> @tell oerjan <oerjan> <boily> shuf is borken. <-- i think your diagnosis is wrong hth <-- So what was it, then?
13:28:37 <lambdabot> Consider it noted.
13:31:08 -!- realzies has joined.
13:32:02 <fizzie> boily: I'm still not oerjan, but it was the special-casing of 'ls' in wisdom.
13:32:02 <FireFly> @messages-cold
13:32:02 <lambdabot> oerjan said 12h 48m 52s ago: <FireFly> ...or however you produced the list of ignored nicks <-- i think it's a fizzie-only command.
13:32:29 <fizzie> `run cd wisdom; ls | shuf -n 1
13:32:31 <HackEgo> As the wisdom directory contains many files named after nicks, listing it in public annoys people. Try https://dl.dropboxusercontent.com/u/2023808/wisdom.pdf instead.
13:32:40 <fizzie> `run \? As whatever whatever whatever
13:32:42 <HackEgo> A cocoonspirator is a collaborator wrapped in caterpillar silk
13:32:44 <fizzie> See above.
13:33:12 <fizzie> ^ignore
13:33:12 <fungot> ^(EgoBot|HackEgo|toBogE|Sparkbot|optbot|lambdabot|oonbotti|cuttlefish|ruddy)!
13:33:12 <ruddy> No clue what you mean. What do you think, fungot?
13:33:47 <fizzie> (It is a fizzie-only command, yes, though in retrospect maybe it might not need to be. Especially the query side of it.)
13:34:24 <FireFly> Oh, so I did remember the command name right, then
13:38:25 -!- muskrat has quit (Quit: Leaving).
13:50:43 -!- MindlessDrone has joined.
14:00:23 -!- copumpkin has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…).
14:01:12 -!- Taneb has joined.
14:01:44 <Taneb> `tanebventions
14:01:46 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: tanebventions: not found
14:01:49 <Taneb> `? tanebventions
14:01:51 <HackEgo> Tanebventions include D-modules, automatic squirrel feeders, the torus, Stephen Wolfram, and Go.
14:01:57 <Taneb> `? chu spaces
14:01:59 <HackEgo> A Chu space is just a matrix. Taneb invented them, then Chu stole his invention.
14:02:38 <Taneb> Also aaaaaaaaaaaaaah
14:02:52 <Taneb> I need to get familiar with INTERCAL 72 very quickly!
14:08:06 <FireFly> `run sed -i 's/modules/&, Chu spaces/' wisdom/tanebventions
14:08:07 <HackEgo> sed: can't read wisdom/tanebventions: No such file or directory
14:08:27 -!- Halite has joined.
14:09:07 <FireFly> `run ls wisdom/*vention*
14:09:09 <HackEgo> wisdom/tanebvention
14:09:18 <FireFly> `run sed -i 's/modules/&, Chu spaces/' wisdom/tanebvention
14:09:22 <HackEgo> No output.
14:09:28 <FireFly> `? tanebvention
14:09:29 <HackEgo> Tanebventions include D-modules, Chu spaces, automatic squirrel feeders, the torus, Stephen Wolfram, and Go.
14:10:04 -!- L8D has joined.
14:11:59 -!- L8D_ has joined.
14:12:04 <boily> ♪ pdfnouncement ♪ I split the places into their own chapter.
14:12:05 <boily> Taneb: the one with the worms and unascii characters?
14:12:05 -!- Halite[tablet] has quit (Ping timeout: 252 seconds).
14:12:06 -!- L8D has quit (Ping timeout: 252 seconds).
14:12:09 -!- Halite has changed nick to Halite[tablet].
14:12:21 <Taneb> boily: aye
14:16:00 <FireFly> Things were more interesting when you could backspace to overstrike characters
14:16:50 <boily> ȼ
14:18:14 <int-e> /^H\
14:18:56 <int-e> surely there must be some terminal emulators that support this.
14:18:58 <FireFly> I wonder if a unicode codepoint for "overstrike next character on top of previous one" would make sense
14:19:29 <int-e> (line printer emulator?)
14:20:40 <boily> test: /\
14:22:15 <boily> I sent «/\b\\», it appears as «mMsg = "test: /\b\\"» from metasepia's logs, but it gets displayed as «/ \» in weechat. I am disappoint.
14:23:08 <int-e> (my?) irssi displays /, then an inverse H, then a \.
14:23:30 <int-e> (the inverse H is ^H, so you sent what you intended to send)
14:25:32 <boily>
14:25:56 <int-e> boily: abandon all hope etc pp.
14:26:13 <boily> pp?
14:27:48 <boily> there's also \̸, but it's cheating.
14:28:04 <int-e> et cetera, perge, perge. and so on and so forth. (I had to look it up.) It's moderately common in German, I guess it's not used in English.
14:30:32 <boily> tmyk. tdh. ty.
14:31:15 -!- L8D_ has quit (Ping timeout: 245 seconds).
14:31:55 <int-e> tdh?
14:32:00 <boily> `? tdh
14:32:02 <HackEgo> tdh is the past tense of a successful hth. hth.
14:32:58 <int-e> Oh. "did". tdh.
14:36:45 <boily> int-e: you speak German? what are your approximate coördinates and body weigh?
14:37:22 <int-e> Austria / unknown.
14:38:25 <int-e> (I'm not fond of being tossed around with catapults. What else would you want to know my weight for?)
14:38:51 <boily> to find #esoteric's center of mass.
14:38:55 <FireFly> Naturally.
14:39:09 <int-e> hah.
14:39:14 <Taneb> @ask ais523 Was Underload intentionally a FALSE subset?
14:39:14 <lambdabot> Consider it noted.
14:42:59 <Taneb> @tell ais523 or near-subset
14:42:59 <lambdabot> Consider it noted.
14:44:35 -!- Phantom_Hoover has joined.
14:54:48 -!- mrhmouse has joined.
14:56:16 <Taneb> ^source
14:56:16 <fungot> https://github.com/fis/fungot/blob/master/fungot.b98
14:57:00 <boily> we live in a sad world. github doesn't highlight befunge.
14:57:37 <Taneb> Is it even possible to syntax highlight funge nicely
14:57:54 <Taneb> Seeing as something may or may not be part of a string depending on where you are looking
14:58:01 <Taneb> *from which direction
15:00:15 <boily> the only solution is to run the code itself and see!
15:00:47 <FireFly> Not only that, but a string could start and end at the same spot
15:00:56 <FireFly> and code could be used both as a string and code
15:04:23 <boily> maybe one should apply stochastic highlighting. at least one character is bound to be properly highlighted.
15:04:29 <mrhmouse> has anybody created an animation of what funge execution looks like? following the IP at a slow enough speed to observe, I mean
15:05:04 <boily> there was that editor I used many years ago when I was on Windows. can't remember its name.
15:05:21 <boily> it had a very DOSsy feeling, what with white text on a blue background.
15:06:25 <FireFly> mrhmouse: http://www.bedroomlan.org/tools/befunge-93-playground
15:08:59 <nooodl> boily: was it EDIT.COM
15:09:02 <mrhmouse> FireFly: Exactly what I was looking for :D Thank you!
15:09:41 <Taneb> Maybe you could sort of have lines of execution
15:11:27 <boily> nooodl: no, a Windows program, with a toolbar and stuff and lots of blue. you could see the IP go around your program, and the stack at the bottom.
15:12:37 <Taneb> ^ul (")S
15:12:37 <fungot> "
15:12:44 <Taneb> Oooh, noncompliance
15:14:05 <fizzie> "However, no known interpreter ever, not even the reference interpreter, seems to have implemented any part of this other than the rules about parentheses, and this is therefore arguably not part of the language."
15:14:41 <Taneb> Oooh, ubiquitous noncompliance
15:15:02 <Taneb> I may write a compliant interpreter just for the hell of it
15:15:08 <fizzie> ^ul ([{}])S( complete noncompliance )!
15:15:08 <fungot> [{}]
15:16:22 <boily> you know you're talking to someone serious when they threaten to write something compliant in protest.
15:20:50 <FireFly> Taneb: stop complianing
15:23:27 <boily> `addquote <Taneb> I may write a compliant interpreter just for the hell of it <FireFly> Taneb: stop complianing
15:23:31 <HackEgo> 1142) <Taneb> I may write a compliant interpreter just for the hell of it <FireFly> Taneb: stop complianing
15:25:04 <Taneb> Is Befunge-93 a strict subset of Befunge-98?
15:26:01 <boily> FireFly: ♪ dıng ♪ you have an active quote!
15:26:20 <FireFly> boily: what makes a quote 'active'?
15:26:30 <FireFly> Taneb: no
15:26:56 <Taneb> FireFly: oh?
15:27:03 <FireFly> Taneb: for instance, whitespace inside strings in B98 always correspond to exactly one space (à la HTML) whereas in B93 it's treated literally
15:27:06 <boily> FireFly: you say something.
15:27:20 <FireFly> Oh, I didn't do that in the others
15:27:31 <FireFly> hm, I think I have one where I /me
15:27:34 <boily> (that, and I overlooked your “Meh” uttered in response to oerjan's Standard Flyswatter.)
15:27:40 <FireFly> fair point
15:30:10 <Taneb> Is there an online /// interpreter thingy?
15:37:03 <nooodl> "$88*+3-.@%
15:37:13 <nooodl> should print 93 in befunge-93 and 98 in befunge-98
15:37:17 -!- MindlessDrone has quit (Read error: Operation timed out).
15:39:08 <boily> `ord %
15:39:09 <HackEgo> 37
15:39:15 <boily> `ord
15:39:16 <HackEgo> 32
15:39:22 <boily> nooodl: subtle.
15:40:03 -!- Frooxius has joined.
15:40:55 <nooodl> "++3-.@ %
15:40:58 <nooodl> i like this one even more
15:41:36 <nooodl> > (sum $ map ord " % ") - 3
15:41:37 <lambdabot> 98
15:41:40 <nooodl> > (sum $ map ord " ") - 3
15:41:41 <lambdabot> 93
15:47:29 <FireFly> Clever
15:48:15 <FireFly> So, are we golfing "print 93/98 depending on befunge version implemented"?
15:48:32 <boily> pretty much so.
15:48:42 <boily> next step: a wumpus onëliner.
15:53:22 -!- MindlessDrone has joined.
15:57:13 <b_jonas> what's the metric when golfing befunge?
15:57:36 <boily> area covered?
15:58:04 <nooodl> "]b";;.@.
15:58:12 -!- oerjan has joined.
15:58:20 <nooodl> also cute but no shorter
15:59:24 <nooodl> (in befunge-93, ';' reverses the IP, so the stack becomes "]bb]" and ']'=93 is printed. in befunge-98 the ;; is jumped over)
16:00:15 <oerjan> @messages-good
16:00:15 <lambdabot> boily said 2h 31m 38s ago: <oerjan> <boily> shuf is borken. <-- i think your diagnosis is wrong hth <-- So what was it, then?
16:00:19 -!- conehead has joined.
16:00:37 <oerjan> @tell boily fizzie is an excellent doctor hth
16:00:37 <lambdabot> Consider it noted.
16:01:10 -!- Phantom__Hoover has joined.
16:01:21 <Taneb> @tell Ngevd when will I ever see you agaaaaiiiiiin
16:01:21 <lambdabot> Consider it noted.
16:01:26 <Taneb> `? Ngevd
16:01:28 <HackEgo> ​?w:EȬ;YQn_dw؋މ5u|kXR[6MU“kZe$
16:03:13 <boily> oerjan: hellœrjan.
16:03:22 <boily> @messages-orange
16:03:23 <lambdabot> Unknown command, try @list
16:03:27 <boily> @messages-chicken
16:03:27 <lambdabot> Unknown command, try @list
16:03:31 <boily> @messages-LOUD
16:03:32 <lambdabot> Unknown command, try @list
16:03:35 <boily> AAAAURGH!
16:03:39 <boily> @messages-messages
16:03:40 <lambdabot> Unknown command, try @list
16:03:47 <boily> @messages
16:04:00 <oerjan> boily: you only get to change two letters hth
16:04:11 <nooodl> @messages-gouda
16:04:11 <lambdabot> You don't have any messages
16:04:34 -!- Phantom_Hoover has quit (Ping timeout: 250 seconds).
16:04:34 <oerjan> nooodl: now that's just cheesy
16:04:53 <Taneb> @messages-godot
16:04:54 <lambdabot> Unknown command, try @list
16:04:58 <Taneb> :(
16:05:05 <Taneb> Wait
16:05:09 <Taneb> "loud" is the base
16:05:14 <Taneb> @messages-lotad
16:05:14 <lambdabot> You don't have any messages
16:05:22 <boily> @messages-lorris
16:05:23 <lambdabot> Unknown command, try @list
16:05:25 <boily> ...
16:05:29 * boily mapoles lambdabot
16:05:37 <FireFly> b_jonas: I've simply used characters-in-source-code on CGSE; that seems fair to me
16:06:03 <FireFly> boily: the edit distance has to be ≤2
16:06:10 <oerjan> boily: that was four letters hth
16:06:18 <boily> edit distance, as in levenshtein?
16:06:25 <FireFly> I think so, yes
16:06:34 <boily> @massages-luod
16:06:35 <lambdabot> Unknown command, try @list
16:06:38 <boily> @messages-luod
16:06:38 <lambdabot> You don't have any messages
16:06:49 <oerjan> @messages-luody
16:06:49 <lambdabot> Unknown command, try @list
16:07:02 <oerjan> swap doesn't seem to be primitive
16:07:30 <b_jonas> FireFly: I see
16:08:05 <FireFly> Taneb: oh, also in -98 ~ and & are specified to act as a mirror after reaching EOF, whereas nothing was specified in -93 I think
16:08:17 <Taneb> Okay
16:09:00 <Taneb> (I'm presenting a talk entitled "A Tour of Esoteric Programming Languages" in just over 3 hours. I'm making sure I'm not saying anything hideously wrong.)
16:10:20 <myname> Taneb: oh wow
16:10:42 <myname> will it be recorded?
16:11:04 <Taneb> myname: I don't think so
16:11:11 <myname> :(
16:11:30 <Taneb> Maybe I can get someone to record it on their phone
16:11:59 <FireFly> Please do
16:13:41 -!- `^_^v has quit (Quit: This computer has gone to sleep).
16:14:45 <mrhmouse> Taneb: your invocation of Ngevd earlier borked tmux :P
16:14:57 -!- `^_^v has joined.
16:15:05 <Taneb> mrhmouse: then tmux is bad
16:15:36 <mrhmouse> Taneb: well it's over PuTTY, so it's entirely possible that I just have PuTTY configured incorrectly
16:15:38 <Taneb> mrhmouse: also sorry
16:16:01 <mrhmouse> Taneb: no problem; I'm only using tmux to view ruddy's logs
16:16:03 <ruddy> ​then tmux is your invocation of ngevd earlier borked tmux :p hm. trying to start screen in tmux in
16:16:16 <oerjan> mrhmouse: it didn't break _my_ tmux over putty hth
16:16:44 <mrhmouse> oerjan: what's your remote character set?
16:16:51 <mroman_> 3 Hours?
16:16:51 <oerjan> utf-8
16:16:52 <mroman_> o_O
16:17:27 <oerjan> mrhmouse: ok if you're doing it for ruddy's logs then you probably don't have irssi in there too
16:17:28 <mrhmouse> oerjan: Hmmm, that's the same as mine. And your $TERM? Mine is 'screen'
16:17:31 <ruddy> I don't know. What do you think, fungot?
16:17:33 <Taneb> mroman_: it's hat half 7
16:17:35 <oerjan> and irssi does charset fallback
16:17:59 <mrhmouse> oerjan: nope, I only use IRSSI at home :) I'm using Pidgin here.
16:18:10 <mroman_> Taneb: What?
16:18:13 <mroman_> What's a hat?
16:18:42 <Taneb> `hh a hat is an at
16:18:43 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: hh: not found
16:18:47 <Taneb> :(
16:19:22 <boily> `h h?
16:19:23 <HackEgo> Can't open h?: No such file or directory.
16:19:31 <boily> ...?
16:20:08 <oerjan> mrhmouse: btw iirc tmux always uses screen as its internal $TERM
16:21:30 <oerjan> `h echo hi
16:21:31 <HackEgo> Can't open echo hi: No such file or directory.
16:21:35 <oerjan> hmph
16:21:48 <oerjan> `cat bin/h
16:21:49 <HackEgo> ​#!/usr/bin/perl -p \ s/([aeiouy])([bcdfghjklmnpqrstvxz])/$1h$2/ig
16:21:58 -!- Taneb has quit (Quit: Page closed).
16:22:07 <oerjan> oh it's meant to be piped.
16:22:32 <boily> `run echo 'hatee-hatee-hatee-hooo' | h
16:22:33 <HackEgo> hahtee-hahtee-hahtee-hooo
16:22:46 <oerjan> `? hat
16:22:47 <HackEgo> hat? ¯\(°​_o)/¯
16:23:11 <oerjan> `run echo "hatee-hatee-hatee-hooo" >wisdom/hat
16:23:15 <HackEgo> No output.
16:23:36 <oerjan> can't keep you unoccupied you know
16:24:03 <boily> oerjan: done. you fiend.
16:24:04 <mrhmouse> oerjan: that's what I thought, too, but I rarely give thought to my $TERM :P
16:25:19 <boily> ~metar CYUL
16:25:20 <metasepia> CYUL 051616Z 00000KT 7SM -RA OVC034 03/01 A2981 RMK SC8 -RA INTMT SLP095
16:25:21 <oerjan> boily: yw
16:25:26 <boily> ~metar EFHK
16:25:26 <metasepia> EFHK 051620Z 13006KT 9999 FEW020 BKN063 M00/M03 Q0984 NOSIG
16:25:31 <oerjan> ~metar ENVA
16:25:32 <metasepia> ENVA 051620Z VRB01KT 9999 FEW012 BKN047 M05/M07 Q0978 NOSIG RMK WIND 670FT 34003KT
16:25:33 <boily> woohoo! it's warmer here!
16:25:42 <oerjan> *BRRR*
16:25:47 <boily> oerjan: ilutpdf.
16:25:59 <oerjan> wat
16:26:05 <boily> I like updating the PDF.
16:26:09 <oerjan> g, g
16:26:20 <boily> s, hl?
16:26:35 <oerjan> argh!!
16:27:05 <boily> so, how's life?
16:27:17 <oerjan> awful thx
16:31:25 <boily> troubles with your world domination plans?
16:31:33 <FireFly> ~metar essa
16:31:33 <metasepia> --- Station not found!
16:31:37 <FireFly> ~metar ESSA
16:31:38 <metasepia> ESSA 051620Z 18019KT 9999 FEW040 04/01 Q0974 R01L/710169 R08/710158 R01R/710161 NOSIG
16:32:07 <FireFly> Well there's snow outside
16:32:27 <FireFly> Though I guess maybe not necessarily up where ESSA is
16:33:50 <oerjan> `? a
16:33:52 <HackEgo> A cocoonspirator is a collaborator wrapped in caterpillar silk
16:33:58 <oerjan> `? cocoonspirator
16:34:00 <HackEgo> A cocoonspirator is a collaborator wrapped in catterpillar silk
16:34:19 <FireFly> `? b
16:34:20 <HackEgo> b? ¯\(°​_o)/¯
16:34:51 <oerjan> boily: the world keeps trying to dominate me instead!
16:35:38 <boily> `run rm wisdom/a
16:35:42 <HackEgo> No output.
16:36:11 <boily> oerjan: the horror! how is your personal identity affected ?
16:36:45 <oerjan> you removed the one which wasn't misspelled hth
16:37:12 <oerjan> `run sed -i 's/catt/cat/' wisdom/cocoonspirator
16:37:16 <HackEgo> No output.
16:38:44 <oerjan> `learn A is _not_ a town in Norway, unless you're the BBC and don't understand things on top of letters.
16:38:49 <HackEgo> I knew that.
16:40:01 <FireFly> Å is a town in Norway?
16:40:06 <oerjan> `learn A is _not_ a village in Norway, unless you're the BBC and don't understand things on top of letters.
16:40:10 <HackEgo> I knew that.
16:40:17 <oerjan> FireFly: ok, a village then
16:41:00 <oerjan> https://en.wikipedia.org/wiki/%C3%85,_Moskenes
16:42:23 <oerjan> https://en.wikipedia.org/wiki/%C3%85_(disambiguation) has plenty
16:42:55 <FireFly> Looks like there's an Å in Sweden and one in Denmark too
16:51:40 -!- MindlessDrone has quit (Ping timeout: 245 seconds).
16:52:00 <oerjan> `unidecode
16:52:02 <HackEgo> ​[U+000F DUNNO]
16:56:05 <oerjan> `? tmyk
16:56:07 <HackEgo> tmyk? ¯\(°​_o)/¯
16:57:11 <oerjan> `learn tmyk the more overfilled your brain gets.
16:57:16 <HackEgo> I knew that.
17:05:38 -!- MindlessDrone has joined.
17:06:40 -!- Bike has quit (Ping timeout: 245 seconds).
17:06:50 <oerjan> `quote 1142
17:06:51 <HackEgo> 1142) <Taneb> I may write a compliant interpreter just for the hell of it <FireFly> Taneb: stop complianing
17:08:22 <oerjan> @tell gregor please fix the logs not to merge duplicate spaces, it's making quotes look like they're not qdbformat compliant hth
17:08:23 <lambdabot> Consider it noted.
17:10:30 <oerjan> @tell taneb <Taneb> Is there an online /// interpreter thingy? <-- EgoBot has !slashes
17:10:30 <lambdabot> Consider it noted.
17:10:53 <oerjan> !slashes /X/World!/Hello, X
17:10:56 <EgoBot> Hello, World!
17:13:46 <oerjan> `quote meh
17:13:47 <HackEgo> 57) * oerjan swats FireFly since he's easier to hit -----### <FireFly> Meh * FireFly dies \ 78) <Warrigal> I seem to think of coaxial cables as being omnipotent somehow. \ 598) <Ngevd> Somehow I managed to read Haskell as Befunge \ 1081) <Phantom_Hoover> my emergency contacts list somehow has my father listed in both slots, in one of them as my d
17:14:59 <int-e> b_jonas: I have some small progress on the nega-Zeckendorf front; empirically, carries from addition and subtraction are limited to -1, 0, 1 in that case as well. I have not yet proved it, but I expect it won't be hard.
17:16:46 -!- oerjan has quit (Quit: Etc. pp.).
17:17:01 <int-e> (where a "carry" now is adding the pattern -1,+1,+1 (positive) or +1,-1,-1 (negative) at some position.)
17:20:27 <int-e> Oh, I should add (no pun intended) that in my current representation, the least significant bits are currently to the left.
17:30:55 -!- conehead has quit (Quit: Computer has gone to sleep.).
17:33:04 -!- ^v has joined.
17:34:22 -!- augur_ has quit (Remote host closed the connection).
17:34:49 -!- augur has joined.
17:38:33 * quintopia shuns the little-endian
17:39:14 -!- augur has quit (Ping timeout: 264 seconds).
17:39:42 <Phantom__Hoover> quintopia, little-endian is best endian
17:40:16 <FireFly> How so?
17:40:43 <quintopia> Phantom__Hoover: Queen would disagree
17:56:19 -!- FreeFull has joined.
18:01:10 <boily> little-endian is nasty. big-endian is dumb. middle-endian all the way!
18:03:04 <mroman_> Shouldn't there be uhm
18:03:22 <mroman_> 1*2*3*4 = 24 possible endiannesses?
18:03:38 <mroman_> for 32bit values at least
18:03:41 <mrhmouse> are we talking about Lilliputians
18:03:53 <FreeFull> mroman_: Only if you consider the bytes
18:03:55 <FreeFull> Bitwise...
18:04:06 <mroman_> 32! is probably pretty big
18:04:35 <FreeFull> 32! is 263130836933693530167218012160000000
18:04:40 <mroman_> Oh ok
18:04:44 <mroman_> So not *that* big at all
18:05:13 <FreeFull> I don't think you understand scale. Remember our number system is logarithmic
18:05:16 <FreeFull> That is pretty huge
18:05:40 <mroman_> What
18:05:42 <boily> pfshaw. I decree that number to be small.
18:05:46 <mroman_> big is > 2**128
18:06:21 <mroman_> !python reduce(lambda a,b: a*b, range(1,33)) > 2**128
18:06:22 <EgoBot> No output.
18:06:29 <FreeFull> 2**128 is 340282366920938463463374607431768211456
18:06:30 <mroman_> !python print (reduce(lambda a,b: a*b, range(1,33)) > 2**128)
18:06:31 <EgoBot> False
18:06:37 <olsner> boily: what do you mean small? there are seven zeroes at the end!
18:06:47 <olsner> (that makes it an 8 digit number)
18:06:49 <FreeFull> 2**128 is bigger than 32!
18:06:56 <mroman_> FreeFull: Obviously
18:07:11 <mroman_> 2**x for x > 32 is always bigger than 32
18:07:48 <boily> olsner: zeroes don't mean nothing. that's why they are zeroes.
18:08:06 <FreeFull> Well, 32 is 2**5
18:08:17 <FreeFull> So any x > 5 will do
18:08:18 <olsner> boily: they mean stuff when you put them next to numbers on the right end
18:08:50 -!- conehead has joined.
18:09:15 <mroman_> log(x)/log(x^2) .
18:09:53 <boily> mroman_: 0.5.
18:11:27 -!- augur has joined.
18:12:53 <mroman_> yeah
18:12:58 <olsner> I wish I never learnt that car scenes in old movies are shot in a stationary car in front of a projected background
18:13:08 <mroman_> I use it as a random function
18:14:24 <myname> wat/win 8
18:14:28 <myname> gna
18:15:40 <mroman_> due to floating point errors
18:16:28 <boily> myname: ... wut???????
18:16:33 <olsner> and apparently michael caine was young once, that's a bit unsettling
18:17:04 <myname> boily: happens sometimes if i try using irc via a really crappy smartphone
18:18:14 <boily> one reason to learn Chinese: you can draw the characters on the phone!
18:19:07 <myname> i can draw normal letters now, too
18:19:42 <boily> normål lettërs are borįng.
18:21:48 -!- Slereahphone has joined.
18:22:47 -!- Taneb has joined.
18:23:35 -!- Slereahphone has quit (Client Quit).
18:23:43 <FreeFull> ńóŕḿáĺ?
18:23:54 -!- Slereah has joined.
18:33:48 -!- Bike has joined.
18:49:05 <boily> FreeFull: ǹòr̀m̀àl̀.
18:51:24 <Bike> http://mathoverflow.net/questions/53122/mathematical-urban-legends/53172#53172
18:55:08 <myname> normal schmormal
18:59:24 -!- Taneb has quit (Quit: Page closed).
19:02:25 <b_jonas> int-e: re nega-zeckendorf, nice. can you subtract in normal zeckendorf though?
19:03:12 <int-e> b_jonas: in principle, yes. I don't have the code.
19:04:24 <b_jonas> int-e: because I believe subtraction is possible but I don't know if it can be done the same way as addition
19:04:36 <b_jonas> probably can, if you do negative carries too
19:04:39 <FreeFull> ṅȯṙṃạḷ
19:04:48 <int-e> b_jonas: there are negative carries in addition, too
19:05:30 <b_jonas> int-e: sort of, yes, but the digits of the intermediate result don't become negative
19:06:28 <int-e> b_jonas: I'll probably work a bit on this coming weekend. For now, all I can say is that I'm convinced that the same principle works.
19:06:52 <b_jonas> ok
19:06:56 <b_jonas> nice
19:09:06 <b_jonas> this probably means that in principle you could implement a serial computer alu with zeckendorf or nega-zeckendorf representation instead of binary, as long as you want integers only
19:09:37 <b_jonas> oh by the way
19:09:41 * boily applies a diactriticised kij klonowy onto FreeFull
19:09:53 <b_jonas> int-e: there's one more thing that I think you could do with fibonacci numbers
19:10:11 <b_jonas> int-e: do you know fibonacci-search (instead of binary search) of a list? Knuth describes it
19:10:52 <b_jonas> I think you could do a twin-block allocator (malloc or allocation inside a file) using fibonacci-sized blocks instead of powers of two in a similar way
19:11:09 <b_jonas> it wouldn't be worth, because binary twin-block is much easier, but it would be funny
19:13:41 -!- Tod-Autojoined2 has joined.
19:14:56 <int-e> *checks* "... avoid the division by 2 ...", ok, fairly pointless nowadays :)
19:14:56 -!- Tod-Autojoined has quit (Read error: Connection reset by peer).
19:15:06 <b_jonas> int-e: of course it is!
19:17:42 <int-e> The pattern was clear, but I didn't know why one would do this. The idea may still be useful for other searching problems. For example, finding the minimum of a sequence that is strictly decreasing first, and later strictly increasing, with only one change in monotonicity. (The point is that if you have a > b < c, you cannot discard any of the points yet, and with the golden ratio, you can easily add another point between a...
19:17:48 <int-e> ...and b or b and c)
19:19:33 <int-e> b_jonas: oh and fibonacci numbers will be awful for satisfying modern CPU's alignment constraints :)
19:20:09 <b_jonas> nah, that's not the biggest problem, you can satisfy alignment by aligning afterwards
19:20:44 <int-e> it is /a/ problem.
19:21:08 <b_jonas> but yeah, if you did it in a file then the blocks wouldn't be aligned to sectors on the disk
19:21:33 <int-e> I agree that it could be fun. Just not very useful. *checks channel name* not that this is relevant here.
19:21:53 <quintopia> helloily
19:22:01 <boily> quinthellopia.
19:22:09 <b_jonas> but yeah, while I know many cases where you could theoretically use a fibonacci version instead of a binary version, I don't know any case where the fibonacci version is more useful
19:22:18 <quintopia> did you translate the card
19:22:19 <boily> quintopia: the postcard, it was typed and translated.
19:22:23 <quintopia> kk
19:22:31 <b_jonas> (or, really, many other versions)
19:22:33 <quintopia> any mistakes?
19:23:02 -!- carado has joined.
19:23:13 <boily> if there were any, I canceled them when transcribing its content.
19:23:40 <boily> now, I have to find a particularly obtruse language to reply you with back :D
19:24:23 <quintopia> "obtruse" sounds like "unimplemented"
19:25:08 -!- Slereah_ has joined.
19:25:25 <quintopia> also, i like this idea of "pen pals who could actually talk to each other on IRC any day of the week but choose to spend money on international postage instead"
19:27:31 -!- Slereah has quit (Ping timeout: 240 seconds).
19:35:18 -!- Sprocklem has joined.
19:38:38 -!- sebbu has quit (Ping timeout: 264 seconds).
19:41:25 <mrhmouse> Is there a term (besides "functional") for the programming style where you avoid { mutations, creating variables, control structures } and instead express things as function calls?
19:42:25 <Bike> function-levle programming? (old skool, yo)
19:42:28 <kmc> most people would use "functional" for that, yeah
19:42:35 <kmc> but maybe "declarative" too, depending
19:42:51 <kmc> for one, it depends what you mean by "variables" and "control structures"
19:43:48 <mrhmouse> kmc: by "variables" I mean anything outside of function parameters, and by "control structures" I mean the constructs of loops and conditionals
19:44:09 <kmc> okay
19:44:19 <kmc> loops and conditionals are pretty basic boring control structures ;)
19:44:44 <boily> wasn't there a rant that surface recently on the intarwebs saying that “declarative” doesn't mean anythin?
19:44:51 <boily> s/ce\b/ced/
19:44:56 <kmc> heh
19:45:03 <kmc> see i would level that criticism more at "functional"
19:45:08 <Bike> nothing means anything and we are all together
19:45:20 <kmc> let's argue about whether code which uses first class continuations for control is "functional"
19:45:34 <kmc> they break equational reasoning pretty badly, I think
19:47:20 <b_jonas> int-e: do you know that math problem where you have k eggs and a skyscraper, you have to determine the exact lowest storey where the egg splats if you throw it from the window, minimize the total number of throws worst case?
19:48:22 <b_jonas> int-e: it turns out that you can do it in n tries you can do n choose k or n+k choose k or something like that stories.
19:48:24 <Bike> i do so hate that problem
19:48:45 <b_jonas> int-e: maybe fibonacci search could have some similar interpretation
19:48:49 <kmc> we had that problem in algo class (with coconuts) and my friend actually tossed some coconuts off the CS building
19:49:04 <kmc> god, that was the ugliest fucking building on campus
19:49:05 <b_jonas> kmc: wow
19:49:12 <b_jonas> kmc: isn't that dangerous in real life/
19:49:13 <kmc> i hope it's been demolished by now
19:49:21 <b_jonas> like, if the coconut hits someone in the head?
19:49:36 <kmc> b_jonas: I mean you probably need someone on the ground to make sure people don't walk into the drop zone
19:50:44 -!- MindlessDrone has quit (Quit: MindlessDrone).
19:52:37 <b_jonas> int-e: hmm, I think it's actually (n choose k) + (n choose k-1) + ... + (n choose 1) + (n choose 0) or something similar
19:53:18 <b_jonas> minus some constant
19:53:27 <b_jonas> depending on how you count the stories
19:55:11 <FreeFull> mrhmouse: pure?
19:55:14 <mrhmouse> b_jonas: is there a problem variant that accounts for "skipped" stories? (4, 13... I can't think of any others)
19:55:53 <b_jonas> dunno
19:55:55 <mrhmouse> FreeFull: I've always thought of "pure" meaning no side-effects in function calls (what D calls pure), but with no restraints inside the function for mutation of variables, etc
19:56:07 <FreeFull> mrhmouse: You can simply factor in the skipped stories afterwards
19:56:14 <mrhmouse> FreeFull: I'll go look up "pure programming", though :) devlaritve wasn't it
19:56:27 <b_jonas> I don't even know whether we skip story numbers in here, because there are very few buildings that would have a 13th storey in first place
19:56:37 <FreeFull> mrhmouse: I guess it's externally pure vs internally pure or something like that
19:57:00 <mrhmouse> s/vlarit/clariti/
19:57:22 <kmc> mrhmouse: heh
19:57:37 <kmc> the samsung office building i worked from for a week skipped both 4 and 13
19:57:40 <kmc> very multicultural
20:00:35 <boily> quintopia: I fear I may be a little bit too hipster when it comes to stationary and stuff used to colourify it. I'm a fountain pen user, I buy notebooks with quality paper, I have more ink than I need for a few lifetimes...
20:03:25 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
20:03:28 <mrhmouse> boily: how do you feel about fountain pens with onboard ink repositories?
20:03:47 <mrhmouse> boily: as opposed to, say, an ink well that you refill at
20:07:36 <boily> mrhmouse: the one I use the most has cartridges. other than that pen, I have one where you use a «compte-gouttes» to drip ink into its body, one with an adapter cartridge with a siphon, and one with a pressure pouch.
20:10:10 <Bike> "MS experts: can anyone tell me how to insert a Powerpoint slide into a Word document such that it is rotated 90 degrees?"
20:29:26 -!- jsvine has joined.
20:29:40 <boily> `ello jsvine
20:29:43 <HackEgo> jsvinello
20:29:50 <boily> jsvine: long time no see!
20:31:13 <jsvine> ello!
20:31:20 <jsvine> Yes, s'been a while.
20:31:32 <jsvine> Got wrapped up with a big project, then went on vacation.
20:32:20 -!- sebbu has joined.
20:32:26 <jsvine> What'd I miss?
20:33:00 -!- sebbu has quit (Changing host).
20:33:00 -!- sebbu has joined.
20:35:59 -!- muskrat has joined.
20:36:08 <boily> jsvine: plenty of things, silly discussions, world domination plans, the regular...
20:36:44 <jsvine> boily: Sounds like my FOMO was fully justified.
20:36:52 <boily> (also, shameless plug: please take a look at the PDF → https://dl.dropboxusercontent.com/u/2023808/wisdom.pdf)
20:37:09 <boily> ~duck FOMO
20:37:09 <metasepia> --- No relevant information
20:37:14 <boily> jsvine: what's a fomo?
20:37:50 <jsvine> boily: "Fear Of Missing Out": http://en.wikipedia.org/wiki/Fear_of_missing_out
20:38:00 <boily> oh. indeed.
20:39:10 -!- Sprocklem has quit (Ping timeout: 245 seconds).
20:40:01 -!- Taneb has joined.
20:40:23 <Taneb> My talk went alright
20:40:47 <int-e> good :)
20:40:54 <Taneb> I was kind of nervous and didn't really know what I was doing, though
20:41:31 <Taneb> It has been recorded, but it's not online yet
20:45:29 <olsner> hmm, lots of these phantom hoover quotes that I don't recall seeing before before are great
20:45:49 <FireFly> `quote Phantom_Hoov
20:45:51 <HackEgo> 108) * Phantom_Hoover wonders where the size of the compiled Linux kernel comes from. <cpressey> To comply with the GFDL, there's a copy of Wikipedia in there. \ 112) <CakeProphet> how does a "DNA computer" work. <CakeProphet> von neumann machines? <Phantom_Hoover> CakeProphet, that's boring in the context of DNA. <Phantom_Hoover> It's just ste
20:46:24 <quintopia> boily: if you need a g/f i know a girl who likes tea and fountain pens
20:48:44 <boily> quintopia: sorry, I already have one, who incidentally likes tea and fountain pens :)
20:49:23 <quintopia> boily: cool. did she get you interested or v/v or was it just mutual from the beginning?
20:50:23 <boily> quintopia: pretty much mutual.
20:50:45 <olsner> http://www.independent.co.uk/news/uk/home-news/aliens-on-the-loose-in-cardiff-8544532.html
20:52:27 -!- ais523 has joined.
20:55:37 -!- ^v has quit (Quit: http://i.imgur.com/MHuW96t.gif).
20:58:27 -!- pikhq_ has quit (Ping timeout: 246 seconds).
21:00:13 <olsner> maybe the HackEgo section including all quotes involving other quotes is redundant
21:00:55 <Taneb> ais523, hi
21:01:00 <ais523> hi Taneb
21:01:03 * ais523 is back in the UK again
21:01:11 <Taneb> Yay
21:01:17 <Taneb> I didn't realise you ever weren't
21:01:32 <Taneb> Also this evening I presented a short talk on esolangs and it was scary
21:02:36 <olsner> boily: re (By the way, what with the pineapples?) - apparently pineapples are a "running gag" in Psych (although not in a way you'd notice without reading about it first)
21:03:07 <boily> psych, as in that weird online RPG?
21:03:12 <ais523> Bike: VHDL does let you parameterize bus widths, although the syntax is bizarre
21:03:20 <olsner> boily: nah, the TV series
21:03:25 <ais523> Taneb: no, not intentionally, but it's not surprising
21:03:38 <boily> olsner: oh.
21:04:33 <boily> (meanwhile, finally managed to compile ocharles' latest article → http://ocharles.org.uk/blog/posts/2013-12-05-24-days-of-hackage-scotty.html)
21:04:57 <Bike> ais523: i'm used to hdl syntax being bizarre by now :(
21:06:24 -!- pikhq has joined.
21:06:36 -!- nooodl has quit (Ping timeout: 250 seconds).
21:09:05 <olsner> `run cp wisdom/døsthiswork wisdom/døsthiswørk
21:09:08 <HackEgo> No output.
21:09:15 <olsner> `run cp wisdom/doesthiswork wisdom/døsthiswork
21:09:19 <HackEgo> No output.
21:10:27 <olsner> `run cat wisdom/Everyone | tr a-z A-Z > wisdom/EVERYONE
21:10:31 <HackEgo> cat: wisdom/Everyone: No such file or directory
21:10:57 <olsner> hmm, how does the case stuff work again
21:11:47 -!- Bike has quit (Ping timeout: 260 seconds).
21:12:38 <FireFly> `which CAT
21:12:39 <HackEgo> No output.
21:13:19 <olsner> `? EVERYONE
21:13:21 <HackEgo> Everyone in here is mad.
21:13:34 <FireFly> olsner: I think ? lowercases its input, unfortunately
21:13:54 <olsner> yep, it's done in ? indeed
21:15:54 -!- Sprocklem has joined.
21:15:55 <olsner> boily: is demoiselle a word or truncated mademoiselle?
21:16:08 <boily> olsner: it's a word.
21:16:18 <boily> meanwhile, new repo! https://github.com/pfcuttle/twentyfour-2013
21:16:46 <olsner> the longer one means something like "my" demoiselle then? or they're both used?
21:17:16 <boily> demoiselle is just the personne, mademoiselle is the address, as with monsieur, madame, etc.
21:17:39 <olsner> oh, and those are my sir, my dame?
21:19:13 <boily> fr:monsieur → en:mister, fr:madame → en:mrs, fr:mademoiselle → en:miss.
21:19:32 <boily> there was a controversy about the usage of «mademoiselle» last year.
21:19:47 <olsner> I know what the words *mean*, but I'm trying to make sense of them
21:20:22 -!- Bike has joined.
21:20:52 <boily> oh. well, in that case, you tries are correct.
21:21:01 -!- muskrat has quit (Ping timeout: 246 seconds).
21:21:15 <boily> «monsieur» → «mon sieur» → «mon seigneur».
21:21:26 <boily> «madame» is straightforward.
21:22:24 <boily> there was also «damoiseau» (masc. version of demoiselle). that one disappeared a long, long time ago.
21:25:44 <b_jonas> boily: wait what?
21:25:54 <b_jonas> boily: isn't damoiselle derived from dame?
21:25:59 <b_jonas> how can it have a male version?
21:26:34 <olsner> maybe it's de mois elle and de mois eau?
21:26:54 <b_jonas> olsner: hmm
21:27:24 <b_jonas> where "mois" would mean what?
21:27:29 <olsner> and eau might be an alternate spelling if il or whatever the masculing third person is in french
21:27:46 <b_jonas> sure, eau is clear, there's a pronoun eaux
21:27:54 <b_jonas> but what is mois?
21:28:59 <olsner> me, mine, to me, month, something
21:29:09 <b_jonas> ok, it's not derived from dame, but I don't think it's related to de moise either
21:29:38 <boily> eaux???
21:29:59 <FireFly> bourd eaux
21:30:10 -!- conehead has quit (Remote host closed the connection).
21:30:11 <FireFly> just kidding, I know approx. 0 french
21:30:14 <olsner> ooh, and damsel is another spelling of demoiselle
21:30:17 <FireFly> at most
21:30:26 <b_jonas> yeah, sorry
21:30:30 <b_jonas> obviously it's not "eaux"
21:30:34 <b_jonas> that wouldn't make sense...
21:31:05 <b_jonas> the pronoun is "eux", not "eaux"
21:31:12 <boily> http://www.cnrtl.fr/etymologie/damoiseau
21:31:22 <boily> there is some weird fungot going on with those words...
21:31:23 <fungot> boily: the migration is reversed of yours. signed: anonymous' text.) hmm... long digression in any case, i should
21:31:43 <FireFly> fungot: you definitely should.
21:31:43 <fungot> FireFly: nope. haskell.
21:32:01 <FireFly> fungot: is this some kind of functional-programmer "chuck testa" thing?
21:32:01 <fungot> FireFly: and in fnord we needed a nickname, so we know when one of your friends? -g ( was that good grammer?)
21:32:28 <FireFly> fungot: it wasn't very good grammer, no, I'm sorry. You need to markov your sentences better
21:32:29 <fungot> FireFly: how so? it could be hacked up using forth execution tokens...) is relying on implicit program state where none was necessary. the same can be said of scheme.
21:32:41 <FireFly> Good suggestion
21:33:00 <FireFly> fizzie: you should apparently hack up fungot's chat code using forth execution tokens
21:33:00 <fungot> FireFly: i can't say whether someone is using it right now tho
21:33:16 <FireFly> fungot: fair enough.
21:34:21 <olsner> domina/dominus -> diminutive +cella/us -> fudge some letters -> damoiseau/elle
21:37:23 <olsner> fungot french
21:37:24 <fungot> olsner: the bot is not an oversight that they were thinking " what the hell does one implement a script language anyway
21:44:00 <boily> fungot: what did I say about being sentient?
21:44:00 <fungot> boily: i am not easy to find the equivalent of developing at the lisp repl.
21:47:01 <olsner> the equivalent of developing fungot at the lisp repl? hmm...
21:47:01 <fungot> olsner: ' while true: pass', fnord seconds
21:47:49 <FireFly> fnord must be a huge number
21:48:04 <olsner> fnord seconds are not like other seconds
21:49:26 <mrhmouse> ^source
21:49:27 <fungot> https://github.com/fis/fungot/blob/master/fungot.b98
21:58:13 <olsner> uh oh, there are now monad *video* tutorials
21:58:34 <Bike> just a soothing voice and face reading maclane out loud
21:59:14 <kmc> the floating head of arthur frayn explains monads
21:59:29 <boily> how many fnord seconds in a megalun?
22:00:26 -!- boily has quit (Quit: Poulet!).
22:00:34 -!- metasepia has quit (Remote host closed the connection).
22:01:39 <olsner> I want the floating heads of zardoz to explain monads
22:04:29 -!- oerjan has joined.
22:04:47 <kmc> shachaf: in Rust you can't always transform a struct field access to a call to an accessor function :/
22:05:04 <shachaf> kmc: What do you mean?
22:05:25 <kmc> because &self.x will only borrow that field but self.get_x() will borrow the whole thing (fn get_x<'t>(&'t self) -> &'t whatever)
22:05:39 <shachaf> Oh, hmm.
22:06:03 <shachaf> that seems like a thing that should be not the case
22:06:06 <Taneb> Oh yeah, that reminds
22:06:06 <Taneb> me
22:06:24 <kmc> so introducing such a get_x (because you want to add an assertion, for example) can require nontrivial changes to all the users of that field :/
22:06:33 <kmc> my solution was to write a macro instead :3
22:06:42 <kmc> macro cat is watching you abstract syntactically
22:08:05 <kmc> i think there's an interesting interplay between macros and static vs. dynamic checking in the design space of programming languages
22:09:08 <kmc> macros are a form of abstraction which defers static checking until the abstraction is used
22:10:11 <shachaf> So are C++ templates, sort of.
22:10:22 <kmc> which means they are more necessary in static languages, but also you lose more by using them vs. alternatives
22:11:10 <kmc> yeah, C++ templates are a macro system for the purposes of this point
22:11:27 <kmc> although I'm starting to appreciate more and more how they can do things that macro systems can't and also things that traditional polymorphism can't
22:11:33 <kmc> they are a really strange and unique feature
22:11:37 * kmc <3 C++
22:11:47 <kmc> it's such a hot mess
22:11:54 <shachaf> which things are you thinking of
22:14:32 <Bike> cool i have a circuit working that i can't simulate correctly
22:14:40 <Bike> kmc: what's a thing templates can do that macros can't?
22:15:24 <kmc> they're wired into the type system so they can introspect on types
22:15:44 <Bike> meaning what exactly
22:16:43 -!- muskrat has joined.
22:16:48 <olsner> they're sort of logic programming pattern matching on types to decide which bit of code to generate
22:17:03 <kmc> you can write a class template which does something different when its type argument is a reference, vs. a struct, vs. an int
22:17:05 <Bike> oh, so you generate ifferent code for classes and integers, sorta thing?
22:17:08 <Bike> right
22:17:11 <kmc> and you can do these things recursively to deconstruct types
22:17:34 <kmc> I think the key language features enabling this are template specialization, function overloading, and SFINAE
22:17:39 <kmc> (http://en.wikipedia.org/wiki/Substitution_failure_is_not_an_error)
22:18:11 <kmc> so for example there's a standard library of "type traits" (http://www.cplusplus.com/reference/type_traits/), predicates about types which can be used to direct template expansion
22:18:15 <olsner> SFINAE is pretty much backtracking, I think
22:21:49 <kmc> oh and with constexpr you can do plenty of straightforward compile-time computation on these things, as well
22:22:55 <kmc> Taneb: what were you reminded of?
22:26:04 <_46bit> Evening
22:26:21 <shachaf> `welcome _46bit
22:26:23 <HackEgo> _46bit: 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.)
22:26:24 <_46bit> Had a bit of fun listening to Taneb talk about esolangs earlier :-)
22:26:30 <kmc> nice
22:26:36 <kmc> did you plug our channel Taneb? :)
22:26:57 <_46bit> He did, classily.
22:26:58 <kmc> also is there a record of the talk online (e.g. slides)?
22:27:27 <_46bit> kmc: We videod it, will be online tonight or tomorrow
22:27:42 <_46bit> I hadn't come across Slashes before but it looks like the esolang for me
22:27:52 <Bike> what's taneb talk about again. something about haskell cellular automata
22:28:14 <_46bit> Bike: (in)formally entitled A Tour Of Esoteric Programming Languages
22:28:36 <_46bit> There's something wonderfully entertaining to my mind about a program that self-modifies to do even the simplest things
22:28:56 <kmc> haha
22:28:59 <Bike> i think i figured out why my test wasn't working. i didn't have an initialization for a register. in the actual circuit there was some default initialization but the simulator ain't having none of that shit so it just floated everything like an asshole
22:29:04 <kmc> then you'll like my upcoming blog post _46bit
22:29:08 <Bike> is slashes ///?
22:29:12 <_46bit> Bike: yeah
22:29:17 <Bike> yeah good language
22:29:19 <_46bit> kmc :)
22:29:20 <kmc> indeed
22:29:40 <shachaf> Taneb is p. famous here for inventing d-modules and other things
22:29:40 <kmc> _46bit: it's about how x86 is turing complete with no registers, as long as you allow self-modification of operands
22:29:54 <Bike> though i don't think of it for the self-modification so much as demonstrating The Awesome Power of Grammar
22:29:59 <kmc> Bike: ah yeah a plague of ?'s
22:30:15 <_46bit> I had some fun considering integer incrementation during the talk actually
22:30:20 <Bike> kmc: i hope you tie this into the fun vax addressing mode
22:30:30 <shachaf> fax addressing mode
22:30:34 <kmc> Bike: i should mention it at least
22:30:38 <kmc> I failed to find info on that, though
22:30:46 <kmc> I think VAX gives x86 a run for its money as far as CISCiness goes
22:30:47 <Bike> i think it's pretty much what it sounds like.
22:30:55 <_46bit> shachaf: indeed, apparently he invented d-modules when he was older
22:31:06 <shachaf> and also chu spaces (the best thing)
22:31:10 <Bike> vax had polynomial evaluation and my professor wrote binary search as an instruction, i fucking love that
22:32:03 <Bike> not that polys are remotely hard but stilllll
22:33:25 <Bike> hm nope everything's still floating. wonder what i fucked up.
22:33:40 <shachaf> #drugz
22:35:20 <FireFly> Bike: you should fix the floating things
22:35:24 <kmc> how does "binary search as an instruction" work
22:35:29 <Bike> thanks firefly.
22:35:45 <ais523> kmc: presumably like the x86 string copy instructions
22:36:03 <Bike> used microcode. i don't know the details.
22:36:05 <kmc> ah
22:36:13 <kmc> was user microcode upload a supported feature?
22:36:35 <Bike> no, he had to steal an undocument from a company technician :D
22:36:40 <kmc> haha
22:37:09 <Bike> he xeroxed it and bound it in some ripped up jeans of his girlfriend's, is what he said
22:37:15 <Bike> somethin like that
22:37:47 -!- jsvine has quit (Quit: Leaving.).
22:38:25 <_46bit> Haha, I wish someone did that for modern CPUs.
22:38:40 <Bike> i really wish these synthesis tools would give me more errors instead of blithely letting me design circuits that only work by accident
22:38:51 <kmc> put your circuit near a source of RF noise
22:38:59 <FireFly> That sounds familiar
22:39:05 <FireFly> the xerox-and-ripped-jeans part
22:39:14 <Bike> i've mentioned it before, probably
22:39:27 <Bike> i'm reasonably sure he wasn't making this up since he passed the thing around, btw
22:39:44 <Bike> _46bit: do what, put together an undocumented behavior guide?
22:40:26 <_46bit> yup
22:40:45 <_46bit> Although in fairness, people get legal threats over ARM simulators let alone that.
22:40:53 <shachaf> documentation of all documents that do not document themselves
22:40:55 <Bike> doesn't uh, what's his name, the x86 micro guy pretty much cover that
22:41:18 -!- pikhq has quit (Ping timeout: 252 seconds).
22:41:34 <Bike> alternately the four thousand page optimization manuals
22:41:44 <Bike> agner, that dude.
22:43:00 -!- pikhq has joined.
22:43:12 <Bike> good news i fixed the floating. and the problem was what i thought. these tools cost like a billion dollars, they oughta be able to tell me not initializing an output register is stupid
22:47:40 -!- jsvine has joined.
22:48:58 -!- jsvine has left.
22:49:52 <FireFly> > fix cos :: Floating a => a
22:49:56 <lambdabot> mueval-core: Time limit exceeded
22:50:18 <FireFly> Bike: you're better than lambdabot at fixing the floating
22:50:40 <Bike> nope i'm in circuit mode, i can't think about iterated trig functions
22:50:54 <Bike> though sine does have one obvious fixed point.
22:52:21 <shachaf> <...> we need a #haskell-oldboys
22:52:31 * shachaf sighs.
22:52:59 <Bike> opped by haskell curry
22:53:35 <oerjan> <_46bit> I had some fun considering integer incrementation during the talk actually <-- been there done that http://esolangs.org/wiki/Deadfish#itflabtijtslwi (that's /// with a minor addition to allow input)
22:54:38 <_46bit> oerjan: Is that a /// implementation in Deadfish?
22:56:22 <oerjan> hm jsvine was here earlier
22:56:52 <ais523> _46bit: other way round
22:57:02 <ais523> you can't implement /// in Deadfish
22:57:20 <ais523> you basically can't implement anything in Deadfish, apart from programs to print out constant lists of numbers
22:59:18 <oerjan> *numbers other than 256
22:59:31 <_46bit> ais523: oh yes, is Deadfish not turing-complete?
22:59:47 <ais523> _46bit: it's not really anything-complete
22:59:49 <oerjan> _46bit: it's about as un-turing-complete as you get
22:59:52 <_46bit> :)
22:59:59 <ais523> it isn't even truth-machine-complete
23:00:20 <Bike> i dunno, programs that just output numbers can be interesting.
23:00:57 <ais523> oerjan: oh right, you can't write 256
23:01:11 <ais523> this reminds me of that hello world program in Radixal!!!!
23:01:28 <ais523> the person who wrote it commented on how ridiculous it was to have a language that had both input and output, but couldn't do cat
23:03:46 <oerjan> _46bit: deadfish's niche is basically to be as useless as you can get while still being fun to implement
23:04:39 <oerjan> ais523: though it's not the only such language, e.g. thue
23:04:49 -!- mrhmouse has quit (Quit: Leaving.).
23:05:01 <ais523> oerjan: yeah
23:05:24 <oerjan> although in the case of radixal is more "intentional"
23:05:25 <ais523> in Radixal!!!!'s case, though, it's purely due to being perverse for no good reason
23:05:26 <oerjan> *it's
23:06:22 <kmc> kangxi radical fight
23:07:13 <oerjan> `unicode KANGXI RADICAL FIGHT
23:07:13 -!- realzies has quit (Ping timeout: 272 seconds).
23:07:15 <HackEgo> ​⾾
23:07:17 <Bike> holy christ did i fuck up this circuit
23:07:33 <oerjan> for half a second putty showed that as s)
23:07:52 <oerjan> ^ord ​⾾
23:07:52 <fungot> 226 128 139 226 190 190
23:08:05 <lexande> is haskell part of the dream of the 90s?
23:08:08 <oerjan> `ord ​⾾
23:08:10 <HackEgo> 8203 12222
23:08:14 <lexande> (re: galois)
23:08:16 <Bike> is haskell alive in portland
23:08:32 <oerjan> Bike: no it's sleepless in seattle
23:11:30 -!- pikhq has quit (Ping timeout: 245 seconds).
23:12:30 -!- pikhq has joined.
23:13:25 <oerjan> <mroman_> 2**x for x > 32 is always bigger than 32 <-- 2**x > x, see: cantor
23:14:34 <oerjan> hm it's true if you replace 2 by any number > 1, isn't it
23:15:58 <oerjan> @check x>1 ==> x**y > (y::Double)
23:15:58 <lambdabot> Plugin `check' failed with: Ambiguous infix expression
23:16:16 <ais523> oerjan: 1.1 ** 2 = 1.21 < 2
23:16:17 <oerjan> @check \x y -> x>1 ==> x**y > (y::Double)
23:16:17 <lambdabot> Plugin `check' failed with: Ambiguous infix expression
23:16:34 <Bike> cool
23:16:39 <oerjan> ais523: oops
23:16:45 <oerjan> > 1.1 ** 2
23:16:46 <lambdabot> 1.2100000000000002
23:16:59 <ais523> my value for 1.1 ** 2 is more accurate
23:17:04 <Bike> i thought you were talking about 2 ** x
23:17:23 <ais523> lambdabot's looks more accurate, though, because of all the zeros
23:17:35 <oerjan> @check \x y -> (x>1) ==> (x**y > (y::Double))
23:17:36 <lambdabot> +++ OK, passed 100 tests.
23:17:37 <shachaf> > 1.1 ** 2 :: CReal
23:17:38 <lambdabot> 1.21
23:18:02 <oerjan> @check \x y -> (x>1) ==> (x**y > (y::Double))
23:18:03 <lambdabot> *** Failed! Falsifiable (after 1 test and 1 shrink):
23:18:03 <lambdabot> 1.1593171888308589
23:18:03 <lambdabot> ...
23:18:29 <oerjan> int-e: very useful output format, that
23:18:53 <ais523> oerjan: it took more than 100 tries to falsify that? is it just trying numbers at random?
23:19:05 <oerjan> ais523: well yes
23:19:09 -!- realzies has joined.
23:19:14 <oerjan> @help check
23:19:14 <lambdabot> check <expr>
23:19:14 <lambdabot> You have QuickCheck and 3 seconds. Prove something.
23:19:29 * ais523 objects to the use of the word "prove"
23:19:31 <ais523> although, hmm
23:19:42 <ais523> the program you use to run Perl testsuites is called prove(1)
23:19:46 <oerjan> @check \y -> (2**y > (y::Double))
23:19:47 <lambdabot> +++ OK, passed 100 tests.
23:19:49 <oerjan> @check \y -> (2**y > (y::Double))
23:19:50 <lambdabot> +++ OK, passed 100 tests.
23:19:51 <ais523> my brain mentally objects to the name every time I run it
23:20:00 -!- pikhq has quit (Ping timeout: 245 seconds).
23:20:25 <oerjan> hm..
23:20:35 <oerjan> > iterate (1.1**) 0
23:20:37 <lambdabot> [0.0,1.0,1.1,1.1105342410545758,1.1116498000257782,1.1117680015030489,1.111...
23:20:48 -!- pikhq has joined.
23:21:02 <oerjan> that explains why my argument failed, i didn't consider that could converge
23:21:05 <Bike> the limit exists for less than 1/e or something, iirc
23:21:17 <ais523> Bike: yeah, I guessed it would be something like that
23:21:36 <ais523> was trying to work out how to find the break point
23:21:37 <oerjan> Bike: well 1.1 is > 1/e
23:21:44 <ais523> but it almost certainly involves e somethow
23:21:45 <Bike> well you suck!!
23:21:50 <Bike> here i'll look it up
23:22:26 <Bike> oh it's e ^ (1/e).
23:22:28 <Bike> what a great number
23:22:42 <ais523> let's see… we want (x**y)/y to be < 1; that means y*log x - log y is negative
23:22:56 <Bike> also this was shown by euler because of course it fucking was.
23:23:17 <ais523> so to find the largest possible x that works, we need to find the y that maximizes log y / y
23:23:33 <ais523> and yeah, I think that's 1/e from memory
23:24:07 <ais523> err, that's e
23:24:25 <ais523> log e / e = 1/e, so the value of x we need is e^(1/e)
23:24:43 <ais523> > exp 1
23:24:44 <lambdabot> 2.718281828459045
23:24:54 <ais523> > (exp 1) ** (1 / exp 1)
23:24:55 <lambdabot> 1.444667861009766
23:25:07 <shachaf> https://en.wikipedia.org/wiki/List_of_things_named_after_Leonhard_Euler
23:25:13 <oerjan> > exp (1/exp 1) -- *cough*
23:25:14 <lambdabot> 1.444667861009766
23:25:28 <ais523> oerjan: I wasn't trying to golf :-(
23:25:43 <ais523> > (exp (1 / exp 1)) ** (exp 1)
23:25:44 <lambdabot> 2.7182818284590446
23:25:59 <ais523> well, theoretically that should be equal to e
23:26:01 <oerjan> > exp.exp$ -1
23:26:01 <ais523> and it looks pretty close
23:26:02 <lambdabot> 1.444667861009766
23:26:14 <ais523> > exp (exp (1 / exp 1))
23:26:15 <lambdabot> 4.240443492279831
23:26:22 <ais523> err, right
23:27:06 <ais523> exp is e^x, not x^e
23:27:33 <ais523> although, e^x is always >= x^e, and e is the only number for which that's true (for positive x)
23:27:56 <oerjan> > iterate (exp(exp(-1))**) 0
23:27:57 <lambdabot> [0.0,1.0,1.444667861009766,1.7014206956610736,1.8699612238030825,1.98957349...
23:28:36 <ais523> > exp (exp (-1))
23:28:37 <lambdabot> 1.444667861009766
23:28:39 <ais523> that is a fun number
23:29:05 <Bike> now find the lower limit!
23:31:03 <oerjan> ais523: hm it's obvious that e is the only one if it's true :)
23:31:11 <ais523> oerjan: yeah, it's obvious that there's only one
23:31:15 <ais523> as soon as I realised that I set out to find it
23:32:12 <ais523> it's one of those things that calculus is really good at
23:32:49 <oerjan> > iterate (0.9**) 0
23:32:50 <lambdabot> [0.0,1.0,0.9,0.9095325760829622,0.9086195391380412,0.9087069507641854,0.908...
23:33:43 <oerjan> ok there might actually be a lower limit of sorts?
23:33:55 <oerjan> > iterate (0.1**) 0
23:33:57 <lambdabot> [0.0,1.0,0.1,0.7943282347242815,0.16057272043212115,0.6909192287599791,0.20...
23:34:10 <oerjan> > drop 100 $ iterate (0.1**) 0
23:34:11 <lambdabot> [0.3989449593934298,0.3990754762592498,0.3989555616466416,0.399065733912108...
23:34:25 <oerjan> hm that doesn't look very non-converging
23:35:10 <oerjan> i'm going to guess it converges for every 0<x<1
23:35:31 <oerjan> hm obviously for 1 as well
23:35:40 -!- Phantom_Hoover has joined.
23:35:47 <oerjan> so 0<x<e^(1/e)
23:36:14 <oerjan> > drop 100 $ iterate (0.01**) 0
23:36:15 <lambdabot> [1.3092520507995337e-2,0.9414883685756696,1.3092520507995337e-2,0.941488368...
23:36:43 <oerjan> hm that's not very quickly converging
23:36:43 <ais523> > drop 1000 $ iterate (0.1**) 0
23:36:44 <lambdabot> [0.39901297826025206,0.3990129782602521,0.39901297826025206,0.3990129782602...
23:37:16 <ais523> seems to be alternating at that point, presumably due to floating point inaccuracies
23:37:20 <oerjan> > drop 1000 $ iterate (0.01**) 0
23:37:21 <lambdabot> [1.3092520507995337e-2,0.9414883685756696,1.3092520507995337e-2,0.941488368...
23:37:32 <oerjan> oh that doesn't look like it converges
23:37:49 <oerjan> except to alternate
23:38:06 <oerjan> > drop 1000 $ iterate (0.01**) 0.01
23:38:07 <lambdabot> [1.3092520507995337e-2,0.9414883685756696,1.3092520507995337e-2,0.941488368...
23:38:13 <oerjan> oops
23:38:20 <oerjan> > drop 1000 $ iterate (0.1**) 0.1
23:38:21 <lambdabot> [0.39901297826025206,0.3990129782602521,0.39901297826025206,0.3990129782602...
23:39:05 <oerjan> > 1/exp(exp 1)
23:39:06 <lambdabot> 6.598803584531254e-2
23:39:31 <oerjan> > drop 1000 $ iterate (0.07**) 0
23:39:32 <lambdabot> [0.3719261662560938,0.37193045518462764,0.37192621320203767,0.3719304087522...
23:39:38 <oerjan> > drop 1000 $ iterate (0.06**) 0
23:39:39 <lambdabot> [0.2168980649057752,0.5432295305057313,0.2168980649057752,0.543229530505731...
23:40:00 <oerjan> hah i think i may have guessed right that it changes at 1/e^e
23:40:28 <oerjan> > drop 1000 $ iterate (0.065**) 0
23:40:29 <lambdabot> [0.3030082866002573,0.43682039793123895,0.3030095664824946,0.43681886976616...
23:40:33 <oerjan> > drop 1000 $ iterate (0.066**) 0
23:40:34 <lambdabot> [0.3404782877557717,0.3963513487529059,0.3405059041591694,0.396321598088106...
23:40:50 <oerjan> > drop 1000 $ iterate (0.067**) 0
23:40:51 <lambdabot> [0.3648850253415895,0.3729514282282367,0.3649076104537553,0.372928660621407...
23:41:49 <oerjan> > drop 10000 $ iterate (0.067**) 0
23:41:50 <lambdabot> [0.368912903977469,0.3689129039775534,0.3689129039774693,0.3689129039775531...
23:42:05 <oerjan> > drop 10000 $ iterate (0.065**) 0
23:42:06 <lambdabot> [0.3031239805467282,0.43668228225140027,0.3031239805467282,0.43668228225140...
23:42:12 <oerjan> > drop 10000 $ iterate (0.066**) 0
23:42:13 <lambdabot> [0.36037642863910974,0.37548402040723905,0.360377452553513,0.37548297539825...
23:42:39 -!- L8D has joined.
23:42:55 <oerjan> > drop 100000 $ iterate (0.066**) 0
23:42:56 <lambdabot> [0.36762949368556197,0.3681540095360947,0.3676295111928457,0.36815399201691...
23:43:45 <oerjan> it think it converges for x > 1/e^e, although pretty slowly when it's close
23:43:55 <oerjan> and alternates for x < 1/e^e
23:47:11 -!- john_metcalf has quit (Ping timeout: 260 seconds).
23:48:45 <oerjan> hm well there's still that small alternation that might be just floating point error for larger
23:50:27 <oerjan> > iterate (0.1**) (0.39901297826025206 :: CReal)
23:50:31 <lambdabot> mueval-core: Time limit exceeded
23:50:43 <oerjan> > drop 5 . take 10 $ iterate (0.1**) (0.39901297826025206 :: CReal)
23:50:44 <lambdabot> [0.3990129782602520791881769909114066462547,0.39901297826025206462150470053...
23:51:18 <oerjan> > drop 5 . take 20 $ iterate (0.1**) (0.39901297826025206 :: CReal)
23:51:21 <lambdabot> [0.3990129782602520791881769909114066462547,0.39901297826025206462150470053...
23:51:45 <oerjan> oops
23:51:51 <oerjan> > drop 15 . take 20 $ iterate (0.1**) (0.39901297826025206 :: CReal)
23:51:53 <lambdabot> [0.3990129782602520748500883139609762878626,0.39901297826025206860717284755...
23:52:20 <oerjan> well it seems to be converging further
23:53:10 <ais523> > drop 100 . take 2 $ iterate (0..1**) (0 :: CReal)
23:53:11 <lambdabot> <hint>:1:31: parse error on input `..'
23:53:14 <ais523> > drop 100 . take 2 $ iterate (0.1**) (0 :: CReal)
23:53:15 <lambdabot> []
23:53:23 <ais523> ?
23:53:38 <oerjan> you're dropping 100 elements from a size 2 list
23:53:50 <ais523> ah right
23:53:53 <ais523> > drop 100 . take 102 $ iterate (0.1**) (0 :: CReal)
23:53:57 <lambdabot> mueval-core: Time limit exceeded
23:54:03 <oerjan> was afraid of that
23:54:22 <ais523> so was I, thought it was worth a try anyway
23:57:08 -!- Sgeo has joined.
23:58:16 -!- conehead has joined.
←2013-12-04 2013-12-05 2013-12-06→ ↑2013 ↑all