00:03:25 is there another name for functions f such that f(0) = 0 00:03:26 i don't think they actually... matter that much 00:03:45 how cruel. 00:04:53 -!- copumpkin has joined. 00:05:21 i mean they're just a constant addition away from every other function 00:07:45 I am looking forward to the future 00:08:14 Phantom_Hoover, will you come to York to my "How to make an esolang without really trying" talk, wherein I make an esolang in front of a live audience? 00:08:30 you make it sound like you were sawing a lady in half 00:08:51 Bike, I'll be doing that too (no I won't) 00:09:21 behold, the amazing ngevdello and his dancing exec bits! 00:12:38 "Hey VCs / lunatics / 1%ers, kristallnac.ht is available for registration" 00:14:19 :D 00:15:28 Phantom_Hoover, you are the channel regular who is most likely to attend other than me 00:21:24 -!- nooodl has quit (Quit: Ik ga weg). 00:22:54 uhhh it's thursday isn't it 00:23:01 that is... an awkward day for me to go to york 00:23:19 ok like what specific date 00:46:28 20th of February 00:46:32 At 19:30 01:01:26 ok i can actually make that provided i don't carelessly agree to do something more important 01:02:52 :) 01:03:51 Taneb: have you considered new york instead 01:03:57 it's new 01:04:05 shachaf, call me old-fashioned, but I prefer this one 01:07:03 -!- Tod-Autojoined has changed nick to TodPunk. 01:09:56 -!- Phantom_Hoover has quit (Remote host closed the connection). 01:27:17 -!- yorick has quit (Read error: Connection reset by peer). 01:35:52 -!- Sgeo has joined. 01:53:27 -!- tromp has joined. 01:55:32 Lena Dunham having her own unsympathetic character on her own TV show deliver an annoying multi-minute rant in praise of Gawker and Jezebel is probably the sickest burn I've seen on TV 01:58:49 -!- zzo38 has quit (Remote host closed the connection). 02:14:10 -!- namaskar_ has quit (Ping timeout: 245 seconds). 03:17:25 shachaf: did you know the number of km in a mile is equal to φ to within 0.5% 03:17:35 so there are approx fib(n+1) km in fib(n) miles 03:21:10 -!- zzo38 has joined. 03:32:15 -!- Sorella has quit (Quit: It is tiem!). 03:45:23 Spiffy. 04:19:33 kmc: yep, that's my usual heuristic 04:26:14 also did you know that Dunning and Kruger showed a *positive* correlation between perceived and actual ability? 04:26:17 http://www.talyarkoni.org/blog/2010/07/07/what-the-dunning-kruger-effect-is-and-isnt/ 04:29:01 oh I think I learned that here 04:29:08 in a conversation you were part of 04:29:10 hooray for logs 04:41:48 i,i the meta-dunning-kruger effect: people who make stronger claims about the dunning-kruger effect know less about it 04:57:52 til: the dunning-kruger effect had to do with people called dunning and kruger 04:57:59 -!- oklopol_ has changed nick to oklopol. 05:02:25 -!- v^ has quit (Quit: http://i.imgur.com/MHuW96t.gif). 05:18:59 -!- tromp has quit (Remote host closed the connection). 05:19:32 -!- tromp has joined. 05:23:29 -!- tromp has quit (Ping timeout: 240 seconds). 05:29:03 -!- Bike has quit (Ping timeout: 252 seconds). 05:29:34 -!- Bike has joined. 06:05:03 if anyone has gross code from vidya games, tell @ibogost 06:05:36 this sounds like a job for ais523 06:17:47 -!- guardianx has joined. 06:23:19 -!- guardianx has quit (Ping timeout: 265 seconds). 06:23:55 -!- guardianx has joined. 06:24:00 -!- guardianx has quit (Excess Flood). 06:24:30 -!- guardianx has joined. 06:24:34 -!- guardianx has quit (Excess Flood). 06:27:12 -!- guardianx has joined. 06:29:11 -!- oerjan has joined. 06:37:32 should i go for longer passwords using only lowercase letters 06:38:32 oerjan: someone suggested that "relevant" could mean f(0) = 0 <-- hm, plausible 06:39:24 shachaf: some sites won't accept that, i hear 06:39:58 yes but you can add decoy symbols for those 06:40:17 oerjan: should an infinite series like sine be considered relevant 06:41:05 hm then you would want to expand the concept to analytic functions. 06:42:14 Do you know about 6502 unofficial opcodes? 06:43:06 shachaf: well if relevant is to mean something different from linear, it needs to apply to some non-affine functions. 06:44:22 well, f(x)=x^2 or something 06:44:45 does this apply to just any function between vector spaces such that f(0)=0 or do you need something more 06:45:22 hm oh if it's vector spaces it gets even weirder. 06:45:41 well wasn't that the point 06:45:59 since you were talking about how you couldn't generalize those polynomials to n-dimensional vector spaces 06:46:01 maybe. 06:50:24 the phrase "origin-preserving" does appear in some places 06:50:30 zzo38: i've heard of em 06:50:32 "any origin-preserving isometry is a linear map" 06:53:06 well isometry is stronger than affine 06:53:34 sure 06:59:58 -!- namaskar_ has joined. 07:00:12 `frink mile -> km 07:00:21 25146/15625 (exactly 1.609344) 07:00:41 > (sqrt 5 + 1)/2 07:00:42 1.618033988749895 07:01:37 it's cool how on one level that's "less than 1% different" and on another it's "pointless coincidence" 07:02:18 > fix$(0:).scanl(+)1 07:02:19 [0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,... 07:02:45 > fix$(1:).scanl(+)1 07:02:46 [1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17... 07:03:27 > zipWith(flip(/))`ap`tail$fix$(1:).scanl(+)1 07:03:28 [1.0,2.0,1.5,1.6666666666666667,1.6,1.625,1.6153846153846154,1.6190476190476... 07:04:01 > drop 6$zipWith(flip(/))`ap`tail$fix$(1:).scanl(+)1 07:04:02 [1.6153846153846154,1.619047619047619,1.6176470588235294,1.6181818181818182,... 07:04:49 ok there isn't even a much better fibonacci quotient. 07:05:02 a what 07:05:42 a F(n+1)/F(n) that's a better approximation than phi itself. 07:06:06 i thought it was exactly phi, in the limit 07:06:09 *much better 07:06:18 oh, wait, i see, ok 07:06:22 Bike: i'm talking about the mile -> km conversion 07:06:33 yeah i geti tnow 07:06:34 i suppose 1.6153846153846154 is the closest one 07:07:22 > 21/13 07:07:23 1.6153846153846154 07:07:32 > 20/13 07:07:33 1.5384615384615385 07:10:08 > let cf x | isInfinite x = [] | otherwise = f : cf (1/(x-f)) where f = fromIntegral$floor x in cf (25146/15625) :: Rational 07:10:09 Couldn't match type `[a1]' 07:10:09 with `GHC.Real.Ratio GHC.Integer.Type.Integer' 07:10:09 Expected type: GHC.Real.Rational 07:10:09 Actual type: [a1] 07:10:26 > let cf x | isInfinite x = [] | otherwise = f : cf (1/(x-f)) where f = fromIntegral$floor x in cf (25146/15625 :: Rational) 07:10:27 No instance for (GHC.Float.RealFloat GHC.Real.Rational) 07:10:27 arising from a use of `cf' 07:10:27 Possible fix: 07:10:27 add an instance declaration for 07:10:27 (GHC.Float.RealFloat GHC.Real.Rational) 07:10:31 argh 07:11:01 > let cf x | f == x = [f] | otherwise = f : cf (1/(x-f)) where f = fromIntegral$floor x in cf (25146/15625 :: Rational) 07:11:02 [1 % 1,1 % 1,1 % 1,1 % 1,1 % 1,3 % 1,1 % 1,2 % 1,7 % 1,1 % 1,1 % 1,15 % 1] 07:12:28 > let cf x | d == 0 = [f] | otherwise = f : cf (1/d) where f = floor x; d = x - fromIntegral f in cf (25146/15625 :: Rational) 07:12:29 [1,1,1,1,1,3,1,2,7,1,1,15] 07:13:16 > 1+(1/(1+1/(1+1/(1+1/(1))))) :: Rational 07:13:17 8 % 5 07:13:39 > 1+(1/(1+1/(1+1/(1+1/(3))))) :: Rational 07:13:40 18 % 11 07:14:04 > 18/11 07:14:05 1.6363636363636365 07:14:26 oh wait 07:14:37 > 1+(1/(1+1/(1+1/(1+1/(1+1/3))))) :: Rational 07:14:38 29 % 18 07:14:42 > 29/18 07:14:43 1.6111111111111112 07:14:58 > 1+(1/(1+1/(1+1/(1+1/(2))))) :: Rational 07:14:59 13 % 8 07:15:14 > 13/8 07:15:15 1.625 07:15:29 > iterate (\x->1+1/x) (1::Rational) 07:15:30 [1 % 1,2 % 1,3 % 2,5 % 3,8 % 5,13 % 8,21 % 13,34 % 21,55 % 34,89 % 55,144 % ... 07:16:10 > map numerator $ iterate (\x->1/(1+x)) (1::Rational) 07:16:11 [1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17... 07:18:53 -!- Tritonio has quit (Ping timeout: 245 seconds). 07:18:53 > minimumBy (comparing $ \(m,n) -> abs $ m/n - 25146/15625)) [(m,n) | n <- [1..20], m <- [0..40]] 07:18:54 :1:58: parse error on input `)' 07:18:57 anyone wanna whip up a haskell solution to counting the number of brainfuck programs with matching brackets without . and , 07:19:10 > minimumBy (comparing $ \(m,n) -> abs $ m/n - 25146/15625) [(m,n) | n <- [1..20], m <- [0..40]] 07:19:11 (29.0,18.0) 07:19:32 > sortBy (comparing $ \(m,n) -> abs $ m/n - 25146/15625) [(m,n) | n <- [1..20], m <- [0..40]] 07:19:33 [(29.0,18.0),(21.0,13.0),(8.0,5.0),(16.0,10.0),(24.0,15.0),(32.0,20.0),(13.0... 07:20:01 like p(n) = 4p(n-1) + sum_{i = 0}^{n-2} p(i) p(n-i-2) 07:20:13 can you do this with list magic 07:20:29 > sortBy (comparing $ \x -> abs $ x - 25146/15625) $ (sqrt 5 + 1)/2 : [m/n | n <- [1..20], m <- [0..40]] 07:20:31 [1.6111111111111112,1.6153846153846154,1.618033988749895,1.6,1.6,1.6,1.6,1.6... 07:20:47 > (sqrt 5 + 1)/2 07:20:48 1.618033988749895 07:21:39 > sortBy (comparing $ \x -> abs $ x - 25146/15625) $ (sqrt 5 + 1)/2 : [m/n | n <- [1..50], m <- [0..100]] 07:21:40 [1.6097560975609757,1.608695652173913,1.608695652173913,1.6111111111111112,1... 07:21:54 oh well 07:22:07 phi seems to do pretty well in the comparison. 07:22:53 -!- FreeFull has quit. 07:24:01 220284348986588570109202836338028914428611773535981066182485818891641176575745435677614245375605705664256074439978888016219589144792715586214584933803945623110548077752330775651922506462688159269237015622883861450993208900404333264 07:24:05 programs of length 300 07:24:08 says python 07:24:24 (i got up to 5000 or so) 07:24:31 (then it gets a bit slow) 07:28:18 i assume you are already memoizing already you couldn't possibly get to 5000 07:28:30 *otherwise 07:28:49 obviously 07:29:33 i also tried out a c bignum library, and got up to 50 or something 07:29:45 (in 15 minutes) 07:29:52 python give 1000 in a few seconds 07:30:23 (probably i just did something stupid because i sort of suck at c) 07:30:31 *gives 07:31:15 i'm pretty sure i've done catalan numbers as a list thing in haskell before but i cannot quite remember how i did that awkward sum. 07:31:55 wheres the SymbolicCombinatoric module 07:32:09 Now I figured out on Astrolog when is Chinese New Year. 07:32:25 yeah this is the number of dyck words with extra symbols 07:32:31 zzo38: i think it has already been this year? 07:32:46 so sort of catalan numbers 07:33:03 oh no it's in 3 days 07:33:14 oerjan: No. It is later (if the Chinese timezone is used, I think Jan.31) 07:37:22 I made up a diagram to show you how to calculate when is Chinese New Year (the diagram is not displaying the data for this year though): http://zzo38computer.org/img_14/chinese-new-year.png 07:41:45 looks reasonable 07:42:05 > inits [1..] 07:42:07 [[],[1],[1,2],[1,2,3],[1,2,3,4],[1,2,3,4,5],[1,2,3,4,5,6],[1,2,3,4,5,6,7],[1... 07:43:29 > let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in p 07:43:30 [1,4,17,76,354,1704,8421,42508,218318,1137400,5996938,31940792,171605956,928... 07:43:54 oklopol: are those correct 07:43:55 looks correct 07:44:05 thanks! let's see 07:44:07 oh also 07:44:18 > let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in p; p !! 20 07:44:19 :1:90: parse error on input `;' 07:44:22 erm 07:44:37 > let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in p !! 20 07:44:49 space 07:44:53 > let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in p !! 20 07:44:54 146681521121244 07:44:56 yay. 07:44:59 > let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in p !! 1000 07:45:00 1851699348848864557490460908252351435791528503792571199732642872987429667855... 07:45:05 yay 07:45:15 1851699348848864557490460908252351435791528503792571199732642872987429667855741056388118709506982301095273520239166445812465897225719714673518034688729346409566576494246766257017500088160821295706471401620743174768643242408712933258876221056914708216651234496955612303387531937013570229817305356203053671545992668489792589165268920056950337807083735642100968509541109361559746272395310718713159517363957691130968711391511344404455840470000377647503645773 07:45:16 009181430981878971527595122036960829733406983371159554875983183416111068844077682114144155308181843356898547292029738655566107038367415868264323343437633171416678659424310520616791395366627206645082341823517027845344762094860602519075347723961239585700915967561030319441407129604596884739279594357333381658012980964032832 07:45:19 is what i got 07:45:52 can you time that? 07:47:22 no idea 07:47:29 > let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in p !! 1000 07:47:31 1851699348848864557490460908252351435791528503792571199732642872987429667855... 07:47:43 hmm 07:47:43 it does look pretty fast 07:47:57 > let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in (p !! 1000 + p !! 1000 + p !! 1000 +p !! 1000 +p !! 1000) 07:48:00 9258496744244322787452304541261757178957642518962855998663214364937148339278... 07:48:08 although for real timing you'd want to compile it properly i assume 07:48:16 perhaps 07:48:35 > let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in p !! 3000 07:48:39 mueval-core: Time limit exceeded 07:48:41 hm... 07:48:42 > let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in p !! 2000 07:48:46 mueval-core: Time limit exceeded 07:48:49 > let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in p !! 1500 07:48:51 1200860333331673794565127667310636780014056128877285462588690504707901944941... 07:49:01 `run echo 'main = let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in ' >Test.hs 07:49:05 oops 07:49:05 No output. 07:49:25 `run echo 'main = let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in print $ p !! 1000' >Test.hs 07:49:29 No output. 07:49:39 `run ghc -O2 Test.hs 07:49:44 ​[1 of 1] Compiling Main ( Test.hs, Test.o ) \ \ Test.hs:1:83: \ Not in scope: `inits' \ Perhaps you meant `init' (imported from Prelude) 07:49:48 oops 07:50:02 oooops. 07:50:05 `run echo 'import Data.List(inits);main = let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in print $ p !! 1000' >Test.hs 07:50:09 No output. 07:50:11 `run ghc -O2 Test.hs 07:50:12 :( 07:50:14 oh 07:50:34 ​[1 of 1] Compiling Main ( Test.hs, Test.o ) \ Linking Test ... 07:50:45 `which time 07:50:46 No output. 07:50:58 i don't remember how to do timing 07:51:00 `run time echo is it a shell command 07:51:02 is it a shell command \ \ real0m0.002s \ user0m0.000s \ sys0m0.000s 07:51:27 `run time ./Test 07:51:31 18516993488488645574904609082523514357915285037925711997326428729874296678557410563881187095069823010952735202391664458124658972257197146735180346887293464095665764942467662570175000881608212957064714016207431747686432424087129332588762210569147082166512344969556123033875319370135702298173053562030536715459926684897925891652689200569503378070837356 07:51:37 `run time ./Test | tail -1 07:51:40 18516993488488645574904609082523514357915285037925711997326428729874296678557410563881187095069823010952735202391664458124658972257197146735180346887293464095665764942467662570175000881608212957064714016207431747686432424087129332588762210569147082166512344969556123033875319370135702298173053562030536715459926684897925891652689200569503378070837356 07:51:43 wat 07:52:01 output wants to be free 07:52:20 `run time ./Test >/dev/null | tail -1 07:52:24 ​ \ real0m2.075s \ user0m2.000s \ sys0m0.400s 07:52:37 cool 07:52:38 thanks 07:53:30 Huh, what sort of character encoding is this. It looks like latin-1 except all non-ascii letters have the wrong case. 07:54:21 -!- guardianx has quit (Remote host closed the connection). 07:54:26 I don't know; I can't see it. 07:54:33 i agree with zzo38 07:54:43 me too 07:54:58 I'd share it but it's Top Secret. 07:55:15 Oh, it's not as simple as the wrong case. 07:55:27 There's a 0xc8 (latin-1 for È) for 'é', for example. 07:56:23 And 0x89 for ä, and 0x88 for ö. I suppose those might be enough to find it, but I don't know of a good tool to look up character sets by example. 07:56:44 -!- aergus has joined. 07:56:47 didn't someone put one in HackEgo 07:58:19 For context, it's a CSV export of people registered on a course from the University course administration system. 07:58:40 I don't know what character encoding it is. 07:59:09 @google ancient finnish encodings 07:59:10 http://scratchpad.wikia.com/wiki/Character_Encoding_Recommendation_for_Languages 07:59:10 Title: Character Encoding Recommendation for Languages at Scratchpad, the home of te... 07:59:51 It's not the seven-bit Finnish one, I know that much. 08:00:02 And it's not even a legacy system. Though I guess it could be built on one. 08:00:05 ok}y 08:01:46 Bah, I'll just tr it; the only special characters in it seem to be é, ä and ö. But it's still strange. 08:02:21 Yes you can easily convert to Latin-1 or CP437 or whatever, if that is the only non-ASCII characters it includes 08:02:36 Although it would still help to know what character set it really is. 08:03:40 good \'e\"a\"o morning 08:08:34 I tried iconv -l | while read cs; do if [ "$(printf '\x89\x88\xc8' | iconv -f $cs -t utf8)" = "äöé" ]; then echo $cs; fi; done 2>/dev/null but it found nothing. (And the same command with the latin-1 bytes does found all kinds of compatible character sets.) 08:17:30 -!- namaskar_ has quit (Ping timeout: 245 seconds). 08:18:09 -!- conehead has quit (Quit: Computer has gone to sleep.). 08:18:56 -!- Sgeo_ has joined. 08:20:46 -!- Jafet has quit (Ping timeout: 265 seconds). 08:21:09 -!- Jafet has joined. 08:21:15 -!- Sgeo has quit (Ping timeout: 265 seconds). 08:26:13 -!- Jafet has quit (Changing host). 08:26:13 -!- Jafet has joined. 08:26:29 -!- Jafet has left. 08:31:59 http://lisptips.com/post/31567007407/putting-the-r-in-repl 08:32:10 Should I be sad that the equivalent of this works in Racket? 08:35:25 -!- aergus has quit (Ping timeout: 272 seconds). 08:40:12 -!- MindlessDrone has joined. 08:54:07 At least the GOP finally has an alternative plan. It sucks, but at least it exists 08:54:07 http://thehill.com/blogs/healthwatch/health-reform-implementation/196504-gop-senators-push-obamacare-alternative 08:54:51 "The CARE Act would require insurers to offer policies to anyone who has proof of “continuous coverage,” along with protections for those who lose their health plans for any reason. But those with pre-existing conditions who fail to maintain continuous coverage at any time could be denied coverage." 08:55:31 One of my friends is learning Clojure and keeps asking for my help because I know Haskell and it's all functional programming, right? and I can mostly set him on the right path but I worry that I'm gonna tell him something that is not very Clojure-y 08:55:55 Hmm, is this continuous coverage starting sometime after the implementation date? If so, that would certainly fix the obvious idiocy, and some of the criticisms on Fark 08:57:04 Although it's still problematic, one mistake and you're trapped off insurance forever? 08:57:35 Now I am suddenly thinking of an FRP web framework 08:57:46 Could that work? I dunno, I guess probably yeah 08:58:10 Does it provide any significant advantage? 08:58:12 Dunno 08:58:19 Should I have breakfast now? Yes 09:03:03 Sgeo_: sorry, do us europeans it'll look idiotic regardless. even obamacare. hth. 09:09:25 *to 09:18:17 -!- ais523 has joined. 09:50:54 -!- itsy has quit (Quit: itsy). 10:32:19 http://www.newyorker.com/online/blogs/borowitzreport/2014/01/stephen-hawkings-blunder-on-black-holes-shows-danger-of-listening-to-scientists-says-bachmann.html 10:34:31 oh, "keywords: humor" 10:34:57 Yeah, it’s satire. 10:41:34 it's... almost funny! almost. 10:54:29 -!- zzo38 has quit (Ping timeout: 240 seconds). 11:13:08 -!- `^_^v has quit (Read error: Connection reset by peer). 11:13:33 -!- namaskar_ has joined. 11:13:55 -!- `^_^v has joined. 11:29:54 i don't get it 11:46:55 Ok, so Hawkings writes that black holes don't have an event horizon as such; no information is lost when matter crosses it, and it's precise boundary is fluctuating rather than a sphere. 11:47:51 I doubt that the "blunder" is an actual quote, having found no reliably looking source for it. 11:48:14 reliable looking? grammar is hard. 11:53:03 -!- namaskar_ has quit (Ping timeout: 245 seconds). 11:58:32 int-e: I think the story is that Hawking spent years of his life trying to work out where information went when it fell into a black hole, and then eventually concluded that the problem didn't exist in the first place 12:00:17 -!- aergus has joined. 12:00:51 -!- itsy has quit (Ping timeout: 260 seconds). 12:03:12 So he does write that there are no black holes ... in a specific sense: "The absence of event horizons mean that there are no black holes - in the sense of regimes from which light can’t escape to infinity." 12:07:56 ais523: Right. But that doesn't sound like mainstream news to me. 12:15:16 int-e: thus, it's satire 12:22:41 -!- oerjan has quit (Quit: leaving). 12:25:16 quintopia: actually, complex numbers can be totally ordered via alternating digits in the decimal expansion 12:25:21 between the real and imaginary part 12:25:23 *parts 12:25:31 it's a stupid total ordering, but it obeys all the requirements to be a total ordering 12:35:01 It's a total ordering, but it doesn't make complex numbers an ordered field, right? (I can't figure out what that was a response to.) 12:37:51 yeah, it doesn't add or multiply properly 12:38:00 and it was a response to an edit summary on the wiki 12:38:19 Oh, that explains why grepping the logs wasn't so useful. 12:39:55 I don't normally consider myself bound by communication medium when quoting or replying to something 12:41:44 I'm tempted to send an email containing only "That's fine." 12:42:44 seems like a waste of time for all parties concerned :-) 12:47:33 now I'm wondering how and whether you know my email address 12:47:43 it's certainly believable that you know it, given that it's public information 12:50:27 -!- namaskar_ has joined. 12:53:03 -!- boily has joined. 13:02:48 -!- Sgeo_ has quit (Read error: Connection reset by peer). 13:04:18 -!- namaskar_ has quit (Ping timeout: 245 seconds). 13:04:18 fizzie: in an ordered field, one has x^2 >= 0 for any x, but i^2 = -1 < 0 contradicts that. 13:08:45 -!- metasepia has joined. 15:57:44 -!- esowiki has joined. 15:57:47 -!- glogbot has joined. 15:57:47 -!- HackEgo has joined. 15:57:49 -!- esowiki has joined. 15:57:49 -!- EgoBot has joined. 15:57:49 -!- esowiki has joined. 15:58:00 -!- ^v has joined. 15:59:36 -!- Gregor has joined. 16:00:18 -!- glogbackup has joined. 16:00:37 -!- nooodl has joined. 16:03:24 `? racoonspirator 16:03:29 A racoonspirator is a collaborator wrapped in fur 16:04:00 `? cocoonspirator 16:04:01 A cocoonspirator is a collaborator wrapped in caterpillar silk 16:04:26 obvious++ 16:12:09 ais523: my bad. i stand by my correction that Por gammer was mistaken speaking of a "maximum" complex number though. 16:12:28 quintopia: yeah, I was complaining about the summary, not the edit 16:12:56 ~duck por gammer 16:12:57 --- No relevant information 16:13:16 was this about complex integers, or complex numbers in general, btw? if it's complex numbers in general you have the issue of precision, too 16:13:41 (and computability, although that's unlikely to come up while programming) 16:13:57 ais523: Por gammer specified double precision, but my implementation is multiprecision 16:14:33 quintopia: ah right 16:14:35 what is a gammer, and why does it gam pors? 16:14:36 except, hmm 16:14:55 to me, "double precision" implies an actual maximum value (or in the case of complex numbers, maximum for each component) 16:15:21 -!- FreeFull has joined. 16:15:23 because it specifies a number of bits for the exponent as well as the mantissa 16:16:41 this is how georgia feels today: http://theoatmeal.com/comics/log_out 16:17:08 ais523: which is why i ignored the that recommendation and went multiprecision 16:17:12 ~metar KATL 16:17:13 KATL 281612Z 33010KT 9SM -SN BKN028 BKN036 OVC050 M03/M15 A3019 RMK AO2 P0000 16:17:35 boily: i don't mean the weather. i mean the attitudes of georgians 16:17:41 people feel this way 16:18:03 oh. 16:18:20 quintopia: that link looks vaguely like an XSRF attempt to me 16:18:47 ais523: it looked weird to me too 16:19:59 I don't think it's possible to write a client-side browser plugin like NoScript to block XSRF without strong AI, right? you can do it server-side without issues though 16:30:36 but NoScript does actually help against some attacks 16:31:24 yeah, for example it helps against certain (intended!) credit card transactions ... 16:31:31 the wikipedia page for CSRF lists a bunch of partial client-side solutions 16:31:34 int-e: how so? 16:32:39 quintopia: hmm, I thought the HTML community decided to use "X" for "cross" to reduce acronym colisions 16:32:41 *collisions 16:32:55 but maybe they don't for CSRF because it has no collisions anyway 16:33:13 (There's something called "3Dsecure" that's popular in Austria at least; basically a shop makes a cross site request to the credit card companie's "secure" server, and that one does another when the transaction is done. There's of course there's Javascript involved, too.) 16:33:54 int-e: sounds dumb. 16:35:20 uhm. multiple points of failure, multiple parties involved, unsecured information channels... not only it sounds dumb, but dangerous too. 16:36:19 It's ass covering by the CC company; they have logs to show that a certain transaction was acknowledged on their own servers. They don't care that I can't distinguish between entering the data on their server or on another one. 16:36:21 yep. dumb. 16:36:50 -!- sebbu has quit (Ping timeout: 264 seconds). 16:37:02 But in any case I have to jump through those hoops from time to time. 16:38:32 int-e: in the UK, it's usual (but not universal) for the merchant's site to redirect to the credit card company's site 16:38:51 who can either approve it immediately and redirect back, or ask for some extra information for security purposes 16:38:57 I'm not sure how it works behind the scenes 16:39:06 Some swedish banks allow one to configure a personal secret, and have that secret shown on all "login-to-bank" pages to authenticate when paying for something or so 16:41:37 my credit union has that, but only for logins into itself, since card transactions are through visa. :V 16:41:52 (In America) 16:42:33 FireFly: to prove it's a real bank screen? 16:42:40 ais523: yeah 16:42:42 -!- Slereahphone has joined. 16:42:47 -!- sebbu has joined. 16:42:49 Bike: that doesn't actually work, though, because a malicious website could just try to log in as you 16:42:56 it would fail, but it'd be able to get the secret before it failed 16:44:05 ais523: well the idea is that before one enters their own data one verifies that the secret being displayed is correct. 16:44:21 which just makes the attacker's job a bit more complicated but never mind that. 16:44:56 the real question isn't whether it's secure, but whether a court can be convinced that it's secure. 16:44:58 int-e: yeah, the problem is that you need the secret for the user to log in, but you need the login details to protect the secret 16:45:32 doing it on payments works a bit better, though, because an attacker would have to submit a fake payment to get at the secret 16:46:00 and if you do that in any sort of volume, the bank will get suspicious, because it's observable from their point of view and something that needs monitoring anyway 16:46:47 It's not completely stupid. But it's very annoying. 16:59:16 ais523: one could have a rotating secret that is never the same twice. like "the 4th digit of your social and third letter of your mother's maiden name" today and "the last digit of your phone number and the third digit of your account number" tomorrow. if you ever see the same secret twice, you're being scammed 16:59:44 quintopia: doesn't help against a MitM attack, which is what I was thinking of 16:59:54 although this would be MitM-via-not-reading-the-URL 17:00:10 as opposed to MitM-via-redirecting-the-connection 17:00:29 ais523: well, unless its MitM-by-rewriting-your-local-DNS-cache 17:01:07 how does that attack work? I'm aware of the existence of DNS poisoning but don't understand it 17:01:11 actually I'll just read Wikipedia 17:02:12 oh, apparently it's just "redirect traffic aimed at a DNS server, then it gets cached" 17:02:17 I was assuming it was something cleverer than that 17:02:26 i'm not sure how a MitM attack works when the information is securely transmitted 17:02:45 oh, no, it is clever 17:02:59 it's when a DNS server asks you where a site is, you send back info on other sites too 17:03:13 not quite 17:03:34 when DNS server A asks DNS server B where a site is, the attacker sends back a reply to A, forged to come from B 17:03:57 you'd need to approximately guess the timings, but that's not a real obstacle to an exploit 17:04:37 I guess this falls into the general class of TCP security issues that is "you trust the return address on a packet without asking the person who claims to have sent it whether it's genuine" 17:08:58 but then how did that attack that posioned the cache on an ADSL router via an emailed img link work? 17:10:02 apparently it is snowing now 17:10:27 quintopia: I guess the img link was to a domain that the client hadn't seen before, thus forcing a DNS request to a server owned by the attacker 17:10:38 from whatever the router's upstream DNS was 17:11:16 and simultaneously giving the attacker the identity of the user (via something encoded in the subdomain, which their malicious DNS sever could see), the IP of the upstream DNS (it's making the request), and the timing of the request 17:11:55 the email would also have to contain a link to an image on a legitimate site, but that's easy 17:12:19 then if the malicious server knows the IP of the legit's site DNS server, it has all the information it needs to spoof it quite convincingly 17:13:06 sounds right 17:15:16 ok, yeah 17:15:20 that actually is a really interesting attack 17:15:47 the obvious fix is for DNS requests to contain an arbitrary string that the DNS server echos back in the response 17:20:13 This evening I had a rather boring lecture and ended up thinking about 0xn matrices 17:20:19 Conclusion: they work but are useless 17:21:16 Also I saw a fox 17:21:29 where? 17:31:03 -!- Slereahphone has quit (Quit: Colloquy for iPhone - http://colloquy.mobi). 17:32:22 Taneb: A matrix that can't store data? 17:33:10 kmc, the fox was in York (well, just outside York) 17:33:15 FreeFull, ish 17:33:22 It still knows its dimensions 17:33:38 Well, other than that 17:34:23 Taneb: foxes are quite common in Birmingham, although they frequently stay hidden, especially during the daytime 17:34:35 I once had to take a long detour once because there was a fox in an alleyway in the middle of the day 17:34:46 normally they just run away if you approach them, but they can be dangerous if cornered 17:35:00 Taneb: What happens when you multiply a 4x0 matrix with a 0x4 matrix? 17:35:15 You get the 4x4 zero matrix, I think 17:35:19 Yeah 17:35:49 I wonder if these sort of flat matrices would be useful for matrix truncation/extension 17:36:00 -!- Slereahphone has joined. 17:36:35 -!- yorick has joined. 17:37:36 sounds like it might be useful in linear-logic-like applications 17:37:56 to have a safe and simple way to destroy data 17:38:24 although simply multplying it by zero and adding it to something you were using anyway is probably easier 17:41:41 -!- conehead has joined. 17:43:42 -!- ais523 has quit. 17:45:36 -!- FreeFull has quit (Read error: Connection reset by peer). 17:46:00 -!- FreeFull has joined. 17:46:52 Taneb: a 0xn matrix could be represented in J & friends 17:47:02 ) $ 0 4 $ '' 17:47:03 FireFly: 0 4 17:47:31 J <3 17:52:55 what is a 0×N matrix good for, except some horrible type-level hacking? 17:54:34 it's the zero matrix because the sum of an empty set is 0? 17:55:32 -!- Slereahphone has quit (Quit: Colloquy for iPhone - http://colloquy.mobi). 17:57:12 kmc, yes 17:57:19 boily, probably nothing 18:03:17 you could use 0xN matrices to represent "width component for zero matrices" and Mx0 ones to represent "height component for zero matrices" and then when you multiply them you get a MxN zero matrix 18:03:57 that is probably the only interesting thing they do, really? destroying data isn't very useful 18:06:23 does a 0xn matrix still represent a linear map? i guess so but none of them are invertible 18:06:28 except a 0x0 matrix :D 18:06:29 -!- itsy has quit (Ping timeout: 240 seconds). 18:08:41 (meanwhile, I fungotting hate bureaucracy and micromanagement.) 18:08:41 boily: i expect it's that or the uploads, i'll do it 18:11:22 i had a dream about a block cipher mode which is like ECB but you use a Bloom filter to detect whether you're going to repeat a block and you re-key instead 18:11:26 I don't think this is useful in the slightest 18:13:25 people here have the weirdest dreams... 18:15:58 fungot: what do you dream 18:15:58 kmc: i'm guessing you're about to be one for your implementation, usually all of r5rs on the sheet of paper" 18:16:35 -!- zzo38 has joined. 18:18:35 fungot dreams in lisp forms? . o O ( http://xkcd.com/224/ ) 18:18:35 FireFly: mmmm......... i am just using chess because the structure of the cond 18:18:48 fungot thinks in lisp forms. 18:18:49 FireFly: should it bother me. :) but no, not at work. i still don't see the importance of critical thought and logic in an argument 18:19:59 -!- zzo38 has quit (Remote host closed the connection). 18:20:26 '(fungot fungot fungot) 18:20:27 boily: did he do that one of the things most people who speak a different dialect that allows file i/ o 18:20:35 fungot: he did. 18:20:35 boily: i like keyword arguments, and so you've now got the fnord. 18:20:52 * boily has the fnord! *zelda item get melody ♪ 18:21:59 may the fnord be with you. 18:45:10 boily: guess what happens when it snows in atlanta? 18:45:56 boily: 1) billions of traffic accidents because tire chains aren't a thing here 2) i get the day off work yay 18:46:32 quintopia: the car pileups are previsible. we had one yesterday involving about 40 of them. 18:47:06 previsible? what? help boily i don't speak that. 18:47:13 foreseeable? 18:47:26 predictable. sorry, my French's slipping again... 18:47:45 fr:prévisible → en:foreseeable, predictable. 18:48:39 boily: did you foresee my not working today? because i'm not. 18:49:09 ah no. 18:49:48 the only people who skip their regular schedules when it snows are schoolchildren. 18:50:23 otherwise, well, you've got a coat, a hat, and a shovel. 18:50:56 quintopia: where do you work again? 18:51:26 MATLAB/Octave support 0xN and Nx0 matrices, too. 18:52:02 boily: well i am a tutor. schoolchildren are ostensibly my clients 18:52:15 Also the 0x0 matrix, which is handy because you can concatenate the 0x0 matrix to any matrix along any dimension. 18:53:10 (The 0xN and Nx0 matrices, for N > 0, you can concatenate only if the dimensions match right.) 18:54:30 -!- glogbackup has quit (Remote host closed the connection). 18:56:45 quintopia: good point. 18:58:17 I like to know that a matrix has full rank without looking at its entries. 19:00:27 int-e: so you only use 0xN and Nx0 matrices 19:00:28 ? 19:01:42 Unfortunately, no. It would simplify a lot of things. 19:03:02 int-e: or wait, you could just generate your matrix randomly. then it will almost surely be full rank! 19:04:14 quintopia: that's a dangerous claim. I might be working over a finite field. 19:04:34 int-e: don't do that 19:05:57 int-e: if you have a matrix with all nonzero rows/columns you can add a random real nonce to one row and one column and get an almost surely full rank matrix 19:06:49 quintopia: (1,1,1;1,1,1;1,1,1) and I like to differ. 19:06:56 obv this won't work if you have rows that are identically the same 19:07:05 but that's easy enoguh to guarantee 19:07:43 (the nonce applied at a single position doesn't help ... much. you can add it to all diagonal entries though, that will work.) 19:08:31 hmm yeah 19:20:21 int-e: also the set of 1xN and Nx1 matrices with at least one nonzero entry is all full rank! 19:21:20 you could just look at their length rather than their entires 19:21:22 entries 19:25:17 -!- oerjan has joined. 19:27:04 hellœrjan. 19:27:49 -!- MindlessDrone has quit (Quit: MindlessDrone). 19:28:40 boillyeh 19:29:27 boily: what large numbers 19:29:56 oklopol's sequence? 19:30:25 he was enumerating IO-less brainfuck programs. 19:30:46 -!- oklopol has quit (Quit: Leaving). 19:31:11 oerjan: tdh. 19:34:39 @tell ais523 a + bi <= c + di iff a <= c or (a == c and b <= d) is a simpler total ordering. (the one you'd get from automatically deriving Ord in haskell, although the Complex numbers don't do that out of principle.) 19:34:39 Consider it noted. 19:34:58 `run time ./Test >/dev/null 19:35:01 ​ \ real0m2.273s \ user0m2.100s \ sys0m0.300s 19:35:14 `cat Test.hs 19:35:15 import Data.List(inits);main = let p = 1 : zipWith (+) (map (*4) p) (map (sum . zipWith (*) p . reverse) (inits p)) in print $ p !! 1000 19:35:23 I think time prints to stderr.. 19:35:36 yeah i realized that later 19:42:09 what is a gammer, and why does it gam pors? <-- por gammer is por gammer for por spling, hth 19:42:29 `` which time 19:42:30 No output. 19:42:33 pity :) 19:42:49 `` help time 19:42:50 time: time [-p] pipeline \ Report time consumed by pipeline's execution. \ \ Execute PIPELINE and print a summary of the real time, user CPU time, \ and system CPU time spent executing PIPELINE when it terminates. \ \ Options: \ -pprint the timing summary in the portable Posix format \ \ The value of the TI 19:42:56 /usr/bin/time tends to be more informative than the shell builting 19:42:57 -g 19:43:06 there is a /usr/bin/time? 19:43:11 oerjan: I unnerstande. 19:43:25 boily: goyd 19:43:25 int-e: what would provide that? 19:44:21 `ls /usr/bin/time 19:44:23 ls: cannot access /usr/bin/time: No such file or directory 19:44:35 -!- sebbu has quit (Ping timeout: 272 seconds). 19:49:34 ok, so there's a 'time' package in debian ... 19:52:45 -!- sebbu has joined. 19:53:22 -!- sebbu has quit (Changing host). 19:53:22 -!- sebbu has joined. 19:53:35 > /usr/bin/time /bin/true 19:53:35 0.00user 0.00system 0:00.01elapsed 0%CPU (0avgtext+0avgdata 392maxresident)k 19:53:35 56inputs+0outputs (1major+138minor)pagefaults 0swaps 19:54:03 ~metar LOWI 19:54:03 LOWI 281920Z VRB01KT 9999 FEW010 SCT015 BKN070 M00/M01 Q0999 R08/19//70 NOSIG 19:54:43 Hm, that does seem to be a lot of info 19:55:05 ~metar ESSA 19:55:05 ESSA 281950Z 10011KT CAVOK M02/M05 Q1026 R01L/410166 R08/410150 R01R/410177 NOSIG 19:58:35 ~metar ENVA 19:58:35 ENVA 281950Z 08009KT 030V130 9999 FEW050 01/M09 Q1019 WS RWY 09 TEMPO 13022G35KT RMK WIND 670FT 16008G24KT 20:03:03 we could need some precipitation in middle norway. another disastrous fire going on. 20:09:49 you didn't have any gas explosions like manitoba did you? 20:12:58 or germany http://www.bbc.co.uk/news/world-europe-25922514 20:14:09 quintopia: hm no, although it was apparently close last year when there was a fire in the local paper factory 20:14:40 there was a gas container close to the burning building. 20:16:43 kmc: cow farts, or bullshit? 20:42:11 heh. 20:43:42 cow farts are dangerous → http://www.darwinawards.com/legends/legends2000-06.html 20:58:04 -!- typeclassy_ has joined. 20:58:30 -!- typeclassy_ has changed nick to typeclassy. 21:01:29 -!- boily1 has joined. 21:01:35 -!- metasepia has quit (Ping timeout: 272 seconds). 21:01:49 -!- metasepia has joined. 21:02:45 -!- boily has quit (Ping timeout: 272 seconds). 21:03:03 -!- boily1 has changed nick to boily. 21:06:18 `olist (942) 21:06:20 olist (942): shachaf oerjan Sgeo FireFly boily 21:06:45 o, lots of olist recently 21:07:10 a day with an olist is a Good Day. 21:11:56 what is olist? oots? 21:13:39 olist of the stick 21:15:35 -!- ^v has quit (Remote host closed the connection). 21:15:53 -!- ^v has joined. 21:28:03 -!- boily has quit (Quit: ROYAL CHICKEN FURNACE). 21:28:04 -!- metasepia has quit (Remote host closed the connection). 21:54:23 -!- oerjan has quit (Quit: leaving). 22:17:35 whaaaaaaaaat AMD is going to make server-class ARM64 "Opteron A" chips now? 22:17:37 http://community.amd.com/community/amd-blogs/amd-business/blog/2014/01/28/amd-announces-plans-to-sample-64-bit-arm-opteron-a-seattle-processors 22:33:20 sounds potentially awesome 22:37:10 -!- nooodl has quit (Quit: Ik ga weg). 23:07:31 -!- typeclassy has quit. 23:12:41 -!- Tritonio has joined. 23:18:15 -!- aergus has quit (Ping timeout: 252 seconds). 23:29:06 -!- Tritonio has quit (Quit: Tritonio). 23:37:25 -!- zzo38 has joined. 23:43:11 -!- Sgeo has joined. 23:45:21 I think I'm more likely to trust that the Racket team can come up with good tools for the manipulation of languages themselves, and less likely to trust their ability to make "ordinary" programming work well 23:47:06 zzo38: what do you think of Ouya? 23:56:44 quintopia: I don't really know. It is open source and based on Android system; the former always being an advantage and the latter advantageous when you are writing or running Android based software; I think its other design decisions aren't all that good; apparently you can't remove HDCP without opening it up though 23:57:50 zzo38: would you consider writing games for it 23:58:23 quintopia: I don't think so, but if there are interpreters/emulators for whatever I do write a game for you can try to see if you are able to run those. 23:59:16 zzo38: do you java at all/