←2011-07-18 2011-07-19 2011-07-20→ ↑2011 ↑all
00:05:51 -!- copumpkin has joined.
00:07:33 -!- augur has joined.
00:35:13 -!- augur has quit (Remote host closed the connection).
00:46:34 -!- ais523 has quit (Remote host closed the connection).
00:54:11 <pikhq> http://i.imgur.com/w7cns.jpg This was the Yahoo! News pictures page. Today.
00:55:45 <NihilistDandy> Freakishly long eyelashes? FINALLY
00:58:59 -!- azaq23 has quit (Read error: Connection reset by peer).
00:59:26 -!- azaq23 has joined.
01:05:39 <Vorpal> pikhq, seems... outdated
01:05:45 <pikhq> Vorpal: Yes.
01:05:59 <Vorpal> pikhq, not all from the same time period either
01:06:05 <pikhq> There are people on the Internet younger than some of those pictures.
01:06:23 <Vorpal> pikhq, when is the Los Angeles freeway shutdown from
01:06:33 <pikhq> Present.
01:06:37 <pikhq> This weekend only.
01:06:52 <Vorpal> ah
01:18:05 <oerjan> it appears that francisco mota (User:FMota on our reddit) just started http://www.reddit.com/r/lambdapuzzles
01:19:39 <Gregor> http://codu.org/tmp/wol3-2011-07-18.ogg
01:19:55 <oerjan> *on our wiki
01:20:00 <oerjan> gah
01:20:03 <Gregor> Puzzles in Lambda calculus = possibly the best worst idea ever.
01:22:25 -!- quintopia has quit (Ping timeout: 255 seconds).
01:24:27 <NihilistDandy> OR IS IT
01:26:14 <oerjan> it would appear to have at least assimilated phantom_hoover
01:26:51 <NihilistDandy> An insidious /r/, indeed
01:28:06 -!- quintopia has joined.
01:28:06 -!- quintopia has quit (Changing host).
01:28:07 -!- quintopia has joined.
01:47:21 -!- copumpkin has changed nick to Godwin.
01:47:44 -!- Godwin has changed nick to copumpkin.
01:50:01 -!- CakeProphet has quit (Read error: Operation timed out).
01:57:36 -!- augur has joined.
02:02:38 -!- augur has quit (Remote host closed the connection).
02:13:24 -!- augur has joined.
02:29:55 -!- cheater_ has quit (Ping timeout: 255 seconds).
02:42:37 -!- cheater_ has joined.
03:24:28 -!- azaq23 has quit (Ping timeout: 276 seconds).
03:25:36 -!- azaq23 has joined.
03:32:43 -!- derrik has joined.
03:38:38 -!- BeholdMyGlory has quit (Read error: Connection reset by peer).
04:14:33 -!- chickenzilla has quit (Ping timeout: 252 seconds).
04:22:06 -!- chickenzilla has joined.
04:28:21 -!- augur has quit (Remote host closed the connection).
04:32:31 -!- derrik has quit (Quit: work to do).
04:33:29 -!- augur has joined.
04:34:07 <Gregor> True Fact: Most men feel inadequate if their hair is longer than their penis.
04:34:56 <pikhq> True Fact™: Most men with long hair have nothing to compensate for.
04:43:22 <itidus20> lol
05:09:05 <oklopol> my hair is longer than my penis :(
05:09:36 <oklopol> but at least i can wrap it around my penis.
05:16:17 <Sgeo> I got new earbuds just yesterday (or the day before). The wire's already on the verge of breaking I think
05:17:56 * Sgeo needs wireless headphones
05:26:34 <oklopol> do you gnaw on it or what
05:27:40 <Sgeo> I think it keeps getting bent
05:29:43 <itidus20> Yeah I hate that when earbud wires bend.
05:32:38 -!- oerjan has quit (Quit: It's just because your head is spinning all the time!).
05:36:02 -!- augur has quit (Read error: Connection reset by peer).
05:36:14 -!- augur has joined.
05:41:37 -!- Slereah has quit (Ping timeout: 276 seconds).
05:41:58 -!- GuestIceKovu has joined.
06:06:40 <olsner> ... if only they could invent flexible wires
06:10:09 <itidus20> if a wire can conduct electricity then it has done it's job. asking for it to be flexible is overreaching. it is not in the nature of a wire to flex.
06:11:35 -!- augur has quit (Read error: Connection reset by peer).
06:11:55 -!- augur has joined.
06:16:53 -!- augur has quit (Read error: Connection reset by peer).
06:17:09 -!- augur has joined.
06:38:50 -!- augur has quit (Read error: Connection reset by peer).
06:39:11 -!- augur has joined.
06:42:11 -!- augur has quit (Read error: Connection reset by peer).
06:42:21 -!- augur has joined.
07:30:43 -!- azaq23 has quit (Quit: Leaving.).
07:49:07 -!- Taneb has joined.
07:49:20 <Taneb> Hello
07:56:18 -!- monqy has quit (Quit: hello).
08:06:01 -!- augur has quit (Read error: Connection reset by peer).
08:06:22 -!- augur has joined.
08:06:23 <Taneb> Hello
08:06:33 <Taneb> Hello
08:24:14 <fizzie> There's that saying that the definition of insanity is doing the same thing over and over again and expecting different results.
08:24:20 <fizzie> (In regards of them helloes.)
08:24:21 <coppro> win 15
08:24:37 <Taneb> You've just gave me a different result
08:24:57 <fizzie> Yes, well, I don't see how that matters.
08:25:28 <Taneb> It shows that in this case, it wasn't necassarily insane to expect different results
08:26:48 <fizzie> No, the saying doesn't specify anything about whether you will or will not get different results.
08:26:58 <fizzie> It's always insane to expect different results, even when it's likely to occur.
08:27:01 -!- augur has quit (Read error: Connection reset by peer).
08:27:12 <Taneb> Although that is the spirit of the sayin
08:27:14 <Taneb> g
08:27:22 -!- augur has joined.
08:27:30 <fizzie> I don't believe in spirits, sorry.
08:27:30 <Taneb> If different results are likely to occur, is it not insane to expect repitition?
08:29:12 <fizzie> That's not what the saying's saying. (I seem to be doing the same thing over and over again here.)
08:29:57 <Taneb> And, as the people on the channel as well as the time changed between each "Hello", are they really the same thing?
08:30:36 <fizzie> In ten seconds, with no join/parts in-between... I would classify those last two instances pretty much the same thing.
08:30:56 -!- elliott__ has quit (Ping timeout: 264 seconds).
08:31:03 <Taneb> Inbetween the last two, my client said augur had joined
08:31:10 <augur> whoa hello
08:31:54 <fizzie> As seen from here, it was the other way around. Anyway, I don't have a real point here, I just thought it'd be utterly pedestrian to just reply back with yet another "hello".
08:33:01 <Taneb> Fair enough
08:42:43 -!- elliott__ has joined.
08:44:27 <Taneb> Bye
08:44:40 -!- Taneb has changed nick to TanebGone.
09:18:04 -!- Phantom_Hoover has joined.
09:19:55 <Phantom_Hoover> What are the haps my friends.
09:21:28 <fizzie> Phantom_Hoover: hap, n.2: /north. dial./ A covering of any kind. 1724 A. Ramsay Tea-table Misc., Hap me with thy petticoat, Grant me for a hap that charming petticoat.
09:22:24 <Phantom_Hoover> Ah, so elliott__ presumably knows all about them.
09:24:29 <fizzie> Also verbable.
09:24:31 <fizzie> hap, v.2: Etymology: Derivation unknown. Its distribution from East Anglia and Lancashire to Scotland seems to point to Norse origin. [..] Now only Sc. and dial. [..] 2. To cover for warmth, as with extra clothing or bed-clothes; to wrap; to ‘tuck up’ (in bed). c1330 R. Mannyng Chron. Wace (Rolls) 9017, He gaf hym drynke poysoun, And happed hym warme, and bad hym slepe.
09:26:23 -!- TanebGone has changed nick to Taneb.
09:29:00 <Phantom_Hoover> Anagrams
09:29:00 <Phantom_Hoover> pah, PAH
10:08:21 <Taneb> Huh. JFK's brother-in-law's uncle was PM of the UK
10:09:26 <Taneb> Harold Macmillan
10:13:32 -!- atehwa has joined.
10:35:36 -!- GuestIceKovu has changed nick to Slereah.
10:49:43 -!- FireFly has joined.
11:03:35 <Taneb> Is there a big sign I can add to a wiki article that says something to the effect of "This article needs a complete sort-out"
11:21:37 <cheater_> yeah there was this "not up to standards" thing
11:21:45 <cheater_> or "might need to be cleaned up" or something like that
11:38:33 -!- Sgeo has quit (Quit: Router stuff).
11:41:23 <fizzie> Heh; comp.lang.c, someone had a (presumably) memory correction issue causing fread calls to segfault. His "fix": FILE *fp = fopen(...); FILE fback; memcpy(&fback, fp, sizeof(FILE)); /* ..code.. */ memcpy(fp, &fback, sizeof(FILE)); fread(...); -- "Now there is no segmentation fault, job done."
11:41:59 <fizzie> s/correction/corruption/
12:05:29 <Vorpal> fizzie, ugh
12:07:17 -!- cheater_ has quit (Ping timeout: 255 seconds).
12:08:00 <fizzie> In later posts it turned out to be Obama's fault that e had to "fix" it like that.
12:08:08 -!- Sgeo has joined.
12:08:14 <Taneb> WTQ?
12:09:48 <Sgeo> Hmm?
12:10:08 <Taneb> Crazy guy on comp.lang.c fizzie's dealing with
12:10:58 <fizzie> Taneb: See, it's Obama's fault the guy's apartment is now worth less than their mortgage and something something something that translates to not being able to look for a proper fix.
12:11:22 -!- FireFly has quit (Quit: swatted to death).
12:12:16 <Taneb> Someone with that sort of grasp of logic shouldn't be allowed anything more computationally powerful than a plastic spoon
12:13:46 -!- boily has joined.
12:16:23 <Taneb> Gonna have lunch now, bye
12:28:22 -!- FireFly has joined.
12:30:31 -!- CakeProphet has joined.
12:30:31 -!- CakeProphet has quit (Changing host).
12:30:31 -!- CakeProphet has joined.
12:31:50 -!- BeholdMyGlory has joined.
12:35:59 <CakeProphet> > 3 `floor . (+)` 4
12:36:01 <lambdabot> <no location info>: parse error on input `.'
12:36:18 <CakeProphet> that would be a cool extension.
12:36:27 -!- cheater_ has joined.
12:37:06 <CakeProphet> perhaps slightly abusable, but... we're talking about a language that has an OverloadedStrings extension.
12:37:40 <CakeProphet> 3 `(+) `ap` floor` 4
12:37:57 <CakeProphet> nested `'s for... uh, great win? actually, just for demonstration.
12:38:30 <CakeProphet> > `pi`
12:38:31 <lambdabot> <no location info>: parse error on input ``'
12:38:50 <Taneb> Back
12:39:09 <CakeProphet> so GHC is aware of types to some degree before it finished the parsing stage.
12:39:53 <Vorpal> CakeProphet, how so?
12:40:14 <CakeProphet> well, it could also have a sophsticated error reporting system.
12:40:27 <CakeProphet> ah, nevermind.
12:40:32 <CakeProphet> > 3 `pi` 4
12:40:33 <lambdabot> 3.141592653589793
12:40:36 <Vorpal> CakeProphet, as far as I can tell it bailed out because there is nothing in front of the `
12:40:36 <CakeProphet> it was just a regular parse error.
12:40:53 <Vorpal> :t `pi`
12:40:54 <lambdabot> parse error on input ``'
12:40:57 <Vorpal> :t pi
12:40:59 <lambdabot> forall a. (Floating a) => a
12:41:00 <Vorpal> hm
12:41:10 <CakeProphet> Vorpal: right
12:41:25 <Vorpal> > pi 3 4
12:41:26 <lambdabot> 3.141592653589793
12:41:36 <CakeProphet> ...yeah I have no idea.
12:41:44 <Vorpal> wtf
12:41:56 <CakeProphet> unless (a -> b -> c) is an instance of Floating...
12:42:07 <Vorpal> CakeProphet, my guess is some weird result from partial evaluation...
12:42:28 <fizzie> Maybe it's just a lambdabot thing where it reads one full expression and ignores trailing fluff? Certainly "pi 3 4" is not okay in ghci.
12:42:43 <fizzie> (Or 3 `pi` 4.)
12:42:50 <Vorpal> fizzie, heh
12:43:00 <CakeProphet> > pi is stupid
12:43:02 <lambdabot> Not in scope: `is'Not in scope: `stupid'
12:43:07 <CakeProphet> > pi "werijsdiufhushdfwer
12:43:08 <lambdabot> <no location info>:
12:43:09 <lambdabot> lexical error in string/character literal at end o...
12:43:10 <CakeProphet> > pi "werijsdiufhushdfwer"
12:43:12 <lambdabot> 3.141592653589793
12:43:17 -!- cheater_ has quit (Ping timeout: 255 seconds).
12:43:22 <Vorpal> must be what fizzie said
12:43:30 <Taneb> Is coirrational a thing?
12:43:40 <Vorpal> > let pi = 3 in show pi
12:43:41 <lambdabot> "3"
12:43:44 <Vorpal> heh
12:44:07 <CakeProphet> > let x = pi 3 4 in x
12:44:09 <lambdabot> 3.141592653589793
12:44:16 <Vorpal> what
12:44:18 <CakeProphet> apparently works in nested expressions as well.
12:44:25 <CakeProphet> so it's a general bug in the interpreter.
12:44:32 <Vorpal> yeah
12:44:40 <fizzie> > pi undefined
12:44:42 <lambdabot> 3.141592653589793
12:44:52 <CakeProphet> > let x = 8 3 9 4 in x
12:44:53 <lambdabot> 8
12:45:14 <CakeProphet> > let x = 3 + 4 5 in x[C
12:45:15 <lambdabot> <no location info>: parse error (possibly incorrect indentation)
12:45:23 <CakeProphet> but only with constants perhaps
12:45:35 <fizzie> > let x = 3 + 4 5 in x
12:45:36 <lambdabot> 7
12:45:39 <fizzie> You had a [C in there.
12:45:46 <CakeProphet> oh...
12:46:30 <CakeProphet> so it just blindly evaluates the expression as though it's correctly formed and disregards the leftover stuff?
12:46:33 <CakeProphet> I don't know.
12:46:47 <CakeProphet> seems like it would produce a type error.
12:46:59 <Vorpal> > let x = 3 + 4 5 in x [C
12:47:01 <lambdabot> <no location info>: parse error (possibly incorrect indentation)
12:47:02 <Vorpal> hm
12:47:05 <CakeProphet> expected type a -> b -> c inferred type (Floating a) => a
12:47:06 <CakeProphet> or whatever
12:47:08 <Vorpal> > let x = 3 + 4 5[C] in x
12:47:09 <lambdabot> Not in scope: data constructor `C'
12:47:14 <Vorpal> err what
12:47:18 <Vorpal> > let x = 3 + 4 5[C in x
12:47:19 <Vorpal> hm
12:47:19 <lambdabot> <no location info>: parse error on input `in'
12:47:47 <CakeProphet> :t f
12:47:48 <lambdabot> forall a. (SimpleReflect.FromExpr a) => a
12:48:00 <CakeProphet> > map pi [1..]
12:48:01 <lambdabot> [3.141592653589793,3.141592653589793,3.141592653589793,3.141592653589793,3....
12:48:12 <CakeProphet> well, it allows map f [1..] to work.
12:48:16 <CakeProphet> or fix f
12:48:23 <CakeProphet> when technically f is not a function.
12:50:36 <Vorpal> > fix f
12:50:37 <lambdabot> Ambiguous type variable `a' in the constraints:
12:50:37 <lambdabot> `GHC.Show.Show a'
12:50:37 <lambdabot> a...
12:50:43 <Vorpal> :t fi
12:50:44 <Vorpal> :t fix
12:50:45 <lambdabot> Not in scope: `fi'
12:50:45 <lambdabot> forall a. (a -> a) -> a
12:50:48 <Vorpal> ah
12:50:53 <Vorpal> > fix pi
12:50:54 <lambdabot> 3.141592653589793
12:51:01 <Vorpal> (of course)
12:51:05 <Vorpal> :t fix pi
12:51:06 <lambdabot> forall a. (Floating a) => a
12:51:10 <Taneb> > pi
12:51:11 <lambdabot> 3.141592653589793
12:51:19 <Taneb> > "> pi"
12:51:20 <lambdabot> "> pi"
12:52:26 <Vorpal> > fix fix
12:52:27 <lambdabot> Occurs check: cannot construct the infinite type: a = a -> a
12:52:30 <CakeProphet> it seems to be very deep in the interpreter.
12:52:31 <Vorpal> aw
12:52:43 <Taneb> > putStrLin "pi"
12:52:44 <lambdabot> Not in scope: `putStrLin'
12:52:52 <Vorpal> Taneb, no IO
12:52:53 <Taneb> > putStrLn "pi"
12:52:53 <lambdabot> <IO ()>
12:52:58 <Taneb> Sorry
12:53:10 <Vorpal> I mean, you can't evaluate IO
12:53:18 <Taneb> Okay
12:53:32 <Vorpal> as you saw, you just got an IO back
12:53:35 <CakeProphet> > readFile "/etc/passwd"
12:53:37 <lambdabot> <IO [Char]>
12:54:20 <CakeProphet> :t (readFile <$>)
12:54:21 <lambdabot> forall (f :: * -> *). (Functor f) => f FilePath -> f (IO String)
12:54:28 <Taneb> > 'x'
12:54:29 <lambdabot> 'x'
12:54:32 <CakeProphet> > fix (readFile <$>)
12:54:33 <lambdabot> Couldn't match expected type `[GHC.Types.Char]'
12:54:33 <lambdabot> against inferred ty...
12:55:50 -!- cheater_ has joined.
12:55:52 <CakeProphet> :t (readFile =<<)
12:55:53 <lambdabot> IO FilePath -> IO String
12:56:05 <CakeProphet> > fix (readFile =<<)
12:56:06 <lambdabot> <IO [Char]>
12:56:34 <CakeProphet> interesting.
12:57:38 <CakeProphet> I thought IO was strict.
13:02:21 <Vorpal> CakeProphet, only when evaulated, like in a do block or such
13:02:24 <Vorpal> iirc
13:02:42 <CakeProphet> isn't everything "strict when evaluated"? :P
13:02:53 <Vorpal> CakeProphet, hm good point
13:03:09 <Taneb> Kids, don't try to evaluate your parents
13:03:19 <Vorpal> XD
13:04:13 <CakeProphet> :t return
13:04:14 <lambdabot> forall a (m :: * -> *). (Monad m) => a -> m a
13:04:21 <CakeProphet> @hoogle a -> a
13:04:22 <lambdabot> Prelude id :: a -> a
13:04:22 <lambdabot> Data.Function id :: a -> a
13:04:22 <lambdabot> Control.Exception mapException :: (Exception e1, Exception e2) => (e1 -> e2) -> a -> a
13:04:32 <CakeProphet> :t mapException
13:04:33 <lambdabot> Not in scope: `mapException'
13:06:00 <CakeProphet> > breakpoint 3
13:06:01 <lambdabot> Not in scope: `breakpoint'
13:06:23 <CakeProphet> :t inline
13:06:24 <lambdabot> Not in scope: `inline'
13:06:26 <CakeProphet> bah
13:06:52 <CakeProphet> GHC.Exts have some cool functions.
13:07:08 <CakeProphet> like lazy, and inline.
13:09:07 <CakeProphet> > fix (`fromMaybe` Nothing) 3
13:09:11 <lambdabot> mueval-core: Time limit exceeded
13:09:16 <CakeProphet> > fix (`fromMaybe` Just 5) 3
13:09:18 <lambdabot> 5
13:09:52 <CakeProphet> the laziness of one argument depends on another.
13:11:04 <CakeProphet> fix (print 3 `par`) 4
13:11:12 <CakeProphet> > fix (print 3 `par`)
13:11:16 <lambdabot> mueval-core: Time limit exceeded
13:12:47 <CakeProphet> par is apparently not strict in the second argument
13:14:47 <Vorpal> :t par
13:14:49 <lambdabot> forall a b. a -> b -> b
13:14:59 <Vorpal> CakeProphet, I think types should have strictness info
13:15:01 <Vorpal> somehow
13:15:45 <CakeProphet> it's possible for explicit strictness anyways.
13:16:06 <CakeProphet> fix pretty much tells you if it's strict or not
13:16:13 <CakeProphet> as does passing an undefined.
13:17:49 <Vorpal> true
13:18:07 <CakeProphet> par is an interesting concept, I might try to use it sometime.
13:18:23 <CakeProphet> perhaps in the regular expression language I'm working on
13:18:33 <CakeProphet> or the signal processing library that I've got on the backburner.
13:19:13 <CakeProphet> on large computations.
13:21:37 <CakeProphet> Another common use is to ensure any exceptions hidden within lazy fields of a data structure do not leak outside the scope of the exception handler, or to force evaluation of a data structure in one thread, before passing to another thread (preventing work moving to the wrong threads).
13:22:04 <CakeProphet> that's interesting. I would think that message passing among threads would send the data fully evaluated.
13:22:14 <CakeProphet> but it apparently does not.
13:23:09 <CakeProphet> I guess it would make passing infinite data structures impossible
13:23:50 <Taneb> I wonder what history will make of the News International scandal that is going on at the moment
13:24:58 <CakeProphet> I am unaware of it.
13:25:07 <CakeProphet> doesn't error perform a side-effect?
13:25:56 <CakeProphet> I guess it's referentially transparent because it always returns bottom, but it still prints an error message while not being part of IO.
13:30:01 <CakeProphet> :t (%)
13:30:02 <lambdabot> forall a. (Integral a) => a -> a -> Ratio a
13:30:13 <CakeProphet> :t (3%)
13:30:14 <lambdabot> forall t. (Integral t) => t -> Ratio t
13:34:12 <Vorpal> Taneb, heh
13:34:22 <CakeProphet> hmmm
13:35:00 <Taneb> What am I being hehed at for?
13:35:04 <CakeProphet> oh cool, I think I can define a pulse wave as (/2) . signum
13:36:32 <CakeProphet> though it won't allow me to vary the pulse width.
13:38:51 <Vorpal> Taneb, last previous line
13:46:38 <CakeProphet> ah okay so signum is completely equivalent to a square wave.
13:46:55 <CakeProphet> ...when applied to a sinusoid, that is.
13:50:13 <CakeProphet> > let boxcar a b x = fromEnum (a < x < b) in map (boxcar 2 10) [0..]
13:50:14 <lambdabot> Precedence parsing error
13:50:14 <lambdabot> cannot mix `GHC.Classes.<' [infix 4] and `GHC...
13:50:43 <CakeProphet> > let boxcar a b x = fromEnum (a < x && x < b) in map (boxcar 2 10) [0..]
13:50:44 <lambdabot> [0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,...
13:51:47 <CakeProphet> rect = boxcar (-0.5) 0.5
13:53:26 <CakeProphet> actually rect = boxcar (-0.5) 0.5 . sin
13:53:36 <CakeProphet> if you want the period form.
14:04:35 -!- foocraft has quit (Ping timeout: 250 seconds).
14:08:18 <CakeProphet> huh, apparently C# has Perl's // operator
14:08:29 <CakeProphet> as ??
14:10:38 <CakeProphet> Perl calls it defined-or, while C# gives it the terrible name "Null coalescing operator"
14:11:02 <CakeProphet> Which, for some reason, the wikipedia page uses as its title.
14:12:11 <CakeProphet> but hey, at least C# does something right.
14:20:42 <Lymee> Why not just call it the "default operator" or something.
14:20:47 <Lymee> More obvious than "defined-or"
14:20:54 <Lymee> And... well... C#'s name for it.
14:23:04 <CakeProphet> well, given the way Perl's boolean operators work, defined-or makes sense.
14:23:16 <lifthrasiir> default-to?
14:23:25 <CakeProphet> depends on what you mean by "obvious"
14:25:07 <CakeProphet> but it's basically the same thing as Perl's or, except it applies defined() to the first argument for the purposes of testing to see if it's true.
14:25:17 <CakeProphet> it's equivalent to defined(x) : x : y
14:25:19 <CakeProphet> *?
14:26:00 <CakeProphet> whereas or is: x ? x : y
14:27:14 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:28:01 <CakeProphet> but anyways, it's something Java needs badly.
14:28:15 <CakeProphet> because you spend far too much time testing for nulls.
14:30:14 <lifthrasiir> it would be better if java didn't have nulls.
14:30:37 <CakeProphet> it would be terrible without a workaround.
14:30:54 <lifthrasiir> of course, given some kind of option types.
14:31:17 <CakeProphet> C# has type? which is short for Nullable<type>
14:31:39 <CakeProphet> which it uses to allow value-types (aka structs, int, bool, etc) to be assigned to null.
14:32:04 <CakeProphet> so you could change it so that the ? is required for all types to be nullable.
14:32:23 <lifthrasiir> yeah, C# nullable is far better than nothing
14:32:36 <CakeProphet> but then what is an unitialized variable of type A?
14:32:56 <CakeProphet> er... ? is part of the sentence, not the type name :P
14:32:58 <lifthrasiir> and afaik Sing# (an extension to C#) has type! which always guarantees that type cannot contain null.
14:47:30 <CakeProphet> Recently this motto has been very much discussed in the Perl community, and eventually extended to There’s more than one way to do it, but sometimes consistency is not a bad thing either (TIMTOWTDIBSCINABTE, pronounced “Tim Toady Bicarbonate”).
14:47:38 <CakeProphet> I am tempted to remove this sentence from Wikipedia.
14:48:40 <lifthrasiir> citation needed!
14:49:40 <CakeProphet> there is one
14:49:50 <CakeProphet> but I don't really think it's notable.
14:49:56 <CakeProphet> plus that's such a terrible acronym.
14:50:08 <CakeProphet> and slogan. Why would anyone ever say that.
14:50:39 <CakeProphet> also there should not be the word "but" because these statements are not in contradiction with one another.
14:51:30 <Phantom_Hoover> That is in fact what the word 'but' is there for.
14:51:58 <Phantom_Hoover> To clarify that some secondary statement that could be concluded from the first is not, in fact, true.
14:54:24 -!- copumpkin has joined.
15:01:06 <CakeProphet> From Perl 6 article: Also, the , (comma) operator is now a list constructor, so enclosing parentheses are no longer required around lists.
15:01:15 <CakeProphet> I am pretty sure that was always the case.
15:01:29 <CakeProphet> the enclosing parentheses were required due to precedence.
15:09:08 <CakeProphet> "As a Rubyist it seems a bit controversial to me, as this looks like a multiple inheritance scheme..."
15:09:24 <CakeProphet> wow, it sounds like he's talking about his religion.
15:09:32 <CakeProphet> I should never read Wikipedia talk pages in my free time.
15:09:45 <Phantom_Hoover> He *is* talking about his religion.
15:11:20 <CakeProphet> Sounds crazy to me, it's totally consistent with the Perl attitude towards authority.
15:11:26 <CakeProphet> There is a Perl attitude towards authority?
15:11:47 <CakeProphet> what are these people even talking about. Do they realize they are talking about programming languages?
15:13:43 <Phantom_Hoover> No.
15:14:01 <CakeProphet> I did not know that programming languages had states of mind associated with them. I was pretty sure they were a means to describe the solution to a problem.
15:14:51 <CakeProphet> Does Perl code have some kind of anti-establishment connotation that I haven't been picking up on this entire time I've been writing it?
15:14:54 <CakeProphet> This is stupid.
15:14:59 <CakeProphet> I will never read talk pages again.
15:17:08 -!- monqy has joined.
16:13:27 -!- ais523 has joined.
16:27:19 -!- azaq23 has joined.
16:31:12 <Taneb> Is there an integer division operator in Haskell>
16:31:52 <Phantom_Hoover> :t div
16:31:54 <lambdabot> forall a. (Integral a) => a -> a -> a
16:31:57 <Phantom_Hoover> Yes.
16:32:30 <Taneb> Thanks
16:42:22 <copumpkin> :t quot
16:42:25 <lambdabot> forall a. (Integral a) => a -> a -> a
16:42:28 <copumpkin> :t mod
16:42:29 <copumpkin> :t rem
16:42:29 <lambdabot> forall a. (Integral a) => a -> a -> a
16:42:30 <lambdabot> forall a. (Integral a) => a -> a -> a
16:42:34 <copumpkin> zomg
16:42:46 <copumpkin> :t [divMod, quotRem]
16:42:47 <lambdabot> forall a. (Integral a) => [a -> a -> (a, a)]
16:42:56 <copumpkin> :t [div, mod, quot, rem]
16:42:57 <lambdabot> forall a. (Integral a) => [a -> a -> a]
16:47:28 <ais523> elliott__: could you talk me out of something?
16:47:35 <Phantom_Hoover> > 7 `quot` 3
16:47:36 <lambdabot> 2
16:47:38 <ais523> I was thinking about creating an esolang that was completely identical to another esolang
16:47:50 <Phantom_Hoover> Oh, wait, quot/div and mod/rem only differ when negative numbers are involved.
16:47:54 <ais523> as a parody of bad BF derivatives
16:47:55 <Phantom_Hoover> ais523, expand.
16:48:00 <Phantom_Hoover> Well, that's OK.
16:48:10 <Taneb> You mean like I hate your brainfuck derivative I really do?
16:48:10 <ais523> perhaps just create an esolang that's identical to brainfuck
16:48:15 <Phantom_Hoover> (I am the official Sanctioner of Esolangs. I say so.)
16:48:16 <ais523> ah, it's already been done?
16:48:43 <Taneb> http://esoteric.voxelperfect.net/wiki/I_hate_your_bf-derivative_really_I_do
16:48:44 <ais523> no, I meant with + being increase, - being decrease, etc
16:48:48 <ais523> exactly the same as BF
16:49:03 <Phantom_Hoover> That's basically Ihybrid.
16:49:10 <Phantom_Hoover> Oh, wait.
16:49:15 <Phantom_Hoover> Literally identical?
16:49:20 <Phantom_Hoover> I approve.
16:49:48 <Phantom_Hoover> Wait, Ihybrid is a crappy serious esolang.
16:49:51 <ais523> I'm thinking of calling it Brainfuck
16:49:54 <ais523> with a capital B
16:50:05 <ais523> as that name isn't currently taken
16:50:32 <ais523> or maybe even BrainFuck
16:51:32 <Phantom_Hoover> Dammit, I stopped watching that Murdoch hearing because it was boring.
16:51:45 <Phantom_Hoover> And then someone attacked Rupert Murdoch with a cream pie.
16:51:54 <Taneb> XD
16:53:15 <ais523> I missed it too, I got here a few seconds after it happens
16:53:18 <ais523> and then missed the replay as well
16:53:23 <ais523> but no doubt it'll be all over the Internet by now
16:53:31 <Taneb> http://www.bbc.co.uk/news/uk-politics-14209268
16:53:47 <Phantom_Hoover> http://twitter.com/#!/JonnieMarbles
16:53:49 <ais523> it's worth wondering how the assailant managed to break into the House of Commons in the first place
16:54:02 <Taneb> I think he got in the easy way
16:54:07 <Phantom_Hoover> Much as I disapprove of it, I can't fault his Twitter style.
16:54:11 <ais523> Phantom_Hoover: also, I can tell that that link's broken without even reading it
16:54:16 <ais523> as that anchor doesn't exist on the Twitter homepage
16:54:31 -!- olsner_ has joined.
16:54:49 <Phantom_Hoover> ais523, I... copied and pasted it.
16:55:02 <ais523> Phantom_Hoover: Twitter themselves use broken links
16:55:10 -!- comex_ has joined.
16:55:13 <ais523> what they do is, all links to Twitter actually go to the homepage, then it AJAXes the actual content
16:55:19 <Phantom_Hoover> ais523, good for you. Noöne cares.
16:55:31 <ais523> people without JS in their primary browser care
16:56:00 <Phantom_Hoover> A tiny minority, yes.
16:56:37 <Phantom_Hoover> A tiny minority who seem to take great pride in disabling browser functionality and telling everyone loudly that they have done so, yes.
16:57:39 <ais523> but it's a negative functionality, in that it makes websites more annoying
16:57:46 <cheater_> using the internet without js is like using a car without tyres
16:58:06 <ais523> cheater_: the worst I saw was a page that tried to set cookies when you move your mouse
16:58:11 <ais523> mostly because I prompt on those
16:58:24 <ais523> but there are some pretty stupid things done even with default browser settings
16:58:28 <cheater_> stop browsing midget porn
16:58:45 <Phantom_Hoover> Funnily enough, most of us get by fine without them.
16:59:03 <Phantom_Hoover> If you're going to turn off JS, don't bring it up when we send you links that need JS to work.
16:59:14 <cheater_> that might be true, Phantom_Hoover, but personally i couldn't bear a life without those wonderful little humans
16:59:18 -!- comex has quit (*.net *.split).
16:59:18 -!- olsner has quit (*.net *.split).
16:59:20 <Phantom_Hoover> Wait, s/send you/give/
17:00:34 -!- Kariya-jin has joined.
17:00:52 <ais523> Phantom_Hoover: well, what Twitter does with the #! thing breaks standard browser functionality too
17:01:07 <Phantom_Hoover> ais523, funnily enough, it works for most people.
17:01:13 <ais523> I'm not sure if it's got middle-click working yet; most sites that do #! stuff don't work with that
17:01:30 <ais523> also, I don't like the page to have to load twice every time I visit it
17:01:42 <Phantom_Hoover> Good for you. Keep it to yourself.
17:05:17 -!- foocraft has joined.
17:12:28 -!- Taneb has changed nick to TanebAway.
17:25:39 -!- Kariya-jin has left.
17:46:36 -!- TanebAway has changed nick to Taneb.
17:48:04 <Taneb> I'm ill
17:54:01 -!- augur has quit (Read error: Connection reset by peer).
17:54:21 -!- augur has joined.
18:00:37 <Taneb> Eh? C/Intercal: I, lilac, ret niche.
18:01:16 <olsner_> it doesn't work as well when half the palindrome is gibberish :)
18:01:25 <ais523> indeed
18:01:29 <Taneb> They are all real words!
18:01:44 <Taneb> But yeah, it's nonsense
18:04:09 <olsner_> > ap (++) reverse "But yeah, it's nonsense"
18:04:11 <lambdabot> "But yeah, it's nonsenseesnesnon s'ti ,haey tuB"
18:04:18 <olsner_> I can palindrome too :D
18:05:40 <Taneb> Pal, Fractran art? Car flap.
18:13:47 -!- elliott_ has joined.
18:15:27 -!- elliott has joined.
18:17:00 -!- elliott__ has quit (Ping timeout: 264 seconds).
18:18:00 -!- elliott_ has quit (Ping timeout: 252 seconds).
18:30:53 <Phantom_Hoover> elliott, oi.
18:32:57 -!- azaq23 has quit (Quit: Leaving.).
18:33:22 -!- azaq23 has joined.
18:34:56 <Taneb> Working on my Numberwang Hello World
18:39:05 <itidus20> I'm working on something delightfully retarded.
18:39:22 <Taneb> A Numberwang Hello World?
18:39:30 <Taneb> A Christmas present?
18:39:46 <Taneb> A polititian?
18:39:58 <itidus20> Those multi-dimensional numbers I was talking about the other day
18:40:03 <Phantom_Hoover> I hope that was a deliberate typo.
18:40:12 <Phantom_Hoover> itidus20, define "multi-dimensional".
18:40:24 <itidus20> consisting of more than one dimension
18:40:47 <Phantom_Hoover> You mean like the complex numbers?
18:40:53 <Taneb> Or Vectors?
18:41:32 <itidus20> Well what I realized was that all the named numbers are one dimensional: one,two,three,four,five,six,seven,eight,nine,ten, etc
18:41:41 <Phantom_Hoover> You mean complexes.
18:41:43 <Phantom_Hoover> Or vectors.
18:41:53 <Taneb> Ooh, I remember!
18:41:54 <itidus20> more towards the vectors idea
18:42:02 <Taneb> Giving names to vectors!
18:42:04 <itidus20> im too stupid to do anything with complex numbers
18:42:06 <Phantom_Hoover> Complexes == vectors.
18:42:10 <Taneb> Like, lala = (7,3)
18:42:16 <Phantom_Hoover> Just with a different definition of *.
18:42:25 <Phantom_Hoover> Erm, complexes == 2-vectors.
18:42:35 <itidus20> i'm the most mathematically-challenged here
18:43:12 <itidus20> So.. 2 is enough
18:43:34 <itidus20> more than 2 would be making life difficult on myself.
18:44:13 <Phantom_Hoover> itidus20, [a, b] + [c, d] = [a+c, b+d]; [a, b] * [c, d] = [a*c - b*d, a*d + b*c].
18:44:19 <Phantom_Hoover> That's all there is to complexes.
18:44:37 <Phantom_Hoover> Everything else is just a consequence.
18:44:59 <Phantom_Hoover> (OK, I've almost certainly missed something fairly minor, but those are the important bits.)
18:47:40 <Taneb> My Numberwang Hello World works perfectly... for three operations
18:52:41 <itidus20> so this is sort of what i'm doing: http://hpaste.org/49235
18:52:44 <Phantom_Hoover> Taneb, presumably you're trying to nullify the effect of the Numberwang operator?
18:52:55 <Taneb> That bit's fine
18:53:05 -!- augur has quit (Remote host closed the connection).
18:53:16 <Taneb> Oerjan worked out the safest way to do that
18:53:30 <Phantom_Hoover> What is it, out of curiosity?
18:54:02 <Taneb> When the step counter mod 9 is 0
18:54:19 <Taneb> That doesn't call any additional numberwangs, and doesn't use gotos
18:54:37 <Phantom_Hoover> Ah, so you just pad.
18:54:48 <Taneb> Yeah
18:55:08 <Phantom_Hoover> itidus20, why do you seem to have two contradictory definitions of +?
18:55:32 <itidus20> im exploring what it means to add two of those things together
18:56:09 <Taneb> Okay, apparently when I have a cold, I love Kaiser Cheifs
18:57:02 <itidus20> so when i started doing this the theory was that you could have a unique word for a horizontal 2 instead of a vertical 2
18:57:21 <itidus20> or, uh.. that is.. when i started actually mapping it out
18:57:45 <itidus20> the first idea was to give a unique written name to things of the form [x][y] instead of just [x]
18:58:50 <itidus20> and next i realized that gave a width x height result
18:59:31 <itidus20> and then later I started to realize you start ending up with non-rectangular objects more like bargraphs
18:59:56 <Phantom_Hoover> Looks like you're going to end up with arbitrary shapes.
19:00:15 <Phantom_Hoover> Hmm, they have to be connected.
19:00:46 <itidus20> i dunno
19:01:02 <itidus20> this kind of crap doesn't have to mean much for me
19:01:15 <Phantom_Hoover> Hmm, not quite arbitrary.
19:01:27 <Phantom_Hoover> There are conditions, but they're not terribly interesting ones.
19:01:29 <itidus20> theres probably some unspoken hypothesis i'm working towards
19:02:12 <Taneb> We need someone who's brilliant at maths but has not yet learnt the limits of the possible
19:02:33 <Phantom_Hoover> I learnt the limits of the possible, then I forgot what they were.
19:02:45 <Phantom_Hoover> They're not terribly interesting, and they're generally there for a reason
19:03:43 <itidus20> perhaps I should discriminate between rectangular and non-rectangular shapes
19:04:10 <Phantom_Hoover> But in seriousness, mathematicians have tried most generalisations you can think of.
19:05:07 <lifthrasiir> Taneb: is numberwang now stable?
19:05:09 <fizzie> Phantom_Hoover: The addition and multiplication rules you gave are also just consequences of the single i^2 = -1 after you write them as (a+bi).
19:05:13 <pikhq> Well, of course they have. Generalisation is an easy way to do interesting mathematics.
19:05:15 <Phantom_Hoover> fizzie, yes, sure.
19:05:32 <itidus20> I appreciate the power of generalization :>
19:05:39 <Phantom_Hoover> pikhq, yeah, and generally the ones that haven't been tried aren't very interesting.
19:05:44 <itidus20> well maybe i don't
19:06:06 <Taneb> lifthrasiir: Numbrewang is theortically sable
19:06:23 <Phantom_Hoover> For instance, you can extrapolate relativistic (?) physics to more than 1 time dimension, but the equations cease to be solvable.
19:07:21 <itidus20> I am into game design in a big way. But theres lots of things I encounter which make game-dev seem boring.
19:07:40 <Phantom_Hoover> itidus20, like display programming...
19:07:45 <itidus20> hmm
19:07:56 <lifthrasiir> Taneb: hmm, is there any significance of the step number? the specification does not mention the use of it.
19:08:04 <Taneb> Yes it does...
19:08:06 <itidus20> in terms of display there is that disparity between internal logic and representation of that logic
19:08:37 <Taneb> At each step, the digital root of the sum of the current command, its position in the program, and *the step number* is calculated. The result modulo four is taken, and the appropriate instruction is ran
19:08:41 <itidus20> and so the graphics and sounds in a game can just be swapped around meaninglessly. Just like you can replace the pieces on a chessboard.
19:08:48 <Phantom_Hoover> In terms of display there is the fact that it's annoyingly fiddly to set up.
19:09:18 <Taneb> Maybe you two should team up and make a games console?
19:09:47 <itidus20> Bob of Bob's Game is trying to make something called the nD
19:09:50 <Phantom_Hoover> Hardware design? Ahahahahahahahahahaha.
19:09:52 <Phantom_Hoover> Ahahahahahahahaha.
19:09:57 <Phantom_Hoover> Ha. Ha. Ha.
19:09:58 <Phantom_Hoover> No.
19:10:17 <itidus20> he's a bit crazy though
19:10:51 <Taneb> Hang on
19:11:00 <lifthrasiir> Taneb: ugh, so at the each step digital-root(command) is added to the step number, right?
19:11:01 <Taneb> Since when was Beyonce the world's number one superstar?
19:11:06 <itidus20> im not really interested in hardware
19:11:36 <lifthrasiir> i tried to implement numberwang in my esotope and stucked at that part.
19:11:50 <Taneb> lifthrasiir: No, the command, the step number, and the index of the command are added up, and the digital root of that (mod 4) is the actual command
19:11:57 <itidus20> ok so with games, I don't like the idea of a game's design imposing the limits of perfect play.
19:12:38 <itidus20> I want to see games where there is no such thing as perfect play.
19:12:49 <Taneb> Dwarf Fortress?
19:13:34 <itidus20> The more discerte a game becomes it seems the more likely that a perfect play scenario exists
19:13:40 <itidus20> ^discrete
19:13:42 <lifthrasiir> Taneb: is that something like this: for(step=idx=0; idx<ncmds; ++idx, ++step) execute(digital-root(step + idx + cmds[idx]) % 4); ?
19:14:06 <Taneb> Yes
19:14:20 <lifthrasiir> okay, i'll try to program in it now ;)
19:14:27 <Phantom_Hoover> <itidus20> The more discerte a game becomes it seems the more likely that a perfect play scenario exists
19:14:30 <Phantom_Hoover> ...no?
19:14:39 <Taneb> Go for it, lifthrasiir
19:14:55 <itidus20> sorry someones stomping in the hall.. i can't hear myself think
19:15:26 <Phantom_Hoover> Non-discrete games tend to accumulate errors, while discrete ones don't, so they are less obviously deterministic.
19:15:33 <Taneb> So, itidus, you want a sandbox?
19:16:13 <Taneb> As in a sandbox game
19:16:14 <itidus20> I don't want a person to ever be able to get closure in a game, that they are the best that is possible
19:16:32 <lifthrasiir> Taneb: ah, one more question: eight commands in the instruction 3 do not affect the step number, right?
19:16:39 <itidus20> not only that
19:16:41 <Phantom_Hoover> itidus20, suggest Minecr— wait, that's too open-ended for you, probably.
19:16:44 <Taneb> They do, lifthrasiir
19:17:00 <itidus20> ok forget the discrete comment.. that was just being dumb of me as usal
19:17:20 <itidus20> I don't want people to even be able to imagine being perfect at the game
19:17:21 <lifthrasiir> hmm, then the step number increases by 8 after the instruction 3?
19:17:42 <Taneb> It increments after every instruction, including the 3 and the ones in the 3
19:17:57 <itidus20> Like in the case of Chess and Go, although they can't compute perfect play, they can imagine it with sufficient computing power.
19:18:00 <lifthrasiir> to be exact, 8 + alpha, right.
19:18:07 <Taneb> Yes
19:18:48 <itidus20> And although the sufficient computing power is supposed to not exist, they can still imagine it existing
19:19:00 <Phantom_Hoover> <itidus20> Like in the case of Chess and Go, although they can't compute perfect play, they can imagine it with sufficient computing power.
19:19:17 <Phantom_Hoover> ISTR that in Go computers are barely able to compete.
19:19:46 <Taneb> But theoretically, there are only a finite number of possible games of Go
19:20:06 <itidus20> humans are clearly better at playing go than devising computers to play go :D
19:20:08 <pikhq> Taneb: Yes, it's just got significantly search space than chess.
19:20:17 <pikhq> Erm, significantly greater.
19:20:28 <lifthrasiir> Taneb: ugh, wait, then what about the command's position in the program?
19:21:00 <Sgeo> Hmm, it's been a while since I played Go
19:21:09 <Phantom_Hoover> Search space is, of course, what makes AIs a lot less reliable in continuous than discrete games.
19:21:17 <lifthrasiir> let's say the command at the position 42 invoked the instruction 3. now what are the positions of 12! and consequent commands?
19:21:25 <pikhq> Chess AI has turned out to be *much* less interesting than people would've liked.
19:21:37 <Taneb> 0 through 7, I think
19:21:39 <Phantom_Hoover> Although perfect play is clearly possible in, say, missile defence.
19:21:51 <pikhq> Instead of being something that'll produce an intelligent, thinking computer, it's created a very fast, stupid computer with well-designed heuristics.
19:21:53 <Taneb> And it was done last year in Draughts
19:22:15 <Phantom_Hoover> It was done in draughts quite some time before that.
19:22:28 <pikhq> Phantom_Hoover: Perfect play is *possible* in most games.
19:22:28 <itidus20> phantom: do you mean that a computer using the neural network approach to solving chess will fail just as badly?
19:22:34 <pikhq> It's just ridiculously unfeasible. :)
19:22:42 <Phantom_Hoover> pikhq, OK, easy.
19:22:46 <Phantom_Hoover> itidus20, neural... what?
19:23:28 <itidus20> well, surely they have tried applying artificial neural nets towards emulating the mind of a chess grand master to the extent such things are possible
19:23:34 <Phantom_Hoover> Ahahahahahaha.
19:23:36 <Phantom_Hoover> No.
19:23:38 <Phantom_Hoover> They haven't.
19:23:42 <itidus20> why not?
19:23:47 <itidus20> lol
19:23:49 <Taneb> Too expensive
19:23:53 <Taneb> And not enough point
19:23:54 <itidus20> lol
19:23:56 <Phantom_Hoover> OK, I should stop the ahahahahahahaha thing, it's probably ridiculously annoying.
19:24:09 <Taneb> When they can already defeat Gary Karsparov or whoever
19:24:23 <itidus20> taneb: so they don't "really" want to solve it :D
19:24:45 <Taneb> Yeah, because the stupid algorithms are already better than they need
19:24:59 <itidus20> it's just a toy to promote IBM etc :P
19:25:17 <itidus20> well i am wondering if such things would actually make any difference you see
19:25:25 * Sgeo points itidus20 towards http://arimaa.com/arimaa/
19:25:43 <itidus20> is chess just as unsolvable with ANN as without
19:26:10 <Taneb> To solve chess would require a computer larger than the observable universe
19:26:25 <itidus20> i've heard that
19:26:34 <elliott> <ais523> elliott__: could you talk me out of something?
19:26:34 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
19:26:35 <elliott> ais523: ok
19:26:41 <itidus20> and well..
19:26:58 <ais523> elliott: are you logreading, or do you want me to repeat context?
19:27:07 <elliott> that would be nice
19:27:09 <elliott> latter that is
19:27:21 <itidus20> taneb: but that would imply no breakthroughs probably
19:27:29 <itidus20> breakthroughs are always unanticipated.
19:27:35 <ais523> elliott: basically, it was designing an esolang identical to an existing esolang
19:27:42 <ais523> such as BF with none of the commands changed
19:27:51 <ais523> I'm thinking of calling it Brainfuck, as that name isn't currently taken
19:27:56 <elliott> ais523: not even syntactically?
19:27:56 <itidus20> it's a good statement though about the universe
19:28:00 <ais523> elliott: nope
19:28:11 <elliott> ais523: i approve wholeheartedly
19:28:27 <ais523> heh
19:28:30 -!- oerjan has joined.
19:29:39 <itidus20> sgeo: thanks. nice link.
19:29:49 <Sgeo> yw
19:30:36 <itidus20> ok so, gaming can be about improvement, and being the best. trouble here is that best is relative.
19:30:57 <itidus20> so you be the best by keeping everyone else down and you're still the best
19:30:57 <oerjan> `addquote <fizzie> It's always insane to expect different results, even when it's likely to occur.
19:31:01 <HackEgo> 514) <fizzie> It's always insane to expect different results, even when it's likely to occur.
19:31:05 <lifthrasiir> Taneb: in order to get out of the instruction 3, all generated commands have to be executed or the instruction 2 has to be invoked. am i missing anything?
19:31:17 <Phantom_Hoover> oerjan, when'd he say that?
19:31:21 <elliott> oerjan: that was funny?
19:31:27 <Taneb> Yes, the 2 keeps it in the 3
19:31:35 <Taneb> 2s don't escape 3s
19:31:41 <oerjan> 01:16:40 tunes time
19:31:51 <lifthrasiir> huh,
19:31:55 <oerjan> (which corresponds to no timezone known to mankind)
19:32:15 <Phantom_Hoover> :D
19:32:25 <lifthrasiir> Taneb: if the instruction 3 invoked the instruction 3 in the middle, then commands have to be terminated twice (or possibly more)?
19:32:28 <oerjan> elliott: wait, you want context now?
19:32:46 <Taneb> lifthrasiir: yes
19:32:48 <oerjan> `delquote 514
19:32:49 <HackEgo> ​*poof*
19:33:01 <Phantom_Hoover> Hey, that was moderately funny on its own.
19:33:08 <lifthrasiir> okay, right now i tried to categorize the behavior of the instruction 3 for possible step numbers.
19:33:45 <elliott> oerjan: well it was funny :P
19:34:04 <oerjan> `addquote <fizzie> There's that saying that the definition of insanity is doing the same thing over and over again and expecting different results. [...] <Taneb> You've just gave me a different result [...] <fizzie> It's always insane to expect different results, even when it's likely to occur.
19:34:05 <HackEgo> 514) <fizzie> There's that saying that the definition of insanity is doing the same thing over and over again and expecting different results. [...] <Taneb> You've just gave me a different result [...] <fizzie> It's always insane to expect different results, even when it's likely to occur.
19:34:10 <oerjan> elliott: better?
19:36:35 <elliott> oerjan: it was better originally :-P
19:36:36 <itidus20> draws are not possible in arimaa eh
19:36:42 <elliott> but I note that the [...]s are unneeded there
19:36:43 <oerjan> darn
19:36:48 <itidus20> thats always good
19:36:49 <elliott> you only need to cut it out when time passing matters
19:37:02 <oerjan> elliott: well it's just that both people said things in between
19:37:20 <elliott> fair enough
19:37:25 <itidus20> no first move advantage and no draws? how can it be so. :o
19:37:41 -!- pikhq_ has joined.
19:37:47 <Phantom_Hoover> itidus20, note that it is patented.
19:37:53 <itidus20> lol
19:38:00 -!- pikhq has quit (Ping timeout: 264 seconds).
19:38:04 <itidus20> patents
19:39:03 <elliott> Phantom_Hoover: i love the software license
19:39:05 <elliott> it is so stupid
19:39:33 <Phantom_Hoover> elliott, what is it, again?
19:39:38 <itidus20> I'm not looking to make boardgames though. I am focused on the abstract word game.
19:39:46 <elliott> Phantom_Hoover: i forget exactly
19:40:03 <Phantom_Hoover> Oh, here it is: http://arimaa.com/arimaa/license/
19:42:16 <itidus20> well if it is solvable I don't know how "no first move advantage and no draws" could be possible
19:42:27 <itidus20> thats what intruiges me
19:42:47 <oerjan> `addquote <fizzie> Taneb: See, it's Obama's fault the guy's apartment is now worth less than their mortgage and something something something that translates to not being able to look for a proper fix. <<Taneb> Someone with that sort of grasp of logic shouldn't be allowed anything more computationally powerful than a plastic spoon
19:42:48 <HackEgo> 515) <fizzie> Taneb: See, it's Obama's fault the guy's apartment is now worth less than their mortgage and something something something that translates to not being able to look for a proper fix. <<Taneb> Someone with that sort of grasp of logic shouldn't be allowed anything more computationally powerful than a plastic spoon
19:42:52 <oerjan> oops
19:42:54 <oerjan> `delquote 515
19:42:56 <HackEgo> ​*poof*
19:43:05 <oerjan> `addquote <fizzie> Taneb: See, it's Obama's fault the guy's apartment is now worth less than their mortgage and something something something that translates to not being able to look for a proper fix. <Taneb> Someone with that sort of grasp of logic shouldn't be allowed anything more computationally powerful than a plastic spoon
19:43:06 <HackEgo> 515) <fizzie> Taneb: See, it's Obama's fault the guy's apartment is now worth less than their mortgage and something something something that translates to not being able to look for a proper fix. <Taneb> Someone with that sort of grasp of logic shouldn't be allowed anything more computationally powerful than a plastic spoon
19:43:22 <itidus20> "End game tables are not useful since games can end with all pieces on the board. "
19:43:30 <itidus20> hmm fascinating
19:44:05 <oerjan> itidus20: it could have a _second_ move advantage, you know :P
19:44:25 <itidus20> lol
19:44:31 <itidus20> good thinking
19:44:38 <oerjan> like those game variations where the second player is allowed to switch places on eir first move
19:44:48 <Phantom_Hoover> "Project which are non-commercial require obtaining a written authorization."
19:45:05 <Phantom_Hoover> Yeah, this licence is ridiculous.
19:45:16 <elliott> 19:03:07: <Gregor> With a name like BeFuck, the only difference SHOULD be a terrible C++ API and fanatic devoted followers.
19:45:22 <elliott> Gregor: Was BeOS's API that bad?
19:45:31 <Gregor> It was C++, that's all I know :P
19:45:32 <itidus20> i don't intend to make an arimaa.. simply to steal a few of their concepts for use in realtime arcade games
19:45:35 <Gregor> But C++ pretty much implies terrible.
19:45:58 <elliott> 19:40:16: <zzo38> By "Knuth-style" I mean things such as: Table of contents, index, named chunks (which can be included in others), pretty printing, print out (rather than HTML), etc. Partially also the input format, but mostly I refer to the output presentation and how they work in general.
19:45:58 <elliott> 19:41:12: <oerjan> zzo38: oh. i don't know. maybe some of that if you also use haddock. istr it does not support reordering things though (and haskell doesn't really need that)
19:46:12 <elliott> What oerjan said; Haskell doesn't need the crutches that other languages do to support literate programming
19:47:02 <elliott> 20:06:06: <oerjan> what is facentes
19:47:07 <elliott> oerjan: it's what you poop, HTH
19:47:18 <oerjan> elliott: THANKS
19:47:46 <itidus20> Ok uh.. suppose you compare the idea of a puzzle in an adventure game to that of solving a boardgame. well an arimaa-like puzzle might be less frustrating
19:48:04 <elliott> `addquote <Taneb> That offers me some social standing, feudal system wise
19:48:06 <HackEgo> 516) <Taneb> That offers me some social standing, feudal system wise
19:48:14 <Phantom_Hoover> itidus20, have you looked at Minecraft, actually?
19:48:26 <itidus20> i wanted to buy it but i'm broke
19:48:37 <Taneb> I wanted to buy it, so I did.
19:48:48 <itidus20> but i might bore of it also
19:48:51 <Taneb> And now I don't need to pay for a school trip to Rome
19:49:12 <Taneb> That is good news, that has came about from bad news
19:50:01 <Phantom_Hoover> itidus20, it is quite simple to pirate.
19:50:06 <elliott> 00:54:11: <pikhq> http://i.imgur.com/w7cns.jpg This was the Yahoo! News pictures page. Today.
19:50:07 <oerjan> elliott: also i assume knuth's literate programming was originally for pascal, which has stupidly stringent ordering requirements (admittedly to get trivial one-pass compilation)
19:50:09 <elliott> ANOTHER ONE?!!!!?!
19:50:11 <oerjan> er
19:50:13 <oerjan> *wirth's
19:50:16 <oerjan> shees
19:50:17 <oerjan> h
19:50:26 <elliott> oerjan: um wirth invented literate programming?
19:50:29 <itidus20> lol
19:50:38 <elliott> no, knuth did
19:50:41 <oerjan> elliott: er wait i'm confusing myself
19:50:45 <elliott> :)
19:50:49 <Taneb> Also, is there anyplace I can see a list of all the hackego quotes
19:51:07 <oerjan> i _thought_ wirth, my subconscious must have corrected it, and this time it was right :P
19:51:31 <itidus20> ambiguity of ***th
19:51:42 <itidus20> my regex skills aren't up to speed though
19:51:58 <itidus20> (a-z){3}th
19:52:02 <Taneb> Is it bad that I got confused because I couldn;t think of a swear word with that pattern?
19:52:05 <elliott> iamcal: [a-z]
19:52:08 <Taneb> ...th
19:52:18 <elliott> <Taneb> Also, is there anyplace I can see a list of all the hackego quotes
19:52:21 <elliott> `pastequotes
19:52:23 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.32205
19:52:28 <elliott> that's an immutable snapshot
19:52:29 <itidus20> [a-z]{3}th
19:52:30 <elliott> you can also go to
19:52:31 <elliott> `url quotes
19:52:32 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/quotes
19:52:33 <elliott> but that lacks quote numbers
19:52:37 <Taneb> Handy
19:52:47 <oerjan> itidus20: nah it's just that my mind graph has a pascal -> wirth edge, and i knew (knuth's) WEB was in pascal, so somehow the wires got crossed
19:52:56 <itidus20> oh
19:53:11 <itidus20> pascal reinforced the confusion
19:53:15 <oerjan> yeah
19:53:37 <elliott> oerjan: the wire crossing problem?
19:54:50 <olsner_> the oerjan confusion problem?
19:55:06 <elliott> olsner_: whoosh
19:55:23 <itidus20> I think that there is value in languages which have hollow meaningless keywords
19:55:34 <itidus20> Like English.
19:56:55 <elliott> also all languages
19:57:12 <itidus20> well a human probably can't design a program in hex
19:57:17 <Taneb> Is the English Language Turing-Complete?
19:57:26 <itidus20> sure they can implement it in hex but i doubt they can design it in hex
19:58:13 <itidus20> well.. is a human body turing complete :>
19:58:16 <oerjan> Taneb: i'd say it's either obviously turing-complete, or too vague to be used for computation...
19:58:27 <elliott> itidus20: obviously not
19:58:29 <elliott> we have only finite memory
19:58:35 <Phantom_Hoover> Taneb, allowing for imperatives, yes.
19:58:39 <itidus20> hummm
19:58:48 <elliott> Phantom_Hoover: why do you need imperatives?
19:59:01 <elliott> "A list starting with 9 and followed by itself, with each element incremented by one."
19:59:10 <elliott> that's map succ (repeat 9)
19:59:14 <oerjan> ye olde declarative english
19:59:29 <Phantom_Hoover> elliott, yeah, but imperatives are the most direct way to do it.
20:00:29 -!- pikhq has joined.
20:00:30 <elliott> Phantom_Hoover: Only if you consider imperative languages more obvious than functional ones
20:01:03 <itidus20> I don't think enough thought is given to how humans percieve a language(in common programming) so much as how the language compiles
20:01:33 <itidus20> falling back on a basic set of keywords to do everything
20:01:42 <itidus20> you can never escape the friggen keywords
20:01:57 <Phantom_Hoover> Protip: if you think you have some Big New Idea and you're not an expert, it's probably been done.
20:02:08 <elliott> no keywords in Scheme
20:02:21 <Phantom_Hoover> elliott, unless you consider the special forms keywords.
20:02:27 <elliott> Phantom_Hoover: you can rebind them
20:02:28 <itidus20> I admit english has words like "is"
20:02:32 <elliott> (let ((lambda 9)) lambda) => 9
20:02:38 <elliott> so they're not keywords by any stretch of the imagination
20:02:55 <itidus20> "you","I","is" etc.. could be english keywords
20:03:05 <elliott> (let ((lambda (lambda (x y) y)) (x (lambda () 9))) (lambda (x) x)) => <function>
20:03:11 <elliott> (that function being x)
20:03:22 -!- pikhq_ has quit (Ping timeout: 246 seconds).
20:03:43 <itidus20> but the english words tend to be controlled by general grammars.. such that "you" and "I" are pronouns.
20:04:06 <itidus20> whereas, uh.. humm
20:06:26 <oerjan> itidus20: basically afaik there have been attempts to make programming languages looking like english and they've all been crap
20:07:00 <oerjan> COBOL and Applescript are the two i know about
20:07:53 <itidus20> on thinking about it, by separating reserved words from created words you often know whether an identifier is safe to use
20:08:11 <itidus20> it could be a mess if you had to consult a dictionary each time you thought up an identifier
20:08:33 <Taneb> And if the implementation was written by someone with a different dictionary...
20:08:49 <Taneb> Say, the complete OED that costs £750 and can kill people
20:08:56 <itidus20> uhh i don't mean english as such
20:08:59 <itidus20> just words
20:09:06 <itidus20> anyway, do you want the OED?
20:09:13 <itidus20> its easily obtainable now :P
20:09:22 <Taneb> In hardback?
20:09:25 <itidus20> nope
20:09:42 <oerjan> itidus20: i don't think you can kill people with a digital version. well maybe.
20:10:40 <itidus20> apparently when they released the sofrware one.. they used something called securom... and apparently if you replace that file with one called swhx its freely usable
20:10:58 <itidus20> probably not legally of course
20:11:44 <itidus20> so theres torrents out there demonstrating this
20:11:56 <itidus20> it's all very odd
20:16:31 -!- pikhq_ has joined.
20:18:09 <oerjan> <fizzie> Maybe it's just a lambdabot thing where it reads one full expression and ignores trailing fluff? Certainly "pi 3 4" is not okay in ghci.
20:18:10 -!- pikhq has quit (Ping timeout: 240 seconds).
20:18:18 <oerjan> no there is an actual instance.
20:18:27 <oerjan> > (sin + cos) 0
20:18:28 <lambdabot> 1.0
20:18:36 <oerjan> > (sin + cos + 1) 0
20:18:37 <lambdabot> 2.0
20:19:05 <oerjan> also known in math as "pointwise" arithmetic
20:19:50 <Phantom_Hoover> <itidus20> probably not legally of course
20:19:53 <Phantom_Hoover> You don't say?
20:21:05 <Deewiant> > 1 2
20:21:06 <oerjan> > (id + 2 * id + 5) 3
20:21:06 <lambdabot> 1
20:21:07 <lambdabot> 14
20:21:17 <ais523> Phantom_Hoover: hmm, is it legal in the UK to crack the DRM on a legitimate copy of something you bought?
20:21:24 <ais523> I think it is, but I'm not sure
20:21:27 -!- ralc has joined.
20:21:28 <ais523> (it's illegal in the US)
20:21:39 <ais523> (stupid DMCA)
20:22:17 -!- cheater_ has quit (Ping timeout: 255 seconds).
20:24:53 <oerjan> damn it's annoying that CakeProphet isn't here so i can correct his haskell misconceptions :P
20:25:29 <itidus20> The mystery of the dictionary is the way each entry just contains words.
20:25:55 <oerjan> itidus20: a bootstrapping problem...
20:26:04 <itidus20> yup
20:27:35 <oerjan> <Vorpal> CakeProphet, I think types should have strictness info
20:27:59 <itidus20> time for a visit to wiki
20:28:01 <oerjan> strictness is not a property of types, but of functions. although some data constructors can be strict functions (if declared with !)
20:28:04 -!- pikhq_ has quit (Ping timeout: 252 seconds).
20:28:05 -!- pikhq has joined.
20:28:20 <oerjan> *if having fields declared with !
20:28:44 <oerjan> dammit Vorpal isn't here either :(
20:29:00 <oklopol> i am here !
20:29:11 -!- Tritonio has joined.
20:29:20 <Vorpal> oklopol, ?
20:29:23 <Vorpal> err
20:29:24 <Vorpal> oerjan, ^
20:29:25 <oerjan> yes but you weren't involved in the conversation i am logreading
20:29:32 <oerjan> whew
20:29:47 <Vorpal> oerjan, I'm preoccupied though
20:30:07 <oerjan> Vorpal: i was just commenting on your strictness comment
20:31:19 <itidus20> "The oldest known dictionaries were Akkadian empire cuneiform tablets with bilingual SumerianAkkadian wordlists, discovered in Ebla (modern Syria) and dated roughly 2300 BCE." I assume they also had the bootstrapping problem
20:32:03 <itidus20> but bilingual is another side of it.. far more useful
20:32:32 <Vorpal> oerjan, ah
20:32:44 <oerjan> ok CakeProphet's haskell misconceptions are becoming too much for me, i'll skip the rest of that log discussion
20:34:19 <oklopol> "<itidus20> no first move advantage and no draws? how can it be so. :o" <<< you can easily remove draws from any game, and i don't think this has anything to do with first move advantages
20:35:27 -!- cheater_ has joined.
20:35:33 <oerjan> <ais523> I'm thinking of calling it Brainfuck
20:36:01 <oerjan> you'll need wiki disambiguation then
20:36:10 <ais523> indeed
20:36:17 <ais523> Esolang needs more disambiguation
20:36:26 <itidus20> it may not have been completely strict about those terms on the arimaa page.. im probably taking "no first move advantage" too literally
20:36:49 <ais523> realising the need for disambig just made the idea seem even better
20:37:42 <oklopol> "<Taneb> But theoretically, there are only a finite number of possible games of Go" <<< depends on endgame rules, i think some of them might let you have an uncountable number of games?
20:41:53 -!- boily has quit (Ping timeout: 276 seconds).
20:43:30 <oklopol> "<oerjan> yes but you weren't involved in the conversation i am logreading <oerjan> whew" <<< well THANKS :|
20:45:46 <oklopol> itidus20: no first move advantage is always relative, since mathematically it's rather meaningless
20:46:30 <oklopol> it just means that when humans play the game, they don't find starting particularly useful
20:47:08 <ais523> oklopol: depends on the ko rule, not the engame rules
20:47:17 <oklopol> erm sorry i meant the ko rule
20:47:25 <oklopol> what the fuck is an endgame rule
20:47:30 <itidus20> ok i just watched the arimaa tutorial. interesting game.
20:48:10 <ais523> oklopol: basically, rules for scoring when the players can't agree who won
20:48:11 <Taneb> I was present when someone mentioned porn in the House of Commons
20:48:14 <Taneb> On National Television
20:48:19 <Zwaarddijk> don't all go rules forbid repeated positions?
20:48:33 <ais523> Zwaarddijk: yes, but they differ in the timeframe they forbid them in
20:48:37 <Zwaarddijk> ah
20:48:43 <ais523> superko forbids any sort of repetition over the lifetime of the game
20:48:52 <ais523> but simple ko disallows only undoing the opponent's last move
20:48:53 <oklopol> ais523: oh right, in any case what i meant was i certainly didn't meant that
20:49:03 <Zwaarddijk> I wonder whether the ban on repeated positions in chess is even taken into account until the endgame
20:49:17 -!- cheater_ has quit (Ping timeout: 255 seconds).
20:49:22 <ais523> and there are some variants which disallow triple KO too (basically, where each player repeatedly undoes the opponent's last-but-3 move)
20:49:32 <oklopol> anyway, it is obvious that there IS a first player advantage in arimaa in the sense that the first player has a winning strategy, we just don't know it
20:49:35 <elliott> <Taneb> I was present when someone mentioned porn in the House of Commons
20:49:36 <elliott> <Taneb> On National Television
20:49:36 <elliott> OH NOES
20:49:44 <ais523> Taneb: what were you doing in the house of commons?
20:49:57 -!- FireFly has quit (Quit: swatted to death).
20:49:57 <oklopol> "<ais523> Zwaarddijk: yes, but they differ in the timeframe they forbid them in" <<< what do you mean?
20:50:03 <oklopol> oh you explain
20:50:10 <Taneb> Being a member of one of the two organisations allowed to debat there
20:50:27 <Taneb> *debate
20:50:31 <elliott> oh, present as in actually there
20:50:36 <elliott> ais523: He's secretly the Queen.
20:50:42 <ais523> elliott: I was trying to deliberately misinterpret, but I think I failed
20:50:42 <oklopol> "<ais523> but simple ko disallows only undoing the opponent's last move" <<< this was what i meant, then could a game theoretically go on forever?
20:50:49 <ais523> also, which house of commons?
20:50:52 <oerjan> <oklopol> [...] <oerjan> whew" <<< well THANKS :| <-- that was on response to noticing Vorpal was actually present duh :(
20:50:54 <Taneb> The one in London
20:51:11 <ais523> oklopol: yes, it even happens sometimes (triple KO, when each player undoes the opponent's last-but-third move, and doing anything else would give a major disadvantage)
20:51:14 <elliott> <Vorpal> CakeProphet, I think types should have strictness info
20:51:16 <Phantom_Hoover> Taneb, you're in that youth whatsit that doesn't matter, right?
20:51:17 <elliott> when did he say this
20:51:20 <ais523> umm, last-but-2
20:51:30 <Taneb> Yeah, PH
20:51:32 <ais523> Taneb: did you see someone attack Rupert Murdoch?
20:51:35 <ais523> and his wife retaliate?
20:51:37 <ais523> or did you miss it?
20:51:46 <Taneb> I left before that happened
20:51:49 <Phantom_Hoover> ais523, that wasn't even in the House of Commons, was it?
20:51:51 <oklopol> ais523: alright. then just add some possible move in the middle and you'll have uncountably many games.
20:52:01 <ais523> oklopol: indeed
20:52:03 <elliott> ais523: You may have been there years ago, but were you there TODAY???
20:52:03 <oklopol> interestingly enough, go is a second player win
20:52:05 <elliott> --ais
20:52:06 <ais523> Phantom_Hoover: it was in the same building
20:52:07 <oklopol> i mean
20:52:10 <elliott> oklopol: that's proven?
20:52:11 <ais523> but not the same room
20:52:11 <oklopol> winning strategy for second player
20:52:14 <oklopol> elliott: no
20:52:16 <ais523> as is normally used
20:52:20 <elliott> oklopol: lol
20:52:22 <ais523> it was one of the committee rooms
20:52:32 <Phantom_Hoover> Ah.
20:52:35 <oklopol> elliott: i'm just telling you because i like you
20:52:39 <elliott> oklopol: ok
20:52:42 <Phantom_Hoover> So not where they'd let a random teenager who doesn't matter.
20:52:45 <elliott> oklopol: is the riemann hypothesis true
20:52:51 <oklopol> elliott: of course it is
20:52:55 <oklopol> ...
20:52:57 -!- FireFly has joined.
20:53:02 <elliott> huh, aaron swartz charged with data theft?
20:53:07 <Taneb> The Mythbusters said so
20:53:08 <Phantom_Hoover> oklopol, is the continuum hypothesis true?
20:53:51 <oerjan> <Zwaarddijk> I wonder whether the ban on repeated positions in chess is even taken into account until the endgame <-- well insofar as it only being during the endgame that you're likely to not have irreversible moves (e.g. captures, pawn movements)
20:54:07 <oklopol> Phantom_Hoover: independent from axioms. yeah it's true.
20:54:10 <elliott> oh, not "theft" of data he got from people
20:54:26 <elliott> liberating academic papers, it seems
20:54:36 <oklopol> chess is also first player win
20:54:45 <oklopol> tennis, interestingly enough, is always a draw.
20:55:01 <elliott> hahaha, he didn't even do anything wrong
20:55:06 <elliott> just downloaded more articles than they wanted
20:55:13 <fizzie> oklopol: And sex?
20:55:33 <elliott> `addquote <oklopol> interestingly enough, go is a second player win <oklopol> chess is also first player win <oklopol> tennis, interestingly enough, is always a draw.
20:55:35 <HackEgo> 517) <oklopol> interestingly enough, go is a second player win <oklopol> chess is also first player win <oklopol> tennis, interestingly enough, is always a draw.
20:55:50 <Phantom_Hoover> elliott, looks like he also broke into a cabinet or something.
20:56:03 <elliott> Phantom_Hoover: that's not what he's being charged with.
20:56:09 <oklopol> fizzie: i have to think about this
20:56:28 <elliott> "I kind of picture MIT as the paramount of Technology and that includes some aspects of security. I am disappoint about lax NAC."
20:56:32 <elliott> MIT: HEIGHT OF SECURITY
20:56:38 <elliott> that's why no pranks ever happen there, ever
20:56:41 <ais523> elliott: he did do anything wrong, he didn't have access to even a single article legitimately
20:56:43 <Taneb> MIT: TIM BACKWARDS
20:56:55 <ais523> he got the access by breaking into the cupboard containing a network switch at MIT
20:57:05 <ais523> he wasn't an MITian at the time
20:57:14 <ais523> and then piggybacked on their access
20:57:18 <elliott> ais523: firstly, OK, s/do anything wrong/do anything illegal/
20:57:21 <ais523> with both MIT and JSTOR trying to stop him
20:57:35 <Taneb> ygolonhcet etutitsni fo stessuhcassam
20:57:36 <elliott> ais523: JSTOR asked the government not to prosecute, it seems
20:57:39 <elliott> although my source may be biased
20:57:41 <oklopol> "<Taneb> MIT: TIM BACKWARDS" <<< the palindromist strikes again
20:57:47 <ais523> well, vandalising a network switch cabinet is probably wrong even if you agree with everything else he did
20:57:55 <elliott> ais523: was the switch cabinet damaged?
20:58:13 <elliott> if not, "vandalising" seems a bit much
20:58:17 <ais523> I assume so, typically opening a locked cabinet without the key damages it
20:58:32 <ais523> unless you pick the lock
20:58:32 <Taneb> Unless the cabinet is badly designed
20:58:46 <elliott> that's a rather minor damage, but fair enough
20:59:01 <Phantom_Hoover> elliott, opening a locked cabinet without permission is wrong regardless.
20:59:23 <ais523> Phantom_Hoover: I don't think it's completely inexcusable in all circumstances
20:59:32 <Phantom_Hoover> ais523, inexcusable != wrong.
20:59:37 <ais523> I think it's typically likely to be wrong, but there are circumstances in which it's morally justifiable
20:59:43 <elliott> Phantom_Hoover: Not necessarily.
20:59:49 <elliott> Besides, MIT has a long history of that kind of stuff.
20:59:58 <ais523> elliott: even when done by non-MITers?
21:00:06 <itidus20> oklopol: so interesting to me is whether you can have a game like arimaa where there is no first/second player advantage
21:00:35 <itidus20> and as a wannabe game designer, this is a pain
21:00:38 <oerjan> <Taneb> lifthrasiir: No, the command, the step number, and the index of the command are added up, and the digital root of that (mod 4) is the actual command
21:00:40 <elliott> ais523: Not that I know of, but I don't think anyone in charge of switch cabinets at MIT expects them to never be broken into
21:00:45 <ais523> itidus20: making the game symmetrical is an easy way
21:00:54 <ais523> as in, both people think of moves independently, then make them simultaneously
21:01:05 <oerjan> mind you i believe you can take the digital roots first, and do the additions mod 9
21:01:09 <coppro> digital root mod 4? what?
21:01:19 <oerjan> coppro: digital root, then mod 4
21:01:31 <ais523> elliott: well, if they figured out someone had planted a laptop in a switch cabinet, they'd probably have just removed it rather than trying to block its IP and MAC address
21:01:53 <itidus20> ais: yeah.. but can you rule out advantage while also ruling out a draw?
21:02:22 <ais523> itidus20: you could finish off with matching pennies or something
21:02:30 <ais523> although that's a bit of a contrived and cheaty example
21:02:32 <oerjan> Taneb: oh wait i just realized something, digital roots tend to be 9 not 0. hm whoops i wonder if my table has errors because of this.
21:02:45 <itidus20> matching pennies?
21:03:05 <itidus20> im just looking at the painful limitations of games
21:03:09 <ais523> itidus20: a two player game; each player says head or tails (chosen independently, and then both reveal at the same time), the first player wins if they say the same, the second otherwise
21:03:24 <ais523> it's a bit like rock-paper-scissors, except you can't get draws
21:03:27 <oerjan> 0 shouldn't happen unless you are at the beginning of the program starting with 0!
21:03:45 <itidus20> interesting
21:04:15 <itidus20> ais: i like the sound of it
21:05:09 <Taneb> Uurgh...
21:05:12 <Taneb> Ill
21:05:56 <Taneb> Goodnight
21:06:05 <ais523> Taneb: use a unicorn horn if you can; if not, eat eucalyptus leaf or as a last resort pray
21:06:09 -!- Taneb has quit (Read error: Connection reset by peer).
21:06:11 <ais523> you only have around 40 turns left to live
21:06:17 <ais523> oh, right, wrong channel
21:07:05 <itidus20> So each player specifies a 0 or 1 privately p1 and p2. And then they are both revealed. if (p1 == p2) player 1 wins, else player 2 wins.
21:07:10 <oerjan> it might be some 0's should be 1's instead. fortunately this won't ruin the easy numberwang row
21:07:41 <ais523> itidus20: yep, that's it
21:09:30 <oklopol> "<itidus20> ais: yeah.. but can you rule out advantage while also ruling out a draw?" <<< if you don't have draws, either the first or the second player always wins, obviously. (assuming perfect players, and why wouldn't you.)
21:10:35 <oklopol> well okay if you have imperfect information, that's not true
21:10:52 <itidus20> noone in the universe has perfect information :>
21:10:55 <ais523> oklopol: imperfect information or randomness
21:11:01 <itidus20> :-P
21:11:01 <ais523> matching pennies does it via imperfect information
21:11:04 <oklopol> yeah to what ais523 said
21:11:22 <itidus20> ais: but it's still very formal. i like it. it's not dice rolling
21:11:24 <oklopol> nothing except silent disapproval to what itidus20 said
21:11:59 <oklopol> itidus20: have you read any game theory? it's all about that stuff
21:12:07 <itidus20> oklo: i don't like the state of affairs. i am slinging arrows about.
21:12:32 <oklopol> well that makes perfect sense i guess
21:12:53 <coppro> oklopol: I've never heard of any rules of Go which would lead to an uncountable number of games
21:13:31 <itidus20> ok so.. looking at the penny example. so each player selects 1 bit privately, and then.. the rules are a 2 bit table.
21:14:04 <ais523> itidus20: that's a common representation for games in academia
21:14:08 <ais523> as a lookup table
21:14:14 <itidus20> you could have it such that the rules were stacked 3 ways to win vs 1 way to lose
21:14:14 <ais523> it doesn't work too well for complex games, though
21:14:33 <oklopol> coppro: ais523 just mentioned simple ko
21:14:35 <ais523> itidus20: that wouldn't be too fun, though, as one player play the move that let them always win
21:14:38 -!- ralc has quit (Ping timeout: 260 seconds).
21:14:41 <itidus20> hehe
21:14:44 <ais523> coppro: simple ko, you can
21:14:49 <ais523> superko, the number of games is finite
21:14:50 <coppro> ais523: How?
21:15:00 <ais523> coppro: triple ko allows you to produce arbitrary integers
21:15:00 <itidus20> ais: and this is why fundamentally we hate first person advantage
21:15:06 <coppro> ais523: Which are countable
21:15:08 <ais523> two triple kos on the board at the same time gives arbitarry reals
21:15:19 <coppro> how?
21:15:22 <ais523> because you can interleave them uncountably many ways
21:15:38 <itidus20> because it ultimately allows the first player to always win in perfect conditions(which luckily don't exist)
21:15:57 <ais523> basically, imagine you take the binary expansion of a real, for 0 each player plays a move in the first triple ko, for 1 each player plays a move in the second triple ko
21:16:04 <ais523> all reals give different games that way
21:16:09 <ais523> (between 0 and 1, but that doesn't matter)
21:16:15 <ais523> thus, uncountably many games are possible
21:16:29 <oklopol> or alternatively, have repetitions either 3 or 4 steps away from each other and just encode a bit sequence
21:16:31 -!- oerjan has quit (Remote host closed the connection).
21:16:32 <itidus20> so to me.. chess is matching pennies where: 01 = win, 00,10,11 = lose
21:16:35 <coppro> ais523: Hmm...
21:16:39 -!- oerjan has joined.
21:16:46 <itidus20> just that its so complex that noone knows how to grab that advantage
21:16:58 <ais523> itidus20: fair enough
21:17:17 <itidus20> its ok and all... but its a nasty fact.
21:17:17 <ais523> people tend to play chess a lot more than matching pennies, thuogh
21:17:18 <ais523> *though
21:17:27 -!- Tritonio has quit (Quit: Leaving).
21:17:27 <coppro> ais523: ok you win
21:17:36 <itidus20> it means chess is useless on a small enough scale
21:17:46 <itidus20> it can't scale down to simple
21:18:00 <ais523> I suspect there's more perceived skill in chess precisely because you can gain an advantage by knowing the lookup table more than your opponent does
21:18:10 <itidus20> on a small enough board it is tic tac toe as far as the PC is concerned
21:18:25 <ais523> yep
21:18:56 <itidus20> i still appreciate the actuality of chess
21:19:06 <oklopol> iirc with the natural infinitification, go with simple ko is something like exptime hard but we don't know anything about superko
21:19:33 <oklopol> (whether a position is winning that is)
21:19:51 <oklopol> what does the actuality of chess mean?
21:20:14 <itidus20> what people do with chess instead of theorizing and analyzing it
21:20:20 <elliott> play it
21:20:36 <itidus20> ah. that one. yeah
21:20:55 <oklopol> chess is extremely boring to play though
21:21:43 <Phantom_Hoover> oklopol, what do you not find boring to play?
21:22:19 <olsner_> space jazz?
21:22:32 <oklopol> well i like board games where you don't need to think, then i don't start clumsily doing brute-force search
21:22:41 <oklopol> say monopoly
21:23:34 <oklopol> but hmm
21:23:44 <Phantom_Hoover> Monopoly: the game designed to tear families apart.
21:23:45 <oklopol> i kind of liked go as well the one time i played it
21:23:48 <ais523> most of the skill in monopoly is negotiation
21:23:53 <ais523> two-player monopoly is really boring
21:23:59 <Phantom_Hoover> ais523, hence the families being torn apart.
21:24:09 <itidus20> so on trying to arbitrarily map the 4 possible results of penny matching i see that only 1 version is balanced
21:24:22 <oklopol> negotiation is gay, i just like the part where you have a number that tells you how good you're doing and it randomly goes up or down
21:24:30 <Phantom_Hoover> 95% of divorces are due to Monopoly, true fact.
21:24:30 <olsner_> where can you negotiate in monopoly? I thought the rules and chance decided everything in monopoly?
21:24:52 * Sgeo wants to try Diplomacy at some point
21:24:56 <Phantom_Hoover> olsner_, you say 'oi, do that and I'll do that'.
21:24:59 <Phantom_Hoover> Sgeo, it's pretty boring.
21:25:13 <ais523> olsner_: you can trade properties
21:25:15 <Phantom_Hoover> Wait, wrong thing.
21:25:17 <ais523> also money
21:25:32 <oklopol> but yeah negotiation type of thingies are certainly more fun than search games
21:25:46 <Deewiant> @die 1d2
21:25:47 <lambdabot> 1d2 => 1
21:26:31 <itidus20> @die ld2
21:26:32 <lambdabot> unexpected "l": expecting number
21:26:38 <itidus20> oops
21:26:43 <itidus20> @die 1d2
21:26:44 <lambdabot> 1d2 => 1
21:27:56 <oerjan> @die evil scum
21:27:57 <lambdabot> unexpected "e": expecting number
21:28:15 <oklopol> BUT e IS A NUMBER!"
21:28:17 <ais523> @die 1d(1d(1d6))
21:28:17 <lambdabot> unexpected "(": expecting number
21:28:18 <oklopol> *-"
21:28:20 <ais523> bleh
21:28:30 <olsner_> @die 1d1e6
21:28:31 <lambdabot> unexpected "e": expecting digit, "+" or end
21:28:39 <ais523> @die 1d2.7
21:28:40 <lambdabot> unexpected ".": expecting digit, "+" or end
21:28:54 <ais523> lambdabot: so by "expecting number", you mean "expecting positive integer"?
21:28:57 <ais523> @die 1d0
21:28:58 <lambdabot> 1d0 => 0
21:29:00 -!- ralc has joined.
21:29:07 <ais523> @die 0d1
21:29:08 <lambdabot> 0d1 => 0
21:29:15 <olsner_> non-negative then ... unless you say 0 is positive
21:29:29 <ais523> yep, non-negative, I was surprised at those cases working
21:29:32 <ais523> especially the first of them
21:30:18 <oerjan> @die 100000000000000000000000000000000000d6
21:30:18 <lambdabot> 100000000000000000000000000... => 350000000000000000177312581656777664
21:30:35 <oklopol>
21:30:53 * oerjan whistles innocently
21:31:21 <elliott> lol at zero-sided die
21:31:37 <olsner_> I guess it does randomR (1,x) which ends up being (1,0) and lo>hi is undefined
21:31:46 <oklopol> just goes to an infinite loop if you cast it
21:31:48 <olsner_> *unspecified
21:32:53 <olsner_> hmm, a zero-sided die, could be a sphere
21:33:14 <ais523> that's a one-sided die
21:33:26 <ais523> a zero-sided die would have to not land at all
21:37:29 <olsner_> it's a bit weird though, the limit at infinite sides would be a sphere, so I'd expect the lower limit to be something else
21:38:45 <Sgeo> There's a bot on Foonetic
21:39:07 <Sgeo> Calls 2 sided die coins, 1 sided die marbles, and 0 sided die ephemeral, iirc
21:40:10 <monqy> What are 3 sided die? Die?
21:40:38 <Sgeo> Ethereal
21:40:42 <Sgeo> Oh, oops
21:40:47 <Sgeo> 0 sided are called ethereal
21:40:57 <Sgeo> Yeah, just die
21:41:19 <Sgeo> * Sgeo rolls 1d1
21:41:20 <Sgeo> <flyingferret> 1, dummy.
21:41:20 <Sgeo> * Sgeo rolls 1d2
21:41:20 <Sgeo> <flyingferret> Sgeo got: tails.
21:41:20 <Sgeo> * Sgeo rolls 1d0
21:41:20 <Sgeo> <flyingferret> Ethereal dice always show 0.
21:41:42 <olsner_> don't ethereal and ephemeral mean kind of the same thing?
21:42:28 <elliott> no
21:42:34 <Sgeo> * Sgeo rolls 1000000000000d1
21:42:34 <Sgeo> <flyingferret> I don't have that many marbles.
21:42:34 <Sgeo> * Sgeo rolls 1000000000000d2
21:42:34 <Sgeo> <flyingferret> I don't have that many coins.
21:42:34 <Sgeo> * Sgeo rolls 1000000000000d0
21:42:34 <elliott> ephemeral is fleeting
21:42:34 <Sgeo> <flyingferret> Ethereal dice always show 0.
21:42:36 <elliott> ethereal is ghostly
21:42:55 <elliott> a temporary file is ephemeral; sprites are ethereal
21:42:59 <oklopol> spoooooooooky
21:43:10 <elliott> totes
21:43:23 <Sgeo> * Sgeo rolls 1000000000000d3
21:43:23 <Sgeo> <flyingferret> My dice bag is not that big.
21:51:23 <olsner_> anyway, what about 3-sided? everything 4 and up is trivial, and we seem to have covered 0-2, but I can't imagine anything 3d and 3-sided
21:51:28 -!- olsner_ has changed nick to olsner.
21:53:18 <oklopol> don't worry, i can
21:54:18 <oklopol> but yeah if the faces need to be plane, hmmhmm.
21:54:44 <oklopol> i think it is impossible
21:54:55 <itidus20> the problem is the idea each face needs to be a triangle
21:55:00 <itidus20> ^at least a
21:55:09 <olsner> but you should be able to make something that has exactly three stable states
21:55:19 <oklopol> oh well that's easy
21:55:34 <Sgeo> Why would it need to be regular
21:55:40 <Sgeo> Just have two points on each side
21:55:44 <Sgeo> Erm, non-side
21:55:45 <itidus20> and if you add a vertex to a triangle you get a 4 sided shape
21:55:53 <oklopol> yeah for instance what Sgeo is saying
21:58:14 <oklopol> but if you can't have bends, consider the first face, the second face and the third face must divide its rim in among each other and extend in the same direction; but then if those faces are plane, and the resulting object is closed, clearly the first face has to be just a line
21:58:17 <Phantom_Hoover> <olsner_> anyway, what about 3-sided? everything 4 and up is trivial, and we seem to have covered 0-2, but I can't imagine anything 3d and 3-sided
21:58:38 <Phantom_Hoover> It's trivial to make a shape which can only form a stable equilibrium in n states.
21:59:12 <olsner> Phantom_Hoover: yes, you missed the line a couple of lines down where I drew that conclusion
22:18:41 -!- pumpkin has joined.
22:21:09 <Phantom_Hoover> I have this distressing feeling that my headphone jack is on its last legs.
22:21:37 -!- copumpkin has quit (Ping timeout: 250 seconds).
22:24:58 -!- pumpkin has changed nick to copumpkin.
22:27:16 -!- augur has joined.
22:29:54 -!- elliott has quit (Quit: Leaving).
22:31:18 -!- elliott has joined.
23:02:42 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
23:17:47 * pikhq does something unthinkable on Linux...
23:17:52 <pikhq> Defragmentation.
23:18:25 <coppro> NOOO
23:22:37 <elliott> `addquote <Sgeo> Fuck clay its only purpose is ecoration
23:22:38 <HackEgo> 518) <Sgeo> Fuck clay its only purpose is ecoration
23:25:29 <oerjan> ecoration of ecosystems
23:26:34 -!- copumpkin has joined.
23:26:51 <monqy> decosystems
23:27:20 <monqy> also I've seen some very useful clay
23:28:55 <itidus20> So is a line more true than a curve?
23:29:09 <itidus20> ^straight line
23:29:37 <monqy> true? what does that mean
23:29:40 <itidus20> hehe
23:29:57 <itidus20> Or is it just that straight lines are easy
23:30:27 <monqy> Is theory more puce than practice?
23:30:36 <itidus20> we have a fixation on straight lines
23:30:52 <monqy> I love curvy wobbly non-lines
23:31:02 <itidus20> hummm
23:32:31 <itidus20> i tend to associate 1 dimension with a straight line
23:33:01 <itidus20> probably all those x,y,z diagrams
23:34:31 <pikhq> Incidentally (and this seems to have happened to no fanfare), e4defrag seems to have actually gotten released.
23:34:37 <Phantom_Hoover> Straight? One dimension?
23:35:02 <Phantom_Hoover> If you mean that 1D things are normally portrayed as straight, that's because they have no innate curvature.
23:35:42 <pikhq> It is perfectly *valid* to have a 1-dimensional vector space in a higher space that is curved in that higher space, though.
23:35:52 <oerjan> itidus20: a 1 dimensional vector space _is_ a straight line.
23:36:03 <oerjan> pikhq: um, no. that's not a vector space then.
23:36:16 <oerjan> well, not a vector subspace.
23:36:40 <pikhq> Hrm. Actually, let me think about this before I try to explain what I meant.
23:36:46 <pikhq> And see if I just said something stupid.
23:36:54 <oerjan> however 1 dimensional non-vector spaces don't need to be straight lines (duh)
23:37:04 <itidus20> pikhq: informally I get what you meant. that a ribbon representing 1d could twirl about in 3d space
23:37:13 <pikhq> Yeah, I just said something stupid.
23:37:15 <itidus20> and still represent 1d
23:37:46 <pikhq> Vector spaces quite explicitly need to be linear.
23:38:11 <oerjan> itidus20: http://en.wikipedia.org/wiki/Space-filling_curve >:)
23:38:13 <pikhq> Of course, a non-vector space has no such restrction. Yay.
23:38:36 <itidus20> @no such restriction.. ^5 another beer
23:38:37 <lambdabot> Parse error at ".." (column 17)
23:38:52 <itidus20> oops
23:39:11 * oerjan wonders what that command was
23:39:15 <oerjan> @no
23:39:15 <lambdabot> ()
23:39:20 <oerjan> @nod
23:39:20 <lambdabot> Maybe you meant: bid do id todo yow
23:39:30 <oerjan> hm
23:39:30 <itidus20> yes he did lambda
23:39:32 <oerjan> @list do
23:39:33 <lambdabot> undo provides: undo do
23:39:48 <pikhq> oerjan: Excuse me for saying stupid shit. Just because I did well in linear algebra doesn't mean I'm going to fuck up even basic bits of it. :P
23:39:50 -!- foocraft has quit (Ping timeout: 255 seconds).
23:40:13 <oerjan> @do [such restriction.. 2^5 another beer]
23:40:14 <lambdabot> [such restriction .. 2 ^ 5 another beer]
23:40:17 <oerjan> SO CLOSE
23:40:35 <elliott> oerjan: wat
23:40:43 <oerjan> i mean
23:40:46 <oerjan> @no [such restriction.. 2^5 another beer]
23:40:47 <lambdabot> [such restriction .. 2 ^ 5 another beer]
23:41:16 <oerjan> elliott: so close to parsing correctly
23:41:51 <itidus20> pikhq: my role here is to be a clueless free agent assuming to understand another's field without having read more than a wiki page or 2
23:42:10 -!- elliott has quit (Remote host closed the connection).
23:42:28 <oerjan> itidus20: see what you did, scaring away elliott
23:42:56 <itidus20> i can't recall where the understanding anothers field line comes from.. probably big bang theory
23:42:59 <oerjan> elliott doesn't like clueless people, true fact
23:43:19 -!- elliott has joined.
23:43:56 <itidus20> but my comments are also hopefully kind of fun because they have no financial or research incentive
23:44:03 <itidus20> they don't mean to be anything
23:44:25 <oerjan> ok so you are not a spambot, i guess that's _something_...
23:44:58 <itidus20> i'm romero to carmack
23:45:10 <itidus20> maybe that is saying a bit much
23:46:06 <Lymee> > maximum []
23:46:07 <lambdabot> *Exception: Prelude.maximum: empty list
23:46:30 <itidus20> http://oi56.tinypic.com/2d14acn.jpg
23:52:52 <Lymee> @t (1,)
23:52:53 <lambdabot> Maybe you meant: tell thank you thanks thx ticker time todo todo-add todo-delete topic-cons topic-init topic-null topic-snoc topic-tail topic-tell type . ? @ ft v
23:52:57 <Lymee> :t (1,)
23:52:59 <lambdabot> Illegal tuple section: use -XTupleSections
23:53:46 -!- foocraft has joined.
23:54:32 <oerjan> :t (,) 1 -- same thing
23:54:34 <lambdabot> forall t b. (Num t) => b -> (t, b)
23:54:57 <Vorpal> elliott, I just found out "bash on balls" exist. Seriously wtf.
23:55:10 <Vorpal> https://github.com/jayferd/balls
23:57:21 -!- augur has quit (Remote host closed the connection).
23:57:31 <monqy> ahaha what
23:57:48 <monqy> bash web platform sounds like a horrible idea
23:58:27 <Lymee> Must be a joke.
23:58:33 <Vorpal> yes I think it is tongue in cheek indeed
23:58:42 <Vorpal> "This is a fully-featured web platform for everyone's favorite scripting language: bash. Because, you know, we can."
←2011-07-18 2011-07-19 2011-07-20→ ↑2011 ↑all