←2015-07-19 2015-07-20 2015-07-21→ ↑2015 ↑all
00:05:45 <quintopia> go team usa!
00:09:34 -!- boily has quit (Quit: CAPILLARY CHICKEN).
00:15:19 -!- clog has joined.
00:34:32 <fowl> `unicode 👉👌
00:34:36 <HackEgo> U+1F449 WHITE RIGHT POINTING BACKHAND INDEX \ UTF-8: f0 9f 91 89 UTF-16BE: d83ddc49 Decimal: &#128073; \ 👉 \ Category: So (Symbol, Other) \ Bidi: ON (Other Neutrals) \ \ U+1F44C OK HAND SIGN \ UTF-8: f0 9f 91 8c UTF-16BE: d83ddc4c Decimal: &#128076; \ 👌 \ Category: So (Symbol, Other) \ Bidi: ON (Other Neutrals)
00:49:19 <oren> hey, no sexual emojery!
01:08:45 -!- tromp_ has joined.
01:13:27 -!- tromp_ has quit (Ping timeout: 255 seconds).
01:21:00 -!- tromp_ has joined.
01:23:36 -!- Sprocklem has quit (Quit: [).
01:23:51 -!- Sprocklem has joined.
02:04:35 -!- hppavilion[1] has joined.
02:12:15 -!- oerjan has quit (Quit: leaving).
02:12:43 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
02:49:24 -!- _256Q has quit (Read error: Connection reset by peer).
03:42:18 -!- copumpkin has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…).
04:43:54 -!- Wright_ has quit (Ping timeout: 252 seconds).
04:53:07 -!- Wallacoloo has joined.
04:53:31 -!- Wallacoloo has left.
04:55:16 -!- tromp_ has quit (Remote host closed the connection).
04:59:28 -!- ocharles_ has quit (Ping timeout: 248 seconds).
05:00:32 -!- glowcoil has quit (Ping timeout: 248 seconds).
05:03:37 -!- ocharles_ has joined.
05:05:37 -!- glowcoil has joined.
05:32:12 -!- Sgeo has joined.
05:32:46 -!- edwardk has quit (Ping timeout: 244 seconds).
05:33:04 -!- mbrcknl has quit (Ping timeout: 248 seconds).
05:34:21 -!- clog has quit (Ping timeout: 240 seconds).
05:39:05 -!- edwardk has joined.
05:39:09 -!- MDude has changed nick to MDream.
05:50:35 -!- mbrcknl has joined.
05:55:47 -!- tromp_ has joined.
06:00:16 -!- tromp_ has quit (Ping timeout: 248 seconds).
06:11:35 -!- haavard has quit (Read error: Connection reset by peer).
06:12:19 -!- haavard has joined.
06:43:28 * Taneb good morning
06:57:26 -!- tromp_ has joined.
06:58:41 -!- Sgeo_ has joined.
07:00:35 -!- Sgeo has quit (Ping timeout: 244 seconds).
07:01:00 -!- variable has quit (Ping timeout: 240 seconds).
07:01:55 -!- tromp_ has quit (Ping timeout: 256 seconds).
07:06:08 * shachaf Taneb: good morning
07:17:29 -!- hppavilion[1] has quit (Ping timeout: 246 seconds).
07:28:26 -!- glowcoil has quit (Ping timeout: 256 seconds).
07:28:43 -!- ocharles_ has quit (Read error: Connection reset by peer).
07:28:43 -!- edwardk has quit (Write error: Connection reset by peer).
07:28:49 -!- supay has quit (Read error: Connection reset by peer).
07:29:52 -!- mbrcknl has quit (Ping timeout: 248 seconds).
07:33:38 -!- clog has joined.
07:47:29 -!- ocharles_ has joined.
07:51:00 -!- Sgeo has joined.
07:51:13 -!- Sgeo_ has quit (Ping timeout: 244 seconds).
07:53:09 -!- edwardk has joined.
07:54:19 -!- FireFly has quit (Ping timeout: 244 seconds).
07:56:14 -!- tromp_ has joined.
07:57:39 -!- J_A_Work has joined.
07:58:00 -!- supay has joined.
07:58:28 -!- white_bear has joined.
08:00:45 -!- tromp_ has quit (Ping timeout: 260 seconds).
08:01:44 -!- glowcoil has joined.
08:16:42 -!- mbrcknl has joined.
08:27:11 -!- FireFly has joined.
08:40:17 -!- Patashu has joined.
08:57:23 -!- shikhin has quit (Read error: Connection reset by peer).
08:58:09 -!- shikhin has joined.
09:21:29 -!- zzo38 has joined.
09:21:42 <zzo38> Finally I fixed my computer (except the gopher server)
09:22:09 <zzo38> I had to change PHIRC to get it to work with xterm, as well as writing the proper shell-script of it, but now it work.
09:22:39 -!- FreeFull has quit (Quit: poweroff).
09:26:47 -!- zzo38 has quit (Quit: zzo38).
09:33:19 -!- AnotherTest has joined.
09:36:26 -!- Phantom_Hoover has joined.
09:41:25 <mroman_> fnord.
09:42:09 <Taneb> Hey, mroman_
09:54:45 -!- Patashu has quit (Remote host closed the connection).
09:55:03 -!- Patashu has joined.
09:55:40 -!- zzo38 has joined.
10:00:09 <zzo38> Do you like this?
10:02:28 <Taneb> Like what?
10:03:38 <zzo38> I don't know?
10:04:01 <zzo38> The PC bold setting in xterm doesn't seems working; how to fix that?
10:13:19 -!- zzo38 has quit (Remote host closed the connection).
10:23:57 <mroman_> Hi Taneb
10:27:11 -!- boily has joined.
10:28:16 -!- zzo38 has joined.
10:28:19 <zzo38> I fixed it
10:32:31 -!- J_A_Work has quit (Quit: J_A_Work).
10:38:30 <zzo38> Now when I try to make a screenshot with ImageMagick the text in the xterm window is missing
10:40:47 <zzo38> I figured out, I need "xwd" to capture the picture and then ImageMagick can convert to PNG format.
10:51:11 -!- J_A_Work has joined.
11:11:15 -!- FreeFull has joined.
11:17:37 -!- AnotherTest has quit (Ping timeout: 240 seconds).
11:25:21 -!- boily has quit (Quit: CREDIBLE CHICKEN).
11:30:57 -!- tromp_ has joined.
11:35:26 -!- tromp_ has quit (Ping timeout: 244 seconds).
12:02:30 -!- oerjan has joined.
12:04:07 -!- TodPunk has quit (Read error: Connection reset by peer).
12:04:35 -!- TodPunk has joined.
12:10:17 <zzo38> This is the screenshot of its working: http://zzo38computer.org/img_17/screenshot.png
12:15:39 <int-e> since you're using imagemagick anyway: import -window root screenshot.png
12:17:00 <int-e> or is that what you tried in the first place...
12:20:13 -!- idris-bot has quit (Quit: Terminated).
12:20:36 -!- Melvar has quit (Quit: bullshit).
12:23:00 -!- copumpkin has joined.
12:26:37 -!- Patashu has quit (Ping timeout: 252 seconds).
12:27:38 -!- J_A_Work has quit (Quit: J_A_Work).
12:32:43 -!- Melvar has joined.
12:37:09 -!- tromp_ has joined.
12:37:14 -!- idris-bot has joined.
12:49:48 -!- tromp_ has quit (Remote host closed the connection).
13:10:34 -!- rdococ has quit (Quit: Leaving.).
13:22:23 <mroman_> a*x + a*y = 0 mod a
13:22:25 <mroman_> does that always hold?
13:22:57 <mroman_> or more generally
13:23:02 <mroman_> a*x + y = y mod a
13:23:13 <Taneb> Yes
13:23:21 <fizzie> For integers, I guess.
13:23:23 <Taneb> For nonzero a, at least
13:31:24 <oerjan> i think zero a works just as well with the right interpretation
13:34:14 <oerjan> a doesn't have to be integer, either. although that only works for addition/subtraction, not multiplication.
13:41:26 <mroman_> If you want to find all inverses mod p (p prime)
13:41:40 <mroman_> how many extended euclidian algorithm computations do you need to run?
13:42:01 <oerjan> that sounds like an inefficient way of finding them, hm
13:42:03 <mroman_> (or in other words: How many times do you need to run the extended euclidean algorithm)
13:42:11 <int-e> none, you just list 0..p-1...
13:42:31 <int-e> sorry, the 0 should be excluded.
13:42:33 <oerjan> very good, int-e
13:42:44 <oerjan> i'm sure that solves his problem.
13:42:48 <mroman_> :D
13:42:54 <mroman_> well...
13:43:01 <mroman_> you gotta be able to tell what is the inverse of what
13:43:28 <oerjan> in that case, use some dynamic programming i think
13:43:48 <Jafet> You want all the inverses? Can't you just use the first one?
13:43:53 <oerjan> pick a number you don't know the inverse of, start computing its powers until you reach one you know.
13:44:24 <oerjan> should be O(p) calculations in all, i think
13:44:52 <oerjan> (you start out knowing 1 is its own inverse)
13:45:03 <mroman_> and p-1 is it's own inverse
13:45:06 <Jafet> You can use the baby-step giant-step algorithm to achieve O(sqrt p)
13:45:11 <mroman_> and if a*b = 1 then b*a = 1 as well
13:45:48 <oerjan> Jafet: i don't know what you're talking about, but i assume he wants a table of inverses (mod p)
13:45:53 <mroman_> so it's probably maximum O( (p-2) / 2 )
13:46:30 <oerjan> mroman_: thinks like -2 and /2 don't count in O() notation
13:46:33 <mroman_> but since a pair of inverses gives a free other pair of inverses
13:46:36 <oerjan> *things
13:46:41 <Jafet> Woah, you were giving serious answers
13:46:43 <mroman_> it's probably more around (p - 2) / 4 euclidean algorithms
13:47:11 <mroman_> or are there other shortcuts to inverses?
13:47:11 <int-e> I don't think the problem is well-defined
13:47:16 <mroman_> I'd be interested.
13:47:48 <oerjan> int-e: "how to calculate (n, n^-1 (mod p)) for all 0 < n < p?"
13:47:56 <oerjan> oh
13:48:07 <oerjan> mroman_ is still blathering about euclidean algorithms
13:48:13 <mroman_> Yeah :)
13:48:20 <int-e> actually you should find a primitive root r and then list pairs (r^-n, r^n). That's exactly one call of the extended euclidean algorithm, but a couple more modular exponentiations.
13:48:27 <oerjan> i think that's not the best algorithm.
13:48:39 <mroman_> I don't know any other algorithm actually to compute inverses
13:48:42 <mroman_> without knowing phi(m)
13:48:49 <oerjan> um how do you find a primitive root they're not predictable.
13:49:00 <mroman_> and that only works for co-primes anyway
13:49:17 <oerjan> although you could get them as a consequence of what i suggested, i think.
13:49:27 <Jafet> There are O(p/log p) primitive roots mod p, so just pick elements at random
13:49:30 <oerjan> but that also calculates all the inverses
13:50:16 -!- tromp_ has joined.
13:52:39 <oerjan> oh hm
13:52:45 <oerjan> right, phi(m)
13:52:51 <oerjan> which is p-1
13:53:17 <oerjan> so you could just calculate n^(p-2) for all n directly...
13:53:26 <mroman_> Yep
13:53:30 <mroman_> If it's a prime, yes.
13:53:35 <oerjan> you said it was
13:53:51 <oerjan> (n doesn't need to be prime)
13:54:49 -!- tromp_ has quit (Ping timeout: 246 seconds).
13:55:06 <oerjan> so, O(p log p) multiplications
13:55:09 <mroman_> and if you're using eulers theorem
13:55:29 <oerjan> fermat's little theorem
13:55:59 <Jafet> If you want all of the inverses, it's even simpler: calculate 1, r, r^2..., r^k=1, then the inverse of r^i is r^(k-i)
13:56:23 <oerjan> Jafet: that's what i started suggesting
13:56:36 <oerjan> except i also suggested caching results
13:57:16 <oerjan> because you should also stop if r^k is a number you've already hit
13:58:24 <mroman_> Ah, right.
13:58:27 <mroman_> Thanks.
13:58:57 <oerjan> unless somehow the raw calculation is better than a memory lookup, hm... now we're into other caching issues.
13:59:41 <oerjan> this method is unlikely to preserve cache locality :)
14:00:14 <mroman_> that is, if I found a primitive root
14:00:32 <oerjan> no, r doesn't have to be a primitive root with my version
14:00:40 <Jafet> The first duplicate will always be 1, since every r generates a subgroup in Z/pZ*
14:01:20 <oerjan> you just pick a "random" r that hasn't been found yet
14:01:25 <mroman_> but if p=5, and I pick 4
14:01:32 <mroman_> I'll only get to r^1, r^2
14:01:38 <mroman_> before reaching 1
14:01:40 <oerjan> yes. and then you choose another r.
14:02:11 <oerjan> might need a linked list or something to keep track of what's uncalculated.
14:02:44 <oerjan> keep choosing r's until there are none left and you have the whole table.
14:02:50 <Jafet> Unfortunately you won't get far with the subsequent r's before hitting a number already seen
14:03:02 <oerjan> what's "unfortunate" about that?
14:03:11 <Jafet> For each r, you need a new extgcd
14:03:21 <oerjan> ...now.
14:03:24 <oerjan> *...no.
14:03:31 <oerjan> you just calculate r^i
14:03:43 <oerjan> with multiplication and modulus
14:03:51 <oerjan> not egcd needed at all.
14:04:27 <oerjan> *no
14:04:59 <Jafet> How do you find r^-1 with that?
14:05:57 <oerjan> if (r^k)^-1 = q, then r^-1 = r^(k-1)*q
14:07:12 <oerjan> hm
14:08:33 <Jafet> If you pick r not a generator (say r=q^2), then knowing all the powers of r won't help you find q^-1
14:08:58 <Jafet> Or will it
14:09:05 <oerjan> um r^k is a number you already know q is the inverse of.
14:10:11 <oerjan> k is the smallest k such that r^k is already in your inverse table
14:10:45 <oerjan> once you find it, you can fill in r ... r^(k-1) using that.
14:11:41 <oerjan> i'm not entirely sure you're actually saving work over calculating all the way up to r^k = 1...
14:11:59 <oerjan> hm...
14:12:04 -!- rdococ has joined.
14:12:56 <oerjan> perhaps a gcd actually is a good idea here.
14:13:27 <oerjan> that way, you can ensure your table so far is always all the powers of the previous r
14:14:48 <Jafet> Well, if r=q^a and 1/r=q^b, then 1/q=q^b*q^(a-1)
14:15:32 <oerjan> wat
14:15:53 <oerjan> you have some mistake there but i'm not sure what you're trying to say
14:16:16 <oerjan> oh wait
14:16:22 <oerjan> missed the -1
14:16:40 <oerjan> well my point is, you don't know the q.
14:17:09 <oerjan> reconsidering, i guess the question is, can you find a primitive root much faster than the remaining calculation of all its powers?
14:18:36 <oerjan> i was going to say "especially if you don't know the factors of p-1", but if those aren't easy to calculate you don't have a chance to calculate the whole table anyway.
14:20:14 <Jafet> Nevermind, I swapped the letters around and got the same identity that you wrote
14:20:48 <Jafet> Math is difficult
14:20:59 <oerjan> >_>
14:21:30 <Jafet> So yes, it would work
14:25:57 <oerjan> if you keep the known set a subgroup, then after you have found (r^k), you go through the already known table and add _all_ r^i * q where 0 < i < k and q is already known. that way you keep it a subgroup at the next stage.
14:27:10 <oerjan> and at least double the set of known numbers at each iteration
14:29:25 <oerjan> also, i'm pretty sure you could keep track of the order of the numbers as well.
14:29:34 <oerjan> (this might need a gcd or two.)
14:29:59 <Taneb> I don't look at the channel for half an hour and I have no idea what is going on
14:30:08 <oerjan> i'm not quite sure either.
14:30:11 <Taneb> Looks like... number theory?
14:30:14 <oerjan> yep
14:30:34 <oerjan> trying to think of how to compute a complete table of inverses (mod p)
14:30:41 <oerjan> reasonably efficiently
14:31:42 <Taneb> With p prime?
14:31:59 <oerjan> hm maybe you cannot track the order of _all_ the elements, but you should be able to keep track of one with the largest order so far, so that at the end you also have a primitive root.
14:32:03 -!- Froox has joined.
14:32:03 <oerjan> Taneb: yeah
14:32:39 <Taneb> Well, 1's inverse is 1
14:32:46 <Taneb> And 0 doesn't have an inverse
14:32:50 <Jafet> The last remaining r should be a primitive root
14:32:53 -!- augur_ has joined.
14:33:00 <Taneb> That's it for p=2, you can generalise it from there
14:33:10 -!- Sgeo_ has joined.
14:33:15 <oerjan> or well, i don't think this method actually depends on p being prime. or, it might be harder to select all the relatively prime numbers to start with.
14:33:27 <oerjan> Taneb: OKAY
14:33:36 <Taneb> :P
14:34:05 <oerjan> Jafet: not necessarily. in theory you could have p-1 remaining until the end...
14:34:26 <oerjan> and end up selecting it as the last r.
14:35:03 <oerjan> you can, however, calculate a primitive root by considering the orders of the r's
14:35:30 <oerjan> or so i think, vaguely. now i need to get shaved ->
14:37:08 -!- MDream has changed nick to MDude.
14:37:57 <Taneb> Did I tell you that I got a haircut the other day?
14:38:14 <Taneb> My hair is shorter than it's been since 2008
14:38:52 -!- rodgort has quit (Ping timeout: 248 seconds).
14:38:53 -!- skarn_ has quit (Ping timeout: 248 seconds).
14:38:53 -!- izabera has quit (Ping timeout: 248 seconds).
14:38:54 -!- augur has quit (Ping timeout: 248 seconds).
14:38:55 -!- fractal has quit (Ping timeout: 248 seconds).
14:38:55 -!- fowl has quit (Ping timeout: 248 seconds).
14:38:56 -!- Sgeo has quit (Ping timeout: 248 seconds).
14:38:56 -!- Frooxius has quit (Ping timeout: 248 seconds).
14:38:58 -!- fowl has joined.
14:39:05 -!- fowl has quit (Changing host).
14:39:05 -!- fowl has joined.
14:39:07 -!- fowl has quit (Changing host).
14:39:07 -!- fowl has joined.
14:39:14 -!- izabera has joined.
14:40:25 -!- rodgort has joined.
14:41:59 -!- skarn has joined.
14:45:40 -!- fractal has joined.
14:49:19 <Jafet> @let inverses p = foldl' add (M.fromList [(1,1)]) [2..p-1] where x×y = x*y`mod`p; add m r | r`M.member`m = m | True = let rs = takeWhile (`M.notMember`m)
14:49:19 <lambdabot> Parse failed: Parse error: EOF
14:49:19 <Jafet> $ iterate (r×) r; q = r×last rs; qi = m M.! q in M.union m $ M.fromList [ (r, ri×qi) | (r, ri) <- zip rs (reverse rs) ]
14:49:29 <Jafet> @let inverses p = foldl' add (M.fromList [(1,1)]) [2..p-1] where x×y = x*y`mod`p; add m r | r`M.member`m = m | True = let rs = takeWhile (`M.notMember`m) $ iterate (r×) r; q = r×last rs; qi = m M.! q in M.union m $ M.fromList [ (r, ri×qi) | (r, ri) <- zip rs (reverse rs) ]
14:49:30 <lambdabot> Defined.
14:50:24 <Jafet> > inverses 100003
14:50:27 <lambdabot> fromList [(1,1),(2,50002),(3,66669),(4,25001),(5,60002),(6,83336),(7,85717),...
14:50:40 <Jafet> > inverses 1000003
14:50:44 <lambdabot> mueval-core: Time limit exceeded
14:58:55 <Jafet> This uses 1-2 multiplications per inverse, but Montgomery had an algorithm that worked for any subset of query numbers with 3 multiplications (and one extgcd)
15:04:40 -!- white_bear has quit (Quit: leaving).
15:13:44 <Jafet> Hmm, it's two multiplications and no extgcds if the set is 1..p-1, and doesn't require any table
15:14:12 <Jafet> @undefine
15:14:12 <lambdabot> Undefined.
15:21:30 -!- FreeFull has quit (Quit: BBL).
15:31:37 -!- tromp_ has joined.
15:40:12 -!- FreeFull has joined.
15:40:39 -!- mauris has joined.
15:50:29 -!- tromp__ has joined.
15:54:45 -!- tromp__ has quit (Ping timeout: 244 seconds).
15:56:44 <shachaf> `olist 994
15:56:45 <HackEgo> olist 994: shachaf oerjan Sgeo FireFly boily nortti
15:57:24 <oerjan> ooh list
16:15:35 <oerjan> not ending well for Belkar in 3,2...
16:25:55 -!- oerjan has quit (Quit: leaving).
16:27:07 -!- password2 has joined.
16:29:01 -!- Wright has joined.
16:42:59 -!- FireFly has quit (Changing host).
16:42:59 -!- FireFly has joined.
16:48:29 -!- Wright has quit (Ping timeout: 244 seconds).
16:50:32 <shachaf> `? olist
16:50:33 <HackEgo> Update notification for the webcomic Order of the Stick.
16:50:43 <shachaf> `learn_append olist http://www.giantitp.com/comics/ootslatest.html
16:50:46 <HackEgo> Learned 'olist': Update notification for the webcomic Order of the Stick. http://www.giantitp.com/comics/ootslatest.html
16:51:01 <shachaf> I feel like learn_append might be better as le/rn_append
16:52:50 <fizzie> fungot: You're a piece of code, why don't you watch these websites for us?
16:52:51 <fungot> fizzie: only 35 google hits for what flapjax? i always get a ripe one. you must be more.
16:57:06 <shachaf> what flapjax?
16:57:41 <fizzie> Sounds like a web framework.
16:57:51 <fizzie> "Flapjax is a new programming language designed around the demands of modern, client-based Web applications."
16:57:54 <fizzie> Well, close-ish.
16:58:55 <fizzie> "Flapjax is easy to learn: it is just a JavaScript framework."
16:59:38 <fizzie> I didn't know that JavaScript frameworks ⊂ programming languages.
17:07:24 -!- x10A94 has joined.
17:09:49 -!- password2 has quit (Remote host closed the connection).
17:28:39 -!- mihow has joined.
17:39:10 <shachaf> Many of them aren't.
17:39:18 <shachaf> Flapjax happens to be in the intersection.
18:05:46 -!- Wright has joined.
18:13:21 -!- Sgeo__ has joined.
18:14:00 -!- bb010g has joined.
18:15:13 -!- Sgeo_ has quit (Ping timeout: 246 seconds).
18:16:44 -!- AnotherTest has joined.
18:29:33 <zzo38> Do you know how to disable mouse wheel on X on Linux?
18:31:19 <shachaf> Change ZAxisMapping or something like that?
18:49:24 -!- aloril has quit (Quit: Leaving).
18:49:56 -!- aloril has joined.
19:06:26 -!- FreeFull has quit (Quit: BBS).
19:11:07 -!- FreeFull has joined.
19:18:32 -!- atrapado has joined.
19:26:06 -!- rdococ has quit (Read error: Connection reset by peer).
19:31:29 -!- TieSoul_ has quit (Read error: Connection reset by peer).
19:34:37 -!- x10A94 has quit (Read error: Connection reset by peer).
20:10:56 <FireFly> I'm pretty sure Flapjax predates the term "JavaScript framework"
20:11:45 <FireFly> At least, it was where I first came across the term reactive programming, before Elm got kinda popular
20:15:15 * int-e suspects that FireFly is not talking about the mail client.
20:15:58 <shachaf> `wisdom
20:16:00 <HackEgo> welcome/Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <http://esolangs.org/>. (For the other kind of esoterica, try #esoteric on EFnet or DALnet.)
20:16:23 <FireFly> int-e: no, the programming language
20:16:40 <int-e> http://int-e.eu/~bf3/tmp/elm-hates-me.png
20:17:02 <int-e> IS IT TOO HARD TO DISPLAY MINIMAL INFORMATION WITHOUT JAVASCRIPT!
20:17:10 <shachaf> sounds more like you hate elm hth
20:17:22 <shachaf> javascript is the language of the web
20:17:31 <int-e> shachaf: the file name was tongue-in-cheek.
20:18:07 <int-e> It's not. HTML is.
20:18:31 <int-e> If I say it often enough I will change reality... ah whom am I kidding.
20:18:36 <shachaf> HTML is just UI.
20:18:42 <int-e> HTML is content.
20:18:49 <shachaf> Do you want your software to be just Tk without Tcl?
20:18:53 <int-e> But apparently, people don't like content anymore.
20:19:33 <shachaf> it seems to me like you're the one who's discontent hth
20:19:36 <int-e> No, I don't want my software to be Tcl at all (and I say that despite using gitk)
20:19:46 <int-e> shachaf: I am that.
20:20:11 <int-e> . o O ( Now what are you going to do about it? )
20:40:05 -!- hppavilion[1] has joined.
20:40:15 <hppavilion[1]> I'm on
20:44:07 <zzo38> OK
20:44:18 <b_jonas> ohi zzo38
20:45:53 <hppavilion[1]> What weird stuff could I do with OO?
21:04:03 -!- Patashu has joined.
21:04:16 <zzo38> b_jonas: O, hello
21:04:28 <zzo38> hppavilion[1]: It might depend on some thing
21:04:40 <hppavilion[1]> Such as?
21:04:47 <hppavilion[1]> It's an imperative language
21:05:42 <zzo38> But what imperative language? There is many imperative language
21:06:15 <hppavilion[1]> It's called WalScript-OO
21:06:24 <hppavilion[1]> It's a dialect of a language I made called WalScript
21:06:32 <hppavilion[1]> Here's the root dialect:
21:06:40 <hppavilion[1]> https://github.com/hppavilion1/WalScript-Alpha
21:06:45 <Taneb> I wonder if there are any languages both purely functional and object oriented
21:06:55 <hppavilion[1]> OCaml, I think
21:06:59 <hppavilion[1]> Oh
21:07:02 <hppavilion[1]> Purely functional?
21:07:06 <hppavilion[1]> I don't know
21:07:21 <hppavilion[1]> The most up-to-date functioning WalScript dialect is here:
21:07:46 <hppavilion[1]> https://github.com/hppavilion1/WalScript-1.0/
21:08:06 <hppavilion[1]> It has better variable assignment and supports libraries written in Python if they're made right
21:11:02 <hppavilion[1]> The most advanced one (but as-of-yet unimplemented) is https://github.com/hppavilion1/WalScript-OO/
21:11:10 <hppavilion[1]> Neither of those last two have documentation :P
21:11:23 <hppavilion[1]> That last one is the one I'm currently making
21:13:43 <Jafet> OCaml has type inference for classes, but it's incomplete
21:15:33 <Jafet> It counts as purely functional if you don't use refs and make an IO monad, I guess
21:15:54 <Jafet> You'd have to write your own do..od macro in camlp4, though
21:16:13 <hppavilion[1]> OK
21:31:06 -!- mihow has quit (Quit: mihow).
21:35:35 -!- mihow has joined.
21:36:41 <tswett> Who says Haskell isn't object-oriented?
21:37:44 <Jafet> Ten overlapping field names say so.
21:37:48 <tswett> A class is simply a type with some accessors.
21:37:49 <Taneb> tswett, I do not actually know what it means to be object oriented
21:38:29 <Jafet> Also, no subtyping or even row polymorphism. OCaml, on the other hand, has recursive classes
21:38:52 <tswett> What's this about field names saying that Haskell isn't OO?
21:39:04 -!- oerjan has joined.
21:39:57 -!- boily has joined.
21:40:36 -!- Patashu has quit (Ping timeout: 240 seconds).
21:40:46 <oerjan> good boilynchronized evening
21:40:58 <hppavilion[1]> Hi boily
21:41:00 <Jafet> @let data A = A { foo :: () }
21:41:01 <lambdabot> Defined.
21:41:04 <Jafet> @let data B = B { foo :: () }
21:41:04 <lambdabot> .L.hs:163:12:
21:41:04 <lambdabot> Multiple declarations of ‘foo’
21:41:05 <lambdabot> Declared at: .L.hs:161:12
21:41:24 <Jafet> @refine
21:41:24 <lambdabot> Define what?
21:41:59 <Jafet> @dodefine
21:41:59 <lambdabot> Maybe you meant: undefine define
21:42:07 <tswett> @refine oil
21:42:07 <lambdabot> Parse failed: TemplateHaskell is not enabled
21:42:25 <oerjan> @nudefinn
21:42:25 <lambdabot> Unknown command, try @list
21:42:31 -!- Sgeo__ has quit (Ping timeout: 244 seconds).
21:42:51 <tswett> Nudefinn, you say? I have something you might like...
21:43:10 <oerjan> int-e: you should increase the maximal hamming distance twh
21:43:50 <tswett> You know, it seems like I come across a whole lot more Finns on IRC than, say, Spaniards.
21:43:56 <Jafet> I think it's Levenshtein distance
21:43:58 <tswett> Is IRC especially popular in Finland?
21:44:02 <hppavilion[1]> Yes
21:44:05 <hppavilion[1]> I believe it is
21:44:05 <oerjan> it was invented there
21:44:09 <boily> public synchronized void hellørjan() {
21:44:12 <Jafet> @underfine
21:44:12 <lambdabot> Undefined.
21:44:14 <hppavilion[1]> Yay
21:44:15 <hppavilion[1]> OO
21:44:29 <boily> System.out.println("hppavhellon[1]");
21:44:31 <boily> }
21:44:33 <hppavilion[1]> I'm making an OO dialect of my pet programming language
21:44:39 <hppavilion[1]> :)
21:44:43 <int-e> oerjan: your abuses are already bad enough
21:45:05 <boily> hppavilion[1]: are you a Finn?
21:45:06 <oerjan> <tswett> Nudefinn, you say? I have something you might like... <-- sauna more...
21:45:11 <hppavilion[1]> Nope
21:45:19 <hppavilion[1]> I'm alaskan
21:45:34 <tswett> Wait, what's your dog's name?
21:45:36 <oerjan> are you a mad scientist polar bear
21:45:43 <oerjan> did i ask that already
21:45:46 <hppavilion[1]> My dog?
21:45:49 <hppavilion[1]> You have not
21:45:53 <hppavilion[1]> And I am not
21:45:58 <hppavilion[1]> I'm a mad scientist Walrus
21:46:09 <hppavilion[1]> My dogs are named Fling and Mello
21:46:11 <oerjan> ah. stay away from the polar bear, then.
21:46:14 <oerjan> in fact...
21:46:22 <tswett> Wait, you're not that other person I was thinking you were.
21:46:50 <hppavilion[1]> I'm not Finnish, though my family does hail from Norway
21:47:00 <boily> oh fungot.
21:47:00 <fungot> boily: night all i guess
21:47:09 <boily> hppavilion[1]: do you realize what you just unleashed?
21:47:20 <hppavilion[1]> ...
21:47:21 <hppavilion[1]> No
21:47:25 <hppavilion[1]> What did I just do?
21:47:36 <Taneb> `quote I'm neither
21:47:39 <HackEgo> 590) <Ngevd> I'm neither Norwegian nor Finnish <Ngevd> I don't fit in your quaint little categories
21:47:41 -!- AnotherTest has quit (Ping timeout: 244 seconds).
21:47:47 <hppavilion[1]> T_T
21:47:57 <oerjan> bah, why doesn't tvtropes do outbound links to its comic examples
21:49:39 <hppavilion[1]> I'm installing a Python IRC library
21:49:57 <tswett> I think we should use nationality-based pronouns instead of gender-based pronouns. We call everyone "han" if they're Finnish, and "han" if they're Norwegian.
21:50:01 <tswett> Crap, those are the same word.
21:50:01 <boily> Taneb: it could be worse. my ancestors are French, on both sides of the issue.
21:50:27 <oerjan> i can find several mentions of the comic i'm thinking of, but no links to it. why can't everyone do transcripts like DMM
21:50:28 <Taneb> boily, roughly half of mine were Dutch
21:51:06 <Taneb> (hence my unusual surname for my country of residence and both of my citizenships)
21:51:39 <nortti> oerjan: example?
21:51:55 <boily> nellortti!
21:52:03 <nortti> helloily!
21:52:08 <boily> ah, a porthello I'm not used to use often!
21:52:30 <oerjan> boily: are you afraid hppavilion[1]'s family come from the same place as i, or something
21:52:35 <boily> tswett: you can address me as «tu» or «il».
21:53:08 <boily> oerjan: I wouldn't be surprised at all if that's the case. this chännel attracts people that are attracted by this chännel.
21:53:16 <oerjan> tswett: i think the finnish is hän?
21:53:18 <boily> tswett: also, tsellott.
21:54:01 <oerjan> tswett: also, no:han is definitely not gender-neutral
21:54:15 <tswett> Indeed it's not.
21:54:34 <nortti> does norwegian have something like sv:hen?
21:54:54 -!- mihow has quit (Quit: mihow).
21:56:31 -!- Sgeo has joined.
21:56:45 <oerjan> <nortti> oerjan: example? <-- "Doc, granted he is a polar bear but once he ate an entire deep-fried walrus."
21:57:27 <oerjan> nortti: oh btw i mean the comic strip, not the general comic
21:57:39 <nortti> ah
21:57:40 <oerjan> i've already binged the archive
21:58:01 <oerjan> erm
21:58:12 <oerjan> "comic strip" is too damn overloaded in english
21:59:35 <oerjan> nortti: i'm sure the norwegian equivalents to the kind of people who use sv:hen have an equivalent. in fact it might be just the swedish, borrowed.
22:00:07 <Sgeo> Which comic?
22:00:13 <oerjan> Sgeo: the whiteboard
22:00:40 -!- mihow has joined.
22:04:02 <oerjan> it's a furry comic based around paintball, which i don't play, but i started reading it because phil foglio recommended it
22:04:08 <oerjan> also mad science
22:05:38 <oerjan> also paintball is hardly weirder than some of those imaginary games in manga...
22:06:10 <Taneb> group : magma :: field : ???
22:06:30 <oerjan> tricky
22:07:36 <oerjan> searching for bimagma brings up google's DMCA censorship notice
22:07:46 <fizzie> Fact of the day: Tromsø is the 9th best place in the... I think it was world, but maybe it was just Europe. (Source: ad screen or poster at Victoria Station.)
22:08:03 <Taneb> oerjan, ringoid, maybe?
22:08:23 <oerjan> Taneb: plausible, let me look it up
22:08:50 <fizzie> Taneb: A "ringette".
22:08:55 -!- hppavilion[1] has quit (Ping timeout: 246 seconds).
22:09:00 <oerjan> hm that's still distributive
22:09:03 -!- lleu has quit (Read error: Connection reset by peer).
22:09:26 -!- lleu has joined.
22:09:50 <oerjan> Taneb: i guess it all depends on how much of the field structure you want to remove before you call it a day
22:10:37 <boily> fizzie: probably world hth
22:10:40 <Taneb> oerjan, distribrutivity is fine
22:10:46 <Taneb> I think
22:10:47 <Taneb> Maybe
22:12:38 <Taneb> The question is, are IEEE floating points bimagmas/ringoids/ringettes
22:14:48 <Taneb> The answer is "no", according to a quick quickcheck
22:16:52 -!- mihow has quit (Quit: mihow).
22:20:23 <tswett> Lessee. Not everything has a multiplicative inverse. Everything does have an additive inverse, except for NaN and maybe the infinities, I guess. Addition and multiplication should be commutative, but not associative.
22:20:37 <tswett> Quite sure distributivity will fail as well.
22:21:08 <tswett> So... as far as I can think, the only property that *is* totally satisfied is commutativity.
22:21:09 <Taneb> It does
22:22:42 <Taneb> (that is, distributivity fails)
22:24:09 <oerjan> Taneb: bimagma was just a word i made up in the hope it meant something. didn't find any.
22:24:22 <Taneb> oerjan, I think we should make it a thing
22:24:38 <Taneb> As in, "IEEE Floating points are a commutative bimagma"
22:26:12 -!- mihow has joined.
22:26:33 <oerjan> dimagma without quotes and once you bypass google's second-guessing seems to give MtG stuff
22:27:14 <zzo38> Is it possible to make it that when a program specifies both the width and the height of the window that it will open floating (and that if either or both are left unspecified, open tiled)?
22:28:20 <Taneb> oerjan, it seems to be from the Italian translation
22:28:28 <Taneb> "Fenice di Magma"
22:28:48 <oerjan> ok
22:29:14 <Taneb> (and a lot of other di Magmas)
22:29:45 <oerjan> sensibilie
22:29:48 <Taneb> And bimagma seems to pick up misspellings of "big mama" or somthing
22:29:50 <oerjan> *sensibile
22:32:14 <Taneb> I am going to bed now
22:32:16 <Taneb> Goodnight
22:37:35 -!- mihow has quit (Quit: mihow).
22:40:56 -!- mihow has joined.
22:45:24 -!- hppavilion1 has joined.
22:45:26 <hppavilion1> I am testing the 15 word limit
22:45:28 <hppavilion1> I am testing the 15 word limit I am testing the 15 word limit I am testing the 15 word limit
22:45:34 <hppavilion1> Huh
22:45:36 <hppavilion1> Weird
22:47:57 <fizzie> You have tested the 15 word limit.
22:49:05 <zzo38> In xterm I notice when you backspace after the last character that fit on the line have been typed, it backspace both the last and previous character. How to fix it?
22:49:16 <zzo38> How can I work-around?
22:49:25 <hppavilion1> I TESTED THE 15 WORD LIMIT
22:49:28 <hppavilion1> AND I SURVIVED
22:49:36 <hppavilion1> ALL WORSHIP MY WRATHLY GLORY
22:49:55 <hppavilion1> IDK
22:50:04 <hppavilion1> I'm trying to figure out what xterm is
22:50:08 <Sgeo> What is the fifteen word limit? I did not know there was a fifteen word limit. Where is this fifteen word limit?
22:50:11 <hppavilion1> In other news, I'm writing an IRC client
22:50:38 <Sgeo> fif teen word lim it.
22:50:56 <zzo38> Actually I might be able to figure out
22:51:06 <Sgeo> n oneo fthe sear ewor ds
22:51:09 <zzo38> hppavilion1: What IRC client you are write, what programming language, what feature, etc?
22:51:13 <Sgeo> ...crud
22:51:20 <Sgeo> sear is a word
22:51:23 <hppavilion1> http://tools.ietf.org/html/rfc2812#page-5
22:52:05 <hppavilion1> I haven't named the IRC client yet
22:52:19 <hppavilion1> But it will inevitable be a bad play on the word Walrus
22:52:27 <hppavilion1> It isn't done yet
22:52:35 <hppavilion1> I'm still working on making it connect to servers
22:53:02 <hppavilion1> It can hook up to Freenode
22:53:05 <hppavilion1> But that's it
22:53:09 <hppavilion1> I'm using python
22:53:22 <hppavilion1> No special features. Just making it so I'm not using webchat
22:53:25 <zzo38> How do I access X clipboard with command-line? I found only GUI programs to do it
22:55:53 <zzo38> Is "xclip" the right one?
22:56:17 <oren> yes
22:56:22 -!- boily has quit (Quit: KLEPTOCNIDÆ CHICKEN).
22:58:01 <FreeFull> zzo38: xclip or xsel
22:58:27 -!- mauris has quit (Ping timeout: 244 seconds).
23:03:22 -!- walbot has joined.
23:03:27 <hppavilion1> WOOHOO
23:03:29 <hppavilion1> I MADE IT WORK
23:04:09 <hppavilion1> WALBOT IS LIVE
23:04:44 -!- singingboyo has joined.
23:04:58 <hppavilion1> I AM VICTOOOOOOOOORIOUS
23:05:02 * hppavilion1 is awesome
23:05:35 -!- walbot has quit (Read error: Connection reset by peer).
23:05:45 <hppavilion1> Eeeeeeeeeverything is awesome
23:05:53 <hppavilion1> Eeeeeeeeeeeeeverything is cool when you're me
23:05:53 -!- mauris has joined.
23:05:55 <hppavilion1> But you aren't me
23:06:03 <hppavilion1> So eeeeeeeeeeeeverything sucks. For you.
23:06:21 <hppavilion1> Because that's the logical eexteeension of everything being awesome for me
23:06:43 <singingboyo> hppavilion1: so what terrible, critical, horrible malfunction did you just fix to make the world work again? :p
23:06:54 <hppavilion1> Watch this
23:07:17 -!- walbot has joined.
23:07:20 <hppavilion1> See?
23:07:24 <hppavilion1> See singingboyo
23:07:28 <hppavilion1> I made a robot
23:07:38 <hppavilion1> It doesn't... ahem... do anything
23:07:56 -!- walbot has quit (Read error: Connection reset by peer).
23:08:09 <singingboyo> ah, in that case, let's hope it's not secretly skynet. That'd be the opposite of making the world work.
23:08:20 <hppavilion1> It's not a secret...
23:08:25 <hppavilion1> It's openly skynet
23:08:42 <hppavilion1> It came out as a malicious AI when it was 12
23:09:13 <singingboyo> well that makes all the difference then, doesn't it? :p
23:09:26 <hppavilion1> Yep and oh god my name is wrong
23:09:31 -!- hppavilion1 has quit (Quit: Page closed).
23:09:50 -!- hppavilion[1] has joined.
23:09:51 <hppavilion[1]> OK
23:09:54 <hppavilion[1]> That's better
23:10:19 -!- walbot has joined.
23:10:44 <zzo38> I tried "xclip -i -sel p | xclip -o -sel s; xclip -i -sel c | xclip -o -sel p; xclip -i -sel s | xclip -o -sel c" to move stuff around between different clipboard buffers but it just makes it empty instead
23:10:46 <zzo38> How to fix this?
23:12:06 -!- mauris has quit (Ping timeout: 240 seconds).
23:12:52 -!- walbot has quit (Read error: Connection reset by peer).
23:13:09 -!- walbot has joined.
23:14:42 -!- walbot has quit (Read error: Connection reset by peer).
23:15:02 -!- walbot has joined.
23:15:35 -!- walbot has quit (Read error: Connection reset by peer).
23:15:55 -!- walbot has joined.
23:15:55 <walbot> Hello,
23:15:55 <walbot> Hello,
23:15:55 <walbot> Hello,
23:16:05 <hppavilion[1]> World!
23:16:18 <walbot> Hello,
23:16:59 <hppavilion[1]> No.
23:17:09 <hppavilion[1]> It's rude to ask
23:17:10 <hppavilion[1]> :P
23:17:19 <hppavilion[1]> I'm using webchat, so HOPEFULLY it works
23:18:07 <oerjan> how doomed are we on a scale of 1 to 10
23:18:35 -!- walbot has quit (Read error: Connection reset by peer).
23:20:03 -!- augur_ has quit (Quit: Leaving...).
23:22:04 <hppavilion[1]> I am confuzzled by the messages my bot is getting
23:22:11 <hppavilion[1]> I'm connected to irc.feenode.net
23:22:13 <hppavilion[1]> #esoteric
23:22:15 <hppavilion[1]> I think
23:22:19 <hppavilion[1]> But I'm getting messages like
23:22:23 <hppavilion[1]> g o a t s e x
23:22:30 <hppavilion[1]> And Congrats! You're unique!
23:22:35 <hppavilion[1]> And erotic ASCII art
23:22:54 <hppavilion[1]> Oh
23:22:57 <nortti> O_o what's the raw IRC data?
23:23:11 <hppavilion[1]> I typed feenode in as the default server
23:23:12 <hppavilion[1]> xD
23:24:05 -!- hppavilion1 has joined.
23:24:05 <hppavilion1> t
23:24:05 <hppavilion1> t
23:24:05 <hppavilion1> t
23:24:05 <hppavilion1> t
23:24:17 <hppavilion1> Testing
23:24:32 <hppavilion1> t
23:24:42 <hppavilion1> just
23:24:45 <hppavilion1> sending
23:24:47 <hppavilion1> messages
23:24:49 <hppavilion1> because
23:24:59 <hppavilion[1]> of a bug
23:25:21 -!- hppavilion1 has quit (Read error: Connection reset by peer).
23:25:48 <nortti> hppavilion[1]: for bot testing, you can use ##ingsoc
23:26:01 <hppavilion[1]> Thanks
23:26:42 <hppavilion[1]> You know what I hate about Python 3?
23:26:45 <hppavilion[1]> No Skype4Py
23:26:47 <hppavilion[1]> No Pyspeech
23:26:50 <hppavilion[1]> Etc.
23:27:22 -!- atrapado has quit (Quit: Leaving).
23:27:38 <singingboyo> dangit, I think my virtualbox VM tried to shut itself down again
23:27:46 <singingboyo> ssh connections just hanging for eternity
23:28:38 <hppavilion[1]> I want skype4py for python3 :,(
23:28:53 <hppavilion[1]> And the py3support branch of a fork of skype4py doesn't work :(
23:28:57 <hppavilion[1]> The setup.py
23:29:03 <hppavilion[1]> IS WRITTEN IN PYTHON 2
23:33:23 * hppavilion[1] is sad
23:33:36 <hppavilion[1]> The only other py3 port I can find is an empty repo on github
23:39:55 -!- hppavilion[1] has quit (Ping timeout: 246 seconds).
23:57:27 -!- mihow has quit (Quit: mihow).
23:59:03 -!- mihow has joined.
23:59:08 -!- mihow has quit (Client Quit).
←2015-07-19 2015-07-20 2015-07-21→ ↑2015 ↑all