←2013-12-14 2013-12-15 2013-12-16→ ↑2013 ↑all
00:00:09 <nooodl> = repeat (Just ()) ++ repeat Nothing
00:00:35 <ais523> oh right, ofc
00:00:58 <ais523> repeat's being interpreted as a List monad action
00:01:07 <ais523> > [] >>= repeat
00:01:08 <lambdabot> []
00:01:09 <ais523> should be empty list
00:01:10 <ais523> yeah
00:01:15 <ais523> OK I think I understand this
00:01:28 <nooodl> > [repeat x | x <- [Just (), Nothing]]
00:01:29 <lambdabot> [[Just (),Just (),Just (),Just (),Just (),Just (),Just (),Just (),Just (),Ju...
00:01:50 <oerjan> nooodl: not quite
00:02:03 <nooodl> oops. concat that
00:02:09 <oerjan> > [y | x <- [Just (), Nothing], y <- repeat x]
00:02:10 <lambdabot> [Just (),Just (),Just (),Just (),Just (),Just (),Just (),Just (),Just (),Jus...
00:02:23 <nooodl> yeah
00:02:23 <ais523> why did Haskell get rid of monad comprehensions?
00:02:28 <ais523> because they were just more complex than do-notation?
00:03:10 <oerjan> ais523: it was all part of that "making types simpler for newbies" stuff in the transition from haskell 1.4 to haskell 98
00:03:16 <nooodl> i think they're not very useful and make things unnecessarily complicated
00:03:21 <oerjan> e.g. map used to be fmap
00:03:27 <ais523> :t fmap
00:03:29 <lambdabot> Functor f => (a -> b) -> f a -> f b
00:03:40 <ais523> and List is a functor
00:03:40 <nooodl> or, well, unnecessarily generalized
00:03:41 <oerjan> ais523: there's an extension to reenable them now, though.
00:03:42 <ais523> so yeah, that works
00:04:28 <nooodl> i don't like how fmap looks usually :( it's weird
00:04:40 <nooodl> i often catch myself writing <$> but that's so "perl"
00:04:48 -!- FreeFull has quit.
00:05:26 <ais523> now I'm wondering how <$> parses in Perl
00:05:46 <ais523> I guess as "<" and "$>"
00:06:05 <ais523> (where $> is, umm, effective UID?)
00:06:21 <kmc> `perl-e print $>
00:06:25 <HackEgo> 5000
00:06:33 <kmc> `perl-e print 2 <$>
00:06:35 <HackEgo> 1
00:07:04 <oerjan> `interp perl print "i think this should work, unless it broke"
00:07:06 <HackEgo> exec: 4: ibin/perl: not found
00:07:15 <oerjan> you'd think.
00:07:17 <ais523> `perl-e print <$>
00:07:18 <HackEgo> Final $ should be \$ or $name at -e line 1, within string \ syntax error at -e line 1, near "print <$>" \ Execution of -e aborted due to compilation errors.
00:07:28 <ais523> oh, right, that makes a /lot/ of sense
00:07:46 <ais523> can't interpolate $> into a literal read from filehandle for the same reason you can't interpolate $" into a string
00:07:50 <ais523> `perl-e print "$""
00:07:51 <HackEgo> String found where operator expected at -e line 1, at end of line \ (Missing semicolon on previous line?) \ Final $ should be \$ or $name at -e line 1, within string \ syntax error at -e line 1, near "print "$"" \ Can't find string terminator '"' anywhere before EOF at -e line 1.
00:07:54 <ais523> yep
00:07:56 <kmc> lol
00:07:58 <FireFly> Huh, map used to be fmap?
00:07:59 <ais523> I was wondering how that would parse
00:08:07 <kmc> wtf is $"
00:08:08 <FireFly> And monad comprehensions were actually a standard thing?
00:08:18 <nooodl> `perl-e print $"
00:08:20 <HackEgo> No output.
00:08:23 <kmc> the Haskell Committee: I liked their earlier work better
00:09:45 <ais523> kmc: I think $" is to do with interpolating an array into a string
00:10:07 <ais523> `perl-e my @x = qw/1 2 3/; local $" = '-'; print "@x";
00:10:08 <HackEgo> 1-2-3
00:10:10 <ais523> yep
00:10:16 <oerjan> @let {-# LANGUAGE MonadComprehensions #-} {- doubt it works but worth a try -}
00:10:16 <lambdabot> Parse failed: Parse error: EOF
00:11:19 <oerjan> @let {-# LANGUAGE MonadComprehensions #-}; test = [x | x <- Just "test"]
00:11:19 <lambdabot> .L.hs:150:18:
00:11:20 <lambdabot> Couldn't match expected type `[t0]' with actual type `Maybe [Char]'
00:11:20 <lambdabot> In the return type of a call of `Just'
00:11:20 <lambdabot> In the expression: Just "test"
00:11:20 <lambdabot> In a stmt of a list comprehension: x <- Just "test"
00:12:32 <oerjan> i suppose it has to disable language extensions for security anyhow.
00:39:45 -!- variable has changed nick to constant.
01:00:04 -!- Sprocklem has joined.
01:14:30 -!- conehead has quit (Ping timeout: 240 seconds).
01:19:52 <oerjan> `unicode CYRILLIC SMALL LETTER O
01:19:54 <HackEgo> ​о
01:20:07 <oerjan> @tell fizzie <fizzie> With the slight cosmetic issue that the bar now says "search Gurgle" instead of "search Google", but... <-- try with cyrillic o (о) maybe?
01:20:07 <lambdabot> Consider it noted.
01:20:20 <ais523> `unicode GREEK SMALL LETTER OMICRON
01:20:21 <HackEgo> ​ο
01:20:25 <ais523> that's a good o too
01:22:25 -!- Bike has joined.
01:32:36 -!- Bike_ has joined.
01:34:12 -!- Bike has quit (Ping timeout: 252 seconds).
01:37:06 -!- Bike_ has changed nick to Bike.
01:44:38 -!- Bike_ has joined.
01:44:51 -!- Bike has quit (Ping timeout: 245 seconds).
01:51:37 <ion> https://support.steampowered.com/kb_article.php?ref=9974-PAXN-6252 Why does DirectX install with every game? […] the only way to distribute them is to run the installer, that's also the only supported method from Microsoft to check that the correct version installed. Trying to manually check for the correct versions is extremely complicated […] In addition, the dependencies and required checks may
01:51:39 <ion> change in each new version of the D3DX runtime. The code to check correctly and repair broken installs all exists in the installer and running it is a guarantee that the correct binaries will exist when you run the game
01:52:44 <oerjan> <shachaf> whoa, whoa, whoa, the game of life is only from 1970? <-- how old did you think conway was, anyway?
01:53:40 -!- Bike_ has changed nick to Bike.
01:53:57 <Bike> i'm not sure how old conway is. he has done a lot of things.
01:53:58 <Bike> is he alive?
01:54:08 -!- muskrat has joined.
01:54:12 <oerjan> yes.
01:54:22 <Bike> good for him.
01:54:50 <Bike> oh, an erdos number of one. of course he's done a lot of shit then
01:56:03 <oerjan> `unicode LATIN SMALL LETTER O WITH DOUBLE ACUTE
01:56:04 <HackEgo> ​ő
01:56:18 <oerjan> i'm sure there are _some_ people with an erdős number of one who only did that one paper with erdős.
01:56:25 <Bike> probably
01:56:50 <oerjan> conway is not one of them.
01:57:36 <ion> cőnway
01:58:01 -!- Sorella has quit (Remote host closed the connection).
01:58:13 <Bike> i was about to ask for a list of everyone with an erdos number of one but then remembered the entire point is that he cowrote a shitfuck of papers
01:58:38 <Bike> 511, apparently
01:58:41 <oerjan> i think there's a list over at the erdős number project site
01:59:52 <Bike> huh, some neat stats here
01:59:56 <Bike> «The five people with more than 200 coauthors are Paul Erdös (of course) with 509 (although the MR data actually show only 504, missing some coauthors of very minor works or works before 1940, when MR was started), FRANK HARARY (Erdös number 1) with 268, Yuri Alekseevich Mitropolskii (Erdös number 3) with 244, NOGA ALON (Erdös number 1) with 227, and Hari M. Srivastava (Erdös number 2) with 244.»
02:00:08 <oerjan> i think conway is special for doing _both_ very deep and very popular math
02:00:14 <Bike> i have never heard of the others actually
02:00:17 <Bike> oerjan: yes it's great
02:00:39 <Bike> i always thought of conway as that guy who did Life and Doomsday and then i found out, oh, no, he's really a trillion times smarter than me
02:01:52 <Bike> " a person who has collaborated but does not find herself in the Erdös component of C has on the average collaborated with only one or two people"
02:02:29 -!- CADD has joined.
02:02:29 -!- CADD has quit (Client Quit).
02:02:52 <Bike> it's weird to think about the average erdos number increasing over time even though it's super obvious
02:03:57 <oerjan> i guess it's technically occasionally decreasing too
02:04:47 <Bike> hm, i wonder what the data would look like for academia in general
02:06:28 <ais523> doesn't it go up whenever anyone is born, and down the rest of the time?
02:07:28 <ais523> or are you only counting people with a non-infinite value?
02:07:38 <Bike> non-infinite, i suppose
02:07:55 <Bike> i might be overestimating the effect of time given that the 'maximum' number is 13 according to the enp
02:08:52 <ais523> each individual person's goes down over time
02:08:55 * oerjan notes that conway was born on doomsday
02:08:57 <Bike> right.
02:09:06 <Bike> basically i want to know the erdos number of edward gibbon.
02:09:29 <ais523> hmm… I almost certainly have an Erdős number, but it'll be hard to determine it automatically because I have such a common name
02:10:06 <oerjan> ais523: try your collaborators unless they're too many?
02:10:15 <ais523> yeah, probably the best option
02:10:18 <ais523> I only have two
02:10:32 <Bike> enp also notes that collaboration has gone up over time so the farther back in time i go the more unconnected components there will be, probably
02:11:38 <Bike> i'm still amused by the fact i can look up an ethologist on academictree and trace his lineage back to paul of tarsus D
02:11:41 <Bike> *:D
02:11:51 <oerjan> ais523: it goes up if someone dies who has lower than average, and down in the opposite case
02:12:04 <oerjan> and can go down whenever a paper is published
02:12:10 <ais523> yes
02:12:18 <ais523> and up when someone new joins the field
02:12:37 <Bike> let's see, darwin collaborated with captain fitzroy, now who did fitzroy collaborate with,
02:12:38 <ais523> I guess people who die will tend to have a below-average number due to being older than the average researcher on average
02:12:41 <ais523> and thus having produced more papers
02:12:54 <oerjan> we're not counting infinites, so someone joining the field can still go either way.
02:13:37 <oerjan> as long as the average is larger than 1+minimum
02:13:53 <Bike> now i want biology metrics help
02:15:10 <Bike> like are things different since mathematical discovery is generally different from bug discovery
02:18:09 -!- muskrat has left ("Leaving").
02:19:25 <LinearInterpol> whut'cha discussin' in here, esolang.
02:19:38 <Bike> erdos numbers
02:21:31 <LinearInterpol> ahh.
02:21:33 <LinearInterpol> erdos numbers..
02:22:16 <LinearInterpol> have to wonder what mine is.
02:22:34 <Bike> mine's infinity. nice&tidy
02:22:58 <LinearInterpol> countable or uncountable
02:23:30 <Bike> kind of a nonsensical question i think?
02:24:25 <LinearInterpol> nah.
02:26:44 <ais523> countable, clearly
02:26:58 <ais523> or arguably 14
02:27:03 <LinearInterpol> lol
02:27:19 <oerjan> LinearInterpol: http://www.ams.org/mathscinet/collaborationDistance.html
02:29:59 <oerjan> ais523: hm i tried your name and it claims to find several but the selection menu is buggy, perhaps it's because it's too large.
02:30:18 <ais523> oerjan: try Dan Ghica, Satnam Singh (although the latter name may still be ambiguous)
02:30:20 <ais523> then add one
02:30:56 -!- doesthiswork has joined.
02:34:21 <oerjan> 4+1 = 5 for the first, none for the second
02:35:21 <oerjan> lots of just S. or S. + another initial, though
02:38:00 -!- carado has quit (Ping timeout: 252 seconds).
02:38:51 <oerjan> also i think the menu wasn't actually buggy i was just confused by it not opening a new page directly on clicking the item
02:40:37 <oerjan> sadly, unless you've collaborated with either John R. Blake or Albert John Petkay, neither option is you
02:42:42 <oerjan> @tell oklofok *MWAHAHA* i now know your middle name!
02:42:42 <lambdabot> Consider it noted.
02:44:36 <LinearInterpol> my erdos number is 5?!
02:44:41 <LinearInterpol> haah.
02:45:10 <oerjan> @tell oklofok unless mathscinet is confusing you with someone else
02:45:11 <lambdabot> Consider it noted.
02:45:53 <oerjan> cue him using "oklopol" exclusively for the next 3 years.
02:49:08 <oerjan> hm i'm finding further evidence that the initial is correct.
02:50:26 <oerjan> (aka his university homepage.)
02:52:29 -!- zzo38 has joined.
02:52:40 <Phantom_Hoover> <LinearInterpol> countable or uncountable
02:52:40 <Phantom_Hoover> <Bike> kind of a nonsensical question i think?
02:52:40 <Phantom_Hoover> <LinearInterpol> nah.
02:52:51 <LinearInterpol> lol.
02:52:55 <Phantom_Hoover> well it'd be an ordinal right
02:53:18 <oerjan> Phantom_Hoover: but that only implies ais523's 14
02:53:25 <LinearInterpol> cardinal.
02:53:41 <LinearInterpol> not ordinal.
02:53:44 <LinearInterpol> iirc.
02:53:58 <Phantom_Hoover> hmm
02:53:59 <Phantom_Hoover> why
02:54:01 <oerjan> all cardinals are ordinals unless you're dictatorially opposed to free choice
02:54:07 <LinearInterpol> lol.
02:54:16 <LinearInterpol> cardinals are indexed by ordinals.
02:54:50 <coppro> oerjan: all cardinals are ordinals
02:54:57 <coppro> choice just affects whether every set has a size
02:55:32 <oerjan> coppro: no you can also use foundation instead
02:56:02 <oerjan> and do something like "a cardinal is the set of all minimal rank sets of that size"
02:57:19 <oerjan> but i guess if you have neither, then i don't know how to choose a suitable "witness" for a given cardinality.
02:57:56 <oerjan> a unique one, that is.
02:59:38 <oerjan> hm does foundation imply every set is smaller than a beth?
03:00:22 <oerjan> i think it would.
03:03:42 <oerjan> "In ZF, for any cardinals κ and μ, there is an ordinal α such that:"
03:03:43 <oerjan> \kappa \le \beth_{\alpha}(\mu).
03:04:04 <oerjan> *-" +"
03:04:19 <oerjan> which i take to mean yes
03:04:20 <Bike> i was just thinking that 'infinity' in the context of erdos numbers isn't very setty anyway
03:04:25 -!- yorick has quit (Remote host closed the connection).
03:04:30 <oerjan> Bike: indeed
03:04:44 <Bike> i /guess/ you could take it as not reached by incrementing which is like the smallest infinity
03:05:13 <oerjan> it's more like "maximal element of order", used when taking minimum of empty set.
03:05:21 <Bike> anyway i kind of want to see the mathematical collaboration graph
03:05:37 <Bike> the thing says it's small worldy, but are there like, bottlenecks between different fields, say
03:33:57 -!- doesthiswork has quit (Quit: Leaving.).
03:35:23 -!- nooodl has quit (Quit: Ik ga weg).
03:40:29 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:50:01 <zzo38> Whose stupid idea was it to save note period values in a .MOD file but then convert them to note numbers upon loading? Better would be to play the note periods actually stored instead, but that isn't how it is done.
03:50:43 <madbr> zzo38 : it's a storied format :D
03:50:57 <madbr> s3m and later formats don't have that mistake
03:52:44 <zzo38> madbr: Yes, they store the note numbers directly; I still think it would make sense to use the stored note periods to play the notes rather than converting between them, although this makes arpeggio effect difficult (although storing the arpeggio as individual notes instead would solve this too)
03:53:24 <madbr> but then how do you transpose a sample?
03:53:37 <madbr> go through all of the periods using that sample and change them?
03:53:59 <madbr> also you'd still need to turn them into notes to show them in the editor
03:55:40 <zzo38> Yes you would transpose a sample in that way, if you need to deal with the existing file, I suppose
03:56:14 <zzo38> And I don't intend to read them to show in the editor anyways; I intend to use a compiler to produce the .MOD or whatever which is then played back using OpenMPT or MegaZeux or whatever other software would play them
03:56:49 <madbr> well, now you know why notes are stored that way
03:57:18 <madbr> MODs/s3ms/etc are also the project file you edit
03:57:32 <madbr> they're not some kind of stripped/compiled output
03:58:18 <zzo38> Yes, you can load them in various editors, although maybe you do want to produce them with a compiler instead, which would be more useful to do things a bit differently
03:59:07 <Bike> format is bad for doing thing is was not made for
03:59:44 <madbr> I think ppl who produced music with a compiler went for some other formats
04:00:24 <zzo38> However many programs expect to use .MOD or .S3M formats for music
04:00:35 <madbr> stuff like register write lists for the target sound chip (like the gym format or at least one of the adlib log formats)
04:00:48 <madbr> zzo: yes, because there are lots of good sounding MODs and S3Ms
04:01:11 <madbr> and there are lots of good sounding MODs and S3Ms because there are good editors for making them :D
04:01:55 <kmc> drinking gløgge
04:02:00 <Bike> is that legal
04:02:11 <kmc> ain't no law in the water
04:02:34 <oerjan> kmc: *-e
04:02:46 <Bike> ain't no law in the watr
04:02:49 <kmc> ah, my host mis-spelled it then
04:03:01 <kmc> wikipedia agrees with you
04:03:12 <kmc> (this is the danish spelling)
04:03:14 <zzo38> I do know of other sound formats, such as .VGM which stores register writes for many sound chips (even more than one at once, and many of them can be doubled), but still I was asking because of programs that expect to use MOD/S3M format, which is why I wanted to write a compiler to create such files
04:04:02 <kmc> fungot: u want gløgg?
04:04:02 <fungot> kmc: not lots, but they don't exist
04:04:27 <oerjan> kmc: good, i was briefly wondering if it were the danes who somehow added an e.
04:04:47 <oerjan> they might do such silly things
04:05:15 <kmc> danees
04:07:51 <oerjan> (the swedes, if being silly, would add an a instead.)
04:07:53 <madbr> zzo : kindof the way it happened is that they were hardware periods at first
04:08:12 <madbr> zzo38 : but then later on someone wrote... I think it was protracker
04:08:22 <madbr> which lets you finetune the samples
04:09:01 <kmc> anyway it's gøød
04:09:08 <madbr> to avoid having to reupdate all the periods in the song when you change the finetune in a sample, notes are parsed in that bizarre way
04:09:18 <kmc> the gløgg is good
04:12:30 <oerjan> kmc is getting drøgged with gløgg
04:12:56 <zzo38> madbr: OK, though
04:13:05 <kmc> i won't deny it
04:13:08 <oerjan> or possibly just drønk
04:13:14 <kmc> `quote dronk
04:13:16 <HackEgo> 724) <kmc> aim hecker (n): when ur dronk and u pee so bad all over the toilet that ppl make fun of u <kmc> (corruption of "aim heckler")
04:13:43 <kmc> now dipping ginger cookies in the gløgg
04:13:46 <zzo38> And which programs support FM instruments in S3M anyways? How many files use that anyways?
04:14:02 <oerjan> (norwegian ø is not too far from english u in that position)
04:14:20 <madbr> zzo38 : I think modplug tracker actually will play the FM channels
04:14:56 <madbr> zzo38 : irl the reason why nobody uses FM channels is that they are out of sync
04:14:59 <Bike> frequency modulation...?
04:15:05 <madbr> (in the original tracker)
04:15:13 <zzo38> madbr: Looking in the samples menu I don't see anything about FM, though
04:15:38 <madbr> because the sample channels are mixed into a buffer which is played after some time
04:15:48 <madbr> but the fm channels play instantaneously
04:16:17 <madbr> so s3ms are either all FM (I've seen only 2 of those!) or all samples
04:16:24 <madbr> (every other s3m!)
04:17:48 <zzo38> There are other formats for FM anyways
04:18:48 <madbr> there are like 20 different formats for opl2
04:19:06 <zzo38> VGM is one of the formats that supports OPL2 and even OPL3 and OPLL
04:19:23 <zzo38> (And you can use all of them in the same file too if you want to)
04:21:39 <madbr> so in practice s3ms are like MODs but better
04:22:01 <ion> wants http://imgur.com/a/LpuE8
04:27:51 <madbr> because nothing plays the fm instruments because why
04:37:50 <shachaf> oerjan: maybe it was a different conway, who knows
04:50:04 <kmc> hichaf
04:50:12 <shachaf> hi kmc
04:52:19 <oerjan> shachaf: there's another that did/does complex function theory iirc
04:53:12 <shachaf> btw the fact that the cantor set is called that is kind of silly
04:53:23 <oerjan> https://en.wikipedia.org/wiki/John_B._Conway
04:53:40 <kmc> why silly
04:53:56 <shachaf> well, cantor is responsible for quite a lot of sets
04:54:08 <kmc> most mathematicians are
04:54:14 <Bike> but the cantor set is The Coolest of them.
04:54:49 <shachaf> Bike: cooler than a raccoon?
04:54:53 <Bike> possibly
04:54:59 <Bike> did cantor make a racoon set
04:55:12 <oerjan> slight clarification, it seems he wrote a _book_ about complex functions, but actual research in functional analysis.
04:55:20 <shachaf> no but there was a raccoon here next to me a few minutes ago
04:55:25 <shachaf> v. cautious raccoon
04:55:25 <kmc> how does that happen
04:55:43 <shachaf> what, the raccoon?
04:55:43 <kmc> http://www.chrisabraham.com/wp-content/uploads/2013/09/racoon-pope-Sean-Tejaratchi.png
04:56:05 <Bike> cool there's people arguing that circuits are fundamentally different from programs because fpgas aren't real or something
04:56:14 <Bike> nice hat
04:56:52 <shachaf> i am currently in san francisco but going back south soon
04:57:40 <kmc> ask santa claus for an fpga
04:57:50 <kmc> shachaf: how's san francisco
04:57:57 <shachaf> kind of cold
04:58:01 <shachaf> but i'm outside
04:58:04 <shachaf> (hence the raccoon)
05:06:14 <kmc> douglass_ and I went to a pet store today kind of by accident
05:06:19 <kmc> we managed not to buy any cats
05:06:20 <kmc> or raccoons
05:07:23 <madbr> they have raccooons in pet shops?
05:07:33 <kmc> i don't think so
05:08:02 <kmc> one of the weird things about Tirana, Albania is that there are about five pet shops on every block
05:08:22 <zzo38> Why are these .S3M formats and so on so confusingly designed?
05:08:46 <Bike> historical materialism, zzo
05:09:28 <shachaf> kmc: imo your house needs a cat
05:09:34 <kmc> imo cat cafe
05:09:57 <madbr> zzo : because it's just how some dude arranged stuff in a real mode dos program :o
05:10:47 <kmc> keepin' it real mode
05:11:32 <madbr> like s3m file offsets are real mode segments :D
05:12:06 <zzo38> I am not talking about those kind of things actually
05:12:54 <kmc> does that just mean they're in units of 16 bytes?
05:13:15 <shachaf> kmc: imo pointless cat cafe
05:13:27 <madbr> kmc: yes
05:13:33 <Bike> maybe n-category cafe should open a physical frnachise
05:13:49 <kmc> topless pointology
05:14:13 <zzo38> But rather I mean the way channel mapping works, and how some effects are ignored on tick 0, and so on
05:17:21 <kmc> zzo38: is that because it takes one tick to set up the effect?
05:17:34 <zzo38> kmc: I don't know why.
05:17:39 <kmc>
05:18:52 <Bike> hey zzo38 what do you think of i2s
05:19:01 -!- LinearInterpol has quit (Ping timeout: 245 seconds).
05:19:05 <zzo38> I don't know what that is
05:19:27 <Bike> it is a serial format for transmitting music between integrated circuits
05:36:31 <madbr> zzo : s3m channel mapping was confusing because the tracker mapped differently on soundblaster than on gravis ultra sound :o
05:41:53 <madbr> and editing the channel map in st3 would move around the channels in some bizarre way
05:45:42 <madbr> normally you just map channels 0-15, aka left1, right1, left2, right2, left3, right3, etc...
05:46:57 <madbr> and override that default panning because that kind of hard-left/hard-right panning sounds kinda stupid
05:52:32 <zzo38> Yes it is stupid like that too
06:09:34 <madbr> it makes sense on a 386 with a sb pro when trying to save every last cycle but still
06:10:24 <zzo38> They seem to contain various stupid things which might cause problems to write a compiler into such formats; what is best way to write such a compiler in a way that would work in best way?
06:10:49 <madbr> are your notes quantized in time?
06:11:12 <madbr> ie do they arrive exactly on 16ths, 8ths, beats etc
06:12:01 <zzo38> Usually they would be, but they might not be, due to some things
06:12:19 <madbr> if they are not, you have to use the delay effect
06:12:35 <madbr> (SD1, SD2, SD3 etc)
06:13:24 <madbr> alternatively you could play around with the playback speed (effect A - change speed) but that has other issues
06:13:44 <madbr> (mostly that your slides don't end up being quite the same)
06:14:39 <madbr> the main problem is that you can only have 1 effect per row
06:14:43 <madbr> per chanel
06:15:52 -!- oerjan has quit (Quit: leaving).
06:15:54 <madbr> so if you need a pitch slide that can't happen at the same time as a note delay
06:18:29 <madbr> normally you end up fine because most effects are only applied on either note start (sample offset, glissando, note delay...) or later on the note (vibrato, volume slides, pitch slide down...)
06:21:02 <madbr> some stuff like spc converters set the speed super high (like A02) to sorta solve some of these issues, but then you end up with other issues anyways (mostly that slides end up rather strange)
06:23:31 <zzo38> Yes there are those kind of issues too, I thought of
06:33:52 <zzo38> I wanted to write a MML compiler into one or more of these music formats
06:36:07 -!- farrioth has joined.
06:36:57 <zzo38> Currently it is difficult to use MML with such software that expects music in .MOD or .S3M format, since no such program to compile it is exist
06:37:55 <shachaf> lots of things suggest that topoi are good should i learn about them y/n
06:42:22 <zzo38> madbr: Are you aware of existing such softwares though?
06:47:48 <farrioth> So, I've been thinking about natrual-language-like programming languages such as Inform 7 and, arguably, COBOL. I wonder if they provide any advantages in expression to the programmer (i.e., better ability to program in such a language) based on the programmer being able to use UG (Universal Grammar), or whether the syntactic simalarities to natrual language are really only superficial, and so provide only an a priori familiarity wi
06:47:52 <madbr> what's "topoi"
06:48:23 <zzo38> farrioth: Your message isn't finished, but I think they aren't advantageous.
06:48:32 <madbr> farrioth : I think we don't know enough about irl languages
06:48:38 <Bike> also UG is silly.
06:48:50 <Bike> and doesn't even apply.
06:48:53 <Bike> also, hello.
06:48:55 <madbr> a lot of language processing irl is statistic
06:49:09 <Bike> my name is bike.
06:49:21 <Bike> madbr: topoi seem to be something something grothendieck
06:50:23 <farrioth> madbr: Explicitly, implicitly, or to answer my question?
06:50:49 <madbr> like, what google translate does it a whole bunch of stats
06:51:03 <madbr> to figure out what's the most likely translation of a group of words
06:51:24 <Bike> there are some theories that humans work in similar ways. i personally don't buy this but some real linguists do.
06:51:42 <Bike> chomsky is kind of out of sorts nowadays.
06:51:45 <farrioth> Bike: Hello; and even if one doesn't take a strong Chomskyan view (I only do for the sake of discussion), you could argue that L1 gives a learning advantage to L2, and I wonder if this applies if L2 is a natrualistic programming language.
06:52:10 <Bike> it's possible.
06:52:30 <zzo38> I think such programming languages provide disadvantages to learning them and programming in them and expression, although they may provide advantages to understand the program more easily, once it is already written.
06:52:33 <Bike> i don't know anything about language acquisition, though, and i'm reasonably sure that good research on programming language acquisition does not exist.
06:52:42 <Bike> just a lot of made up thoughts.
06:53:59 <zzo38> An idea I had is if you are using such natural-language programming, have the program include various annotations and other symbols, and underlying codes in other programming languages that can be specified using escapes, and have it reformat them for printout. In fact I wanted to do this for Magic: the Gathering cards, too.
06:54:00 <farrioth> I've seen reasonably convinicing arguments that language processing by humans is probablilistic (such as by Florian Jaeger); it is certainly context-dependant.
06:54:20 <farrioth> Bike: Research on programming language acquisition would be interesting.
06:54:34 <farrioth> Bike: And I don't suspect there is much.
06:55:24 <Bike> well, i don't think what you're talking about is particularly dependent on the underlying mechanism, i mean. it could be true in both a chomskyian and a norvig...ian world
06:55:35 <farrioth> zzo38: Do you think such language provide disadvantages to learning because they are natrualistic? And what properties of natrual language makes this so?
06:55:59 <Bike> i'm just pretty skeptical of constructed languages though. seen too many dumbasses thinking they have unlocked the key of thought
06:56:05 <farrioth> Bike: I agree, I was just framing it in terms of UG for convenience.
06:56:19 <farrioth> Bike: The Ithkuil crowd and so on?
06:56:58 <Bike> "esigned to express deeper levels of human cognition briefly yet overtly and clearly, particularly with regard to human categorization" looks like it
06:57:13 <farrioth> zzo38: I would argue that NL is unsuitable as a programming paradigm primarily due to the fact that ambiguity is often desirable in NL, but not for code.
06:57:17 <zzo38> farrioth: Nearly all of the properties, I suppose. The programming language still has limitations and things that are unclear when you try to read it as a natural-language rather than as the program, so you will write everything wrong because it "looks right" to you...
06:57:29 <zzo38> Yes and that too.
06:57:34 <Bike> ambiguity can be desirable in programming
06:57:53 <madbr> Bike : when?
06:58:01 <farrioth> zzo38: Indeed. I've had similar experiences interacting with NL parses, e.g., in IF (interactive fiction).
06:58:15 <farrioth> Bike: But compilers/interpreters struggle with it, surely?
06:58:19 <Bike> for example, in "higher-level" languages like C most of the point is targeting
06:58:27 <Bike> the same C program can "mean" different things
06:58:52 <farrioth> Bike: Are you talking about reusable code?
06:59:07 <zzo38> farrioth: Yes I don't like or use Inform 7 at all, and yes even in IF games the entry can sometimes be a bit confusing but not nearly as much.
06:59:09 <Bike> no, just the results of compilation or interpretation.
06:59:52 <Bike> when you write "a += 4" you don't particularly care if that's implemented as an addition or as four increments or as nothing because "a" was optimized out, much of the time
07:00:23 <farrioth> Bike: Maybe the same code may 'mean' different things in different contexts (if I understand you), but this is actually a case of reusability, as the meaning to the computer is not context-dependent, even though the meaning to the programmer or user may be.
07:00:30 <madbr> but then it's all x86, arm or some kind of risc
07:00:38 <madbr> it can't vary that much
07:01:07 <Bike> yes, and when i say "ambiguity can be desirable in programming" you can't reasonably interpret that as "buy me a soda" :p
07:01:22 <farrioth> Bike: Ambiguity is the reverse of that, what you're describing seems more akin to synonymy to me.
07:01:33 <Bike> cross language synonymy
07:01:34 <Bike> *?
07:01:38 <zzo38> madbr: Not always, actually
07:01:40 <Bike> there's also undefined behavior.
07:02:20 <farrioth> zzo38: Do you know if I7 has seen much favour in the IF community by the way? I haven't kept up with such things for years.
07:02:48 <madbr> sleep
07:02:50 -!- madbr has quit (Quit: Rouringu de hajikunda!).
07:03:16 <zzo38> farrioth: It seems to be popular although I do not recommend it
07:04:12 <farrioth> zzo38: Your argument above, "... so you will write everything wrong because it "looks right" to you," essentially means that your L1 will cause interference problems for the programming L2. Do you think that is a valid formalisation?
07:04:38 <zzo38> farrioth: I am not sure what you mean by "L1" and "L2".
07:04:45 <farrioth> zzo38: I though as much. I suspect it's popular with the 'writers' who want to make IF but don't have (much) programming experience.
07:05:18 <farrioth> zzo38: Sorry, language acquisition terminology. L1 = the language you speak; L2 = the language you are learning.
07:05:24 <Bike> in natural language acquisition studies, L1 is the first language you learn (the native language) and L2 are others.
07:05:44 <zzo38> Ah, OK
07:09:39 <farrioth> Bike: Re the synonymy, what you are describing is multiple constructs that have the same meaning/result, but what I was meaning by ambiguity was one construct which has multiple meanings/results, the choice between which is not trivial.
07:10:19 <farrioth> Bike: You were saying that just the former is desirable in programming, right?
07:10:37 <Bike> no, i'm thinking of the C source as the "one construct" and multiple possible compilations as "multiple meanings/results".
07:11:58 <farrioth> Bike: Ah. I was referring to ambiguity in terms of what a piece of code does, not how it does it.
07:12:10 <farrioth> Bike: I'd simply call that abstraction, incedentally.
07:12:22 <farrioth> Bike: But you have a valid point that that is desirable.
07:13:18 <Bike> how about polymorphism?
07:14:38 <farrioth> Sure, but I think that has a different technical meaning.
07:15:21 <farrioth> Or were you meaning it in its technical sense an an example of desirable ambiguity?
07:15:36 <Bike> the latter, yes
07:16:57 <farrioth> That would be true, yes.
07:17:06 <farrioth> Good example, in fact.
07:17:42 <Bike> how about, more fundamentally, names
07:18:01 <Bike> > map (\x -> x + x) [4,23]
07:18:01 <farrioth> Now, how does polymorphism map to NL ambiguity?
07:18:02 <lambdabot> [8,46]
07:19:02 <Bike> maybe like "I ran to the store" versus "the horse run past the barn fell" versus "is your refrigerator running?"
07:19:15 <ais523> farrioth: I guess it's in the way that in a natural language, you can understand a sentence without understanding what it's about
07:19:40 <Bike> in this case 'run' being the 'polymorphic operator'.
07:19:43 <ais523> like, if a sentence contains a person's name and you don't recognise it
07:19:51 <farrioth> Bike: Yes, lexical ambiguiy, treating an operatior as equivalent to a lexeme.
07:19:52 <ais523> then you can still parse and understand the rest of the sentence
07:20:35 <Bike> (usually)
07:22:30 <farrioth> ais523: I don't know if I'd call that ambiguity. But I'm not sure what I'd call it, since it sits above the syntax-semantics interface.
07:23:04 <farrioth> ais523: In the example of not recognising a name.
07:23:32 <ais523> farrioth: well, it works like programming language polymorphism for me
07:23:46 <ais523> in a programming language, a polymorphic function can operate on data without knowing anything about its type
07:24:12 <kmc> hm what if gløgg : gløgge :: dog : doge
07:24:31 <farrioth> Bike: Treating polymorphic/overloaded operators as ambiguous, they are always disambiguated linguistically (not extra-linguistically), right?
07:25:42 <farrioth> ais523: I understad that a polymophic operator must know about type, but its operation is type-dependent. I could be wrong, though.
07:26:15 <ais523> :t map
07:26:16 <lambdabot> (a -> b) -> [a] -> [b]
07:26:21 <ais523> nice and polymorphic
07:26:26 <farrioth> ais523: And in your example, which operator/lexeme is polymorphic/polysemous?
07:26:33 <ais523> map doesn't need to know anything about a or b, just about functions and lists
07:26:46 <ais523> farrioth: the entire sentence is polymorphic with respect to the name
07:26:47 <shachaf> http://www.youtube.com/watch?v=g_lAFDbnMLA#t=40s -- "what did the doge do?"
07:27:01 <kmc> what does the doge say
07:27:22 <kmc> ok there are like 100 youtube videos with that name, surprise
07:28:00 <farrioth> ais523: Ah, you're talking about generics, right? I was thinking about overloaded operators.
07:28:16 <ais523> right
07:28:24 <ais523> operator overloading's like the opposite of polymorphism, though
07:28:31 <ais523> an overloaded operator does different things with different arguments
07:28:39 <farrioth> Are generics really ambiguous, though?
07:28:55 <ais523> perhaps not
07:29:04 <ais523> although, in my line of work, polymorphism tends to cause a lot of troubles
07:29:12 <ais523> I can't create a circuit to implement a program without knowing what types it works on
07:29:29 <farrioth> Assuming we are defining ambiguity as (non-trivial) context dependance in meaning/function, or something like that.
07:33:34 -!- impomatic has quit (Quit: impomatic).
07:34:47 <farrioth> So, thinking about the syntax of NL-like programming languages again, if L1 causes negative transfer (interferance) then we would expect it to also have the potential to cause positive transfer (learning advantages). I wonder if this is borne out for NL-like languages.
07:35:14 <farrioth> More importantly, I wonder if anyone's studied this.
07:38:53 <Bike> there's probably some managerial type research on cobol since it was a conscious factor in its design and all.
07:40:50 <farrioth> That's a good point.
07:41:34 <zzo38> I think advantages are possible when trying to *read* the program, perhaps.
07:42:23 <farrioth> zzo38: For someone familiar with the language, or only for someone unfamiliar with it?
07:42:57 <farrioth> zzo38: Being, myself, not familiar enough with a NL-like language to answer that.
07:43:38 <farrioth> zzo38: I agree it is a possibility, but if such advantages exist, why don't they apply to writing too?
07:43:47 <zzo38> farrioth: For someone who is somewhat familiar with it, but not quite, I mean.
07:44:03 <farrioth> zzo38: Yep.
07:44:52 <farrioth> zzo38: There's probably an interaction between receptive/expressive use and positive/negative interference.
07:45:19 <farrioth> zzo38: But I'm not familiar enough with the acquisition literature to know if that is the case for NL.
07:47:53 <zzo38> I don't know about that either.
07:49:49 <kmc> shachaf: I read more of _Stories of Your Life and Others_
07:49:52 <kmc> good stuff
07:49:56 <kmc> I guess I'm on the last story now
07:50:01 <shachaf> what was even in that book
07:50:14 <shachaf> oh
07:50:21 <shachaf> now i remember
07:50:27 <shachaf> isn't the last story the one you already read
07:51:28 <farrioth> Incedentally, what NL-like programming languages exist? Inform 7, COBOL and derivatives, and AppleScript come to mind.
07:51:43 <ais523> Perligata, if you want an esolang
07:52:02 <zzo38> farrioth: I was thinking of a kind of "hybrid" system where the input looks like natural language kind of, with various extra marks too, and then when printed out, the marks mean different things and would print out like a natural language, with the correct bold and italics formatting and symbols and that stuff too.
07:52:15 <ais523> Perl itself was also intentionally designed on natural language principles
07:52:21 <zzo38> farrioth: I am not so familiar with COBOL but I could try to look up a bit
07:52:25 <ais523> it's probably more natural-language like than the other languages you mention
07:52:31 <kmc> this copy has an extra story I guess? "The Lifecycle of Software Objects"
07:52:32 <ais523> it just doesn't /look/ like one
07:52:43 <farrioth> zzo38: That sounds confusing.
07:52:46 <farrioth> ais523: Really?
07:52:55 <Bike> well, wall was a linguist, right.
07:53:02 <ais523> farrioth: Larry Wall, who invented Perl, was a linguist (as in, natural linguist)
07:53:06 <zzo38> Although I think COBOL is OK actually from what I can see
07:53:09 <ais523> and applied the same principles
07:53:24 <ais523> this is why Perl has an ambiguous grammar, and the parser sometimes has to guess, for instance
07:53:25 <shachaf> oh
07:53:27 <shachaf> have no read
07:53:31 <shachaf> not
07:53:34 <shachaf> is it good
07:53:40 <kmc> i have written one COBOL program https://gist.github.com/kmcallister/1ca57f7a260c72d36d96
07:53:48 <shachaf> apparently it was published in 2010
07:53:48 <kmc> shachaf: i don't know I didn't read it yet!!
07:53:55 <kmc> your face was published in 2010
07:53:58 <zzo38> farrioth: It sounds confusing a bit, but... do you play Magic: the Gathering cards? It would help to understand my ideas about this thing I am mentioning
07:53:59 <farrioth> ais523: Surely it's the linguists who would first realise the pitfalls of NL-likeness? And that does explain why PERL is good at text processing and things that linguists actually want to do with a computer.
07:54:32 <Bike> of course, snobol was also designed for text processing and linguists and is pretty much nothing like natural language at all
07:54:32 <kmc> farrioth: then why does Perl have such poor support for syntax trees compared to, say Lisp?
07:54:43 <farrioth> zzo38: I played Magic years ago, but remember it a bit, except for all the new cards, obviously.
07:55:04 <shachaf> kmc: well obviously it was a deferred question to be answered after you read it!!
07:55:05 <Bike> kmc: still a good program after all these years
07:55:09 <kmc> thx
07:55:14 <farrioth> kmc: That's a good question?
07:55:18 <ais523> kmc: you should see Perl 6's support for syntax trees
07:55:26 <ais523> it's some of the heftiest I've ever seen in a language
07:55:30 <farrioth> kmc: Minus the question mark, that is.
07:55:32 <ais523> some of it's making its way into Perl 5 libraries, too
07:55:38 <kmc> Perl seems like "hey awk and sed and shell are all useful, let's make a language that does all that"
07:55:43 <kmc> and nothing more principled than that
07:55:50 <kmc> Perl *is* still a really good awk/sed/shell replacement
07:55:51 <shachaf> i heard perl gets scoping right
07:55:53 <zzo38> farrioth: That is good enough, as long as you have seen how many newer cards (past Alpha or something) are often seeming to use a common syntax so they are worded in very similar ways.
07:55:58 <shachaf> better than, say, python or ruby
07:56:11 <shachaf> so maybe i should learn it
07:56:14 <ais523> Perl just lets you do what you like in terms of scope
07:56:20 <ais523> it has lexical scope and dynamic scope
07:56:27 <ais523> and the ability to inject things into other scopes
07:56:28 <Bike> snobol gets scoping right. it has no scoping. learn snobol
07:56:32 <ais523> all under user control
07:56:33 <zzo38> COBOL may be at approx. the correct "compromise" between programming and natural language, for its application, it seems like; especially from kmc's program it looks like that
07:56:40 <ais523> oh, and two different sorts of global
07:56:41 <farrioth> zzo38: Sort of, but some examples (pictures of cards?) would be nice.
07:56:42 <Bike> thanks kmc.
07:56:43 <kmc> >_____>
07:56:54 <shachaf> mauke was being convincing about maybe i should learn perl
07:56:58 <shachaf> `seen mauke ever
07:57:17 <ais523> (the very globalliest globals have names starting with a dollar followed by a control character, you normally type them as ${^Example} but you could use a literal control-E and omit the braces if you really wanted to)
07:57:24 <kmc> zzo38: but it's only "natural language" in that you have to write several long keywords instead of a curly brace
07:57:26 <shachaf> actually i don't think he was trying to convince anyone but maybe i'll do it anyway
07:57:27 <HackEgo> 2011-09-03 07:36:50: <mauke> when things would be ambiguous otherwise
07:57:30 <kmc> how is that an improvement on anything
07:57:34 <quintopia> i learned a little bit of perl. so many little symbols to know. so hard to read code.
07:57:57 <kmc> much symbols
07:58:01 <kmc> very punctuation
07:58:06 <Bike> i want a language based on machina carnis
07:58:07 <ais523> well, Perl tends to have good mnemonics for the weird punctuation combinations
07:58:07 <quintopia> wow
07:58:16 <kmc> ais523: or there's that English module
07:58:19 <kmc> which just gives them good names
07:58:30 <ais523> kmc: I actually prefer the short names
07:58:35 <Bike> you may ask what the fuck, to which i respond, what your fuck
07:58:36 <ais523> $_ is basically just a pronoun
07:58:48 <ais523> a good English name for it would be close to $it
07:58:53 <kmc> how about $hit
07:59:07 -!- Bike has quit (Quit: Lost terminal).
07:59:17 <ais523> actually this explains why @_ is used for procedure argument
07:59:23 <zzo38> kmc: Well, things are easily enough to understand if you know some things about programming, even if not knowing the programming language; and yes the way that it is only "natural language" in the way you specified, is what I mean by a good way I think so. For example I can easily see what all the divisions mean, and could easily guess what "WITH NO ADVANCING" means.
07:59:25 <ais523> because its meaning is not too far from "them", and the @ indicates a plural
08:00:00 -!- Bike has joined.
08:00:02 <Bike> intriguing new research suggests i am a dumbass
08:00:42 <farrioth> ais523: Perl is starting to look more NLy than I thought.
08:00:50 <quintopia> @ made sense to me. cuz i used it to make @rrays
08:00:50 <zzo38> farrioth: You can look up pictures (or even just text) of cards pretty easily, but I can even just type some card texts here too.
08:01:07 <ais523> one good example is slicing arrays
08:01:26 <farrioth> zzo38: Give me some cards to look up, or type here, your preference.
08:01:26 <ais523> if I have an array, say @a, then if I take one element from it, I get $a[2], and if I take two, I get @a[2,3], for instance
08:01:31 <farrioth> zzo38: Or message me if they're long.
08:01:50 <kmc> zzo38: yes it's true, 'WITH NO ADVANCING' is more clear than e.g. a trailing comma in Python 2
08:01:51 <ais523> the sigil at the start reflects whether I'm producing a single or plural quantity
08:01:51 <zzo38> The card "Recuperate" says: Choose one--You gain 6 life; or prevent the next 6 damage that would be dealt to target creater this turn. The card "Drifting Meadow" has three abilities; the first is: Drifting Meadow comes into play tapped.
08:02:05 <kmc> zzo38: however I don't think one should optimize a language to be read by people who don't know the language
08:02:07 <ais523> it's not part of the array itself; Perl uses the square brackets to know that I mean an array @a rather than a scalar $a
08:02:24 <kmc> zzo38: there are some tradeoffs of course; the trailing comma in Python is also bad and special (and gone in Python 3)
08:02:25 * Bike applies what ais is saying to matlab in order to amuse himself
08:02:58 <farrioth> kmc: I agree.
08:02:59 <zzo38> kmc: And in BASIC you use a trailing semicolon. And yes I agree with you in general that you don't think one should optimize a language to be read by people who don't know the language; I am simply saying there are such cases, and COBOL is one of them, due to its intended applications especially.
08:03:00 <ais523> Bike: I saw someone editing some Matlab code on Friday
08:03:05 <Bike> ais523: i'm sorry
08:03:08 <farrioth> kmc: (Re the optimisation.)
08:03:11 <ais523> but originally assumed it was Objective C because of the file extension
08:03:19 <quintopia> Bike: are you opposed to matlab
08:03:21 <ais523> and got very confused
08:03:24 <kmc> Objective Matlab++
08:03:25 <Bike> ais523: yeah emacs does that too
08:03:26 <Bike> quintopia: yes
08:03:30 <Bike> matlab--
08:03:38 <kmc> i love that Objective C++ is a real language supported by GCC and not an esolang joke
08:03:55 <zzo38> farrioth: The phrase "comes into play tapped" can be considered a phrase by the parser; the card name could be entered "~" and treated as a phrase by the parser too, while the prettyprinter can expand it to the card's name.
08:03:56 <quintopia> oh okay. well i like it as a language. it's great for doing linalg
08:04:33 -!- Lymia has quit (Ping timeout: 272 seconds).
08:04:33 <Bike> it's got a good ide and it has useful linalg features i haven't seen elsewhere but i hate everything else about it.
08:04:41 <ais523> anyway, lots of people get confused by what the sigils mean in Perl
08:04:58 <farrioth> zzo38: I see. Remind me what the relevance of this is though? I've forgotten.
08:05:02 <ais523> especially because most tutorials start off with "$ means scalar, @ means array", and then people assume they should use @ to refer to an array if they're indexing it
08:05:14 <ais523> so the natural-language-likeness of it is simply just confusing
08:05:25 <Bike> like a real natural language!
08:05:30 <ais523> farrioth: I think zzo38 considers Magic card text to be a programming language
08:05:42 <zzo38> farrioth: You can do an "almost natural language", is what I mean
08:05:48 <ais523> it's pretty close already (and has only become more so because of Magic Online)
08:05:50 <farrioth> ais523: To program Magic players?
08:05:58 <ais523> farrioth: if you like
08:06:22 <shachaf> who can tell me things about that one category where objects are categories and arrows are adjunctions
08:06:29 <farrioth> zzo38: As in, Magic cards are NL-like, but arguably not really NL because they are formulaic?
08:06:36 <kmc> since it's a game it's more like a protocol language than a programming language?
08:06:47 <quintopia> farrioth: that does seem to be the way the TM works. of course, the hard part is leaving all the players with only one possible move so that they have to cooperate.
08:06:52 <kmc> other formulaic NL text: laws & contracts; math papers
08:06:56 <Bike> it will be a sad day when i know anything about magic
08:07:02 <ais523> also, there's that proof that Magic is Turing-complete
08:07:08 <zzo38> farrioth: Something like that, yes. Not *exactly*, which is why I think such a "hybrid" approach is better
08:07:14 <farrioth> ais523: What?
08:07:30 <ais523> although the current setup requires all players to do something other than nothing when the game gives them a choice
08:07:43 <farrioth> zzo38: What are you approaching?
08:07:55 <kmc> the periphery shield of vortex four
08:08:10 <zzo38> Take an approach which allows entry in a way somewhat better for programming it while still working well for displaying too; for example, text in parentheses is a comment printed in italics (the parentheses are printed too); text in square brackets is a comment but is printed as is except the brackets are omitted; text in [- ... -] is Haskell code which isn't printed; ~ is printed as the card name; =s after a word is a plural; etc
08:08:17 <ais523> farrioth: http://www.toothycat.net/~hologram/Turing/HowItWorks.html
08:08:33 <quintopia> ais523: do you expect it is possible to remove the "do nothing" option from every single turn?
08:08:45 <ais523> I had a small contribution to that (pointing out that an older version of the setup was wrong due to confusion caused by Wolfram propaganda)
08:08:53 <ais523> quintopia: that's the major unsolved problem atm
08:09:00 <ais523> I think it may be possible, but it'd require a different setup
08:09:11 <shachaf> it is a v. popular game at my current workplace
08:09:11 <zzo38> (You would only use =s at the end for plurals of subtypes (rather than keywords), so something like "Desrtoy all Cat=s." instead of "Destroy all Cats."
08:09:19 <ais523> basically the problem is that there are so few phasing-related cards, and it's quite hard to replace phasing in the setup
08:09:25 <Bike> my dad wanted me to read a contract based on "you're a mathy guy" or somesuch
08:09:26 <shachaf> so i have played it a little bit and i even have, uh, a few hundred cards or something
08:09:33 <zzo38> (But, "Draw 3 cards." (not "Draw 3 card=s.").)
08:09:33 <Bike> my dad is an authority on all matters, so kmc is right
08:09:44 <ais523> hmm, I wonder if zzo38 would like grammartree
08:11:04 <farrioth> zzo38: What is the application of such a language?
08:11:51 <zzo38> farrioth: In order to create Magic: the Gathering cards, so that you can both generate the pictures of the cards (such as to print out) and to run them on a computer program.
08:11:56 <ais523> quintopia: oh right, the main complication is that all the currently known cards that force spells to be cast with no decisions by anyone trigger at particular points in a turn
08:12:05 <ais523> meaning that you can't set everything up entirely in one turn
08:12:14 <ais523> unless you know of a way to produce infinitely many upkeep steps?
08:12:17 <ais523> in one turn?
08:12:37 <farrioth> zzo38: Ah, that makes sense. But if they're so formulaic already, why not just make a parser which can understand them?
08:12:56 <farrioth> zzo38: Perhaps with extensions to allow you to describe difficult-to-parse cards.
08:13:05 <Bike> you know what's really annoying. when you're reading a book and there's a typo of an open bracket or something so the whole rest of the book is quoted
08:14:31 <zzo38> farrioth: There are things like using ~ for "this card" and stuff too, and to make the parsing work more simplified and working better; there are those and other reasons why I think it would be improvement to *not* enter them as "pure natural language" but rather to *almost* do it.
08:14:55 <zzo38> (Anyways, using ~ in such a way is already common when entering card texts)
08:15:15 <ais523> zzo38: I think Wizards write it as "CARDNAME" internally
08:15:42 <farrioth> zzo38: Sure, but a parser doesn't need to care about the difference between "~" and "this card".
08:15:47 <zzo38> ais523: Yes and it can be programmed to support that too (or instead) if done
08:16:16 <kmc> there should be an esolang named Heptapod B
08:16:21 <ais523> farrioth: well, "this card" doesn't work, because then the card would stop working if someone made a token copy of it
08:16:22 -!- Sprocklem has quit (Ping timeout: 240 seconds).
08:16:30 <zzo38> farrioth: Wrong. Both the parser and the printer need to care. The printer so that it can display the card's name properly, and the parser in case it is in a quoted ability.
08:16:30 <ais523> it'd have to be "this permanent" (or the appropriate for abilities that trigger in other zones)
08:16:57 <Bike> oh, hey, kmc's reading /that/
08:17:10 <kmc> Bike: well I read that story a while ago, but it's in a book with some others
08:17:16 <Bike> oh
08:17:20 <kmc> some of which I read today
08:17:21 <farrioth> ais523: Could you explain, please?
08:17:24 <Bike> well i hven't remembered it anyway
08:17:27 <kmc> k
08:17:37 <ais523> farrioth: it's just a rules technicality: a token isn't a card
08:17:40 <Bike> wow that wasn't even a coherent thought
08:17:41 <zzo38> ais523: Actually I think the rules specify that in such cases it does actually still work
08:17:43 <farrioth> zzo38: But it doesn't matter what name you give the token.
08:18:00 <ais523> zzo38: huh, really? if so then it's a specific weird special case
08:18:04 <farrioth> ais523: Oh, tokens have a meaning in Magic. That's right.
08:18:07 <shachaf> kmc: today i wore a wristband with some text on it
08:18:21 <shachaf> i read the text out loud and then said "would be a good name for a band"
08:18:32 <kmc> :)
08:18:33 <zzo38> It doesn't mean it has to be a card. In the example syntax I gave you could even enter it as "this [card]" rather than "this card" if you *do* need literally "this card" on the card, then it would make the parser easier and more sensible.
08:18:36 <kmc> but was it?
08:18:55 <shachaf> it was kind of long and awkward
08:19:17 <shachaf> also i said it to Gracenotes so ask him
08:19:44 <kmc> i liked the part in the one story where gur xnoonyvfg thl vairagf gur l pbzovangbe
08:19:59 <Bike> i agree
08:20:20 <shachaf> hmm i only vaguely remember that story
08:20:26 <ais523> zzo38: btw, you might be interested in http://www.toothycat.net/wiki/bnf.pl?page=AlexChurchill/MagicCardGenerator , which works using a parser for Magic card text; it runs the parser /backwards/ to produce legal cards
08:20:49 <ais523> often not very sensible ones, though
08:21:42 <zzo38> For example: Enchanted permanent gains "{T}: Destroy ~." Therefore the ~ should be treated as the timestamp of the card it is printed on at the time when the effect containing the ~ is used, it will make ~ into that card's timestamp.
08:22:00 <farrioth> ais523: Hah, nice.
08:22:04 <farrioth> "tap up to four target permanents and tap those permanents"
08:22:18 <ais523> anyway, I liked the discussion before it got derailed by Magic
08:22:28 <farrioth> ais523: Me too.
08:22:55 <Bike> jesus christ yes nerds
08:23:14 <farrioth> I wonder if var'aq is considered natrualistic.
08:23:25 <ais523> anyway, I can't think of any programming language more natural-language-like than Perl, in terms of semantics rather than syntax
08:23:34 <ais523> except Perligata, which puts natural language syntax onto Perl
08:23:37 <zzo38> Yes, you also should parse phrases like "up to <number>" and "those" and so on.
08:23:41 <ais523> in addition to matching the grammatical behaviour up
08:23:55 <shachaf> ais523: Perligata isn't more natural-language-like than Perl, in terms of semantics rather than syntax.
08:24:03 <Bike> "To assign a value to a variable you must first push the value, then the name of the variable onto the stack. To push the name of a variable instead of its value, the spec tells you to use lI'moH operator. The cher operator can then be used to bind the value to the variable name." eh
08:24:09 <ais523> shachaf: right, it's mostly just syntax
08:24:23 <Bike> very disappointed that this artigcle isn't written in klingon
08:24:23 <ais523> Bike: like Underload but with pointers?
08:24:42 <ais523> "Humanity confuses more destructively than the awesome language"
08:24:56 <ais523> huh, MagicCardGenerator produced insightful and ontopic flavour text
08:25:41 <farrioth> ais523: Perhaps PERL is quite NL-like in terms of semantics. Interesting, as I was thinking only about syntax (and lexicon, I suppose) to begin with.
08:26:10 <ais523> `quote 152
08:26:12 <HackEgo> 152) <ais523> syntax is the least important part of a programming language <ais523> other than Python
08:26:16 <farrioth> ais523: Which raises the question of how many of the languages mentioned are really naturalistic syntactically rather than just lexically.
08:26:28 <ais523> my guess is, not many
08:26:34 <farrioth> Mine too.
08:27:09 <ais523> I think the experience of Perl shows that people tend to dislike naturalistics in their programming languages
08:27:25 <farrioth> ais523: Wait, was that actually flavour text? You had me thinking it was from the var'aq page. We should probably add it in.
08:27:26 <zzo38> As it turns out I also wrote a program to make up random Magic: the Gathering card texts, although very incomplete
08:27:28 <shachaf> I'd rather play Sandwich: The Card Game.
08:27:40 <Bike> me too
08:27:41 <shachaf> Hmm.
08:27:43 <ais523> farrioth: it was flavour text generated by that random magic card generator
08:27:44 <shachaf> `quote sandwich
08:27:46 <HackEgo> 185) <zzo38> Invent the game called "Sandwich - The Card Game" and "Professional Octopus of the World" (these names are just generated by randomly) \ 683) <Phantom_Hoover> There.... is a box of Gardasil next to the butter in my fridge. <Phantom_Hoover> At least my sandwich will be immune to cervical cancer *and* genital warts, I suppose.
08:27:48 <shachaf> Sandwich - The Card Game
08:28:02 <Bike> how many octopus quotes do we have
08:28:05 <Bike> `quote octopus
08:28:07 <HackEgo> 185) <zzo38> Invent the game called "Sandwich - The Card Game" and "Professional Octopus of the World" (these names are just generated by randomly) \ 214) <zzo38> ais523: Maybe it is better, because I don't think the octopus will live very well in the tree. But the difference is that the Internet is lying and you cannot see such things; you could m
08:28:09 <kmc> http://videogamena.me/
08:28:16 <ais523> `pastequotes octopus
08:28:16 <Bike> `run quote octopus | shuf
08:28:18 <HackEgo> 185) <zzo38> Invent the game called "Sandwich - The Card Game" and "Professional Octopus of the World" (these names are just generated by randomly) \ 214) <zzo38> ais523: Maybe it is better, because I don't think the octopus will live very well in the tree. But the difference is that the Internet is lying and you cannot see such things; you could m
08:28:22 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.27447
08:28:24 <farrioth> ais523: What was the name of the card it went with?
08:28:26 <Bike> two. well, almost acceptable
08:28:32 <ais523> Bike: just two
08:28:40 <ais523> farrioth: there wasn't one, it doesn't generate names
08:28:46 <shachaf> I would also like to play Professional Octopus of the World.
08:28:49 <Bike> i shall make a note to talk about octopuses at least once a day
08:28:51 <ais523> I forgot to copy-paste the attribution
08:29:05 <shachaf> zzo38: Has anyone invented either of those games yet?
08:29:11 <farrioth> ais523: You're right.
08:29:12 <Bike> so: what's the deal with being smart even though they don't use myelination??
08:29:33 <ais523> Bike: they have really really thick nerves to compensate
08:29:41 <Bike> yes, assholes
08:29:42 <ais523> like, they're measured in centimetres
08:29:51 <ais523> a centimetre-wide cell is mindboggling
08:30:01 <Bike> nobody tell ais about slime mold.
08:30:11 <Bike> squid giant axons are 1 mm, though.
08:30:14 <farrioth> Haha.
08:30:15 <Bike> dunno what you're thinking of
08:30:22 <ais523> "this slime mold juice is delicious!"
08:30:30 <ais523> Bike: probably I was just off by an order of magnitude
08:30:38 <Bike> great, now i'm actually wondering what cytoplasm tastes like
08:30:49 <Bike> probably not very good, generally
08:31:01 <ais523> it probably tastes much like water
08:31:06 <ais523> because it mostly is water
08:31:08 <ais523> or, well
08:31:20 <ais523> if you blend pretty much any organic material, there's going to be cytoplasm in there
08:31:22 <Bike> some cells are pretty much more proteins than water.
08:31:28 <ais523> but it's not the main contributing factor to the taste
08:31:33 <Bike> you get weird hydrodynamics.
08:31:37 <ais523> also, protein tastes of protein
08:32:06 <shachaf> what was my nethack fruit called, anyway
08:32:07 <Bike> maybe i'll just down some blood plasma
08:32:18 <Bike> mine was 'schizocarp', ia m the opposite of creative
08:32:39 <ais523> oh, beautiful: this random card costs 4, flips into a 1/1 when there are at least 2 lands in play, and gives itself +1/-1
08:32:45 <ais523> good luck trying to use /that/ thing
08:32:51 <zzo38> shachaf: I don't think someone invented those game and I don't really intend
08:33:10 <ais523> shachaf: I use "avocado" locally, just because I wanted a real fruit that probably wasn't in the game already
08:33:14 <ais523> I don't think I've ever eaten one
08:33:19 <ais523> normally I just leave it at the default online, though
08:33:29 -!- constant has changed nick to variable.
08:34:00 <Bike> hm mauthner cells are also huge but fish are vertebrates. how vexing
08:34:56 <ais523> now I'm wondering if there are any organisms with bones but not backbones
08:35:39 <Bike> no. backbones evolved before bones.
08:35:49 <Bike> assuming you don't count things like cuttlebones.
08:36:25 <Bike> 'bone' could mean any number of things, i suppose~
08:37:01 <quintopia> i don't understand
08:37:06 <quintopia> nethack lets you name fruits?
08:37:12 <ais523> quintopia: one specific fruit
08:37:15 <ais523> has a customizable name
08:37:32 <ais523> it's normally just called "fruit" when people are talking about it, or sometimes "slime mold" after the default value
08:38:48 <Slereah> Gross
08:40:39 <ais523> btw, a while back I was working on a natural language deparser in order to make NetHack produce better messages
08:40:53 <ais523> as in, it did substitutions at the natural language parse tree level, rather than the textual level
08:41:04 <ais523> and add in pronouns, etc.
08:41:14 <ais523> but it was never finished, and we temporarily abandoned it so that we could get actual work done
08:42:05 <farrioth> ais523: Do you have the code around still?
08:42:25 <ais523> farrioth: yes
08:42:33 <mroman> farrioth: How's your interpreter coming along?
08:42:58 <ais523> farrioth: https://gitorious.org/nitrohack/ais523/source/36824d7535d3ac7614875de4ec7559358d1860b1:libnethack_intl
08:43:22 <ais523> although note that we think there may be problems in the model of natural language it uses
08:43:34 <ais523> in fact, it sort-of collapsed into design-by-committee as to what those should be
08:44:08 <ais523> farrioth: also there's some documentation in https://gitorious.org/nitrohack/ais523/source/36824d7535d3ac7614875de4ec7559358d1860b1:doc/grammar.txt
08:44:21 <quintopia> ais523: so the idea would be to store language models for each language? and then construct the messages from the tree after substitution? and hope the model is good enough the result comes out grammatically correct?
08:44:32 <ais523> quintopia: that's it, basically
08:44:57 <farrioth> mroman: I have most of a Tape class and a DistortionMap class, but haven't done any work since yesterday since I had food poisoning. I do plan to work on it more, though.
08:44:59 <ais523> the tree used tokens to represent words, which were mostly the same as the word in English, except that if there were two homographs in English they'd have different tokens in grammartree
08:45:11 <farrioth> ais523: Thanks, I'll take a look some time.
08:45:50 <quintopia> ais523: grammartree? is this the thing you were above wondering if zzo38 would like?
08:45:54 <ais523> it was illuminating learning about the special cases in English
08:45:55 <ais523> quintopia: yes
08:46:17 <ais523> also, I wasn't planning to cover all of English
08:46:21 <ais523> just the subset that NetHack uses
08:46:24 <farrioth> mroman: I though about re-implementing it in R since the inherent vectorisation would make applying distortion easier, but decided I don't know R well enough to do that sort of thing in it at present.
08:47:00 <quintopia> farrioth: also letting it be in python means i can create a module for it for my upcoming universal IDE :D :D: D
08:47:52 <farrioth> quintopia: Cool.
08:48:16 <farrioth> quintopia: How is your said universal IDE coming along?
08:49:07 <quintopia> farrioth: well it's mainly to help me learn python and tk. i have figured out how to do menu of the things i need it to do already, though i am not sure about the current problem i'm trying to solve
08:49:15 <quintopia> s/menu/many/
08:49:54 <farrioth> quintopia: What is the current problem? And why TK, by the way?
08:50:58 <quintopia> farrioth: those two questions should not be answered concurrently as they are very different discussions
08:51:04 <quintopia> farrioth: which do you want to start with
08:54:21 <farrioth> quintopia: Let's start with the current problem.
08:54:43 -!- LinearInterpol has joined.
08:54:44 <farrioth> quintopia: And I should mention that I'm currently cooking, so may respond slowly.
08:59:00 <quintopia> farrioth: let's say that every language stores its UI and interpreter in a module which defines a class (implementing a specific abstract class), and all these modules are just stored in some folder. without any further config files, i want the IDE to be load these modules as needed in association with source files of the language they are for.
08:59:00 -!- Taneb has joined.
08:59:44 <quintopia> i have read about using __import__, but i'm not sure what i should do to make sure I am keeping around an instance of the class loaded from the module
09:00:04 <quintopia> how do you get an instance of a class you don't know the name of until you have loaded the module?
09:01:00 <quintopia> i suppose since i know the abstract class it implemented, i could find a class definition in the loaded namespace that claims to inherit from that class?
09:02:06 <quintopia> or should i eschew __import__ and use execfile instead, creating a namespace for the exec'd file from the info about the IDE it needs?
09:02:36 <quintopia> but the latter may introduce problems with destruction of the classes so loaded, and so i go in circles
09:05:42 <farrioth> quintopia: What are the classes defined in each module being used for? Do they define the UI and interpreter?
09:05:58 <quintopia> farrioth: yes.
09:07:27 <quintopia> hmm i have an idea
09:07:41 <farrioth> quintopia: Just give them generic names like UI and Interpreter, you won't get a conflict assuming that you're only using one language at a time.
09:07:58 <farrioth> quintopia: Or, if using multiple languages, they will be in different instances.
09:08:26 <quintopia> farrioth: explain that last?
09:08:42 <quintopia> because yes it will be possible to have several different language types loaded at once
09:10:53 <farrioth> quintopia: You will have multiple editors or whatever, one for each language, and can set the active language individually for each editor.
09:10:54 <mroman> Recently lots of people have food poisoning o_O
09:11:54 <farrioth> quintopia: import befunge
09:12:00 <farrioth> quintopia: UI = befunge.UI
09:12:05 <farrioth> quintopia: And so forth.
09:15:06 <quintopia> farrioth: but i won't know there is a module named befunge
09:15:26 <farrioth> quintopia: or UI = befunge.UI() if you want to make an instance of it.
09:15:48 <quintopia> farrioth: it will look more like: for all i,files in enumerate(folder): ns[i] = __import(file)__
09:16:19 <quintopia> how do i create an instance in my namespace from something defined in another namespace?
09:17:11 <farrioth> quintopia: Oh, I misunderstood you, I assumed that you didn't know that you needed a module called befunge, not that a module called befunge existed.
09:20:09 <quintopia> also i misplaced some underscores there whoops
09:22:01 <shachaf> kmc: now i remember it
09:22:15 -!- LinearInterpol has quit (Ping timeout: 252 seconds).
09:27:13 <farrioth> quintopia: I would have used exec("import %s"%i) but that might be considered improper.
09:28:26 <farrioth> quintopia: But presumably you'll only use a language module on filetype identification or when a user requests it, so there's no point importing them on enumeration.
09:28:41 <quintopia> farrioth: sure. righto.
09:29:05 <quintopia> farrioth: but i was thinking of enumerating them to extract the filetype/module associations
09:29:18 <quintopia> so i know what filetypes i support
09:30:11 <quintopia> s/type/extension
09:31:54 <Taneb> I've actually got a Nigerian Finance Minister spam
09:32:55 <farrioth> quintopia: I would have just stored that information separately, but that does mean you have to maintain a central list of them.
09:33:37 <farrioth> quintopia: You could make a function which enumerates everything and writes a file containing filetype associations, so that you only have to enumerate when a new language module is added.
09:39:08 <quintopia> Taneb: bite the hook. coax a picture out of them.
09:39:17 <Taneb> quintopia, can't be bothered
09:40:54 <quintopia> farrioth: yes that is doable, but i'm still iterating the files to find one newer than the associations file every time i start. would it be all that faster than just rebuilding the table each time?
09:43:05 <farrioth> quintopia: I was thinking to only rebuild the table when requested.
09:43:49 <farrioth> quintopia: Plus you wouldn't have to do a complete rebuild, only add in the new definitions, so it probably would be faster, but perhaps only marginally.
09:44:03 <farrioth> quintopia: How many languages do you have defined so far / expect to have defined?
10:00:17 -!- MindlessDrone has joined.
10:16:41 -!- Taneb has quit (Read error: Operation timed out).
10:19:30 <farrioth> Natural language programming at its best/worst: http://system-english.com/?page=sepapers
10:21:06 <Slereah> OSMOSIAAAAN!
10:24:33 <mroman> There's already lolcode
10:24:43 <mroman> that's practically natural language programming
10:25:21 <Slereah> only for cats
10:25:28 <farrioth> Haha, good point.
10:25:58 <mroman> I mean
10:26:13 <mroman> yeah
10:26:33 -!- qlkzy_ has quit (Quit: ZNC - http://znc.sourceforge.net).
10:27:05 <farrioth> It probably actually qualifies as much as COBOL or AppleScript, except for its limited number of instructions.
10:28:05 -!- ineiros_ has quit (Remote host closed the connection).
10:28:06 -!- stuntaneous has quit (Remote host closed the connection).
10:28:36 -!- ineiros has joined.
10:29:13 -!- qlkzy has joined.
10:32:33 <quintopia> farrioth: WhO kNoWs??
10:32:49 <quintopia> InFiNiTeLy MaNy
10:34:09 -!- qlkzy has quit (Quit: ZNC - http://znc.sourceforge.net).
10:35:14 -!- qlkzy has joined.
10:36:01 <farrioth> quintopia: Personally, as a user, I'd prefer to call Update Language Definitions if/when I install a new language module, rather than have it re-enumerate every startup, but checking for new modules on startup and updating file associations then wouldn't be too bad, especially if it's done in the background.
10:37:15 <farrioth> quintopia: Or you could update the definitions if the IDE loads a file it doesn't recognise, since that is probably something a user will do soon after installing a new language.
10:37:28 <farrioth> quintopia: With an option to manually update definitions too.
10:37:31 <quintopia> farrioth: oh nice i like that idea
10:37:48 <farrioth> quintopia: If you weren't lazy you'd make it configurable, of course.
10:37:49 <farrioth> quintopia: Cool.
10:39:01 <quintopia> farrioth: you mean the file association is configurable? that's easy. since each module defines what file extension it wants, if you want to configure them, just modify the line of the associated module, and manually update definitions!
10:39:45 <farrioth> quintopia: No, I mean the user can choose whether the definitions get checked/updated every startup or not.
10:40:28 <quintopia> farrioth: oh yeah i'm probably too lazy for that :P
10:41:43 <quintopia> so i just realized the MTGTM page has a whole page dedicated to how all credit for anything creative anyone does actually goes to God. so...FUCK ALEX CHURCHILL. THANK GOD FOR THE MTG TM!
10:41:50 <farrioth> import config
10:41:50 <farrioth> if config.update_defs: update_defs()
10:42:06 <quintopia> well i could do that much
10:42:16 <quintopia> but i'm NOT MAKING A DAMN CONFIGURATION UI
10:43:00 <farrioth> Just have your config file be a python module which gets imported. Not secure, but that isn't a problem in this case.
10:43:57 -!- qlkzy has quit (Quit: ZNC - http://znc.sourceforge.net).
10:51:02 -!- qlkzy has joined.
10:51:21 -!- FreeFull has joined.
10:53:59 -!- ineiros has quit (Remote host closed the connection).
10:55:24 -!- ineiros has joined.
10:56:02 -!- qlkzy has quit (Ping timeout: 264 seconds).
11:00:15 -!- qlkzy has joined.
11:22:40 <quintopia> "perl -pe 's/^(.*)$/\L$& \U$&/g'" is there a shorter way to capitalize a string in a shell command
11:23:00 <quintopia> (which contains newlines0
11:24:28 <ais523> hmm… what about "perl -000 -e 'print uc <>'"
11:24:32 <ais523> I think that's shorter; does it work?
11:24:41 <ais523> alternatively, tr a-z A-Z
11:24:48 <ais523> although that one isn't Unicode-aware
11:37:23 -!- Taneb has joined.
11:47:19 <farrioth> I'm off to bed, see you all around.
11:47:27 -!- farrioth has quit (Quit: leaving).
11:50:10 -!- muskrat has joined.
11:53:55 -!- Slereah_ has joined.
11:57:21 -!- Slereah has quit (Ping timeout: 252 seconds).
12:14:12 -!- nooodl has joined.
12:14:53 -!- Taneb has quit (Quit: Leaving).
12:17:50 <Vorpal> Hi
12:21:07 <shachaf> `welcome Vorpal
12:21:09 <HackEgo> Vorpal: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <http://esolangs.org/wiki/Main_Page>. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
12:22:32 -!- ais523 has quit.
12:54:03 -!- Phantom_Hoover has joined.
13:37:43 <quintopia> anticipation error hmmmmmmmmmmmmmmmmmmmmm
13:44:12 <quintopia> Phantom_Helloover
13:52:09 -!- yorick has joined.
13:59:38 -!- MindlessDrone has quit (Ping timeout: 264 seconds).
14:07:59 -!- carado has joined.
14:14:06 -!- MindlessDrone has joined.
14:50:10 -!- Taneb has joined.
15:10:16 -!- muskrat has quit (Quit: Leaving).
15:29:22 <quintopia> hey
15:29:41 <quintopia> what are the prerequisites to know before reading the homotopy type theory book?
15:32:38 -!- LinearInterpol has joined.
15:38:16 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
15:38:27 -!- Sorella has joined.
15:39:03 -!- Sorella has quit (Changing host).
15:39:03 -!- Sorella has joined.
15:39:30 -!- tromp has joined.
15:40:05 -!- Phantom_Hoover has joined.
15:43:18 -!- conehead has joined.
16:00:06 -!- LinearInterpol has changed nick to [li]|Gaming.
16:00:46 <FreeFull> quintopia: Just start reading it, and if there is anything you don't know, research it
16:03:42 <nooodl> i guess "topology" and "type theory" will come up quite a bit
16:05:44 <FreeFull> The first chapter is completely about just type theory
16:06:09 <FreeFull> Being familiar with dependent types is useful
16:15:39 -!- tromp has quit (Remote host closed the connection).
16:16:15 -!- tromp has joined.
16:20:14 -!- tromp has quit (Ping timeout: 240 seconds).
16:20:56 -!- tromp has joined.
16:22:24 -!- conehead has quit (Quit: Textual IRC Client: www.textualapp.com).
16:29:21 -!- conehead has joined.
16:31:25 -!- muskrat has joined.
16:34:27 -!- muskrat has left.
16:34:44 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds).
17:17:33 -!- conehead has quit (Quit: Computer has gone to sleep.).
17:29:37 -!- conehead has joined.
17:59:29 -!- tromp has quit (Remote host closed the connection).
18:07:22 -!- tromp has joined.
18:11:01 -!- [li]|Gaming has changed nick to LinearInterpol.
18:11:55 -!- Phantom_Hoover has joined.
18:28:12 -!- Zuu has joined.
18:29:44 -!- Zuu has changed nick to ZuuSantaClaus.
18:54:56 -!- tromp has quit (Read error: Connection timed out).
18:56:48 -!- MindlessDrone has quit (Quit: MindlessDrone).
18:57:57 -!- tromp has joined.
18:59:15 -!- Sprocklem has joined.
19:09:16 -!- tromp has quit (Remote host closed the connection).
19:09:52 -!- tromp has joined.
19:10:03 <ion> http://i.imgur.com/FbEzLiL.jpg
19:14:14 -!- tromp has quit (Ping timeout: 265 seconds).
19:15:23 -!- impomatic has joined.
19:19:15 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
19:26:51 <ion> http://venturebeat.com/2013/12/13/youtubes-out-of-control-content-id-system-even-flagged-jonathan-blow-for-posting-footage-of-his-own-game/
19:27:47 -!- ZuuSantaClaus has quit (Remote host closed the connection).
19:31:56 <Vorpal> ion, oh wow
19:32:46 -!- Zuu has joined.
19:33:13 -!- Phantom_Hoover has joined.
20:35:18 -!- Slereah_ has quit.
20:44:16 <quintopia> ion: that link just put dolphin browser into an infinite url-loading loop. i didn't even know that was possible.
20:45:10 <ion> nice
20:45:19 <ion> Sounds like quality software.
20:45:54 -!- Bike_ has joined.
20:46:55 -!- Bike has quit (Disconnected by services).
20:46:57 -!- Bike_ has changed nick to Bike.
20:47:18 <quintopia> it is actually. this is the first time i've seen a bug like this in the three years i've used it
20:49:04 <olsner> did they forget to limit redirect loops or something?
20:49:25 <quintopia> no idea
20:51:16 <mroman> quintopia: It's possible to create redirect loops
20:51:53 <mroman> it's browsers who should limit them :)
20:54:02 <quintopia> mroman: but the link above presumably worked for ion and vorpal, so i doubt that's what's going on
20:55:46 <olsner> they probably didn't use dolphin
20:56:53 <quintopia> yes but what happens when a redirect is limited?
20:57:46 -!- Zuu has quit (Ping timeout: 245 seconds).
20:57:52 -!- Zuu has joined.
20:59:09 <olsner> loading finishes with an error page, usually
21:00:59 <quintopia> i don't think they got an error page
21:01:02 <int-e> well, besides 301 and friends it could also be a http refresh with a small delay, or some javascript setting window.location.
21:01:59 <quintopia> int-e: wouldn't the browser have to at least rate limit those as well?
21:02:57 <int-e> maybe. I'm not ready to pass judgement on that ;)
21:03:45 -!- Taneb has quit (Ping timeout: 240 seconds).
21:12:56 <mroman> quintopia: are they using dolphin too?
21:17:00 <quintopia> ...
21:42:03 -!- Slereah has joined.
22:10:15 -!- tromp has joined.
22:14:29 -!- tromp has quit (Ping timeout: 248 seconds).
22:19:42 -!- muskrat has joined.
22:33:11 <zzo38> Someone has made up an extension of TeX for supporting multiple kind of marks on a page rather than just one kind, but I have made up a way to do it without using those extensions. In fact a large number of things can be done without any extensions.
22:41:40 -!- tromp has joined.
22:55:58 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.90.1 [Firefox 26.0/20131205075310]).
23:08:02 -!- oerjan has joined.
23:09:50 -!- KingOfKarlsruhe has joined.
23:13:29 -!- doesthiswork has joined.
23:14:45 -!- tromp has quit (Ping timeout: 248 seconds).
23:40:27 <zzo38> I am currently typing the Dungeons&Dragons game according to I played it yesterday
23:45:20 <LinearInterpol> write some brainfuck to type it out for you.
23:45:46 <LinearInterpol> less character variance and relevant!
23:46:12 <zzo38> I just type it manually
23:48:22 -!- mgdvoe has joined.
23:48:34 -!- mgdvoe has quit (Remote host closed the connection).
23:50:09 -!- carado has quit (Ping timeout: 252 seconds).
23:53:18 <zzo38> `danddreclist 46
23:53:20 <HackEgo> danddreclist 46: shachaf nooodl boily \ http://zzo38computer.org/dnd/recording/level20.tex
23:54:43 <zzo38> Do you know the *real* reason why Kjugobe doesn't want the door for the prison cell opened? (It isn't to prevent him from escaping. He already cannot escape.)
23:55:10 <quintopia> he wants the prisoner to be safe
23:55:14 <oerjan> maybe he smells _real_ badly.
23:55:19 <zzo38> quintopia: No.
23:55:37 -!- muskrat has quit (Quit: Leaving).
23:55:39 <zzo38> oerjan: No. There are bars; it isn't a plain door but rather bars so the smell would still come through.
23:56:02 <oerjan> hm i guess that takes care of my second guess of fire breath as well.
23:57:14 <zzo38> The prisoner is human and is also in a coma, so even if he has fire he cannot easily use it.
23:57:46 <quintopia> what would happen if the door were opened?
23:58:34 <zzo38> It would not affect the prisoner or cause damage to the ship if it were opened? Can you try to figure out why I didn't want it opened?
23:58:56 <zzo38> I can tell you if you don't know.
23:59:19 <quintopia> IS IT A TRAP
23:59:23 <quintopia> ITS A TRAP ISNT IT
23:59:49 <zzo38> I am pretty sure it is *not* a trap, actually, but that has nothing to do with it either.
←2013-12-14 2013-12-15 2013-12-16→ ↑2013 ↑all