←2015-02-25 2015-02-26 2015-02-27→ ↑2015 ↑all
00:00:22 <boily> suffering from an East Coast Endless Snow Syndrome?
00:02:28 <boily> @metar KLGA
00:02:28 <lambdabot> KLGA 252351Z 29006KT 10SM BKN250 02/M11 A2992 RMK AO2 SLP132 4/005 T00171106 10033 20017 53024
00:02:38 <boily> @metar KBOS
00:02:38 <lambdabot> KBOS 252354Z 29014G19KT 10SM CLR M01/M14 A2986 RMK AO2 SLP111 T10061139 10017 21006 53035
00:02:41 <boily> @metar KATL
00:02:42 <lambdabot> KATL 252352Z 07011KT 5SM -RA BR BKN006 OVC040 02/01 A2973 RMK AO2 PRESRR SLP076 CIG 004V008 P0006 60044 T00170006 10033 20017 58025
00:03:09 <boily> @metar KIAD
00:03:09 <lambdabot> KIAD 252352Z 00000KT 10SM BKN180 OVC220 01/M08 A2996 RMK AO2 SLP148 T00061078 10033 20000 53015
00:03:44 <boily> @metar CYUL
00:03:44 <lambdabot> CYUL 252300Z 27016G22KT 15SM DRSN FEW035 SCT050 M09/M19 A2987 RMK SC1SC3 SLP118
00:03:50 <quintopia> what are you up to then?
00:05:46 <boily> for once, today was normaler than the past few weeks. just ate some pig skin salad (it tasted Vietnamese).
00:08:10 -!- oren has joined.
00:08:20 -!- adu has joined.
00:23:54 <FireFly> @metar ESSB
00:23:55 <lambdabot> ESSB 252350Z AUTO 15003KT 9999 NCD 00/M01 Q1018
00:25:26 -!- ProofTechnique has quit (Ping timeout: 246 seconds).
00:28:41 <oren> #metar CYYZ
00:28:46 <oren> @metar CYYZ
00:28:47 <lambdabot> CYYZ 260000Z 30009KT 15SM FEW030 M13/M19 A3004 RMK SC1 SC TR SLP188
00:34:42 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42045&oldid=42043 * Ypnypn * (-1)
00:38:46 <boily> helloren. not freezing too much in the big T?
00:40:59 <quintopia> boily!
00:41:55 <boily> QUINTHELLOPIA!
00:41:57 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
00:43:42 <quintopia> LET'S PLAY A GAME. i will not have this opportunity again until summer.
00:45:08 <boily> OKAY. does it need a powerful machine?
00:45:09 -!- Phantom_Hoover has joined.
00:46:16 -!- aloril has quit (Remote host closed the connection).
00:46:49 -!- aloril has joined.
00:46:54 <quintopia> get on steam, let's find out what you have
00:50:21 -!- boily_ has joined.
00:50:39 -!- boily_ has changed nick to boilaptop.
00:50:53 <boilaptop> let me launch Steam from this here machine...
00:51:43 <boilaptop> huh? no steam? AAAAAAAAAAAAAAAH!
00:52:33 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42046&oldid=42045 * Ypnypn * (+103)
00:54:55 <quintopia> :\
00:56:31 -!- tromp has quit.
00:56:57 <boilaptop> I fear the last distupgrade removed it... :(
00:57:09 <quintopia> aw
00:57:28 <quintopia> well that's something i should be working on anyway
00:57:38 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42047&oldid=42046 * Ypnypn * (+4)
00:57:53 -!- tromp has joined.
00:58:04 <quintopia> but it seems such a waste to be productive on a snow day
00:59:49 <boilaptop> it sees this computer as a new one. tout s'explique.
01:14:58 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
01:15:43 -!- skj3gg has joined.
01:23:42 -!- Tritonio has quit (Ping timeout: 272 seconds).
01:24:15 -!- chaosagent has joined.
01:24:34 -!- chaosagent has quit (Remote host closed the connection).
01:24:52 -!- chaosagent has joined.
01:28:21 -!- Tritonio has joined.
01:36:30 -!- Koen_ has quit (Quit: The struct held his beloved integer in his strong, protecting arms, his eyes like sapphire orbs staring into her own. "W-will you... Will you union me?").
01:37:35 -!- Tritonio has quit (Remote host closed the connection).
01:44:39 -!- vanila has quit (Quit: Leaving).
02:03:37 -!- hjulle has quit (Ping timeout: 265 seconds).
02:15:21 -!- skj3gg has quit (Quit: ZZZzzz…).
02:17:31 -!- oerjan has joined.
02:23:11 -!- adu has quit (Quit: adu).
02:30:09 <oerjan> > 3*334*333/2 + 5*201*200/2 - 15*67*66/2 - 1000
02:30:11 <lambdabot> 233168.0
02:34:58 -!- boilaptop has quit (Quit: PORTABLE CHICKEN).
02:36:18 -!- boily has quit (Quit: BISECTING CHICKEN).
02:55:01 -!- adu has joined.
02:59:58 -!- adu has quit (Quit: adu).
03:27:14 -!- doesthiswork has joined.
03:34:05 -!- irctc975 has joined.
03:34:39 <irctc975> Adonai?
03:36:10 <elliott> `relcome irctc975
03:36:12 <HackEgo> irctc975: 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 irc.dal.net.)
03:36:27 <oren> adonakute
03:36:51 <oren> adonakatta
03:37:56 <irctc975> Thank you
03:38:11 <oren> adonakunarimasu
03:38:12 <irctc975> Wierd shit right there oren...
03:38:28 <oren> I am conjugating adonai as a japanese adjective
03:38:49 -!- Taneb has quit (Ping timeout: 252 seconds).
03:39:47 <irctc975> Don't actualy understand that.. but I can read :/
03:39:56 <oren> japanese adecives often end in 'ai' like mijikai (small)
03:40:07 <irctc975> do you know kuji kiri?
03:40:24 -!- jameseb has quit (Ping timeout: 276 seconds).
03:41:51 <oren> nope. never heardof that before.
03:42:08 <irctc975> Yeah I think you might know i'm outie but i'll be back
03:42:21 <irctc975> Good night :/
03:42:25 -!- irctc975 has quit (Quit: Page closed).
03:47:13 -!- adu has joined.
03:50:22 -!- adu has quit (Client Quit).
03:59:11 <oerjan> @tell boily <boilaptop> I fear the last distupgrade removed it... :( <-- itym disturbgrade hth
03:59:11 <lambdabot> Consider it noted.
04:05:25 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)).
04:23:00 <oren> never build a pump without an acqueduct to carry the water
04:23:15 <oerjan> ancient dorf proverb
04:23:36 * oerjan says that and immediately starts wondering about the metaphorical meanings
04:24:48 <oerjan> a civilization whose proverbs were all literally correct technical recommendations but with connotations everywhere
04:26:18 <MDude> Sometimes you just don't realize you're actually on fire.
04:27:01 <oerjan> i don't think that counts hth
04:27:42 <oerjan> my point is that they wouldn't _sound_ like they were metaphoric to us
04:28:08 -!- nisstyre has quit (Changing host).
04:28:08 -!- nisstyre has joined.
04:29:55 <oerjan> don't tighten a bolt with your strongest wrench; you may then be unable to loosen it again.
04:29:56 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42048&oldid=42047 * Ypnypn * (+1121)
04:31:40 <oren> Always detach the gears /before/ connecting the power.
04:32:45 <oren> You can never construct enough magma-safe mechanisms.
04:33:56 -!- skj3gg has joined.
04:37:24 -!- Taneb has joined.
04:37:30 -!- jameseb has joined.
04:46:55 <oren> ooh an eleven caravan! ready the lever of drowning!
04:47:24 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42049&oldid=42048 * Ypnypn * (+52) /* Constants */
04:49:05 -!- skj3gg has quit (Quit: ZZZzzz…).
04:50:43 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42050&oldid=42049 * Ypnypn * (+0) /* Constants */
04:53:20 <oerjan> oren: if df only tracked insurance premiums, your trading policy would be so hosed...
04:53:35 <oerjan> (for all i know it might do...)
04:54:32 -!- ProofTechnique has joined.
04:58:09 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42051&oldid=42050 * Ypnypn * (+117) /* Constants */
05:00:08 -!- doesthiswork has quit (Quit: Leaving.).
05:00:30 -!- doesthiswork has joined.
05:18:57 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42052&oldid=42051 * Ypnypn * (+192) /* Constants */
05:21:46 -!- MDude has changed nick to MDream.
05:41:29 <oren> oerjan: they had an economy simulation in a previous version but it was removed
05:47:42 <oren> I have accidentally invented a water diode
05:50:09 <oren> If you put a water wheel next to a pump side-by side in a 2 space wide passage, water can flow one way but not the other
05:51:32 <oerjan> next, transistor!
05:54:50 <oren> Hmm... I think something like a pump, with a water-activated pressure plate?
06:06:17 -!- doesthiswork has quit (Ping timeout: 246 seconds).
06:32:55 <oren> I can't find anything but useless sphalerite? What is Zinc even good for?!?!?
06:44:24 -!- augur has quit (Ping timeout: 245 seconds).
06:45:30 <b_jonas> oren: um, doesn't an ordinary slope act as a water diode?
06:47:55 -!- augur has joined.
06:51:23 <oren> b_jonas: no, because of pressure modeling, water can be pushed up a slope
06:53:02 <b_jonas> oren: but what if you put a long enough slope, then a pump to cover the difference?
07:00:21 <oren> I guess, but with my method the diode's pump is powered directly by the water in the channel and doesn't need external power
07:10:27 <b_jonas> I see
07:22:28 -!- arjanb has quit (Quit: bbl).
07:26:09 -!- chaosagent has quit (Ping timeout: 252 seconds).
07:31:14 -!- chaosagent has joined.
07:36:41 -!- chaosagent has quit (Ping timeout: 250 seconds).
07:40:03 -!- Patashu has joined.
07:44:21 -!- Patashu has quit (Disconnected by services).
07:44:22 -!- Patashu_ has joined.
08:16:14 <mroman> morning
08:17:48 <oerjan> correct!
08:24:44 <int-e> the sun here seems to agree
08:34:43 <mroman> @hoogle forever
08:34:44 <lambdabot> Control.Monad forever :: Monad m => m a -> m b
08:35:44 -!- ^v has quit (Read error: Connection reset by peer).
08:36:10 -!- ^v has joined.
08:42:09 <mroman> wait
08:42:11 <mroman> why is
08:42:13 <mroman> PortNumber 10
08:42:14 <mroman> legal
08:42:15 <mroman> but
08:42:23 <mroman> PortNumber (read "10") fucks up?
08:42:39 <mroman> because there's no (Read PortNumber)
08:42:40 <mroman> but
08:42:43 <mroman> wth
08:43:41 <mroman> PortNumber :: PortNumber -> PortID
08:43:42 <mroman> I see
08:43:52 <mroman> so
08:44:02 <mroman> PortNumber must have a Num instance if 10 works
08:44:38 <mroman> meaning fromIntegral should fix it
09:06:38 -!- Frooxius has joined.
09:07:48 <mroman> hm
09:07:53 <mroman> simpleirc
09:07:56 <mroman> this looks quite nice
09:43:46 -!- AnotherTest has joined.
09:48:12 -!- AnotherTest has quit (Ping timeout: 252 seconds).
10:19:58 -!- AnotherTest has joined.
10:26:42 -!- AnotherTest has quit (Ping timeout: 252 seconds).
10:28:43 -!- FreeFull has quit (Ping timeout: 250 seconds).
10:31:43 <oren> Speed limit reform: change all speed limits to the same number of Kim/h
10:32:49 <b_jonas> oren: um, that doesn't work. there's a good reason why there has to be different speed limits in different places and for different vehicles.
10:33:15 <oren> No I mean if it currently is 30 km/h change it to 30 Kim/h
10:33:18 <b_jonas> like, why highways have a higher speed limit than towns
10:33:24 <b_jonas> what?
10:33:29 <oren> kibimetres
10:33:31 <b_jonas> oh...
10:33:35 <b_jonas> ugh
10:34:08 <b_jonas> so basically you just want to raise the speed limits
10:34:23 <oren> by 2.4 percent
10:34:31 <b_jonas> that happens anyway, but less often (say once every two decades) and by higher amounts, as vehicles get safer
10:35:21 <b_jonas> well, actually
10:35:25 <b_jonas> it goes both directions
10:35:46 <b_jonas> the town speed limit got lowered from 60 to 50 here, but the highway limit got raised form 120 to 130
10:35:52 <b_jonas> more than a decade ago now
10:36:00 <oren> My dad went to the expo 67 in montreal and they said they were going to have self-driving cars by the 90's but they're still not here
10:36:10 -!- vanila has joined.
10:36:16 <mroman> I think inches per milliseconds is much more american
10:36:19 <b_jonas> some of this might be political in natures
10:36:32 <vanila> good morning
10:37:00 <mroman> 120km/h is 1.3in/ms
10:37:01 <oren> bah, they should really specify rapidities in radians
10:38:05 <oren> atan2(v,c) isthe rapidity
10:38:20 <mroman> lol
10:38:22 <mroman> in/mh
10:38:23 <mroman> that rocks
10:38:29 <mroman> 50km/h is 1969in/mh
10:38:52 <mroman> 120km/h is 4724in/mh
10:39:16 <oerjan> mroman: that's not american it has "milli-" in it
10:39:17 <mroman> (inches per millihour)
10:40:06 <mroman> oerjan: you could also use fujita classifications
10:40:11 <mroman> 120km/h is just F1
10:40:12 <oren> The federal rapidity limit is 9.2656693E-8 radians
10:40:31 <mroman> well
10:40:34 <mroman> technically 120 to 180
10:40:35 <mroman> so
10:40:36 <mroman> :D
10:40:53 -!- Patashu_ has quit (Remote host closed the connection).
10:41:04 -!- Patashu has joined.
10:41:07 <HackEgo> [wiki] [[Lisp2d]] M http://esolangs.org/w/index.php?diff=42053&oldid=41649 * Cluid Zhasulelm * (+1212) permission to include fizzbuzz example granted in correspondence
10:43:03 <fizzie> 120km/h is about 1.79 miles/.beat.
10:44:50 <oren> By federal law, you may only approach 4.02402923E-8 nines to cee!
10:45:46 <oren> ( 'nines to cee' is the formula -log(1-v/c) )
10:45:47 <idris-bot> (input):1:43: error: expected: "!!",
10:45:47 <idris-bot> "$", "$>", "&&", "&&&", "*",
10:45:47 <idris-bot> "***", "+", "++", "+++", "-",
10:45:47 <idris-bot> "->", ".", "/", "/=", ":+",
10:45:47 <idris-bot> ":-", "::", ":::", ":=", "<",↵…
10:46:25 <mroman> ( !!
10:46:25 <idris-bot> (input):1:1: error: expected: ":",
10:46:25 <idris-bot> dependent type signature,
10:46:25 <idris-bot> end of input
10:46:25 <idris-bot> !!<EOF>
10:46:25 <idris-bot> ^
10:46:29 <mroman> ( !!:
10:46:29 <idris-bot> (input):1:1: error: expected: ":",
10:46:29 <idris-bot> dependent type signature,
10:46:31 <idris-bot> end of input
10:46:32 <mroman> ( :
10:46:33 <idris-bot> !!:<EOF>
10:46:35 <idris-bot> Unrecognized command:
10:46:37 <idris-bot> ^
10:46:48 <mroman> ( :!!
10:46:48 <idris-bot> Command "!!" not permitted.
10:46:51 <mroman> hm
10:46:53 <mroman> ( :help
10:46:54 <idris-bot> Command "help" not permitted.
10:46:57 <mroman> pf
10:47:10 <mroman> ( :type 9
10:47:10 <idris-bot> fromInteger 9 : Integer
10:47:20 <mroman> ( :info Integer
10:47:21 <idris-bot> Command "info" not permitted.
10:47:22 <oren> oДO
10:47:35 <mroman> ( 9 + 9
10:47:35 <idris-bot> 18 : Integer
10:47:44 <mroman> ( [1] + [2]
10:47:44 <idris-bot> (input):1:5:When elaborating an application of function Data.Fin.+:
10:47:44 <idris-bot> Can't unify
10:47:44 <idris-bot> Vect (S n1) a
10:47:44 <idris-bot> with
10:47:44 <idris-bot> Fin n
10:47:50 <mroman> ( [1] ++ [2]
10:47:50 <idris-bot> Can't disambiguate name: Data.HVect.++, Prelude.List.++, Prelude.Strings.++, Data.VectType.Vect.++
10:47:59 <mroman> ( [1] Prelude.List.++ [2]
10:48:00 <idris-bot> (input):1:18:When elaborating an application of function Data.VectType.Vect.++:
10:48:00 <idris-bot> Can't unify
10:48:00 <idris-bot> Vect (S n) a
10:48:00 <idris-bot> with
10:48:00 <idris-bot> argTy -> retTy↵…
10:48:12 <mroman> ( [1] Prelude.VectType.Vect..++ [2]
10:48:12 <idris-bot> (input):1:28:When elaborating an application of function Data.VectType.Vect.++:
10:48:13 <idris-bot> Can't unify
10:48:13 <idris-bot> Vect (S n) a
10:48:13 <idris-bot> with
10:48:13 <idris-bot> argTy -> retTy↵…
10:48:25 <mroman> idris-bot is just screwing with me
10:48:35 <mroman> ( [1] Prelude.VectType.Vect.++ [2]
10:48:36 <idris-bot> (input):1:27:When elaborating an application of function Data.VectType.Vect.++:
10:48:36 <idris-bot> Can't unify
10:48:36 <idris-bot> Vect (S n) a
10:48:36 <idris-bot> with
10:48:36 <idris-bot> argTy -> retTy↵…
10:48:40 <mroman> ( [1] `Prelude.VectType.Vect.++` [2]
10:48:41 <idris-bot> (input):1:28: error: expected: "`"
10:48:41 <idris-bot> [1] `Prelude.VectType.Vect.++` [2]<EOF>
10:48:42 <idris-bot> ^
10:48:45 <mroman> meh
10:48:50 <mroman> > [1] ++ [2]
10:48:52 <lambdabot> [1,2]
10:54:49 <vanila> idris....
10:58:43 <HackEgo> [wiki] [[User:Cluid Zhasulelm]] M http://esolangs.org/w/index.php?diff=42054&oldid=42010 * Cluid Zhasulelm * (+10) added another cool stuff
11:07:40 <oren> I want a partial implementation of C preprocessor, that subs in files only if they are part of my porject
11:08:03 <oren> s/or/ro
11:09:09 <b_jonas> oren: ask ais523 (he might not have exactly that, but he might still be able to help in what you want)
11:09:53 <oren> Hmm... maybe i can write a perl script that does mostly what I want
11:11:07 <oren> but then I'd have to complicate my makefiles
11:11:35 <b_jonas> technically it's not really easy to include just your files, because what files you include could depend on macros predefined by your compiler (depending on architecture) or defined in headers, but if you know you don't do conditional includes like that then it might be possible
11:13:40 <oren> well, of you have a sequence like #ifdef windows #include file #endif then the included text will be cut out anyway, right?
11:16:03 <b_jonas> oren: yes
11:16:14 <b_jonas> oren: technically you can have indirect incldues, but few people use those
11:16:23 <b_jonas> and you probably knew if you did tricks like that
11:26:15 -!- boily has joined.
11:32:56 <Lymia> ( [1] Data.HVect.++ [2]
11:32:57 <idris-bot> (input):1:16:When elaborating an application of function Data.VectType.Vect.++:
11:32:57 <idris-bot> Can't unify
11:32:57 <idris-bot> Vect (S n) a
11:32:57 <idris-bot> with
11:32:57 <idris-bot> argTy -> retTy↵…
11:33:08 <Lymia> ( Data.HVect.++ [1] [2]
11:33:08 <idris-bot> When elaborating an application of function Data.VectType.Vect.++:
11:33:09 <idris-bot> No such variable Data.HVect.
11:33:15 <Lymia> idris sounds fun.
11:34:14 -!- Patashu has quit (Ping timeout: 272 seconds).
11:34:29 <Lymia> ( app [1] [2]
11:34:30 <idris-bot> (input):1:5:Can't disambiguate name: A.::,
11:34:30 <idris-bot> David.::,
11:34:30 <idris-bot> Effects.Env.::,
11:34:30 <idris-bot> ForeignEnv.::,
11:34:30 <idris-bot> Data.HVect.::, ↵…
11:34:35 <Lymia> ( [1] app [2]
11:34:36 <idris-bot> builtin:0:0:Can't unify
11:34:36 <idris-bot> Vect (S n) a
11:34:36 <idris-bot> with
11:34:38 <idris-bot> argTy -> retTy
11:34:40 <idris-bot> Specifically:↵…
11:34:50 <boily> Hellymia. David?
11:34:55 <boily> @massages-loud
11:34:55 <lambdabot> oerjan said 7h 35m 44s ago: <boilaptop> I fear the last distupgrade removed it... :( <-- itym disturbgrade hth
11:35:27 <Lymia> ( Data.HVect.app [1] [2]
11:35:28 <idris-bot> No such variable Data.HVect.app
11:35:35 <Lymia> ( Data.HVect.::app [1] [2]
11:35:36 <idris-bot> When elaborating argument x to constructor Data.VectType.Vect.:::
11:35:36 <idris-bot> No such variable Data.HVect.
11:35:40 <Lymia> ( Data.HVect.:: [1] [2]
11:35:40 <idris-bot> When elaborating argument x to constructor Data.VectType.Vect.:::
11:35:41 <idris-bot> No such variable Data.HVect.
11:35:46 <Lymia> ( [1] :: [2]
11:35:47 <idris-bot> When elaborating argument x to constructor Data.VectType.Vect.:::
11:35:47 <idris-bot> Can't disambiguate name: A.::,
11:35:47 <idris-bot> David.::,
11:35:47 <idris-bot> Effects.Env.::,
11:35:47 <idris-bot> ForeignEnv.::, ↵…
11:35:51 <Lymia> ( [1] Data.HVect.:: [2]
11:35:51 <idris-bot> (input):1:16:When elaborating argument x to constructor Data.VectType.Vect.:::
11:35:52 <idris-bot> Can't unify
11:35:52 <idris-bot> Vect (S n) a
11:35:56 <idris-bot> with
11:35:56 <idris-bot> argTy -> retTy↵…
11:35:59 <Lymia> ( [1] Data.HVect.app [2]
11:35:59 <idris-bot> builtin:0:0:Can't unify
11:36:00 <idris-bot> Vect (S n) a
11:36:02 <idris-bot> with
11:36:04 <idris-bot> argTy -> retTy
11:36:06 <idris-bot> Specifically:↵…
11:36:25 <boily> @tell oerjan hellørjan. I don't think I'm used to having ubuntal disturbgrades, from having spent too much time on Arch. the consequences are unknown to me.
11:36:25 <lambdabot> Consider it noted.
11:36:29 <Lymia> ( (\x -> \y -> x ++ y) [1] [2]
11:36:29 <idris-bot> (input):1:5: error: expected: ",",
11:36:30 <idris-bot> ":", "=>", "impossible"
11:36:30 <idris-bot> (\x -> \y -> x ++ y) [1] [2]<EOF>
11:36:30 <idris-bot> ^
11:37:11 <Lymia> ( (\x => \y => x ++ y) [1] [2]
11:37:12 <idris-bot> (input):1:22:Can't disambiguate name: Data.HVect.++, Prelude.List.++, Prelude.Strings.++, Data.VectType.Vect.++
11:37:28 <Lymia> ( map (\x => x + 1) [1, 2, 3]
11:37:29 <idris-bot> When elaborating an application of function Prelude.Functor.map:
11:37:29 <idris-bot> Can't disambiguate name: A.::,
11:37:29 <idris-bot> David.::,
11:37:29 <idris-bot> Effects.Env.::,
11:37:29 <idris-bot> ForeignEnv.::, ↵…
11:37:47 <Lymia> ( map (\x => x + 1) 1 :: 2 :: 3 :: Nil
11:37:48 <idris-bot> Can't disambiguate name: A.::,
11:37:48 <idris-bot> David.::,
11:37:48 <idris-bot> Effects.Env.::,
11:37:48 <idris-bot> ForeignEnv.::,
11:37:48 <idris-bot> Data.HVect.::, ↵…
11:38:01 <Lymia> ( map (\x => x + 1) 1 Data.HVect.:: 2 Data.HVect.:: 3 Data.HVect.:: Nil
11:38:02 <idris-bot> (input):1:5:When elaborating argument x to constructor Data.VectType.Vect.:::
11:38:02 <idris-bot> No such variable Data.HVect.
11:38:17 <Lymia> !help
11:38:17 <zemhill> Lymia: I do !zjoust; see http://zem.fi/bfjoust/ for more information.
11:38:17 <EgoBot> ​help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help <command>.
11:38:19 <Lymia> (help
11:38:24 <Lymia> `help
11:38:24 <HackEgo> Mmmmm... no.
11:38:27 <Lymia> ~help
11:38:41 <Lymia> ( let x = 3
11:38:42 <idris-bot> (input):1:1: error: expected: ":",
11:38:42 <idris-bot> dependent type signature,
11:38:42 <idris-bot> end of input
11:38:42 <idris-bot> let x = 3<EOF>
11:38:42 <idris-bot> ^
11:38:46 <Lymia> ( x = 3
11:38:46 <idris-bot> When elaborating argument x to type constructor =:
11:38:47 <idris-bot> No such variable x
11:43:57 -!- AnotherTest has joined.
11:46:59 <oerjan> @tell boily OKAY
11:46:59 <lambdabot> Consider it noted.
11:48:49 <oerjan> `help
11:48:49 <HackEgo> Runs arbitrary code in GNU/Linux. Type "`<command>", or "`run <command>" for full shell commands. "`fetch <URL>" downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert <rev>" can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/
11:49:00 <oerjan> `unidecode help
11:49:12 <HackEgo> ​[U+0068 LATIN SMALL LETTER H] [U+0065 LATIN SMALL LETTER E] [U+006C LATIN SMALL LETTER L] [U+0070 LATIN SMALL LETTER P]
11:49:17 <oerjan> curious.
11:49:26 <oerjan> oh right.
11:50:24 <oren> `help unidecode
11:50:25 <HackEgo> Runs arbitrary code in GNU/Linux. Type "`<command>", or "`run <command>" for full shell commands. "`fetch <URL>" downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert <rev>" can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/
11:51:06 <oren> `man unidecode
11:51:07 <HackEgo> man: can't open the manpath configuration file /etc/manpath.config
11:51:13 <oren> bah
11:51:26 <oren> arbitrary code my arse
11:51:54 <vanila> `man arbitrary code
11:51:55 <HackEgo> man: can't open the manpath configuration file /etc/manpath.config
11:58:21 <Jafet> `unicode -h
11:58:34 <HackEgo> Usage: multicode [options] arg \ \ Options: \ -h, --help show this help message and exit \ -x, --hexadecimal Assume arg to be hexadecimal number \ -o, --octal Assume arg to be octal number \ -b, --binary Assume arg to be binary number \ -d, --decimal Assume arg to be decimal number \ -r, --rege
12:01:53 -!- koo7 has quit (Ping timeout: 252 seconds).
12:03:00 <oerjan> oren: `unidecode is a command we made ourselves. you won't find a manpage hth
12:03:10 -!- idris-bot has quit (Quit: Terminated).
12:03:26 -!- idris-bot has joined.
12:04:45 <boily> @massages-clear
12:04:45 <lambdabot> Unknown command, try @list
12:04:49 <boily> @clear-massages
12:04:50 <lambdabot> Messages cleared.
12:05:56 <oren> well at least I found two more insane fonts: http://snag.gy/Y6rMM.jpg
12:06:13 -!- Tritonio has joined.
12:06:51 <boily> helloren. isn't the one to the left your regular terminal font?
12:07:18 <oren> No, that one was more cursive and had | as heart instead of o.
12:07:37 <Melvar> mroman, Lymia: Idris doesn’t currently allow using qualified operators infix, and to use them prefix, there must be parens around the operator (but not the namespaces).
12:08:21 <oren> I do like the idea of overdotting the letters instead of having capitals
12:08:36 <Melvar> ( Vect.(++) [1] [2]
12:08:36 <idris-bot> [1, 2] : Vect 2 Integer
12:08:58 <Lymia> That heart font looks fun.
12:09:15 <Lymia> (I'm surprised someone would make a monospace font like that though)
12:10:08 <vanila> Hahahaha
12:10:11 <oren> It is a Japanese font, they are almost always monospace
12:11:27 <oren> Because Japanese text is sort of monospaced even in handwriting (they have special paper with boxes for essays and such)
12:13:09 <oren> Which conveniently means you can get lots of crazy terminal fonts by searching for crazy fonts in japanese
12:14:35 -!- oerjan has quit (Quit: leaving).
12:15:41 <b_jonas> oren: are those two really japanese fonts?
12:15:57 <oren> The one on the right isn't. the one on the left is.
12:16:05 -!- Tritonio_ has joined.
12:16:45 <b_jonas> ok
12:17:33 <b_jonas> I have recently fixed an error in my terminal font
12:17:56 <b_jonas> I found out that lowercase u with brevis and u with ring were drawn too wide, a mistake I haven't noticed before
12:17:57 <oren> http://s2g.jp/font/index.htm It is called S2Gらぶ
12:18:19 <b_jonas> this font (I hope it has the updated version there) => http://www.math.bme.hu/~ambrus/pu/fecupboard20-c.pcf.gz
12:18:34 -!- Tritonio has quit (Ping timeout: 272 seconds).
12:19:00 <b_jonas> but at least it's my font so it was easy to fix
12:19:21 <b_jonas> it was worth to make my own rather than try to switch all the time after I find each other terminal font sucks
12:19:43 <b_jonas> (this is a bitmap font so it was easy to draw, much easier than graymap fonts generated from vector fonts)
12:21:04 -!- Tritonio_ has changed nick to Tritonio.
12:21:15 -!- boily has quit (Quit: EPHEMERAL CHICKEN).
12:23:28 <oren> Here is the font (in a bullshit adhoc format) which I used in one of my games: http://postimg.org/image/tjxgpkkj5/
12:29:21 <oren> Ommitting distinction between identical characters makes it easy to have greek, cyrillic and latin.
12:29:52 -!- AnotherTest has quit (Ping timeout: 245 seconds).
12:30:29 -!- FreeFull has joined.
12:32:19 -!- AnotherTest has joined.
12:40:45 <mroman> damn.
12:44:20 -!- hjulle has joined.
12:48:21 <oren> dayyum.
12:49:20 <b_jonas> oren: that looks nice
12:50:10 <b_jonas> oren: why are the digits 4 and 5 and a few other chars partly gray instead of black and white
12:51:03 <b_jonas> oren: hmm, those greek letters are in a strange order
12:51:03 <mroman> wait
12:51:08 <mroman> hReady returns IO Bool
12:51:09 <b_jonas> is there a mapping table to this?
12:51:13 <mroman> but it fails when nothing is ready
12:51:13 <mroman> so
12:51:17 <mroman> it either returns True or Fails?
12:51:28 <mroman> that's pretty fucking stupid
12:52:16 -!- AnotherTest has quit (Ping timeout: 252 seconds).
12:52:28 <b_jonas> oren: and what is the character in the 0x80 position?
12:52:39 <b_jonas> what's it supposed to represent?
12:53:05 <FireFly> I guess full block
12:53:17 <FireFly> wait, 0x80, not 0x7F
12:54:02 <oren> THe 0x80 is a diamond, representing energy credits.
12:54:17 <b_jonas> I see
12:54:17 <oren> or at least it would if I had finished the damn game
12:54:55 <oren> the greek letters are in a pseudo-enlish order with the big letters put in wherever they fit
12:55:10 <b_jonas> I wonder what game is it that requires these particular letters
12:55:28 <FireFly> The diamond reminds me of the statement separator in APL
12:55:35 <b_jonas> FireFly: isn't that a small diamond?
12:55:54 <FireFly> It's looked fairly large in the fonts I've seen, but I don't know
12:56:30 <oren> It was going to be a futuristic RTS with units named in Russian, japanese, and greek (for the aliens)
12:56:53 <b_jonas> oren: but only all uppercase russian?
12:57:41 <oren> right. Because in novaya rossiya, they are CAPITALIST NOW!
12:57:52 <oren> huahhahaha
12:58:04 <b_jonas> oren: what about the gray stuff?
12:58:37 <oren> the gray is an error that my program doesn't care about for some reason
12:58:41 <b_jonas> and which glyph represents Э
12:59:20 <oren> 3
12:59:29 <b_jonas> ah
13:00:02 <b_jonas> I figured your W stands in for Ш
13:00:30 <b_jonas> does 4 stand for Ч then?
13:00:49 <oren> yup
13:00:58 <b_jonas> ok
13:01:15 <oren> I make economical use of code space unlike those unicode wastrels
13:01:37 <b_jonas> and what char does the glyph at 0xa1 represent?
13:02:18 <oren> 1/0
13:02:41 <b_jonas> oh! I thought we had an infinity glyph for that
13:02:46 <b_jonas> ok
13:03:13 <oren> infinity is kind of hard to make half-width.
13:03:39 <oren> So i improvized a substitite
13:03:39 <b_jonas> sure, it looks ugly in all the 9 wide fonts
13:03:55 <vanila> half of infinity is still infinity
13:03:56 <b_jonas> but cp437 still has it, even if it's ugly
13:06:03 <oren> yah. I included only 2 kanji: 日 and 月 which are used in dates
13:06:08 <b_jonas> the slash character seems ugly
13:06:39 <oren> yah it's jagged. needs anti-aliasing
13:07:09 <oren> or maybe to be less high
13:08:52 <FireFly> You could make infinity two characters wide (though I guess you're starved for space as it is already)
13:09:08 <FireFly> Is 0xFF nabla?
13:09:31 <FireFly> wait, not nabla.. partial derivative
13:09:35 <oren> partial derivative.
13:09:52 * FireFly wonders what that would be used for in an RTS
13:09:58 <b_jonas> are the characters at 0xf5, 0xf6, 0xf7, 0xf8 supposed to represent ∈∪∩⊂ ? if so, they seem to be raised too high I think
13:10:24 <b_jonas> FireFly: yes, it's partial
13:10:44 <oren> hmm... yeah maybe they are a lil high
13:11:11 <b_jonas> and what's at 0x9b ?
13:11:58 <FireFly> Reminds me of the japanese postal mark
13:12:02 <oren> japanese postal sign.
13:12:10 <Melvar> oren: I would have expected 3 to be used for З. As it is your З looks more like a 3 than your 3 does.
13:12:11 <b_jonas> ah
13:12:38 <FireFly> I agree
13:12:38 <oren> It was going to be 年 but i couldn't get it small enough
13:13:20 <oren> on paper i write my 3's like that
13:14:05 <oren> in fact all those numbers are how i write them on paper
13:14:41 <b_jonas> oren: you write dotted zeros?
13:14:42 <b_jonas> wow
13:14:50 <b_jonas> and underscored ones
13:14:54 <oren> yeah
13:15:30 <Melvar> And uncurly twos.
13:15:55 <FireFly> I write underscored ones when I want to emphanize it is a one
13:15:56 <b_jonas> is there an ö glyph?
13:16:13 <Melvar> And angular fours and fives.
13:16:44 <b_jonas> I expect there should be one if there's what looks like an ü and an å
13:17:18 <FireFly> Or better yet, separate the diacritics from the symbols and use overstriking
13:17:19 <oren> yeah. that would be better than quite a few of those charcters
13:17:52 <oren> overstriking ftw.
13:18:05 <FireFly> Speaking of which, I learned yesterday that `less` will interpret A^HA as boldface A and _^HA as underlined A
13:18:15 <FireFly> Which is how man communicates these to less
13:18:27 <oren> wow. cool
13:18:28 <FireFly> Funny how traces of overstriking still remains
13:18:29 <b_jonas> an ä could help too
13:18:35 <b_jonas> FireFly: yes
13:18:36 <FireFly> remain*
13:19:21 <oren> yeah, overstriking is probably the way to go
13:19:30 <b_jonas> I prefer not to limit myself to 256 glyphs, so my font has over two thousand characters, and even a very few identical pairs (mostly just multiple completely empty ones)
13:19:52 <FireFly> do you use your own monospace font for everyday use?
13:19:59 <b_jonas> FireFly: yes, in terminals
13:20:04 <oren> I'm using it right now
13:20:07 <FireFly> Is it public anywhere?
13:20:16 <b_jonas> FireFly: => http://www.math.bme.hu/~ambrus/pu/fecupboard20-c.pcf.gz
13:20:20 <b_jonas> Fecupboard20 (free X11 bitmap font with 20x10 pixel character cell, easily distinguishable characters, great for terminals and programming, has all characters in iso-8895-1 and 8859-2 and more)
13:20:46 <oren> well, in this terminal anyway. the other one is still on that crazy-ass klingon looking font
13:20:53 <b_jonas> hmm, I should update that short description
13:21:08 <FireFly> I'm fairly happy with the font I currently use, but curious what it looks like either way
13:21:09 <Melvar> b_jonas: Does it have l with belt?
13:21:12 * FireFly checks
13:21:30 <oren> ł
13:21:31 <b_jonas> Melvar: I don't think so... let me check
13:21:33 <oren> yup
13:21:45 <b_jonas> oren: what? isn't that the crossed l?
13:21:53 <Melvar> oren: That’s l with stroke.
13:21:57 <oren> oh
13:21:59 <b_jonas> l with belt is ɬ
13:22:21 <b_jonas> it certainly has ł
13:22:46 <b_jonas> fecupboard20 is supposed to have all characters required for all major European languages that are written in the latin script
13:22:55 <b_jonas> so it must have ł
13:23:35 <oren> doesn't look like in has that curly thing l
13:24:55 <b_jonas> yes, definitely doesn't have l with belt
13:26:31 <b_jonas> is l with belt used only as a pronunciation symbol?
13:26:49 <Melvar> I’m happy with DejaVu Sans Mono. I particularly like the l in it, and moreso that all the variants have the same shape because it has all of them, except turned l.
13:27:14 <Melvar> b_jonas: I believe it’s only used in IPA, yes.
13:27:34 <b_jonas> ok, then that's why I don't have it. I've added only a few of the characters that are used only in IPA
13:28:17 <Melvar> A consequence of this is that there is no uppercase version, since IPA uses only lowercase and caseless letters.
13:28:26 <FireFly> This font reminds me of MS DOS for some reason
13:28:38 <FireFly> Fecupboard20, that is
13:28:51 <b_jonas> FireFly: yes, some of the pc fonts have inspired me
13:29:05 <oren> It is quite similar to the one in MS DOS (which i recently installed on an old computer to play DOOM)
13:29:11 <b_jonas> I've observed at least three different 9x16 fonts before I made this 10x20 one
13:29:21 <b_jonas> oren: there's no _one_ font in MS DOS
13:29:34 <oren> I mean the default one then
13:29:40 <b_jonas> there's various ones hard-coded in VGA cards
13:29:44 <b_jonas> at least three different ones
13:29:55 <b_jonas> all with cp437 encoding and very similar
13:30:01 <b_jonas> but different in the details
13:30:36 <oren> well Iwasn't around in the old MS DOS days so you'd know better than I
13:30:46 <FireFly> Funny, the l with belt renders just fine for me and doesn't look out-of-place compared to the other glyphs.. I guess it happened to fall back to a similar font
13:30:47 -!- ais523 has joined.
13:32:07 <oren> I do like that way `works with' to make quotes
13:32:26 <ais523> it really depends on the font
13:32:39 <ais523> they don't look very similar in the one I'm using
13:32:52 <oren> In b_jonas's font it works, is what I mean
13:32:52 <b_jonas> hello, ais523
13:33:01 <ais523> hi b_jonas
13:33:23 -!- AnotherTest has joined.
13:33:50 <b_jonas> ais523: we were talking about fonts, and in particular this crazy one with a custom encoding by oren: http://postimg.org/image/tjxgpkkj5/
13:34:43 <ais523> a custom encoding that is nonetheless almost consistent with ASCII
13:34:48 -!- FreeFull has quit (Ping timeout: 252 seconds).
13:34:49 <oren> the custom encoding is mostly designed so I can write the actual strings in latin and then shift ehm by varying amounts
13:34:52 <ais523> (having a printable character where newline should be is a problem, though)
13:34:55 <b_jonas> ais523: yes, it's certainly consistent with ascii
13:34:56 <FireFly> It looks like an extended ASCII variant to me
13:35:10 <b_jonas> ais523: um no, it's not a problem for cp437 either
13:35:22 <b_jonas> becuse the newline is transformed by the terminal layer and never gets into video memory
13:35:54 <b_jonas> (similarly how having a printing character at the position of space isn't a problem for TeX's oT1-encoded fonts, because the TeX engine emits a glue rather than a character when you type space)
13:36:04 <ais523> right
13:36:20 <oren> Like I write @amma and it becomes Γαμμα
13:36:53 <oren> whoops I mean `amma
13:37:09 <b_jonas> ah, that explains the positions of the russian uppercase things
13:37:39 -!- AnotherTest has quit (Ping timeout: 250 seconds).
13:37:45 <Melvar> lľŀłƚljȴɭʪʫˡᶅᶩỻₗⅼⱡꝇꝉꞁꞎꭝꭞl
13:38:45 <b_jonas> Melvar: my font has l, l with caron, l with acute, l with slash out of those
13:38:47 <FireFly> Those are all supported by DejaVu Sans Mono?
13:38:51 <b_jonas> (and maybe something else, I don't know)
13:38:51 <ais523> Cyrillic, presumably
13:38:54 <ais523> rather than Russian specifically
13:39:03 <b_jonas> ais523: I do mean Russian
13:39:05 <Melvar> FireFly: No, that’s just all of them I could find at all.
13:39:11 <FireFly> Ah
13:39:28 <ais523> I tried to learn cyrillic, but it has too many vowels :-(
13:39:31 <b_jonas> ais523: look at oren's font, it only has glyphs for russian uppercase letters, not for the letters used in macedonian or serbian
13:40:19 <b_jonas> ais523: there's some tricks, namely how in that font 34W stand for the russian letters (which wasn't obvious to me at first)
13:40:26 <b_jonas> so there's no other glyphs for those
13:40:55 <ais523> oh, like the beta in CP437 which is also an ß
13:41:02 <b_jonas> ais523: yes
13:41:36 <b_jonas> ais523: also this doesn't have a russian F because the cyrillic one stands for it
13:41:44 <Melvar> FireFly: Excepting ones that are particularly simple l with an accent; I didn’t list those.
13:41:46 <b_jonas> um
13:41:47 <b_jonas> sorry
13:41:48 <ais523> apparently, some typewriter keyboards don't have a 0 or 1
13:42:06 <ais523> because they can use O and I instead
13:42:06 <b_jonas> it doesn't have a russian F because the greek Phi stands for it
13:42:06 <b_jonas> ais523: yes, but it's O and l actually
13:42:17 <ais523> oh right, lowercase l
13:42:23 <Melvar> lľŀłƚȴɭˡᶅᶩ are the ones of that list in DejaVu Sans Mono.
13:43:44 <Melvar> No, wait, actually more, but weechat fails to display them because they aren’t listed in whatever lib resource that one thing was.
13:45:36 <Melvar> And ʪʫ are actually in it but the l parts don’t have the usual shape; it probably doesn’t fit in a cell well enough.
13:48:58 <FireFly> I guess that works for presentational purposes, but it can't be fun to try to analyse/deal with text where a particular glyph could represent multiple characters
13:50:50 <FireFly> I tried to make a 3px-high font once, it didn't go terribly well
13:51:01 <FireFly> http://xen.firefly.nu/up/pixfont/index.html
13:51:58 <b_jonas> FireFly: heheh
13:54:08 <FireFly> I decided to disregard case, which is something I usually strongly dislike, because at that scale there isn't much choice
13:55:09 <b_jonas> FireFly: just add a colon before each uppercase letter
13:55:40 <vanila> this is a good way to generate an alphabet maybe
13:55:57 <FireFly> b_jonas: I meant more the way I use lowercase b and n
13:55:59 <vanila> just create a set of small bitmaps that are visually as far apart as possible
13:56:17 <b_jonas> vanila: yes, people have tried that
13:56:21 <b_jonas> in various ways
13:56:31 <vanila> id like to see some of the results
13:56:43 <vanila> is there a link?
13:57:36 <b_jonas> but I for am a typogeek and care about the text looking very similar to existing beautiful texts, rather than inventing something entirely new
13:57:50 <b_jonas> I'm traditional
13:59:02 -!- hjulle has quit (Ping timeout: 245 seconds).
14:02:17 <Melvar> vanila: You mean this thing: http://dotsies.org/ ?
14:04:52 <Melvar> Sadly that seems to have put the dot patterns in some order and zipped them with the supported alphabet in order, instead of thinking about distinctiveness vs. frequency.
14:04:53 -!- doesthiswork has joined.
14:05:07 <vanila> sort of
14:05:35 <vanila> yeah, ithink better can be done
14:07:19 <vanila> it doesnt have to bereated to english either
14:11:00 -!- SopaXorzTaker has joined.
14:12:41 -!- AnotherTest has joined.
14:13:36 -!- skj3gg has joined.
14:14:26 -!- TieSoul has joined.
14:15:32 -!- GeekDude has joined.
14:17:31 -!- TieSoul has quit (Client Quit).
14:18:00 -!- TieSoul has joined.
14:19:20 -!- Koen_ has joined.
14:19:45 -!- Koen_ has quit (Client Quit).
14:20:00 -!- Koen_ has joined.
14:24:52 -!- ais523 has quit (Ping timeout: 240 seconds).
14:27:35 -!- jameseb- has joined.
14:27:56 -!- Taneb has quit (Read error: Connection reset by peer).
14:27:58 -!- jameseb has quit (Read error: Connection reset by peer).
14:28:16 -!- Taneb has joined.
14:28:56 <FireFly> I'm pretty sure the latin alphabet is a lot more efficient when it comes to reading than those dot patterns..
14:29:09 -!- jameseb- has changed nick to jameseb.
14:30:30 -!- FreeFull has joined.
14:36:22 -!- ais523 has joined.
14:39:38 -!- AnotherTest has quit (Ping timeout: 265 seconds).
14:40:33 -!- doesthiswork has quit (Quit: Leaving.).
14:41:13 <int-e> FireFly: it'd be hard to surpass several decades of training, that's certain. but in principle, I guess you can recognize larger patterns the same way you'd do with english text.
14:41:58 <int-e> so tricky to predict. one should do this with more versatile features than squares.
14:43:48 <int-e> one criticism I'd have is that in isolation, a,b,c,d,e all look the same. that's quite awful.
14:43:57 <FireFly> Yeah, that was mostly what I was thinking of
14:44:13 <FireFly> Having to judge distance between objects to read seems bad
14:44:37 <FireFly> Same for the different letters that all look visually like variations of '!'
14:47:50 -!- GeekDude has changed nick to GibVent.
14:48:13 -!- SopaXorzTaker has quit (Read error: Connection reset by peer).
14:49:12 <HackEgo> [wiki] [[Eodermdrome]] http://esolangs.org/w/index.php?diff=42055&oldid=41608 * Chris Pressey * (+364) /* Computational class */ not TC in the usual(?) sense; someone on IRC pointed this out the other day
14:49:55 <HackEgo> [wiki] [[Eodermdrome]] M http://esolangs.org/w/index.php?diff=42056&oldid=42055 * Chris Pressey * (+10) /* Computational class */ *universal Turing machine
14:53:02 <HackEgo> [wiki] [[Eodermdrome]] M http://esolangs.org/w/index.php?diff=42057&oldid=42056 * Chris Pressey * (-7) /* Computational class */ link to ℒ
14:57:35 -!- SopaXorzTaker has joined.
14:58:44 -!- ais523 has quit (Quit: meeting).
15:02:09 -!- oren has quit (Ping timeout: 250 seconds).
15:07:49 -!- skj3gg has quit (Quit: ZZZzzz…).
15:13:38 -!- skj3gg has joined.
15:13:42 -!- skj3gg has quit (Client Quit).
15:18:36 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42058&oldid=42052 * Ypnypn * (+0)
15:19:28 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42059&oldid=42058 * Ypnypn * (+143)
15:24:25 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42060&oldid=42059 * Ypnypn * (+6) /* Types */
15:24:43 -!- `^_^v has joined.
15:26:53 -!- AnotherTest has joined.
15:28:57 -!- koo7 has joined.
15:31:15 -!- AnotherTest has quit (Ping timeout: 256 seconds).
15:34:40 -!- Tritonio_ has joined.
15:35:55 -!- mihow has joined.
15:36:10 -!- Tritonio has quit (Ping timeout: 272 seconds).
15:41:04 -!- Tritonio_ has changed nick to Tritonio.
15:50:04 -!- GibVent has quit (Read error: Connection reset by peer).
15:50:14 -!- GibVent has joined.
15:53:16 -!- G33kDude has joined.
15:53:26 -!- GibVent has quit (Read error: Connection reset by peer).
15:53:31 -!- G33kDude has changed nick to GibVent.
15:56:32 -!- MDream has changed nick to MDude.
15:56:34 -!- GibVent has changed nick to GeekDude.
15:56:39 <Melvar> FireFly, int-e: I am reminded of one thing that someone proposed dotsies were good for: Writing Lojban into five-block-high walls in Minecraft.
15:58:18 <MDude> There is one problem I ahve with dotsies.
15:58:19 <FireFly> Good point
15:58:47 <MDude> And this is that it uses a special character for full stops that breaks the pattern it uses.
15:58:51 <FireFly> Maybe I should learn to read it.. I could see it being useful in some circumstances with very limited resolution, like that
15:59:12 <MDude> When really, it could ahve just gone with a solid, fife-dot line instead for that purpose.
15:59:18 <Melvar> (With the additional fun that Lojban’s root words are five letters long, so they become 5×5-block squares.)
15:59:55 <MDude> As it is, you can't use punctuation with it as all if you're actually displaying it at minimal resolution.
15:59:59 <Melvar> (And that Lojban doesn’t strictly require any punctuation.)
16:00:08 <FireFly> What about '?
16:00:38 <FireFly> I mean, it isn't punctuation in Lojban, but you need it as well, no?
16:00:57 <Melvar> FireFly: Using the h-dotsie should be fine.
16:01:25 <FireFly> I suppose so, yeah
16:01:29 <Melvar> I mean the only reason ' isn’t h in the latin orthography is that it’s supposed to be “light”.
16:02:47 <Melvar> (Basically, it’s unlike any other consonant in that it can only appear between vowels and usually doesn’t count for purposes of general word-shape validity.)
16:03:29 -!- Tritonio has quit (Remote host closed the connection).
16:03:30 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)).
16:04:38 -!- ais523 has joined.
16:06:11 <Melvar> (I sometimes like to think of it as an overgrown vowel hiatus instead of a real consonant, because that’s what it looks like to me.)
16:22:06 <b_jonas> ais523: wait, I want to show something to you as well
16:22:28 <b_jonas> ais523: http://www.math.bme.hu/~ambrus/pu/ccache.png
16:23:06 <b_jonas> ais523: I did a measurement on how quickly my computer can read memory. the goal was to show the impact of the L1 cache and the L2 cache. that much works:
16:23:26 <ais523> b_jonas: you're reading the same area of memory over and over again, I take it?
16:23:30 <b_jonas> yes
16:23:59 <b_jonas> on the left third of the diagram, I read from the L1 cachce, so the speed is bound by executing the instructions, not by the memory loads
16:24:14 <b_jonas> this shows that this computer has 32 kibibytes of L!h1 cache
16:24:21 <b_jonas> of L1 cache
16:25:11 <b_jonas> the middle third of the diagram shows reading from L2 cache, there the speed is bound mostly or completely by the speed of that cache.
16:26:00 <b_jonas> there's 2 mebibytes of L2 cache in this machine, but the speed starts getting worse below that, because this is ran on a multitasking OS which does stuff other than running this program, and switches often enough that the program can't use the L2 cache fully
16:26:12 <b_jonas> this much is what I expected.
16:26:45 <b_jonas> The surprising part is the right third, where the speed is bound by the read speed of the main memory.
16:27:34 <b_jonas> You can see that there are two different possible speeds, one around 4.5 GiB/s and one around 4 GiB/s. That diagram doesn't explain why there are two speeds, and it took me a while (and some experiments other than looking at this diagram) to figure out the reason.
16:27:40 <b_jonas> Can you guess the reason?
16:31:32 <vanila> These graphs are wonderful
16:31:51 <b_jonas> thanks
16:32:24 <ais523> b_jonas: NUMA?
16:32:46 <b_jonas> ais523: no. this is my old home computer and definitely doesn't do NUMA.
16:32:48 <int-e> b_jonas: would the density of the 4.5GB/s be about 1/3 of the 4GB/s line? (so 1/4 vs 3/4 total)?
16:33:09 <ais523> maybe not intentional NUMA, but I'd expect some of the cores would be closer to certain parts of memory
16:33:18 <b_jonas> int-e: no, the 4.5 GB is denser, but that's a red herring
16:33:42 <int-e> b_jonas: oh. right. reading it wrong.
16:34:12 <b_jonas> ais523: I don't see how that would happen because there's only a single memory card (512 MiB size) and a single intel CPU chip with two cores
16:34:18 <int-e> "old" ... upgraded memory?
16:35:25 <b_jonas> ais523: and even still, the measurements for that part of the grpah take two or three seconds, so if it depended on the cores I'd expect to see intermediate results where the process is placed to another core during a run,
16:35:35 <int-e> My ideas would be alignment of reads, and actually different memory behavior in different address ranges.
16:35:40 <b_jonas> but there don't seem to be such things, or only one or two in the thousands of run
16:36:17 <ais523> I know that at least on Linux, processes tend to stay pegged to one core unless there's a good reason to move
16:36:32 <b_jonas> int-e: all the reads are 64-byte aligned, so if alignment matters it could be through affecting whcih L2 cache lines are emptied, but that's unlikely to show up on the rightmost part of the graph, or through page caches
16:36:54 <b_jonas> ais523: hmm... ok, then maybe you could suppose it's related to cores
16:40:52 <b_jonas> int-e: or, I guess, alignment could perhaps matter for how the bits are layed out on the memory chips
16:41:17 <b_jonas> however, I don't see how that could result in two so different discrete constant speeds even for the longest (64 megabyte long) memory reads
16:53:45 <int-e> Too many unknowns. I'd like to know which processor, I'd like to see the code, I'd like to see kernel events (any frequency scaling?), I'd probably spend a bit on the actual machine code (any funny loop unrolling?); lots of things to poke at with no clear idea.
16:54:13 <b_jonas> Here's a clue: all the results I got in the first hour of the experiment were the slower speed, and all the results in the following two hours are of the higher speed.
16:54:17 <b_jonas> int-e: wait, I can tell you some of the bit
16:55:04 <b_jonas> int-e: the cpu is an intel Core2 6300 1.86 GHz
16:55:26 <b_jonas> I can show you the source code and the assembled code because I've looked at it myself
16:55:56 <b_jonas> there's some extra register moves that the compiler left in and that are probably pointless
16:57:51 <b_jonas> the loop unrolling is manually done by me, I read 256 bytes in each loop iteration
16:58:10 <b_jonas> the compiler kept that, it's just reordered whcih order the 16 reads happen
17:02:15 <int-e> hmpf, now I want to make a "hot cache" joke (they make things go fast)
17:03:31 <b_jonas> int-e: here's the program, the compile options, and the assembly: http://dpaste.com/04KPY18 http://dpaste.com/1CTY8S8 http://dpaste.com/3F6YPN7
17:04:04 <b_jonas> int-e: in the assembly program, the relevant loop starts at the label .L94
17:04:59 <b_jonas> you can see that it does the 16 memory reads, each 16 bytes long, and no other memory access
17:05:30 <b_jonas> (well, apart from accessing the page table, page table caches, and code cache of course)
17:10:22 <int-e> Yes. I did think of the page tables, but I believe the effects caused by those are hidden in the noise.
17:11:22 -!- ProofTechnique has quit (Ping timeout: 240 seconds).
17:11:53 <int-e> (there aren't enough accesses to explain a 10% difference; besides the allocation is so big that the libc should request 4MB pages anyway)
17:12:02 <int-e> (making the effect even smaller)
17:12:26 <b_jonas> int-e: the problem with the page tables is that the intel manuals don't give any details about how the page table cache in their cpus work. they mention that the page table cache exists, but calls it somethign else, not page table cache.
17:12:44 <int-e> translation lookaside buffer, tlb
17:13:02 <int-e> not sure I got the middle word correct
17:13:18 <int-e> but I did, apparently
17:15:06 <int-e> and yes, tlb's are secret sauce in intel processors - all automatic and therefore deeply magical.
17:16:44 -!- arjanb has joined.
17:16:50 -!- ProofTechnique has joined.
17:21:11 -!- ProofTechnique has quit (Ping timeout: 256 seconds).
17:34:59 <b_jonas> yes, I think it's called TLB
17:36:20 <int-e> Anyway, the effect of TLBs may be larger than I thought (it's hard to say; there's prefetching magic that will hide a lot of latency), but I don't see how it could be so uniform.
17:38:41 <b_jonas> int-e: the prefetching magic certainly matters to increase the speed of these kinds of loops, because they mean that even without explicit prefetch instructions the memory load throughput will always be used to the full, rather sitting idle half the time and then acting only when the load instruction is issued
17:39:30 <b_jonas> this matters especially in the L2 cache case, the middle part of the diagram
17:39:32 <b_jonas> I think
17:40:04 <int-e> (The theory would be that at some point, enough contiguous memory is free that the program can allocate its buffer in one contiguous chunk in memory that can be described with just a few pagetable entries. but I'd expect more noise between the two lines.)
17:40:14 <b_jonas> I don't know how that interacts with the page cache, or whether the page cache is ever speculatively fetched though
17:40:52 <int-e> It also depends on the machine being heavily loaded (at least memory-wise)
17:41:38 <int-e> Oh well. Time to go home. Laters
17:43:42 <b_jonas> in theory, if the page cache mattered, you could see that a third step in the stairs, but it's a very small step so it might be hidden by the noise, and it might be very close to the step from L2 cache to main memory, so it could be masked
17:43:57 <b_jonas> I don't know how the page cache really works, so I can't really tell what to expect
17:46:31 <b_jonas> anyway, I deliberately chose _sequential_ memory reading, rather than random access, so that the prefetcher and speculative execution can do its best, and so that the page cache doesn't matter much
17:47:21 <b_jonas> (technically it's not completely sequential, because the four lines in each loop iteration aren't read in the right order, but it's sequential if you're looking at it in larger scale)
17:47:53 <b_jonas> I'm leaving too, if you want to know the solution, I'll tell you in the evening.
17:53:21 -!- hjulle has joined.
18:00:05 -!- bb010g has quit (Quit: Connection closed for inactivity).
18:12:08 -!- ais523 has quit.
18:16:56 -!- SopaXorzTaker has quit (Remote host closed the connection).
18:17:08 -!- Lymia has quit (Ping timeout: 256 seconds).
18:17:29 -!- bb010g has joined.
18:35:11 -!- oren has joined.
18:46:53 <int-e> b_jonas: I'm definitely interested in the answer.
18:55:38 <FireFly> I'm curious as well
19:10:24 -!- Frooxius has quit (Ping timeout: 256 seconds).
19:12:34 <mroman> TLB sounds like vmm
19:34:44 -!- AnotherTest has joined.
19:38:52 -!- AnotherTest has quit (Ping timeout: 240 seconds).
19:47:35 -!- ProofTechnique has joined.
19:47:37 -!- mihow has quit (Quit: mihow).
19:48:22 -!- Frooxius has joined.
19:49:11 -!- Froox has joined.
19:53:13 -!- Frooxius has quit (Ping timeout: 264 seconds).
20:06:13 -!- Patashu has joined.
20:11:54 -!- augur has quit (Read error: Connection reset by peer).
20:12:33 -!- augur has joined.
20:23:39 -!- mihow has joined.
20:24:25 -!- Patashu has quit (Ping timeout: 264 seconds).
20:49:33 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42061&oldid=42060 * Ypnypn * (+75)
20:50:01 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42062&oldid=42061 * Ypnypn * (+25)
20:55:35 -!- kcm1700 has quit (Remote host closed the connection).
20:55:48 -!- kcm1700 has joined.
21:20:15 -!- bb010g has quit (Quit: Connection closed for inactivity).
21:22:56 -!- mihow has quit (Quit: mihow).
21:35:10 -!- Lymia has joined.
21:38:07 -!- FreeFull has quit (Ping timeout: 265 seconds).
21:42:28 <HackEgo> [wiki] [[Clip]] http://esolangs.org/w/index.php?diff=42063&oldid=42062 * Ypnypn * (+33) /* Constants */
21:45:39 -!- augur has quit (Ping timeout: 245 seconds).
21:50:59 -!- augur has joined.
22:01:43 -!- AnotherTest has joined.
22:05:17 -!- augur has quit (Ping timeout: 245 seconds).
22:07:51 <b_jonas> int-e, FireFly: ok, telling answer now
22:08:02 <b_jonas> the difference was because of the video card built in to the motherboard
22:08:15 <b_jonas> the setting was such that after about an hour, the screen was blanked
22:08:25 <int-e> ah, ow.
22:08:37 <b_jonas> before that, the video card had to read the ten megabyte sized screen buffer fifty times per second
22:09:02 <b_jonas> sixty times per second in fact
22:09:16 <b_jonas> [ 1920*1280*4*60 NB. bytes per second
22:09:16 <j-bot> b_jonas: 589824000
22:09:18 <int-e> Right. That never happened to me; I buy "proper" graphics adapters.
22:09:33 <b_jonas> ^ that's the half gigabyte per second difference
22:09:46 <int-e> Nice trap. Thanks for sharing.
22:10:07 <b_jonas> I later measured to verify this by deliberately blanking the screen then resuming, and got consistent results
22:11:07 -!- arjanb has quit (Ping timeout: 246 seconds).
22:11:34 <b_jonas> int-e: if the proper graphics adapter uses a separate memory from the main ram, don't you pay for that because then the cpu can access that ram slower?
22:12:33 <int-e> hmm, but at least they're separate buses though, and I only pay for that when updating the screen.
22:13:07 <b_jonas> int-e: yes, that's true, which would make a difference in this case
22:13:12 <int-e> (I also don't use a compositing manager)
22:13:25 <int-e> (so the math is all different)
22:14:14 <b_jonas> the screen was barely touched in this case, so a separte video card would certainly make it easy
22:14:18 <FireFly> Heh
22:14:59 <b_jonas> the fun part is that I still pay for the video card when the display is turned off with its power button
22:15:45 <b_jonas> of course, in this case just buying a more modern machine would double the memory speed, which would count for much more than anything about the video card
22:16:27 -!- augur has joined.
22:17:45 <int-e> but it'd still be 5%
22:18:07 <b_jonas> 10% actually
22:18:17 <int-e> you should lower the screen resolution to 640x480 ;-)
22:18:31 <b_jonas> int-e: or switch to text mode, or lower the resolution and the refresh rate too
22:18:38 -!- augur has quit (Read error: Connection reset by peer).
22:18:42 <b_jonas> switching to text mode might be the most practical
22:19:12 <b_jonas> well, not quite
22:19:32 <b_jonas> putting the slow computations to faster server machines I have access to rather than my home machine is the most practical
22:20:04 <b_jonas> it's exactly because I don't do tasks that need lots of computations on my home machine why I haven't bought a faster home computer yet
22:20:21 <b_jonas> when I'll need fast computations, I'll just buy a modern machine with lots of RAM
22:21:53 <int-e> The whole thing is funny. If you listen to John Carmack, he's saying that the unified memory for GPU and CPU is going to win. But he's interested in high-end graphics, where the bottleneck is getting all the data for the next frame to the GPU.
22:22:22 <b_jonas> I see
22:22:43 -!- ^v has quit (Read error: Connection reset by peer).
22:22:54 <b_jonas> I don't do GPU programming, so I don't really have an opinion on this. I'm more interested in how I can do more efficient computations on the CPU.
22:23:04 <int-e> (I forgot where he said that, the quakecon talk last year would be my guess)
22:23:09 -!- ^v has joined.
22:23:13 <b_jonas> That's why I'm trying to understand how the CPU accesses memory and how its caches work.
22:23:24 <b_jonas> (And also other stuff about CPUs.)
22:24:32 <int-e> Oh, and let's do the same math for a 4K resolution.
22:24:42 -!- GeekDude has joined.
22:24:46 <int-e> (ouch)
22:25:51 <b_jonas> int-e: machines with 4K resolution probably have a twice faster ram than this one
22:25:56 -!- augur has joined.
22:25:56 <b_jonas> even my work machine has a twice faster ram
22:26:17 <b_jonas> this is an old but beloved computer
22:26:20 <int-e> b_jonas: yes, 4x more bandwidth for driving the monitor when you have 2x more memory bandwidth. :)
22:26:45 <b_jonas> int-e: yes, a recent machine _might_ have 4x this bandwith possibly, if you pay enough
22:26:49 <olsner> shouldn't the gpu have some sort of cache? maybe not a whole frame buffer though...
22:27:04 <int-e> But whatever. 4k resolution is silly anyway.
22:27:36 <b_jonas> olsner: yes, it should probably have enough cache to cache the text mode font, which is usually only 4 kilobytes, but can be up to 16 kilobytes in size
22:27:51 <int-e> olsner: I expect it has a cache for textures and the like, to speed up the actual rendering.
22:28:00 <b_jonas> olsner: or enough to cache a line in a double-scan graphics mode (say 320x200 on a crt)
22:28:17 <b_jonas> but a cache won't help for the whole screen unless you have 10 megs of it
22:28:27 <b_jonas> or let's say 7 megs
22:30:47 <b_jonas> int-e: also, it's not really 4 times the bandwidth, only 3.2 times. I have 1.25 the resolution of a normal monitor because I use a true 1920x1280 one rather than the usual 1920x1080.
22:31:35 <b_jonas> no, 3.4 times the bandwidth
22:33:56 <int-e> I think I'll condense this to "if you want the program to run faster, switch to text mode" and go annoy some people with this wisdom.
22:34:48 -!- ProofTechnique has quit (Ping timeout: 272 seconds).
22:37:28 <b_jonas> int-e: not quite, because it's only true to programs that are truly memory-bound
22:37:34 <b_jonas> many programs aren't
22:37:59 <int-e> Yes, it's wrong in many cases.
22:38:16 <b_jonas> and of course it depends on the computer too
22:38:25 <int-e> (the aforementioned standalone graphics adapter is another)
22:38:53 <b_jonas> wouldn't "if you want the program to run faster, turn off the video signal blanking the screen" be more annoying though?
22:39:08 <int-e> and it's even conceivable that an on-board GPU comes with its own video buffer anyway.
22:41:32 <b_jonas> yep
22:43:08 <b_jonas> int-e: especially since AMD has bought ATI, they can now make both motherboards and videocards
22:44:58 -!- augur has quit (Ping timeout: 255 seconds).
22:45:32 <int-e> and combine CPU/GPU into a single chip. https://en.wikipedia.org/wiki/AMD_Accelerated_Processing_Unit
22:46:40 <b_jonas> but yes, that's exactly the sort of advice that should be spread to annoy people who want to use multithreading and JIT and GPU computing to add two numbers, because they heared the GPU can add numbers faster, but actually care more about the buzzwords than the performance.
22:47:19 <int-e> :)
22:47:56 <b_jonas> they really annoy me for some reason. especially in the few cases when it's people at work.
22:48:31 <int-e> I hope it's not literally 2 numbers.
22:48:40 <b_jonas> no, not literally.
22:48:58 -!- augur has joined.
22:49:43 <b_jonas> and the problem is only partly that they want to use it for inapproperiate tasks, but also that they try to jump to these difficult to use techniques while ignoring much easier possibilities for optimizing their code, like correcting obvious wastes of time.
22:50:19 -!- AnotherTest has quit (Remote host closed the connection).
22:50:22 <int-e> > foldl (\x y -> 1 + y/(y+10) * x) 0 [0..490] :: Rational -- d'oh!
22:50:23 <lambdabot> 501 % 11
22:50:51 <b_jonas> and I admit that there's at least one case when multithreading actually helps, at least one case when JIT actually helps, and at least one case when GPU programming actually help. it's just that people ignore the basics like how to write programs for the cpu properly before trying to learn these stuff.
22:51:20 <b_jonas> and they don't care to measure what's actually slow in their program or whether their changes actually help in any way or preserve correctness.
22:52:37 <int-e> right, profile, reconsider algorithms, and it doesn't hurt to think about parallelizing stuff (we have many multicore cpus nowadays) when the algorithm looks good.
22:52:42 <b_jonas> nor do they learn how to apply these advanced techniques properly, which is not surprising, because you can't use them efficinetly withotu using the basics.
22:52:55 <b_jonas> they write unsafe multithreaded programs that then crash.
22:53:02 <int-e> of course, keep an eye on the cache hierarchy (part of the algorithm...)
22:53:59 <b_jonas> and they write unsafe single-threaded code that trashes memory by writing past array bounds or to freed memory or through uninitialized pointers, and then the program crashes.
22:54:18 <b_jonas> and then they try to blame _my_ good code which they happen to run in the same process.
22:54:28 <int-e> great, now take that to the GPU. the OS won't save you this time *g*
22:55:05 <b_jonas> they can't even write correct code, not even robust or performant or multithreaded one.
22:55:20 <b_jonas> of course, this is not universal. I also have good experiences at work, with colleages from whom I can learn a lot.
22:55:53 <int-e> I don't want those times back, but having to reboot the computer when you did a programming mistake was good for teaching me a minimal amount of care.
22:57:34 -!- augur has quit (Ping timeout: 255 seconds).
22:59:16 -!- augur has joined.
23:03:16 <b_jonas> I think only one of them does irc though.
23:11:36 -!- ^v has quit (Quit: Network ban).
23:17:39 -!- `^_^v has quit (Ping timeout: 252 seconds).
23:22:35 -!- GeekDude has quit (Quit: {{{}}{{{}}{{}}}{{}}} (www.adiirc.com)).
23:25:03 -!- Koen_ has quit (Quit: The struct held his beloved integer in his strong, protecting arms, his eyes like sapphire orbs staring into her own. "W-will you... Will you union me?").
23:28:14 -!- chaosagent has joined.
23:30:40 -!- vanila has quit (Quit: Leaving).
23:34:20 -!- GeekDude has joined.
23:34:44 -!- boily has joined.
23:38:07 -!- Phantom_Hoover has joined.
23:39:34 -!- FreeFull has joined.
23:46:47 <boily> @massages-loud
23:46:47 <lambdabot> You don't have any messages
23:53:54 -!- FireFly has quit (Quit: WeeChat 0.4.0).
←2015-02-25 2015-02-26 2015-02-27→ ↑2015 ↑all