←2010-04-08 2010-04-09 2010-04-10→ ↑2010 ↑all
00:39:13 -!- Gracenotes has joined.
00:50:40 -!- BeholdMyGlory has quit (Remote host closed the connection).
00:55:14 <pikhq> "It started out like Romeo and Juliet, but it ended in tragedy."
00:55:23 <pikhq> A part of my soul died when reading those words.
00:56:03 <olsner> Romeo and Juliet ALSO ended in tragedy! that "but" implies no contrast
00:56:11 <olsner> this is a travesty
00:56:33 <pikhq> I note that Romeo and Juliet started out implying tragedy.
00:56:39 <pikhq> Line 6, wasn't it?
00:57:07 <olsner> dunno, I've always assumed the actual play is boring so I've never read/watched it
00:57:23 <olsner> I just know how it ends (everyone dies)
00:57:39 <pikhq> It's one of Shakespeare's weaker plays, to be perfectly honest.
00:57:49 <pikhq> It's just the best-known.
00:58:10 <olsner> ah, the worst work gets most famous... what else is new?
00:58:11 <pikhq> ... Somehow, as being a major romance, rather than a tale of a couple of overdramatic wangsty teenagers that kill themselves.
00:58:24 <olsner> hehe, very EMO :P
00:59:01 <olsner> that is *emo - EMO is just an acronym that happens to be in use at work
01:21:37 <Gregor> <pikhq> "It started out like Romeo and Juliet, but it ended in tragedy." // what moron said this? :P
01:22:22 <pikhq> Many a moron.
01:22:58 <pikhq> The same sort of moron that thinks "starcrossed lovers" means they were fated to be together.
01:23:39 <pikhq> ... And ignores the words "take their life" immediately following.
01:31:56 <Oranjer> take their life...to the movies!
01:47:56 -!- augur has quit (Ping timeout: 265 seconds).
02:07:18 -!- Oranjer has left (?).
02:30:16 -!- augur_ has joined.
02:33:30 -!- lament has joined.
02:50:06 <Sgeo_> What's the language where the or-equal-to things are >= and =< in order to prevent confusion with arrows?
02:54:53 <coppro> Erlang
02:55:36 <Sgeo_> Hm. Any others? I think I saw that well before I even heard of Erlang
03:30:13 -!- oerjan has joined.
03:43:16 -!- jcp has quit (Ping timeout: 258 seconds).
03:50:33 -!- Quadrescence has joined.
03:51:22 <pikhq> One of these days, I need to work on my kernel. So I can run shish on it.
03:51:46 <pikhq> Actually. I should just go ahead and make shish in kernel mode and call it a day. :P
03:54:58 <coppro> pikhq: I've got something new for you to hate!
03:55:01 <coppro> http://pastie.org/910806
03:57:02 <pikhq> coppro: That is such an awful use of the string literal operator.
03:57:34 <coppro> pikhq: well, yeah, that's just for testing
03:58:01 <pikhq> BTW, I hate the string literal operator much less than many of the other operators, if only because it's bleeding obvious that you're not using the normal operator.
03:58:39 <pikhq> If void operator ""(const char *c, size_t len) is a valid function, though, I'm going to cockpunch someone on the standards committee.
03:59:22 -!- jcp has joined.
03:59:35 <coppro> lol
03:59:38 * Sgeo_ needs to learn how to study
04:00:40 <coppro> pikhq: unfortunately, it'll suffer scoping issue
04:00:42 <coppro> *issues
04:04:01 -!- myndzi has quit (Ping timeout: 252 seconds).
04:11:29 -!- augur_ has quit (Ping timeout: 248 seconds).
04:13:50 -!- oerjan has quit (Quit: leaving).
04:22:31 -!- adu has joined.
04:26:45 -!- Alex3012 has quit (Ping timeout: 245 seconds).
04:31:37 -!- augur has joined.
04:33:42 -!- Alex3012 has joined.
04:53:03 -!- myndzi has joined.
04:53:44 -!- myndzi has quit (Client Quit).
04:53:48 -!- myndzi has joined.
05:09:57 -!- AnMaster has quit (Ping timeout: 276 seconds).
05:15:16 -!- AnMaster has joined.
05:24:19 -!- oerjan has joined.
05:25:06 <oerjan> today's xkcd is literally side-splitting
05:25:25 <pikhq> So your sides were split, then?
05:25:43 <pikhq> I concur. I often find that xkcd splits the sides of my body. Oft in half.
05:25:51 <oerjan> indeed.
05:25:58 -!- comex has quit (Ping timeout: 264 seconds).
05:26:33 * oerjan hopes that pikhq didn't read it before saying that
05:27:13 -!- comex has joined.
05:27:35 <oerjan> because that would be ironic. literally.
05:27:38 <pikhq> Sadly, I did.
05:27:47 <oerjan> aww
05:27:50 <pikhq> However, I would have reacted the same way.
05:27:56 <oerjan> :D
05:37:08 -!- oerjan has quit (Quit: leaving).
05:43:49 <Sgeo_> How can it take THIS effen long to load a web page FROM DISK
05:52:59 <Sgeo_> Well, my Hatetris AI fails badly
05:53:31 <Sgeo_> Even managed to break the replay functionality
05:56:29 <myndzi> hatetris?
05:56:35 <myndzi> is that some sort of bastet thing?
05:57:02 <Sgeo_> Yes
05:57:07 <Sgeo_> Well, better than bastet
05:57:12 <Sgeo_> Even if it seems a bit repetitive
05:57:29 <myndzi> better is figuratively speaking i guess
05:57:35 <Sgeo_> qntm.org/hatetris
05:57:40 <myndzi> it turns out it's a little hard to make a good bad tetris algorithm! :)
05:58:05 <myndzi> oh also
05:58:12 <myndzi> i solved stacked odds ;p
05:59:07 <myndzi> interesting
05:59:12 <myndzi> you seem to have implemented some of srs(?)
05:59:35 <myndzi> also lol @ infinite S's
06:00:19 <myndzi> this is kinda cheating ;P
06:02:28 <Sgeo_> I didn't make it
06:02:51 <Sgeo_> I'm trying to get it to play against itself, bur I did not make Hatetris
06:03:06 <myndzi> oh
06:03:37 <myndzi> well, it's extremely easy to make a sequence of pieces that's basically unplayable, but it's not very fun
06:03:58 <Sgeo_> Try to use the S's to your advantage, and see what happens
06:04:03 <myndzi> i know
06:04:10 <myndzi> that's why i said "lol infinite s's"
06:04:13 <myndzi> because i was still stacking them
06:04:17 <Sgeo_> It's not just s's
06:04:26 <coppro> I got a line
06:04:27 <myndzi> i know
06:04:46 <myndzi> i got 3 i think, but i lost interest immediately
06:08:44 <myndzi> ok, 5 is easy
06:08:48 <myndzi> but the ai is too lame
06:08:58 <Sgeo_> My AI is magically making a tower to the top after 3 moves
06:09:11 <myndzi> lol.
06:10:10 <myndzi> i don't think this ai can be exploited
06:10:22 <myndzi> not sure though
06:11:06 <myndzi> because of how it works, any holes you leave will be filled least efficiently
06:11:12 <myndzi> with a two wide pit, it'll alternate s's and z's
06:11:25 <myndzi> it doesn't seem to account for slides though
06:11:36 <myndzi> i wonder if you can do t-spins
06:11:40 <Sgeo_> t-spin?
06:11:45 <myndzi> though i don't think it'll be easy to make it give you a t
06:11:48 <myndzi> maybe you can twist some other piece
06:11:51 <myndzi> probably a z or s
06:13:24 <myndzi> ah, i understand, i think
06:20:55 <Sgeo_> My AI is the worst tetris AI ever
06:22:37 <Sgeo_> http://i.imgur.com/95ew3.png
06:23:23 <coppro> haha
06:23:31 <myndzi> gj
06:24:03 <myndzi> i suspect that if i can set up a repeating pattern where a rotation will clear a line from what would have been deemed the worst piece, things would work out
06:40:15 <myndzi> o yea, i got 6
06:41:33 <myndzi> ha, i got a t
06:48:15 <myndzi> and i got a z-spin single
06:48:15 <myndzi> :D
06:54:34 <Sgeo_> Well, my AI's a little smarter
06:54:40 <Sgeo_> Not that that's saying much
06:54:52 <myndzi> smart enough to get 6? ;p
06:55:03 <coppro> randomly rolling a horizontal position and an orientation would be smarter than your AI
06:55:11 <Sgeo_> Smart enough to not put ALL the pieces on top of eachother
06:55:25 <Sgeo_> The code takes transforms
06:55:32 <Sgeo_> If it took positions, it would be much easier
06:55:54 <Sgeo_> [I'm just hooking into the "find the best possible" subsystem of sam512's code]
07:01:01 -!- coppro has quit (Remote host closed the connection).
07:01:49 -!- lament has quit (Quit: lament).
07:01:50 -!- Quadrescence has quit (Ping timeout: 258 seconds).
07:08:06 -!- Quadrescence has joined.
07:10:22 -!- adu has quit (Quit: adu).
07:18:02 -!- Quadrescence has quit (Ping timeout: 265 seconds).
07:28:49 -!- kwertii has quit (Quit: bye).
07:31:04 -!- Quadrescence has joined.
07:48:58 -!- MigoMipo has joined.
07:56:43 -!- zerker has joined.
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:12:10 -!- zerker has quit (Quit: Page closed).
08:18:20 -!- MigoMipo has quit (Remote host closed the connection).
08:22:23 -!- adam_d has joined.
08:34:01 -!- jcp has quit (Quit: I will do anything (almost) for a new router.).
08:49:26 -!- adam_d_ has joined.
08:51:18 -!- oerjan has joined.
08:52:24 -!- adam_d has quit (Ping timeout: 276 seconds).
09:05:11 -!- tombom has joined.
09:36:13 -!- oerjan has quit (Quit: leaving).
09:55:41 <oklofok> ais523: pingin' yer brain
10:00:30 -!- MigoMipo has joined.
10:01:20 -!- BeholdMyGlory has joined.
10:01:21 <oklofok> MigoMipo: no not you, but thanks for trying
10:01:48 <oklofok> BeholdMyGlory is lexicographically closer
10:02:03 <MigoMipo> ???
10:02:17 <MigoMipo> oklofok: What?
10:04:58 <oklofok> stupid joke, nm
10:08:52 <oklofok> i asked for ais, you came
10:51:45 <augur> GUESS WHAT I'M DRINKING
10:51:45 <augur> 8D
10:52:21 <oklofok> sperm
10:52:43 <augur> no
10:52:46 <augur> why is everyone saying that
10:52:46 <augur> >.<
10:52:49 <augur> i am drinking
10:52:50 <augur> ...
10:52:52 <augur> A WARRIORS DRINK
10:52:53 <augur> 8D
10:53:10 <oklofok> :D
11:37:12 -!- MigoMipo has quit (Remote host closed the connection).
11:37:29 -!- FireFly has joined.
11:40:44 -!- BeholdMyGlory has quit (Remote host closed the connection).
11:45:24 -!- FireFly has quit (Quit: Leaving).
11:47:07 -!- cheater2 has quit (Ping timeout: 252 seconds).
11:47:14 -!- cheater3 has joined.
11:57:24 -!- Quadrescence has quit (Ping timeout: 265 seconds).
12:04:28 -!- adam_d has joined.
12:06:22 -!- Quadrescence has joined.
12:08:03 -!- adam_d_ has quit (Ping timeout: 276 seconds).
12:12:55 <oklofok> what does "a warriors drink" mean
12:22:51 -!- MizardX has quit (Ping timeout: 276 seconds).
12:43:26 -!- alise has joined.
12:48:42 -!- lereah_ has joined.
12:58:01 -!- tombom has quit (Ping timeout: 264 seconds).
12:58:59 -!- tombom has joined.
13:09:22 -!- oerjan has joined.
13:10:37 <alise> Dispatch!
13:10:44 <alise> Coinductive data types are Hard.
13:11:01 <oerjan> <augur> why is everyone saying that <-- i think i can say, with some confidence, that it's your own damn fault.
13:12:04 <Quadrescence> alise: what is a coinductive type
13:12:20 <alise> Quadrescence: basically it's like an inductive data type except it can be infinite.
13:12:27 <alise> of course there is a lot more technical detail behind it, and there are restrictions
13:12:35 <alise> for instance you cannot say foo = foo, but you can say foo = cons 1 foo
13:12:37 <Quadrescence> example?
13:12:43 <Quadrescence> I see
13:12:47 <alise> (there has to be a constructor; although there can be some wrapping around a constructor)
13:12:53 <alise> and recursing over them is restricted
13:13:04 <alise> it's mostly coq making this bit hard though :P
13:13:55 <alise> in coq coinductive types have the awesome side effect that proofs can be infinite...
13:14:30 <Quadrescence> sounds kind of not cool
13:14:43 <alise> not literally infinite like, on disk
13:14:52 <Quadrescence> I know
13:14:55 <alise> but like you can prove things about infinite data types using the recursion mechanism...
13:14:55 <Quadrescence> ""infinite""
13:14:59 <alise> (of course it's safe recursion...)
13:15:02 <alise> which is nice
13:15:13 <alise> Quadrescence: whatever you say zeilberger
13:15:36 -!- tombom has quit (Read error: Connection reset by peer).
13:16:00 <Quadrescence> alise: No, I mean ""infinite"" as in NOT REALLY INFINITE but QUOTE infinite UNQUOTE
13:16:10 <Quadrescence> anyway zeilberger is the coolest ever <3<3<3
13:16:22 -!- tombom has joined.
13:17:22 <alise> damn finitists!
13:17:32 <Quadrescence> :D:D:D:D:D:D
13:17:40 <Quadrescence> I am a finitist
13:17:47 <Quadrescence> just sayin
13:18:09 <lereah_> HEY DUDE, WHAT IS THE CARDINALITY OF [0,1}
13:18:11 <lereah_> ]*
13:18:40 <alise> 74 and one half
13:18:49 <lereah_> That is not a lot
13:18:54 <alise> that's what she said
13:18:58 <lereah_> I expected at least a kilobyte
13:19:08 <alise> yeah well i'm a hyperfinitist
13:20:47 <oerjan> lereah_: what are you doing with that } there
13:21:08 <oklofok> typoing
13:24:24 -!- Quadrescence has quit (Ping timeout: 265 seconds).
13:24:25 <pineapple> alise: early escape today?
13:24:49 <alise> Nope; just not so tired as I normally am.
13:36:16 -!- Quadrescence has joined.
13:54:08 -!- tombom_ has joined.
13:56:49 -!- tombom has quit (Ping timeout: 264 seconds).
13:57:16 -!- tombom__ has joined.
13:58:50 -!- Quadrescence has quit (Ping timeout: 245 seconds).
13:59:47 -!- tombom_ has quit (Ping timeout: 268 seconds).
14:02:00 -!- Quadrescence has joined.
14:05:38 <alise> 05:33:10 <pineapple> how many people here are from the UK, and in their 20s?
14:05:40 <alise> not me also!
14:05:43 <alise> ais is
14:08:54 <Quadrescence> alise is in her 60s
14:09:47 <oerjan> in dog years. or thereabouts.
14:09:52 * oerjan runs away
14:17:52 -!- Gracenotes has quit (Ping timeout: 246 seconds).
14:25:13 <pineapple> alise: yeah... but ey's not here
14:25:37 <alise> a nomicker?
14:25:42 <pineapple> ?
14:25:59 <alise> Spivak pronouns tend to be used most by nomic players.
14:26:05 <alise> Admittedly we usually use e instead of ey.
14:26:06 <oerjan> i suspect SimonRC as well
14:26:19 <alise> oerjan: of playing nomic?
14:26:24 <alise> probable
14:26:40 <alise> oh
14:26:40 <oerjan> no, of being in the uk and in his 20s
14:26:41 <alise> 20 uk
14:26:47 <pineapple> 26
14:26:49 <alise> he is in the uk and 20s seems likely
14:26:55 <pineapple> and... no, not nomic
14:27:14 <alise> You should. :)
14:42:35 -!- Alex3012_ has joined.
14:45:07 -!- Alex3012 has quit (Ping timeout: 265 seconds).
14:45:09 -!- Alex3012_ has changed nick to Alex3012.
14:58:41 <alise> http://esolangs.org/forum/kareha.pl/1192820791/ ;; this is exactly what i want to write my funge in
14:58:46 <alise> too bad it isn't, you know, released
15:09:09 * alise muses over the name of his funge
15:09:34 <alise> If I named it hyph, I couldn't stand to lose the ligature.
15:09:46 <alise> Which is pretty out if I use any sort of low-level language.
15:09:59 <alise> Shiro just makes me think of Japanese.
15:10:10 <alise> And ascus... well... "An ascus (plural asci; Greek for "skin bag") is the sexual spore-bearing cell produced in ascomycete fungi."
15:11:08 <alise> Perhaps ethanol.
15:12:24 <alise> hey guys
15:12:25 <alise> http://en.wikipedia.org/wiki/Metamonad
15:12:51 <alise> http://en.wikipedia.org/wiki/Teliospore; telia/telium?
15:13:02 <alise> http://en.wikipedia.org/wiki/Basidium; basidi(um|a)?
15:13:04 -!- oerjan has quit (Quit: I never m).
15:13:12 <alise> *basidium/basidia, for clearness
15:13:15 <alise> oerjan: :D
15:14:43 <alise> telia just makes me think of tequila (my objections don't have to be rational).
15:15:01 <alise> Basidia is on the long side; basidium jumped off the Cliff of Long.
15:15:13 <alise> So maybe I should stick to the hyphae/shiro/ascus trilogy.
15:16:11 <alise> Well, pronouncing hyphae just makes me think of hyphy, and then I want to jump off a bridge.
15:16:44 <alise> Also, my mouth doesn't seem to enjoy pronouncing shiro... but then, I really don't want to name my funge interpreter "skin bag".
15:18:43 <alise> "This user has never left the Northern Hemisphere." -- interestingly, this also implies you've either immigrated from the southern hemisphere to the northern and then stayed there, or that you also have never left the southern hemisphere :)
15:18:51 <alise> I've never left the Northern, Southern, Eastern or Western hemispheres!
15:50:39 <pineapple> hang on...
15:50:48 <pineapple> what are the other 2 hemispheres called?
15:51:03 -!- lereah_ has quit (Quit: Leaving).
15:52:24 <alise> What do you mean? Land/water hemisphere?
15:52:33 <pineapple> umm...
15:52:45 <alise> I am confused now.
15:53:33 <pineapple> "rotate" the earth such that you're looking at it, such that you can see the "seams" of both the north/south and east/west hemispheres, and you're looking straight at the intersection
15:53:44 <pineapple> what is the hemisphere that you can see called?
15:53:50 <pineapple> also s/can/can't/
15:55:02 <pineapple> colloquially the "front" and the "back"... but i wondered if they had official names
15:56:39 <pineapple> did that make sense?
15:57:39 <pineapple> if not: take a carving knife down the +90 and -90 meridians
16:07:36 <yiyus> not all the hemispheres have a name (the earth has *infinite* hemispheres)
16:27:42 <Deewiant> alise: Why not dust off your previous funge attempt
16:29:03 <alise> Deewiant: You think it had basically any code? No. :)
16:29:22 <alise> yiyus: infinite, are you sure?
16:29:37 <alise> Deewiant: Besides, I want to be some sort of contester as far as speed goes, so out goes Haskell.
16:30:39 <Deewiant> alise: I was thinking that it might get you kick-started a bit so that you don't have to spend a week figuring out a name and then another figuring out a language and another figuring out directory structure or whatever you're wont to do next
16:30:50 <yiyus> alise: an hemisphere is a half of an sphere, and you can cut it through infinite planes
16:30:57 <pineapple> yiyus: well, yes, but... that;s the other "logical pair"
16:31:25 <alise> Deewiant: I haven't weeks! Hopefully I will start coding today.
16:31:26 <Deewiant> pineapple: I don't know of any names for them
16:31:38 <alise> Language is leaning towards C, though detest it I do.
16:31:58 <Deewiant> If you want the æ you can use D ;-)
16:33:06 <alise> *If you want the and uncountable billions of years of suffering, you can use D.
16:33:17 <Deewiant> Well yes, there's a tradeoff
16:34:08 <alise> I don't know why you haven't given up on D. :)
16:34:20 <alise> It would be nice to have Schemeish macros so that I can define my n-dimensional fungespace.
16:34:28 <alise> I guess nobody actually uses dimensions above two, though.
16:34:41 <Deewiant> CCBI2 is such a metaprogramming mess that it'd be insane to switch over at this point
16:35:32 <Deewiant> I have some test cases for trefunge which I guess is a "use"
16:36:09 <alise> There is some sort of editor written in Trefunge, but I don't care.
16:36:22 <Deewiant> Yes, that's the only "actual use" I know of
16:36:28 <Deewiant> Or can recall at this moment
16:37:53 <alise> And unefunge is basically identical to befunge, isn't it?
16:38:18 <Deewiant> It's as identical to befunge as trefunge is :-P
16:38:41 <alise> What errors arise from interpreting Unefunge as one-line Befunge code?
16:38:48 <Deewiant> All possible?
16:38:53 <alise> Really?
16:38:56 <Deewiant> p should pop one coordinate, not two, for example
16:38:59 <alise> So 22+ behaves differently?
16:38:59 <alise> Ah.
16:39:06 <Deewiant> Anything that messes with vectors changes
16:39:09 <alise> Now how much actual Unefunge code is there?
16:39:14 <Deewiant> Zero that I know of
16:39:19 <Deewiant> I don't even have test cases for it :-P
16:39:38 <alise> Also, you guys need to write documentation for how Befunge stuff actually works.
16:39:38 <Deewiant> Mostly because I trust that if my shit works for >1 it works for 1
16:39:48 <Deewiant> What do you mean?
16:39:53 <alise> Since the specification appears to be less of an accurate descriptor of Befunge than, say, the toilet paper I used this morning.
16:40:13 <Deewiant> Mycology tries to be helpful in that regard
16:40:13 <alise> *description
16:40:28 <alise> Right, but it doesn't say "do this", just "ha ha you did this specific thing wrong. do this instead" :-)
16:40:51 <Deewiant> ("do this" `isInfixOf` "ha ha you did this specific thing wrong. do this instead") == True
16:41:35 <alise> == True? A pointless expression if I ever saw one.
16:41:47 <alise> Anyway, Mycology requires you to first make the errors.
16:41:54 <Deewiant> The readme of Mycology explains some of the hairier non-fingerprint stuff
16:42:21 <Deewiant> Assigning every instruction to initially do nothing should work decently well
16:42:50 <alise> Apart from not telling me anything at all.
16:43:04 <alise> But, okay. I suppose the best place to start is indeed Fungespace?
16:43:12 <Deewiant> Mycology should then usually tell you "BAD: foo did bar instead of baz"
16:43:28 <alise> How can it do that if all instructiosn do nothing?
16:43:36 <pineapple> <Deewiant> If you want the æ - the what?
16:43:37 <alise> *instructions
16:43:44 <alise> Your code is expected to create the function run(code) where code is a Befunge-98 source. The code argument will be a string. Lines are separated by "\n".
16:43:44 <alise> http://www.curseforge.com/contests/3-befunge-98/
16:43:46 <alise> that's some contest
16:43:51 <alise> do you think they realised?
16:44:15 <alise> http://www.curseforge.com/contests/3-befunge-98/entries/cyrnus/ I somehow doubt this passes Mycology
16:44:18 <Deewiant> Well for example if I do 01g and expect to get 2 and you instead do nothing, I'll say "BAD: I got 1 instead of 2"
16:44:29 <Deewiant> alise: Hey, that's new.
16:44:32 <alise> Deewiant: Not if the output instruction does nothing.
16:44:42 <pineapple> alise: what's the "gimmick" to your funge?
16:44:47 <alise> -- This is a mostly standard compliant non-concurrent Befunge-98 interpreter
16:44:50 <alise> http://www.curseforge.com/contests/3-befunge-98/entries/vaeyl/
16:44:51 <Deewiant> alise: Well, you can do the obvious ones.
16:44:55 <alise> pineapple: It's just Yet Another Befunge-98 Interpreter.
16:45:08 <alise> Deewiant: Okay. :P
16:45:23 <pineapple> so why is the (i'm not pasting it again, damnit) ligature important?
16:45:33 <alise> Because I want to name it hyph\ae.
16:45:41 <alise> Or shiro, or ascus. But probably not ascus.
16:45:43 <pineapple> aaah
16:45:53 <Deewiant> alise: Read the readme: sanity.bf expects 0123456789.@ to work, IIRC
16:46:02 <alise> Deewiant: Okay, okay, I'll download Mycology.
16:46:09 <pineapple> and there was me thinking of a funge language that uses it as an instruction
16:46:28 * Deewiant runs those others through Mycology just for fun
16:47:07 <alise> I am a preminent Befunge implementer, and wrote the hyph interpreter.
16:47:12 <pineapple> ok... that's a rather gross idea:
16:47:17 <Deewiant> Gah, except they only define the run()
16:47:19 <pineapple> what if a funge could fork?
16:47:48 <alise> pineapple: It can; t.
16:47:55 <alise> Deewiant: Trivial wrapper to do, surely.
16:47:58 <oklofok> 'alise: And ascus... well... "An ascus (plural asci; Greek for "skin bag") is the sexual spore-bearing cell produced in ascomycete fungi."' <<< how about just 'skin bag'?
16:48:03 <alise> oklofok: :D
16:48:14 <pineapple> alise: i don't mean befunge itself, but a befunge variant
16:48:18 <Deewiant> First entry: vaeyl. Doesn't get through the Befunge-93 area.
16:48:21 <Deewiant> GOOD: p modifies space
16:48:21 <Deewiant> Unknown command
16:48:26 <Deewiant> (Unknown command repeated ad infinitum)
16:48:34 <alise> Deewiant: :D
16:48:49 <alise> like putting a retarded kid in a wheelchair through a military obstacle course
16:48:59 <Deewiant> Makes me wonder if any of these do the stuff that's even quite clearly explained in the spec correctly
16:49:42 <Deewiant> It might actually be that it can't handle \r\n
16:49:46 <oklofok> what's going on?
16:49:47 <alise> eminate would be a nice interpreter name
16:49:58 <Deewiant> I'll be nice and try a nuxified one
16:50:02 <alise> oklofok: some kids wrote some "befunge-98" interpreters in lua for some contest
16:50:04 <alise> they suck lol
16:50:24 <Deewiant> Yeah, much better
16:50:42 <Deewiant> vaeyl dies due to k not working as expected, unsurprisingly enough
16:51:01 <Deewiant> GOOD: 0k^ doesn't execute ^
16:51:01 <Deewiant> BAD: 1k[ turns left at [
16:51:01 <Deewiant> BAD: 4k # does nothing and hits #
16:51:01 <Deewiant> BAD: 2k ;;;5 does nothing and hits 5
16:51:01 <Deewiant> BAD: 2k# jumps once from k
16:51:03 <Deewiant> GOOD: ak47k$ leaves 3 fours on stack
16:51:06 <Deewiant> BAD: 2k6 leaves 2 sixes on stack
16:51:12 <Deewiant> I mean, the last /is/ kind of unexpected.
16:51:25 <alise> :D
16:51:29 <alise> how many should it leave?
16:51:33 <Deewiant> three
16:51:48 <alise> right because 2k executes 6 twice, then moves onto 6
16:51:56 <Deewiant> Right
16:52:08 <alise> so nkx, assuming x doesn't fuck with the ip or similar shenanigans = x^(n+1)
16:52:12 <Deewiant> wolftankk is either damn slow or buggy; 20 seconds and counting and it hasn't printed anything
16:52:27 <Deewiant> alise: Unless n is zero
16:52:33 <alise> XD
16:52:38 <alise> Deewiant: It's better to leave TRDS-related surgery until after I've got something working, yeah?
16:52:45 <Deewiant> Very yeah
16:53:21 <Deewiant> I still have a comment in my TRDS impl saying essentially "I don't know wtf to do in this case but this hack seems to work for all existing programs, maybe it's right, maybe not"
16:53:25 <alise> I like the idea of program surgery.
16:53:35 <alise> There should be some sort of new-age non-textual editor based on program surgery.
16:53:38 <Deewiant> (That dates from my firstish implementation of TRDS and still stands)
16:53:45 <Deewiant> Okay, wolftankk isn't doing anything
16:54:35 <oklofok> where are these interps and why do they exist WHAT'S GOING ON
16:54:43 <alise> DEATH
16:54:46 <alise> DEATH IS ALL-SURROUNDING
16:54:55 <Deewiant> jerry did pretty well
16:55:04 <Deewiant> BAD: 0k^ executes ^ at ^
16:55:12 <Deewiant> Come on! That's explicitly in the spec
16:55:19 <Deewiant> BAD: 101-{} doesn't leave stack top as 0 and next as 1
16:55:19 <Deewiant> BAD: fedcba0{05-} doesn't leave 15 on stack
16:55:23 <Deewiant> That latter one is a rare sight
16:55:54 <Deewiant> Hell, I'm not sure that anything that got that far has triggered it previously
16:56:06 <Deewiant> It doesn't have a corresponding GOOD so I mostly forget it's there
16:56:19 <oklofok> 101-{} should leave stack as 1 -1? why not 1 0
16:56:24 <oklofok> err reverse those
16:56:26 <oklofok> :P
16:56:41 <oklofok> isn't {} nop?
16:56:45 <Deewiant> Because read the spec or Mycology's readme :-P
16:56:51 <Deewiant> No it's not
16:57:03 <oklofok> oh okay i must remember it wrongly then
16:57:12 <Deewiant> Anyway, jerry failed at i somehow
16:57:18 <Deewiant> shoulThe directions were generated in the order
16:57:19 <Deewiant> d have pushed (60, 119) as Va
16:57:19 <Deewiant> ? was met 33 timesThe directions were generated in the order
16:57:19 <Deewiant> lua: /home/deewiant/arst.lua:654: bad argument #1 to 'char' (invalid value)
16:57:19 <oklofok> i haven't used 98 features like ever, just read the spec once
16:57:27 <Deewiant> I think it managed to find a t somehow
16:58:34 <Deewiant> cyrnus fails at k as did vaeyl
16:59:11 <Deewiant> So hey, their votes actually reflect how well they did in Mycology :-P
16:59:33 <alise> Perhaps cumulate would be a good name.
16:59:34 <Deewiant> Except cyrnus should be a bit lower because it doesn't have SGML spaces (not tested yet but visible in the output)
16:59:43 <alise> Grr, I really want a decent name.
16:59:45 -!- BeholdMyGlory has joined.
16:59:50 <alise> CCBI and cfunge and RC/Funge are shit names.
16:59:55 <Deewiant> :-D
17:00:02 <Deewiant> What's in a name
17:00:31 <alise> The name is the thing!
17:00:32 <Deewiant> That which we call a Befunge-98 interpreter by any other name would execute as sweet
17:00:41 <alise> The thing is the name, modulo our human vision.
17:00:45 <alise> But non-humans do not use Befunge!
17:01:06 <Deewiant> What's a "good" name to you
17:01:16 <AnMaster> alise, working on a funge interpreter?
17:01:19 <alise> Yes.
17:01:21 <Deewiant> CCBI is from the days when I just called every idea an acronym because I couldn't think of anything
17:01:38 -!- benuphoenix has joined.
17:01:46 <alise> Memorable, short, easily pronounceable (I am aware this one is subjective), no icky connotations, and sthetically pleasing.
17:01:54 <alise> The last one is subjective too; shock and horror.
17:02:06 <AnMaster> alise, don't say "easily pronounceable" to anyone from Finland
17:02:11 <AnMaster> that is a *really* bad move
17:02:15 <alise> :-)
17:02:19 <Deewiant> :-D
17:02:23 <alise> "Aseroe" and "mutinus" are nice possible names...
17:02:30 <alise> but they're just really obscure funge geni
17:02:31 <AnMaster> alise, how do you pronounce them?
17:02:37 <alise> *genera
17:02:44 <AnMaster> hm
17:02:52 <alise> AnMaster: Ass a row and mutin- (ala "mutiny") us.
17:02:58 <alise> Ass a row is admittedly not the most pleasant thing to say.
17:02:59 <AnMaster> hm
17:03:01 <Deewiant> :-D
17:03:11 <alise> I may be wrong about their pronunciations: I'm just guessing.
17:03:18 <alise> The genus name is derived from the Ancient Greek words Asē/αση 'disgust' and roē/ροη 'juice'.
17:03:18 <AnMaster> alise, yeah, hardly better than "as a column"
17:03:22 <alise> Disgust juice, ass a row!
17:04:07 <alise> http://botit.botany.wisc.edu/toms_fungi/images/mut6.jpg <- mutinus
17:04:09 <AnMaster> btw, I'm unlikely to have much time for funge during the next few weeks. Probably not until the summer.
17:04:10 <alise> i suck at this
17:04:12 <Deewiant> alise: Why does pronounceableness matter for a Funge interpreter, it's not like anybody will ever talk about it
17:04:25 <alise> You don't get people talking aloud in your head on IRC?
17:04:29 <Deewiant> alise: You even have a logo!
17:04:37 <Deewiant> No, I don't really subvocalize
17:04:41 <alise> Not only a logo, a phallic logo!
17:04:41 <AnMaster> <alise> You don't get people talking aloud in your head on IRC? <-- no?
17:04:42 <Deewiant> Well, not much
17:04:56 <alise> I'm pretty sure everyone who reads has some sort of voice, because it's just the interpretation of the word.
17:06:19 <AnMaster> nah
17:06:30 <alise> Maybe I'll call it descartes, from the cordinates
17:06:31 <AnMaster> when reading books perhaps
17:06:47 <Deewiant> That'd be lahey
17:07:08 <AnMaster> alise, that begs for a fingerprint ESCH!
17:07:30 <AnMaster> (from MC Escher obviously)
17:07:41 <alise> Why?
17:07:44 <alise> Deewiant: Heh, true.
17:07:52 <alise> How is Lahry intended to be pronounced?
17:07:54 <alise> *Lahey
17:07:58 <AnMaster> alise, that does weird geometry
17:08:06 <AnMaster> Deewiant, btw, who *was* Lahey?
17:08:16 <Deewiant> AnMaster: Can't remember
17:08:20 <Deewiant> alise: Can't know
17:08:24 <alise> Presumably some guy on a mailing list who generalised Fungespace.
17:08:29 <Deewiant> Presumably
17:08:36 <AnMaster> ah yes that sounds familiar
17:10:52 <alise> The problem with funge names is that fungi are basically [...] gross.
17:10:57 <Deewiant> :-)
17:11:07 <AnMaster> varies
17:11:19 -!- benuphoenix has quit (Quit: leaving).
17:12:02 <AnMaster> alise, what about http://en.wikipedia.org/wiki/Amanita_muscaria ?
17:12:19 <alise> That mushroom has smegma.
17:12:24 <Deewiant> http://upload.wikimedia.org/wikipedia/commons/3/31/Amanita_muscaria1.jpg pretty, no
17:12:30 <alise> --was honestly my first reaction.
17:13:00 <AnMaster> you must have a dirty mind?
17:13:09 <alise> No, that's what it really looks like you see.
17:13:32 <AnMaster> not really
17:13:46 <AnMaster> alise, and it is one of the more common toxic mushrooms iirc
17:13:50 <AnMaster> at least in Sweden
17:16:41 <AnMaster> alise, what about chanterelles? (Interwiki indicates that is the English name for them)
17:16:53 <alise> Whatever.
17:16:54 <Deewiant> I always found them ugly
17:17:03 <AnMaster> weird
17:17:13 <AnMaster> I don't like their taste. But ugly? nah
17:17:51 <alise> Reishi is a nice name but I don't feel like the connotations.
17:18:00 <alise> Zomg miraculous chinese health.
17:18:10 <Deewiant> You and your connotations :-P
17:18:17 <alise> yes
17:18:17 -!- FireFly has joined.
17:20:07 <oklofok> is shi death or something in japanese
17:20:10 <AnMaster> alise, as far as I can tell from http://en.wikipedia.org/wiki/Reishi#Lingzhi_research_and_therapeutic_usage it *may* actually work. At least it looks like some studies suggest it may have some beneficial properties
17:20:17 <alise> don't care
17:20:21 <alise> :p
17:20:26 <AnMaster> alise, don't care about?
17:20:27 <Deewiant> Just like your interpreter, it may actually even work ;-)
17:20:36 <AnMaster> Deewiant, :D
17:20:40 <oklofok> pikhq: your time to shine
17:20:50 <Deewiant> oklofok: It is also four
17:21:15 <Deewiant> (And probably a bunch of other things)
17:21:58 <alise> Commandment.
17:22:07 <alise> Ugh, I wish there was a good fast language.
17:22:16 <Deewiant> Don't we all
17:23:17 <AnMaster> alise, you know a lot of plants do have medicinal uses, or had before we started synthesising the active compounds? (Of course, a lot of other plants turned out to be less beneficial ;P)
17:23:28 <oklofok> i wish python wasn't as fast, there's no challenge
17:23:36 <AnMaster> eh...
17:23:40 <alise> AnMaster: Of course. Aspirin.
17:23:48 <AnMaster> alise, that is a famous example yes
17:23:53 <Deewiant> Penicillin
17:23:57 <AnMaster> and that
17:24:00 <AnMaster> and there are quite a lot of other ones
17:24:03 <alise> But, still, google reishi: http://www.google.co.uk/search?q=reishi&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-GB:unofficial&client=firefox-a
17:24:05 -!- tombom_ has joined.
17:24:14 <alise> "Cancer/Reishi". Er, no.
17:24:19 <alise> "Reishi Qi Booster". Er, no.
17:24:19 <Deewiant> alise: Google CCBI?
17:24:28 <alise> Deewiant: I do not have to be shit at naming just because you are :)
17:24:34 <Deewiant> Meh
17:25:45 <AnMaster> alise, err, actually that link I gave before, seems to cite some studies indicating there *are* such effects. However, I lack the expertise (and access to journals) to check the sources it cite.
17:25:55 <AnMaster> just trying to get a balanced view here
17:25:58 <alise> They scientifically measured qi?
17:26:00 <alise> Ha.
17:26:12 <AnMaster> alise, nah, it was "Laboratory studies have shown anti-neoplastic effects of fungal extracts or isolated compounds against some types of cancer. In an animal model, Ganoderma has been reported to prevent cancer metastasis,[10] with potency comparable to Lentinan from Shiitake mushrooms.[11]"
17:26:40 <alise> The site it is on is not so reassuringly reputable:
17:26:43 <alise> "Red Reishi (Ganoderma Lucidum), commonly known as Ling Zhi in Chinese, is a herbal mushroom known to have miraculous health benefits."
17:26:47 <alise> "# When it is taken regularly, it can restore the body to its natural state, enabling all organs to function normally."
17:26:50 <AnMaster> alise, that quote was from wikipedia
17:26:54 <alise> I know.
17:26:59 <AnMaster> wich of course isn't reputable
17:27:01 <alise> I'm saying that whatever the studies it has a connotation.
17:27:12 <alise> I meant the site the Cancer/Reishi page was on.
17:27:20 <Deewiant> alise: Meh, now you got me thinking about renaming CCBI, too. Just pick a name and be done with it :-P
17:27:28 <AnMaster> Deewiant, I like the current name
17:27:32 <AnMaster> what's wrong with it?
17:27:34 <alise> Deewiant: You should name it to something with no more than one capital letter.
17:27:43 <AnMaster> alise, why?
17:27:44 <alise> AnMaster: Says the one who picked the name "cfunge".
17:27:51 <AnMaster> alise, yes and?
17:27:54 -!- tombom__ has quit (Ping timeout: 260 seconds).
17:27:57 <AnMaster> I fail to see what is wrong with cfunge too
17:27:59 <alise> Not exactly a name of stunning eloquence.
17:28:05 <AnMaster> maybe not
17:28:09 <Deewiant> AnMaster: Not: Googlable, pronouncable, æsthetic
17:28:11 <AnMaster> but a good and solid name still
17:28:32 <AnMaster> Deewiant, I can pronounce CCBI quite okay. The double C is a slight issue however
17:28:44 <AnMaster> Deewiant, that it isn't googable is a larger problem
17:28:45 <Deewiant> It's still four syllables
17:29:06 <AnMaster> Deewiant, how do you pronounce SCSI?
17:29:15 <alise> See see bee eye. Crappy pronunciation.
17:29:26 <AnMaster> I heard it something like that wikipedia suggests: "scuzzy"
17:29:28 <alise> Basically this all comes down to a matter of findability, and sthetics.
17:29:42 <Deewiant> AnMaster: Well yes, it has that pronunciation.
17:29:43 <alise> The former is objectively measurable; and some people have the latter, some people don't.
17:29:51 <Deewiant> CCBI doesn't, and isn't very amenable to one. :-P
17:29:53 <alise> I don't see AnMaster as a particularly sthetic person.
17:29:54 <AnMaster> Deewiant, but it isn't spelled like that
17:29:56 <AnMaster> I mean
17:30:04 <AnMaster> there is no vowels in SCSI.
17:30:10 <AnMaster> err wait
17:30:13 <AnMaster> apart from the I
17:30:14 <AnMaster> that is
17:30:19 <Deewiant> Yes, you don't /have/ to pronounce CCBI as four separate letters
17:30:21 <AnMaster> CCBI also has just one
17:30:24 <alise> Deewiant: You can pronounce CCBI as "suzuby".
17:30:27 <AnMaster> Deewiant, that was my point
17:30:29 <Deewiant> Just like you don't have to pronounce SCSI as such
17:30:31 <alise> The z is like the z in "scuzzy".
17:30:32 <AnMaster> alise, nice
17:30:40 <alise> Deewiant: You wouldn't want to, though.
17:30:42 <Deewiant> AnMaster: But my point was that there isn't a very nice such pronunciation of it :-P
17:30:49 <Deewiant> alise: Yep
17:30:59 <AnMaster> alise, actually in Swedish jargon I believe SCSI is pronounced more like "skassi" (that is spelled in Swedish)
17:31:16 <AnMaster> we don't have that "buzzing" z-sound in Swedish
17:31:51 <AnMaster> (and the sk would be quite similar to sc in the English variant)
17:32:19 <AnMaster> Deewiant, SCSI -> scuzzy isn't a very "obvious" pronunciation to me either
17:32:19 <Deewiant> "buzzing" == voiced
17:32:25 <alise> How do you onomatopise the sound a bee makes?
17:32:30 <Deewiant> bzzz
17:32:34 <AnMaster> alise, "surr"?
17:32:35 <alise> In Swedish.
17:32:37 <oklofok> alise: do you like MAKE ROOM FOR MAH SHROOM as a name
17:32:39 <alise> AnMaster: Surr?!
17:32:45 <Deewiant> Surr in Finnish too
17:32:48 <AnMaster> alise, not pronounced like it would be in English at all
17:32:49 <alise> That's shit.
17:33:05 <AnMaster> alise, we have a completely different u sound, and quite a different r sound
17:33:10 <Deewiant> alise: Your r's are shit, so :-P
17:33:19 <AnMaster> yeah what Deewiant said
17:33:28 <alise> Do I have a rhotic accent or not? I forget.
17:33:31 <alise> And is that good or bad? :P
17:33:37 <Deewiant> :-D
17:33:38 <AnMaster> Deewiant, ever heard someone from Skåne pronounce the letter r?
17:33:40 <oklofok> people are boring and unreachable elsewhere, let's try this one
17:33:41 <oklofok> find_consts(f, inputs, g) := for k = 0 to infinity { n_0_loop: for n_0 = 0 to infinity { for n = n_0 to infinity { for i in inputs { if len(trace(f(inputs(i)))) > k*g(n) then continue n_0_loop }; return (n_0, k) } } } }
17:33:45 <oklofok> what does this do
17:34:02 <AnMaster> oklofok, what language?
17:34:05 <Deewiant> Stuff
17:34:08 <oklofok> pseudocode
17:34:14 <AnMaster> hm
17:34:17 <oklofok> there's a good reason for that
17:34:18 <AnMaster> yeah what Deewiant said
17:34:23 <oklofok> i can explain notation if you like
17:34:51 <AnMaster> oklofok, no I already found out what it does. I was coming to the same conclusion as Deewiant, he was a bit quicker than me though.
17:35:07 <oklofok> stuff is correct, but not specific enough
17:35:13 <Deewiant> It looks like it does just what it says, I can't think of any clearer way of expressing that
17:35:14 <alise> Gah, someone just name my funge.
17:35:20 <AnMaster> Deewiant, :D
17:35:21 <Deewiant> alise: mehfunge
17:35:22 <oklofok> right but what consts
17:35:30 <alise> Deewiant: Fuqoo.
17:35:30 <oklofok> what are f, inputs and g
17:35:30 <Deewiant> AnMaster: I'm serious
17:35:35 <alise> Note: oo is pronounced u.
17:35:48 <Deewiant> alise: Funqoo
17:35:53 <Deewiant> Fungoo?
17:35:55 <Deewiant> Gooey-Funge
17:36:06 <Deewiant> oklofok: I don't know, they could be anything as far as I can tell
17:36:08 <oklofok> Deewiant: there's a very short explanation for what it does
17:36:10 <alise> FUNKu
17:36:10 <AnMaster> alise, Hydnum coralloides
17:36:13 <alise> \\\\\\\\
17:36:14 <AnMaster> it looks nice
17:36:19 <AnMaster> http://en.wikipedia.org/wiki/File:Dsc04896-Hydnum-coralloides.jpg
17:36:21 <Deewiant> oklofok: What's trace?
17:36:49 <oklofok> trace(f(x)) runs f with arg x and trace provides a trace of this run
17:36:54 <oklofok> like what f did
17:37:00 <Deewiant> Ookay
17:37:15 <oklofok> actually the explanation would be nicer if i change it a bit...
17:37:23 <AnMaster> oklofok, then how is the trace formatted?
17:37:24 <Deewiant> So it's some kind of big-O thing
17:37:30 <oklofok> yeah
17:37:30 -!- Alex3012 has quit (Read error: Connection reset by peer).
17:37:35 <AnMaster> oklofok, since it seems to take the length of the trace....
17:37:38 <Deewiant> Looking for the appropriate constants
17:37:51 <AnMaster> is it the length of a string of it? Or the length of the trace in number of steps?
17:37:51 <oklofok> the program f's time complexity is O(g), and you look for the invisible constants
17:38:02 <Deewiant> Yep, something like that
17:38:20 <Deewiant> It'd help if it weren't on one line but yeah, I can see that :-P
17:38:31 <oklofok> yes, probably
17:38:33 <AnMaster> ah, hm yes that seems to make some sense
17:38:35 <AnMaster> somewhat
17:39:22 <oklofok> a = -1; for i = 0 to infinity {a = -a}; print a^2
17:39:51 <oklofok> (...don't take offense, that wasn't meant as a challenge, i just wrote it for some reason)
17:40:37 <Deewiant> alise: You do realize you don't need a name to code
17:40:46 <alise> Deewiant: Sure I do: namespaces
17:40:52 <Deewiant> alise: "placeholder"
17:40:58 <alise> Deewiant: Ew.
17:41:09 <Deewiant> You and your æsthetics, again
17:41:30 <Deewiant> alise: You can also code a reasonable deal without using namespaces
17:41:48 <oklofok> aesthetics are the best ethics
17:42:15 <alise> Deewiant: yeah but meh
17:42:15 <oklofok> well is
17:42:17 <alise> :P
17:42:40 -!- atrapado has quit (Quit: Ex-Chat).
17:42:41 <AnMaster> alise, what language btw?
17:42:58 <Deewiant> alise: I'll just think back to my statement about you taking weeks before you get started :-)
17:43:11 <AnMaster> Deewiant, 80% of that is deciding the name
17:44:37 <AnMaster> I just code something that does a bit of what it should. Then I start doing proper version control, extend the program a bit, then I decide I need a non-collection-of-bad-hacks build system, then I code some more and so on
17:44:54 <AnMaster> alise, what would you have called a short utility program for finding duplicate files?
17:45:04 <AnMaster> I guess you wouldn't have picked the one I did: find_dups
17:45:11 <alise> That's more like a function name than a project name.
17:45:14 <alise> I'd call it duplicates.
17:45:19 <alise> $ duplicates foo.txt
17:45:22 <AnMaster> what?
17:45:35 <Deewiant> What what
17:45:36 <AnMaster> it recurses through dirs.
17:45:42 <alise> $ duplicates foo/
17:45:44 <alise> So what?
17:45:53 <AnMaster> yeah but what would it even *do* on a single file
17:46:02 <Deewiant> AnMaster: xargs foo.txt | duplicates
17:46:08 <Deewiant> xargs < foo.txt*
17:46:10 <AnMaster> you do something like ~/bin/find_dups images porn ;)
17:46:15 <Deewiant> Or whatever, gah
17:46:17 <Deewiant> I fail at xargs
17:46:26 <AnMaster> Deewiant, yes completely
17:46:34 <AnMaster> xargs duplicates foo.txt maybe
17:46:40 <Deewiant> No
17:46:44 <Deewiant> xargs duplicates < foo.txt
17:46:48 <AnMaster> argh typoed that
17:46:51 <Deewiant> heh
17:46:58 <Deewiant> xargs is hard ;-P
17:47:02 <AnMaster> Deewiant, but yes that has some downsides when you hit the argument list limit. Since it needs to know *all* the files to compare
17:47:09 <AnMaster> I mean, you want to find all dups
17:47:17 <AnMaster> so if you get one file at a time it is fairly useless
17:47:46 <AnMaster> Deewiant, and I hit the allocation limit on cmd line args. Which on linux is based on something in ulimit nowdays
17:48:18 <Deewiant> AnMaster: Which is why "duplicates foo.txt" instead of xargs
17:49:24 <AnMaster> alise, btw http://en.wikipedia.org/wiki/Agaricus_bisporus
17:49:37 -!- tombom_ has quit (Ping timeout: 246 seconds).
17:49:42 <AnMaster> Deewiant, right. But then you need to provide a list of those in there
17:49:57 <AnMaster> Deewiant, like find huge_dir -type f > foo.txt
17:50:03 <Deewiant> Yes, and that was the implication from the start
17:50:09 <AnMaster> meh
17:50:44 <AnMaster> Deewiant, there are some small theoretical advantages with not doing it
17:50:59 <Deewiant> Sure
17:51:01 <AnMaster> I agree that it is fairly irrelevant for practical purposes
17:51:17 <AnMaster> but consider disk cache. The program uses stat() to read the file sizes
17:51:25 <AnMaster> so it doesn't have to check as many files against each other
17:51:30 <AnMaster> it only need to check those with the same size
17:52:03 <AnMaster> if you process a large enough nested dir tree, the file info and such may no longer be in disk cache
17:52:20 <AnMaster> which they are likely to be after just getting a listing of all files in the dir you are working on
17:52:49 <AnMaster> Deewiant, so theoretically, and depending on how the filesystem stores the file metadata, recursing in the program can be faster ;P
17:53:05 <AnMaster> I very much doubt it matters practically though
17:53:52 <alise> Meh, I'll just call it funge for now as a placeholder.
17:53:54 <alise> Now to decide language :P
17:53:57 <AnMaster> haha
17:53:58 <AnMaster> XD
17:54:11 <Deewiant> alise: Use C as a placeholder
17:54:22 <AnMaster> alise, you know, "funge" is a bad name. It could look like an attack on other implementations. Like trying to steal the show
17:54:27 <AnMaster> not that I suggest that is the case
17:54:32 <AnMaster> just that it may *look* like that
17:54:36 <alise> AnMaster: You really think I'll name it that?
17:54:37 <Deewiant> AnMaster: It's a placeholder
17:54:47 <alise> I said "placeholder"; please look up words in the dictionary before talking about them in future.
17:54:52 <AnMaster> yes but placeholders has a tendency to stick
17:54:53 <Deewiant> AnMaster: Besides, stinkhorn used to be called befunge98...
17:54:57 <AnMaster> Deewiant, heh
17:55:02 <alise> Deewiant: C is a pretty bad placeholder, considering it's nitty and gritty :P
17:55:09 <Deewiant> alise: :-P
17:55:30 <alise> Seriously, I'd write it in C-Scheme in a heartbeat.
17:55:41 <AnMaster> C-Scheme?
17:55:51 <AnMaster> that sounds interesting
17:56:15 <AnMaster> alise, what is C-Scheme?
17:56:28 <alise> http://esolangs.org/forum/kareha.pl/1192820791/4
17:56:28 <AnMaster> google gave me just "Scheme for C programmers" and such
17:56:45 <alise> Full thread including first post with broken BBCode: http://esolangs.org/forum/kareha.pl/1192820791 (nothing interesting really apart from /4)
17:57:59 <AnMaster> where is the current implementation?
17:58:15 <Deewiant> In your dreams
17:58:15 <alise> Obviously nowhere, it's just some random forum post ffs.
17:58:25 <alise> Thus "I'd write it in" not "I'll write it in".
17:58:28 <AnMaster> alise, "All of the above works. It's a pretty damn easy thing to write." fooled me
17:58:45 <Deewiant> AnMaster: "Exists" != "released"
17:58:56 <AnMaster> Deewiant, well yes. I was considering that.
17:59:00 <alise> Of course it's easy to write.
17:59:06 <AnMaster> alise, so first step: Implement C-Scheme
17:59:08 <alise> "So I've written some really basic parser in Scheme which you pass a list of s-expressions and from that it produces C code."
17:59:09 <alise> Simple.
17:59:13 <alise> AnMaster: And /that/ is the task I don't want to do.
17:59:18 <alise> See how this works?
17:59:23 <AnMaster> hah
18:01:51 <alise> I mean, I can't use C directly. The thing doesn't even have proper strings.
18:02:00 <Deewiant> C++!
18:02:17 * Deewiant ducks
18:03:25 <AnMaster> alise, it isn't like Funge uses a lot of strings. A few yes, but not many
18:03:56 <Deewiant> I thought we were talking about C-Scheme
18:04:10 <AnMaster> eh?
18:04:16 <AnMaster> not about "funge"?
18:04:18 <Deewiant> 2010-04-09 19:58:42 ( AnMaster) alise, so first step: Implement C-Scheme
18:04:19 <Deewiant> 2010-04-09 19:58:49 ( alise) AnMaster: And /that/ is the task I don't want to do.
18:04:23 <Deewiant> 2010-04-09 20:01:27 ( alise) I mean, I can't use C directly. The thing doesn't even have proper strings.
18:04:28 <alise> The last one was for funge.
18:04:32 <Deewiant> Darn.
18:04:35 <AnMaster> Deewiant, [can't use it for funge] pretty obviously
18:04:59 <Deewiant> I just couldn't connect requiring strings and Funge.
18:05:10 <AnMaster> alise, idea: call it 0"egnuf">:#,_@
18:05:10 <alise> Well, it's just such an inconvenient language.
18:05:13 <alise> I hate allocating memory.
18:05:16 <alise> Hate it, hate it, hate it.
18:05:28 <AnMaster> <Deewiant> I just couldn't connect requiring strings and Funge. <-- indeed
18:05:36 <Deewiant> I found it improved performance by a veritable crock
18:05:43 <alise> Deewiant: A crock of shit?
18:05:44 <AnMaster> Deewiant, what did? memory allocation? yes
18:05:52 <AnMaster> manual such for funge
18:05:53 <AnMaster> definitely
18:06:11 <AnMaster> funge really doesn't gain very much from a GC most of the time
18:06:25 <Deewiant> alise: A crock of performance, obviously
18:06:36 <alise> Allocating memory in the large, yes; but for tiny temporary structures?
18:06:50 <Deewiant> Fortunately there's this thing called the stack :-P
18:07:32 <Deewiant> TBH I'm still worried that using "new" in some tiny temporary structures is messing up my performance because Tango's GC is so shit
18:07:55 <alise> Well, fuck Tango.
18:08:13 <Deewiant> Not many alternatives :-)
18:08:32 <Deewiant> Of course "shit" is relative
18:08:37 <alise> ~D is an alternative.
18:08:38 <Deewiant> It's decent enough most of the time
18:08:53 <Deewiant> alise: Like said, not any more ;-P
18:09:05 <alise> Well, you suck rabies.
18:09:14 <Deewiant> Actually, I don't
18:09:16 <alise> Maybe I should use ML and compile it with MLton or something, but ML is crufty.
18:09:22 <alise> Deewiant: OR DO YOU?
18:09:29 <Deewiant> I'm fairly sure I don't
18:09:34 <Deewiant> OCaml?
18:09:49 <Deewiant> Ugly, but maybe preferable to C by your standards
18:09:50 <alise> If ML is crufty, what do you think my opinion of OCaml is?
18:10:06 <Deewiant> Better than that of C?
18:10:16 <alise> That thing is like Cruft Central in Cruft Town, in Cruftaska, "State of the Cruft", in the good old United States of Cruft.
18:10:30 <Deewiant> How about Factor
18:10:43 <AnMaster> <alise> ~D is an alternative. <-- "about D"?
18:10:44 <alise> Ehh, no.
18:10:49 <AnMaster> or is it a weird smiley?
18:10:49 <alise> AnMaster: "not".
18:10:53 <alise> lern2asciilogic
18:11:02 <AnMaster> alise, oh ¬
18:11:13 <AnMaster> alise, try altgr-shift-`
18:11:19 <Deewiant> ¤
18:11:19 <AnMaster> that is the dead key `
18:11:27 <AnMaster> Deewiant, that is shift-4 for me
18:11:29 <AnMaster> ¤
18:11:31 <alise> For one, I have no dead keys.
18:11:31 <Deewiant> 4
18:11:35 <alise> For two, my alt-gr key is an alt.
18:11:37 <AnMaster> Deewiant, shift-4 is 4?
18:11:39 <alise> For three, no.
18:11:41 <Deewiant> Yep
18:11:47 <alise> Oh, I know!
18:11:48 <AnMaster> Deewiant, weird
18:11:50 <alise> I'll write it in MYTHRYL!
18:12:15 <AnMaster> what the heck is that?
18:12:18 <Deewiant> heh
18:12:24 <AnMaster> It sounds like a fantasy parody
18:12:27 <alise> One of our favourite language scapegoats: http://mythryl.org/
18:12:33 <alise> It's like ML but shittier!
18:12:55 <AnMaster> alise, worse than "Plain English"? or whatever the name was
18:12:59 <alise> Er, no.
18:13:02 <alise> But Plain English isn't functional.
18:13:05 <AnMaster> well no worry then
18:14:09 <alise> Wow, Mythryl has "stipulate X herein Y end", which is the same as "Y where X end".
18:14:23 <alise> Stupefying.
18:15:32 <Deewiant> #define stipulate
18:15:36 <Deewiant> #define herein where
18:15:43 <Deewiant> #define end
18:15:43 <alise> Wrong.
18:15:45 <alise> Read my sentence again.
18:15:48 <Deewiant> Haskell == Mythryl
18:15:53 <Deewiant> Oh, darn
18:15:58 <Deewiant> Meh
18:15:59 <alise> It's just, the terminology :D
18:15:59 <AnMaster> Deewiant, oh darn what?
18:16:06 <Deewiant> I flipped it
18:16:17 <AnMaster> heh
18:16:34 <alise> basically i want something like c that can manage memory and has a nicer syntax
18:16:36 <alise> something with := in it.
18:16:49 <AnMaster> alise, presumably you would dislike this mushroom too? http://en.wikipedia.org/wiki/File:Agaricus_bisporus_%28Cup_mushroom,_doubled%29.jpg
18:16:56 <AnMaster> Not that I can see anything wrong in it
18:17:03 <alise> AnMaster: You don't find that gross in any way?
18:17:10 <AnMaster> alise, no? why would it be?
18:17:18 <AnMaster> trees fuse together too sometimes
18:17:34 <alise> Look at it - like, with your eyes.
18:17:51 <AnMaster> it's nature. I'm not a biology student, but when younger I was quite interested in biology. Spent a lot of time out in nature.
18:18:30 <AnMaster> you know, forests, travelling by foot. And even seeing the day star!
18:18:50 <AnMaster> alise, but no I don't see anything gross.
18:18:55 <AnMaster> It's unusual certainly
18:18:56 <alise> For one, take your condescending "I'm-in-touch-with-nature" out back and shoot it. For two, I'm not dissing the mushroom, I'm just saying it looks gross.
18:19:18 <AnMaster> alise, what I was saying was "I *was* in touch with nature"
18:19:23 <AnMaster> I'm not saying I still am
18:19:34 <AnMaster> the "travelling by foot" bit put me off nowdays
18:19:35 <alise> Just as condescending.
18:19:40 <oklofok> the mushroom does not look gross
18:19:43 <AnMaster> puts*
18:19:48 <alise> The mushroom is SEXY!
18:19:52 <AnMaster> what?
18:20:22 <AnMaster> what the *hell* are you seeing in it. Heck you don't need ink blots....
18:20:35 <AnMaster> you just need a mushroom, and not even eating it.
18:20:57 <alise> So thinking eating a mushroom is sexy is OK? :P
18:21:19 <AnMaster> alise, I have no idea. I'm not a psychologist.
18:21:26 <AnMaster> alise, btw http://en.wikipedia.org/wiki/File:Champignons_Agaricus.jpg
18:21:35 <AnMaster> now don't say that is gross too
18:21:58 <AnMaster> or http://en.wikipedia.org/wiki/File:BoroughMarketMushrooms.jpg
18:22:19 <AnMaster> alise, I agree http://en.wikipedia.org/wiki/File:Jreishi2.jpg looks gross though
18:25:25 <alise> Deewiant: Gah, you're right; I'm stuck on language.
18:25:33 <AnMaster> alise, why not haskell?
18:25:34 <alise> There are no /good/ languages. Why not?
18:25:44 <alise> AnMaster: Haskell sucks :P Okay, it doesn't suck, but it's too slow for this.
18:25:44 <AnMaster> alise, you praised haskell before
18:25:46 <alise> And it has warts.
18:25:56 <AnMaster> alise, okay. Agda then?
18:25:57 <AnMaster> Coq?
18:26:02 <Deewiant> CoqFunge
18:26:26 <AnMaster> I bet there isn't a befunge98 implementation in agda before
18:26:35 <AnMaster> befunge93 *maaaybe* but also unlikely
18:26:40 <alise> Agda is most certainly /not/ anything more than a research tool.
18:26:41 <pikhq> oklofok: "Shi" is the number 4.
18:26:47 <pikhq> oklofok: "Shin" is death.
18:26:48 <AnMaster> alise, and?
18:26:54 <alise> It's been proved inconsistent several times -- admittedly those are usually fixed quickly --
18:27:08 <alise> and it's basically a mathematical research vehicle with no programming conveniences.
18:27:15 <AnMaster> alise, what about coq then?
18:27:20 <Deewiant> pikhq: Eh? Isn't "shin" "new"?
18:27:23 <alise> Coq could do it if not for the fact that, you know -- BEFUNGE IS TURING COMPLETE, and all Coq programs terminate.
18:27:28 <alise> Plus, again, there's very little programming facility.
18:27:42 <AnMaster> alise, but befunge is not in practise TC. It may run forever though
18:27:48 <AnMaster> so that is indeed an issue
18:27:49 <alise> See the latter.
18:28:03 <AnMaster> true
18:28:05 <alise> Coq/Agda are not appropriate tools for this task in the slightest.
18:28:10 <pikhq> Deewiant: Also true.
18:28:28 <Deewiant> pikhq: I.e. I maintain that "shi" == death
18:28:30 <pikhq> Deewiant: Though, "shin" is only "new" in compounds.
18:28:58 -!- tombom_ has joined.
18:29:06 <AnMaster> pikhq, Deewiant: what language?
18:29:15 <Deewiant> Nihongo
18:29:15 <alise> AnMaster: Japanese.
18:29:15 <pikhq> AnMaster: Japanese.
18:29:21 <AnMaster> pikhq, okay
18:29:23 <AnMaster> Deewiant, what?
18:29:27 <alise> 日本語
18:29:43 <pikhq> Deewiant: Strictly speaking, it's more that "shini" is "death" and it gets elided to "shin".
18:29:57 <AnMaster> alise, are the shelves adjustable in the first one?
18:30:02 <alise> AnMaster: Har har har.
18:30:03 <AnMaster> (sorry for that one)
18:30:09 <Deewiant> "shini" I've only seen in compounds myself :-P
18:30:31 <AnMaster> Deewiant, you speak Japanese?
18:30:37 <Deewiant> Very little
18:30:39 <AnMaster> heh
18:30:42 <Deewiant> Understand a bit more
18:30:45 <AnMaster> more than I do certainly
18:30:52 <pikhq> 君が勉強するはずと思う。
18:31:04 <AnMaster> pikhq, the degree sign is usually at the top
18:31:17 <pikhq> AnMaster: Good thing that's a period, then.
18:31:18 <Deewiant> Read kana/kanji, not at all any more (used to know the kana decently)
18:31:29 <AnMaster> (yes I'm being silly I know)
18:31:46 <pikhq> Dude, you don't remember kana? That sucketh.
18:31:53 * AnMaster threatens Deewiant using a kata instead
18:32:12 <Deewiant> No, what sucketh is that I don't know of any decent kana->romajifier :-P
18:32:40 <pikhq> Thou shalt not use romaji for Japanese.
18:32:43 <alise> http://nihongo.j-talk.com/kanji/? :-P
18:32:43 <Deewiant> But anyway, at least wiktionary agrees with me on the shi thing so I must be right
18:33:04 <Deewiant> Awesome
18:33:07 <Deewiant> It sucketh no more
18:33:10 <alise> I just googled for it.
18:33:14 <alise> "kana to romaji"
18:33:15 <AnMaster> there is only one good reply from pikhq to what Deewiant said
18:33:19 <pikhq> (汝はローマ字を使わなくては行けない。)
18:33:20 * AnMaster hopes he uses it
18:33:22 <AnMaster> meh no
18:33:28 <AnMaster> I'll do it for him then
18:33:29 <Deewiant> alise: It's probably newer than my previous Google
18:33:40 <AnMaster> <pikhq> Deewiant, shi-t
18:33:53 <pikhq> AnMaster: Hah.
18:33:56 <AnMaster> (where is oerjan btw?)
18:34:12 <Deewiant> pikhq: Yeah, well, it's easier than learning the kana :-P
18:34:14 <AnMaster> (I can't stand the pressure of doing this)
18:34:27 <pikhq> Deewiant: Which is a two day project.
18:34:44 <pikhq> Basically what I'm saying is you suck and are illiterate in Japanese. :P
18:34:45 <Deewiant> That must be repeated once a month
18:34:52 <alise> Deewiant: I knew it existed ~2007
18:34:53 <Deewiant> I agree, I am
18:34:54 <alise> or thereabouts
18:34:59 <pikhq> Or... You could just keep learning Japanese.
18:35:11 <pikhq> Like, read stuff in it.
18:35:12 <AnMaster> pikhq, but why?
18:35:22 <Deewiant> Yeah, but that's, like, work :-P
18:35:27 <AnMaster> what use do you have for it?
18:35:32 <alise> TO UNDERSTAND ANIME AS IT WAS TRULY INTENDED TO BE UNDERSTOOD, AS A VIABLE ARTISTIC WORK
18:35:36 <alise> obviously
18:35:38 <alise> :D
18:35:43 <pikhq> AnMaster: Well, if he wants to actually speak Japanese.
18:35:56 <pikhq> alise: Dude, anime is only slightly less niche in Japan than it is here. :)
18:35:56 <AnMaster> pikhq, oh? Did he?
18:35:58 <AnMaster> I guess then
18:36:28 <pikhq> If he doesn't desire that, than, well. He'll just continue not speaking it. :P
18:37:33 <alise> pikhq: From what I gather it's more than slightly less niche.
18:37:35 <Deewiant> Yes, that's pretty much my expectation. :-P
18:38:10 <pikhq> alise: With the exception of a few works that have gotten popular, it's pretty much seen as "that thing severe geeks enjoy".
18:40:02 <AnMaster> I thought it was a multimillion industry or something?
18:40:54 <Deewiant> Turns out there are a lot of geeks
18:41:11 <pikhq> Yes... What's popular is absurdly popular.
18:41:27 <AnMaster> pikhq, isn't pokemon in anime style or something iirc? for example
18:41:41 <pikhq> Pokemon, for instance, is absurdly popular amongst children.
18:41:42 <AnMaster> or at least some pokemon movies or whatever
18:41:59 <AnMaster> pikhq, yes and isn't there some zdragonball or something?
18:42:02 <pikhq> Most of the popular anime are for children, really...
18:42:25 <pikhq> Dragonball Z was based on a popular manga; the show was not as well-remembered.
18:42:28 <alise> http://pastie.org/911859.txt?key=x3j8viguq8vwfm5prgwo8q A list structure, and two map functions, in an imaginary language that's something vaguely unlike C.
18:42:40 <AnMaster> pikhq, can't tell the difference. Since I'm *not* such a geek I guess
18:42:56 <pikhq> AnMaster: Manga are comic books.
18:43:02 <AnMaster> pikhq, ah okay
18:43:19 <pikhq> Which *aren't* all that niche.
18:43:36 <AnMaster> huh
18:43:42 <fizzie> zdragonball, it's compressed.
18:43:50 <Deewiant> dragonball.Z
18:43:51 <alise> Well, right, maybe I was misremembering what was niche or not.
18:43:59 <alise> I do distinctly remember that manga is relatively mainstream.
18:44:01 <pikhq> fizzie: It deserves it.
18:44:08 <pikhq> It is.
18:44:13 <alise> As we know, all anime is really for children anyway, and only geeks with no social life watch it. They're usually perverted, too.
18:44:22 <AnMaster> btw looking at wikipedia's article on anime, http://en.wikipedia.org/wiki/File:Modernanime.jpg <-- I certainly couldn't tell that the second column, second image from the bottom was anime
18:44:26 <AnMaster> some of the other ones were quite easy
18:44:27 <fizzie> Also tentacles are involved, I know that much!
18:44:35 <pikhq> alise: Not all anime is for children. Oh, lord no.
18:44:48 <alise> pikhq: You just say that because you have no life.
18:44:55 <alise> (P.S. I may be trolling you.)
18:45:08 <Deewiant> pikhq: Do you recognize that top-left one from AnMaster's? I think I do but can't put my finger on it
18:45:26 <pikhq> Deewiant: Dead Leaves.
18:45:32 <alise> Deewiant: You could have read the description.
18:45:37 <Deewiant> Okay, then I didn't
18:45:37 <pikhq> That was a positively *fucked up* movie.
18:45:39 <AnMaster> don't call it mine. It is on wikipedia simply.
18:46:00 <Deewiant> alise: Oh, he actually linked to the page and not the pic; I just automatically clicked on the pic and then forgot
18:46:02 <alise> <AnMaster> It is the devil! No! I shall not be associated with it! Aaaaah!
18:46:34 <AnMaster> alise, nah, I just don't want it to tarnish my trademark ;P
18:46:35 <Deewiant> That also reminded me that I really should re-watch Lain some day
18:46:59 <AnMaster> Remember: AnMaster®
18:47:08 <Deewiant> AnMaste®
18:47:14 <alise> AnMaster. Does what it says on the tin.
18:47:19 <AnMaster> :D
18:47:24 <AnMaster> Your search - ® - did not match any documents.
18:47:24 <AnMaster> wth
18:47:27 <AnMaster> google fails
18:47:33 <AnMaster> surely wikipedia will have an article on it
18:47:50 <fizzie> The Lain picture wasn't very instantly recognizable. (At least to someone who has only seen it once quite a long time ago.)
18:48:10 <Deewiant> No, not very.
18:49:10 <Deewiant> alise: That pastie: see, now you're inventing languages instead of implementing funge
18:49:15 <alise> Deewiant: I KNOW
18:49:26 <alise> Deewiant: SAVE ME!!!
18:49:34 <Deewiant> alise: http://gcc.gnu.org/
18:49:53 <alise> I'd rather hang myself with a crisp made out of rotten marshmallows.
18:49:59 <alise> Which would, incidentally, be a rather interesting task.
18:50:00 <Deewiant> http://clang.llvm.org/ if you're the more adventurous type
18:50:24 <alise> Join us now and shaare the software
18:50:30 <alise> You'll be free, hackers, you'll be, freeeeeeeee
18:50:31 <Deewiant> alise: Whatever happened to "leaning toward C"? :-P
18:50:36 <alise> Deewiant: I realised C sucked.
18:50:47 <Deewiant> Did you forget that everything sucks?
18:50:59 <alise> yeah but some things suck less
18:51:15 <Deewiant> So just put everything on the suck-scale and take the max
18:51:25 <Deewiant> Or min, whichever
18:52:10 <Deewiant> Or just forget the whole writing-a-program idea since it's quite clear you won't be getting very far ;-P
18:52:21 <Deewiant> AFK for a bit ->
18:52:41 -!- alise_ has joined.
18:52:54 <alise_> <Deewiant> So just put everything on the suck-scale and take the max
18:52:54 <alise_> <Deewiant> Or min, whichever
18:52:54 <alise_> <alise> I can't consider every language.
18:52:54 <alise_> <alise> Ping.
18:53:39 <fizzie> That didn't go so very well, given the just-before-your-join <Deewiant> AFK for a bit ->
18:53:44 <fizzie> Your timing, it is not optimal.
18:53:52 * Sgeo_ has a Data Structures assignment
18:53:59 <alise_> :-)
18:54:05 <Sgeo_> Implement a stack, and implement a queue
18:54:14 <alise_> Sgeo_: How difficult.
18:54:18 <Sgeo_> The stack is so.. easy in Haskell, the queue only slightly less so
18:54:26 <alise_> You don't say.
18:54:34 <alise_> It's not technically the mutable structures they want though
18:54:36 <Sgeo_> alise_, the assignment is in C++ though
18:55:23 <alise_> fizzie: You provide me with encouraging language suggestions.
18:55:31 <fizzie> alise: Forth.
18:55:55 <alise_> fizzie: I love Forth, but... no.
18:55:59 -!- alise has quit (Ping timeout: 258 seconds).
18:56:10 <fizzie> Glass?
18:56:18 <alise_> I love Glass, but... no.
18:56:25 <Sgeo_> HQ9+
18:56:37 <Sgeo_> </silly>
18:56:40 <fizzie> There was that one thing, the name of which I always forget.
18:56:46 <alise_> " " HQ9+, "... ".
18:56:55 <alise_> fizzie: Describe it?
18:57:23 <oklofok> "Deewiant: So just put everything on the suck-scale and take the max" <<< what if the lattice of languages w.r.t. sucking is not a complete lattice?!?
18:57:37 <oklofok> then the sup is not a language!
18:57:41 <oklofok> *might not be
18:57:46 <fizzie> It looked a bit like English prose, and you had some sort of objects or classes or such named after famous people, at least in examples or something.
18:57:58 <alise_> oklofok: clearly I'd just flesh out whatever language it returned
18:58:04 <alise_> by picking from less-optimally-nonsucking languages
18:58:15 <alise_> fizzie: Shakespeare?
18:58:21 <alise_> Ork?
18:58:29 <Sgeo_> What's Ork?
18:58:59 <fizzie> It was probably Ork I was thinking about.
18:59:13 <fizzie> I was writing something in Ork, and kept naming things after mathematicians.
18:59:27 <fizzie> Or physicists.
18:59:29 <fizzie> Or something.
19:00:28 <fizzie> Right, there was the class "mathematician", and I was trying to instantiate all objects of it using names of thematically appropriate mathematicians, and it was taking a long time to come up with suitable ones.
19:00:39 <alise_> :-D
19:00:47 <alise_> Sounds like my predicament.
19:02:16 <fizzie> Oh, right; I did a class for bitwise operations called "logician" to compute CRCs in Ork, and had to think of logicians.
19:02:23 <fizzie> When a checksum computer is to initialize a number:
19:02:23 <fizzie> I have a logician called Frege.
19:02:23 <fizzie> Frege is to lsb result.
19:02:23 <fizzie> There is a mathematician called Laplace.
19:02:23 <fizzie> Laplace's first operand is result.
19:02:25 <fizzie> I like the lang.
19:02:32 <alise_> Frege, Tarski, O'Connor.
19:02:47 <alise_> It probably says something that I put Russell O'Connor on that level.
19:03:49 <alise_> Oh, and Goedel of course.
19:04:05 <alise_> Peirce.
19:04:44 <pikhq> Sgeo_: Those are very easy data structures.
19:05:08 <Deewiant> oklofok: ... it probably is a complete lattice.
19:05:27 <alise_> Deewiant: I find that really funny and I don't know why
19:05:29 <Deewiant> oklofok: Given that it's finite and all.
19:05:30 <alise_> (what you just said)
19:05:34 <alise_> XD
19:05:39 <oklofok> :)
19:05:39 <fizzie> Deewiant: Just so you know, the AI competition deadline is today; I guess you weren't going to do it?
19:05:42 <oklofok> but...
19:06:03 <oklofok> for instance C could be considered the union of C_k where k is the size of bytes
19:06:08 <oklofok> and anyway
19:06:08 <Deewiant> fizzie: I was going to a long while ago and then I missed the signup-deadline and decided not to
19:06:19 <oklofok> there must be parametrized language families
19:06:21 <Deewiant> Incidentally, the lecture slides for that course are poor at best
19:06:39 <oklofok> so what if say we had k-dimensional funges as separate languages, and k+1 was better than k
19:06:49 <oklofok> then clearly at least that sublattice wouldn't be complete
19:07:12 <Deewiant> oklofok: You assume a nonsensity
19:07:35 <oklofok> what nonsensity
19:07:53 <fizzie> Deewiant: Even the old lecturer -- whose slides they are -- was mostly using the book's slide-set last year. I don't really know what the lectures this year have been like.
19:07:54 <Deewiant> I assume that parametrizable languages can be thunk of as one language
19:08:14 <Sgeo_> pikhq, I know
19:08:21 <Sgeo_> I just don't feel like writing C++
19:08:29 <Deewiant> fizzie: I don't know about the lectures themselves either
19:08:39 <oklofok> Deewiant: no, because you will have to choose the parameters.
19:11:06 <fizzie> Deewiant: 26 submissions so far out of 52 groups. But there's still some three hours to the deadline.
19:11:13 <AnMaster> <Deewiant> http://clang.llvm.org/ if you're the more adventurous type <-- really? It works quite well in my experience
19:11:26 <AnMaster> [*] for certain values of work
19:11:49 <AnMaster> <alise> yeah but some things suck less <--- ah, go!
19:11:50 <Deewiant> Gah, I'm being flooded
19:11:55 <AnMaster> Deewiant, with what?
19:11:57 <AnMaster> Deewiant, water?
19:11:58 <AnMaster> wine?
19:12:01 <Deewiant> GAH
19:12:01 <AnMaster> IP packet?
19:12:04 <fizzie> Deewiant: More stuff more stuff! More stuff!
19:12:10 <AnMaster> IRC text lines?
19:12:15 <fizzie> I assume that last one.
19:12:23 -!- Gracenotes has joined.
19:12:23 <Deewiant> oklofok: You can't be the one choosing them since we're looking at implemented ones
19:12:45 <Deewiant> fizzie: Aye, there'll probably be another 15 at least soon enough
19:12:50 <oklofok> so if one program implemented both haskell and C, would you say haskell = C?
19:12:55 <Deewiant> AnMaster: "for certain values" being the adventurosity
19:13:08 <fizzie> Deewiant's like a batch system! You submit a comment, it ends up in his processing queue, then a reply comes a lot later.
19:13:10 <oklofok> or is it that two languages are different iff they can be separated by implementation
19:13:19 <oklofok> that is, there's a language that only implements one
19:13:34 <Deewiant> The latter
19:13:41 <oklofok> ah
19:13:42 <Deewiant> (Obviously ;-P)
19:13:44 <oklofok> well i guess that makes sense
19:14:09 <Deewiant> fizzie: Yes.
19:14:32 <oklofok> so okay
19:15:04 <oklofok> the space of all programs now has a topology with as basis the open sets {L | I implements L}
19:15:05 <AnMaster> <Deewiant> AnMaster: "for certain values" being the adventurosity <-- yes, but |values| has increased with time
19:15:14 <AnMaster> anyway
19:15:18 <AnMaster> alise_: why not Go?
19:15:37 <Deewiant> AnMaster: But it's still less than GCC's
19:15:42 <alise_> AnMaster: "dunno"
19:15:45 <alise_> don't feel like using go
19:16:21 <Deewiant> fizzie: I also have something with a deadline for 23:59 that I've yet to finish
19:17:12 <AnMaster> alise_, that rhymes
19:17:13 <AnMaster> nice
19:17:32 <fizzie> Deewiant: That's no problem; the effective AI competition deadline is actually 00:05 tomorrow.
19:18:03 <Deewiant> alise_: BitC?
19:18:34 <alise_> It's a bit of a pipe-dream project. And the author disappeared to work for the Evil Empire for a while.
19:18:38 <AnMaster> Deewiant, bah, you have more time left still than I had earlier today
19:18:48 <AnMaster> and I sent it in with just half an hour to go
19:18:58 <Deewiant> Difference is that I'm being flooded
19:19:09 <AnMaster> Deewiant, so ignore irc?
19:19:09 <fizzie> Deewiant: Yet you keep reading.
19:19:10 <AnMaster> I did
19:19:17 <Sgeo_> BitC?
19:19:23 <AnMaster> I just closed irc client, having bouncer on logging
19:19:32 <AnMaster> alise_, what? the BitC author?
19:19:34 <Deewiant> I'd rather procrastinate
19:19:37 <alise_> AnMaster: Yes.
19:19:40 <AnMaster> and evil empire = Microsoft?
19:19:41 <alise_> Same guy as the Coyotos guy.
19:19:42 <alise_> Yes.
19:19:47 <AnMaster> huh
19:19:53 <AnMaster> alise_, that explains why it became inactive
19:19:58 <alise_> Yes; he's back now though.
19:20:17 <AnMaster> alise_, but won't MS sue him if he ever writes anything open source basically?
19:21:07 <alise_> No?
19:21:14 <alise_> He doesn't work for Microsoft any more.
19:21:22 <AnMaster> well, he saw their code...
19:21:28 <AnMaster> some of it at least
19:24:05 <AnMaster> // Gregor can't spell ...
19:24:05 <AnMaster> #define ORK_instanciate ORK_instantiate
19:24:06 <AnMaster> nice one
19:24:10 <AnMaster> from ORK source code
19:24:16 * AnMaster looks at Gregor
19:24:31 * Sgeo_ googles
19:24:38 <AnMaster> Sgeo_, try ORK esolang
19:24:40 <Sgeo_> BitC isn't an esolang?
19:24:42 <AnMaster> it is on codu anyway
19:24:48 <AnMaster> Sgeo_, .... of course not
19:24:49 <pikhq> AnMaster: Believe it or not, Microsoft's legal department isn't *that* crazy.
19:25:01 <Sgeo_> AnMaster, I didn't know what it was until I googled it!
19:25:05 <AnMaster> pikhq, I'm leaning towards "not"
19:25:05 <AnMaster> ;P
19:25:19 <Deewiant> http://james-iry.blogspot.com/2008/07/java-is-too-academic.html
19:25:29 <AnMaster> Deewiant, what? *clicks link*
19:25:35 <pikhq> AnMaster: He couldn't work on WINE or ReactOS, but that's mostly a CYA manuever.
19:25:56 <AnMaster> Deewiant, is it sarcastic?
19:26:01 <AnMaster> I hope it is
19:26:15 <Deewiant> I'm not your personal sarcasm-detector
19:26:18 <AnMaster> pikhq, CYA?
19:26:30 <AnMaster> Deewiant, then who is?
19:26:38 <Deewiant> I'm not your secretary either
19:26:46 <AnMaster> Deewiant, then what are you?
19:27:21 <Deewiant> A member of the set people \ { AnMaster's sarcasm-detector, AnMaster's secretary }
19:27:27 <pikhq> AnMaster: Cover Your Ass
19:27:33 -!- coppro has joined.
19:27:37 <AnMaster> Deewiant, heh
19:27:47 <AnMaster> pikhq, aha
19:28:34 <alise_> Of course it's sarcasm you nitwit.
19:28:36 <alise_> He's a functional programmer.
19:28:54 * alise_ wonders whether writing p->q as pq is nice or just horrible.
19:29:05 <alise_> p /\ q = (pqr)r
19:29:09 <alise_> p \/ q = (pr)(qr)r
19:29:24 <Deewiant> alise_: How's the funge
19:29:38 <alise_> :))))
19:29:40 <alise_> pick a lang
19:29:46 <fizzie> Pick a card, any card.
19:30:10 <Deewiant> alise_: We've got Python and Perl but not Ruby or Tcl
19:30:18 <oklofok> Deewiant: how's the deadlines
19:30:30 <fizzie> oklofok: How do you like them apples?
19:30:30 <Deewiant> I'm working on it in the background
19:30:38 <alise_> Deewiant: Ruby yeck, Tcl yeck
19:31:08 <Deewiant> alise_: You asked me to pick a lang, not you
19:31:15 <Deewiant> Why ask if you'll reject
19:31:20 <Sgeo_> What was wrong with Haskell?
19:31:23 <Deewiant> Speed
19:31:36 <Sgeo_> Abuse unboxed types!
19:31:40 <fizzie> Speed, the need for.
19:31:44 <AnMaster> <alise_> Of course it's sarcasm you nitwit. <-- you are a good sarcasm detector. But I would prefer Mk.2, where they fixed some major bugs, such as: irritating wooosh sound no longer produced, no longer applies irony or sarcasm itself, fixed bugs that could cause flamewars
19:31:52 <Deewiant> Sgeo_: Let me guess: "yeck"
19:31:58 <oklofok> fizzie: are you being a bot?
19:32:12 <fizzie> oklofok: I am channeling the spirit of fungot, yerrrs.
19:32:13 <Deewiant> A bot, the being of.
19:32:13 <fungot> fizzie: fnord) f(x, y) type requires that ruby extension allowing you to see which way it is.
19:32:23 <Deewiant> alise_: See, fungot recommends ruby too
19:32:24 <fungot> Deewiant: they look exactly identical here.)
19:32:39 <AnMaster> alise_, okay what about scheme?
19:32:39 <Deewiant> Well, or then it just can't tell the difference between ruby and other languages
19:32:39 <Sgeo_> Isn't Ruby also considered slow?
19:32:46 <alise_> AnMaster: Not fast 'nuff.
19:32:48 <AnMaster> alise_, prolog?
19:32:49 <Deewiant> Sgeo_: Shh ;-)
19:32:59 <AnMaster> alise_, oh you want fast? I know the perfect language then
19:33:01 <AnMaster> alise_, VHDL
19:33:10 <Deewiant> alise_: I think ML was your best idea yet
19:33:10 <AnMaster> or Verilog
19:33:22 <Sgeo_> VHDL == hardware stuff?
19:33:28 <Sgeo_> Erm, simulation of hardware stuff?
19:33:38 <alise_> Deewiant: Perhaps.
19:33:38 <AnMaster> Sgeo_, what exactly is your question?
19:33:43 <alise_> Deewiant: I don't really... know ML, though.
19:33:50 <AnMaster> alise_, anyway, why not VHDL
19:33:56 <Sgeo_> AnMaster, trying to figure out if my vague recollection is correct
19:33:57 <Deewiant> alise_: So learn?
19:34:08 <AnMaster> Sgeo_, it is a language for programming FPGAs and such in
19:34:10 <Sgeo_> *gasp* Something alise_ doesn't know!
19:34:18 <AnMaster> of course you can simulate it too
19:34:19 <alise_> Deewiant: Yeah, but...
19:34:26 <alise_> Deewiant: I want something /fast/ fast.
19:34:27 <Deewiant> I just got handed a project to write an anti-virus engine in Python, which I don't know, within a month, one week of which I'll be away
19:34:31 <AnMaster> alise_, asm!
19:34:42 <Deewiant> alise_: Haven't you heard of writing fast-fast things in C/asm?
19:34:44 <alise_> If there was a compiler that basically did whole-program specialisation... now that would be cool.
19:34:46 <AnMaster> Deewiant, what?
19:34:48 <Sgeo_> I imagine simulating it is slower than just writing C
19:34:49 <alise_> Deewiant: So don't.
19:34:56 <alise_> Yeah but not fast fast fast.
19:35:09 <Sgeo_> Of course, with an FPGA [programmable hardware, I guess?], it would probably be faster than C
19:35:13 <AnMaster> Sgeo_, perhaps. Useful for testing it. Running under a debugger is slower than not doing so as well often
19:35:17 <Deewiant> alise_: I meant, take the bits that need to be fast-fast instead of fast and do them in C/asm
19:35:24 <Deewiant> You know, polyglots.
19:35:25 <fizzie> Stalin is supposed to be faster than C, or at least that's what they claim. :p
19:35:28 <Sgeo_> Does alise_ have an FPGA?
19:35:35 <alise_> Deewiant: Oh, I'm not that obsessed enough.
19:35:49 <alise_> fizzie: Yes, well, restricted R4RS designed for numerical code -- writing a Funge in that sounds fun.
19:35:54 * Sgeo_ tends to value sanity over speed
19:35:56 <AnMaster> Deewiant, Hm? Is C with inline asm really a polygot?
19:36:15 <AnMaster> I thought polygot required it to work completely free standing in each languae
19:36:19 <AnMaster> language*
19:36:29 <AnMaster> like: perl foo works and so does python foo
19:36:30 <Deewiant> polyglot: containing, or made up of, several languages.
19:36:31 <AnMaster> or whatever
19:36:39 <Deewiant> It's a word.
19:36:48 <AnMaster> Deewiant, what about a polygot in the sense I described?
19:36:50 <AnMaster> what is that called
19:36:54 <fizzie> 1. polyglot -- (having a command of or composed in many languages; "a polyglot traveler"; "a polyglot Bible contains versions in different languages")
19:36:55 <Deewiant> A polyglot.
19:37:07 <AnMaster> Deewiant, well I don't want to include C with inline ASM
19:37:20 <Sgeo_> http://svichet.files.wordpress.com/2009/05/pinocchio-paradox.jpg
19:37:23 <Sgeo_> oops
19:37:30 <Sgeo_> It is relatively easy for an inexperienced developer to produce code that simulates successfully but that cannot be synthesized into a real device, or is too large to be practical.
19:37:31 <AnMaster> something like gcc foo.c -o foo working the same as as foo.c <whatever command line options it need>
19:37:33 <AnMaster> would fit
19:37:43 <AnMaster> but not C with inline ASM
19:38:05 <AnMaster> <Sgeo_> Does alise_ have an FPGA? <-- he could in theory get one?
19:38:11 <alise_> *she
19:38:17 <alise_> Remember your nick-pronouns.
19:38:45 <Sgeo_> Can things like video cards be made with VHDL?
19:38:47 <AnMaster> <Sgeo_> It is relatively easy for an inexperienced developer to produce code that simulates successfully but that cannot be synthesized into a real device, or is too large to be practical. <-- well sure.
19:38:48 <oklofok> yeah the one nick that tells you gender and you ignore it
19:39:23 <alise_> actually, gender(nick-alise) = augment(male, pronouns = pronouns(female)), whereas gender(person-behind(nick-alise)) = male
19:39:26 <alise_> it's quite complicated
19:39:52 <AnMaster> Sgeo_, I'm no expert but I think some components would probably not be. For example the physical card wouldn't be. Nor would the fan (duh). Probably not the video memory either
19:39:57 <fizzie> alise_: Additionally it has been established that you is girly.
19:40:00 <AnMaster> the rendering stuff could
19:40:03 <AnMaster> in fact it has been done
19:40:09 <AnMaster> hardware ray tracing and such
19:40:31 <Sgeo_> When will hardware ray tracing be commercially and cheaply available?
19:40:42 <alise_> fizzie: Furthermore, we have found, following intense thought, introspection and discussion, that the best course of action for the board to take is to resolve that you is been found to be girly.
19:40:59 <AnMaster> <oklofok> yeah the one nick that tells you gender and you ignore it <-- yes because to me he is mentally still ehird
19:41:27 <oklofok> so... if someone asks you what alise's nick is
19:41:30 <oklofok> you'd say ehird?
19:41:44 <AnMaster> oklofok, I would say his current nick is alise_
19:41:55 <alise_> AnMaster: well, don't say "he"; it's rude.
19:42:00 <alise_> -- says the rudest person in here.
19:42:19 -!- Sgeo_ has changed nick to Sgeo.
19:42:25 <AnMaster> hm separate, non-linked nickserv accounts
19:42:27 <AnMaster> interesting
19:42:40 <AnMaster> same goes for tusho
19:42:50 <AnMaster> alise_, did you know about /ns group?
19:43:09 <Deewiant> Unknown command: ns
19:43:12 <Deewiant> ;-)
19:43:14 <AnMaster> Deewiant, /quote then
19:43:18 <AnMaster> your irc client fails
19:43:21 <AnMaster> not my fault
19:43:30 <Deewiant> Is that really a failure?
19:43:30 <AnMaster> (it *is* a server side alias)
19:43:44 <AnMaster> Deewiant, well, no. It is a feature, Like every other bug.
19:43:58 <Deewiant> Now you're being snarky.
19:43:59 <AnMaster> of course in this case it is more likely to be a misdirected feature in fact
19:44:13 <Sgeo> /quote
19:44:25 <AnMaster> Deewiant, "snarky"? *googles*
19:44:34 <Sgeo> Um, why didn't this work: /quote privmsg #esoteric /quote privmsg #esoteric /quote privmsg #esoteric
19:44:41 <AnMaster> http://www.urbandictionary.com/define.php?term=snarky gives it as "A word that should be googled to find the definition as per direction from Dane Cook. It means short tempered or irritable." but I don't think that is true
19:44:54 <fizzie> Sgeo: You're giving too many parameters to "privmsg" there.
19:44:55 <Deewiant> /quote privmsg #esoteric /quote privmsg #esoteric
19:44:59 <AnMaster> (urbandict was the top hit)
19:45:01 <alise_> AnMaster: if I considered the identities to be one in the same, I would group them.
19:45:14 <fizzie> You want something like /quote privmsg #esoteric :/quote ... there.
19:45:15 <AnMaster> Sgeo, add the : where it should be
19:45:16 <alise_> Sgeo: you forgot the :
19:45:21 <AnMaster> alise_, heh
19:45:26 <AnMaster> alise_, yeah you are complex
19:45:26 <alise_> AnMaster: Why heh?
19:45:33 <AnMaster> alise_, see above ^
19:45:36 <Sgeo> /quote privmsg #esoteric :/quote privmsg #esoteric
19:45:43 <alise_> I don't get what you mean.
19:45:54 <Sgeo> /quote privmsg #esoteric :/quote privmsg #esoteric
19:45:56 <Sgeo> /quote privmsg #esoteric :/quote privmsg #esoteric :/quote privmsg #esoteric
19:45:57 <AnMaster> alise_, "above: opposite of below"?
19:46:00 <Sgeo> Didn't work either
19:46:03 <alise_> AnMaster: What?
19:46:05 <AnMaster> Sgeo, it did
19:46:18 <AnMaster> Sgeo, just your client doesn't echo what you send that way
19:46:23 <AnMaster> since irc doesn't echo
19:46:30 <AnMaster> it is up to the client to do so
19:46:38 <AnMaster> <AnMaster> alise_, see above ^
19:46:40 <AnMaster> <alise_> I don't get what you mean.
19:46:43 <AnMaster> <AnMaster> alise_, "above: opposite of below"?
19:46:56 <AnMaster> alise_, what is it you don't get there ;P
19:47:53 <alise_> You're being deliberately annoying & obtuse./
19:47:58 <alise_> s/\/$//
19:48:11 <AnMaster> alise_, yes
19:52:39 <alise_> Deewiant: Anyway, do you mean SML by ML?
19:52:51 <Deewiant> Any-ML
19:52:55 <Deewiant> (NEML)
19:53:28 <alise_> I should MAKE NEML! :P
19:54:04 <alise_> Pronounced either Enny Emmel or Enn Ee Emm Ell
19:54:11 <alise_> The best thing is that they both sound the same!
19:54:48 <Deewiant> I'd pronounce it nemmul anyway
19:59:19 <Quadrescence> alise_: this is ur fave song right http://www.youtube.com/watch?v=WeSj7rdKrKE
20:00:12 <alise_> what
20:03:43 <alise_> Deewiant: SML is tempting, except for that I don't see how I'd (a) manage memory in it, nor (b) write an efficient fungespace in it.
20:03:56 -!- Tritonio_GR has joined.
20:04:07 <Deewiant> alise_: Write your Funge-Space in C and the rest in SML?
20:04:24 <alise_> Deewiant: Functional languages typically interact badly with C; and I'd rather not touch C, like, at all.
20:04:39 <Deewiant> Almost everything interacts well enough with C
20:05:22 <alise_> You're wrong there.
20:05:39 <Deewiant> alise_: And really, (a) and (b) are premature optimization. Get your shit straight first and then wring all the speed you can out of it
20:05:42 <alise_> Maybe I should just write it in Oberon.
20:05:43 -!- alise_ has left (?).
20:05:45 -!- alise_ has joined.
20:05:48 <alise_> Deewiant: But, but Fungicide.
20:06:08 <Deewiant> Fungicide won't do you any good if you can't get through Mycology
20:06:14 <alise_> True.
20:06:24 <alise_> Bleh.
20:06:37 <Deewiant> Most likely you're going to have to semi-rewrite it at some point anyway if you're planning on doing it properly :-P
20:06:48 <alise_> Keyword semi...
20:06:58 <alise_> Still... SML /does/ have the perfect module system...
20:07:02 <alise_> Put Fungespace in that...
20:08:11 <alise_> lol, from an SML benchmark:
20:08:12 <alise_> fun C f x y = f y x
20:08:21 <alise_> we're so fast we put combinators in our benchmarks and don't even fucking care!
20:08:28 <alise_> (it was just an implementation of GoL)
20:08:44 <Deewiant> To be fair, if the compiler can't optimize away flip it's rather poor :-P
20:09:02 <alise_> True. And MLton is a whole-program optimising compiler that produces slippin' good code.
20:09:37 <alise_> Someone oughta write Befunge in Prolog. :-)
20:09:54 <alise_> There are some Prolog fanatics that won't program in anything else.
20:12:53 <alise_> Eh.
20:13:09 <alise_> Deewiant: Writing a Mycology-passing interpreter is not really that hard, is it? Since you guys have figured out most of the work.
20:13:54 <Deewiant> It shouldn't be particularly difficult, no.
20:14:04 <alise_> So I can always write an ML one then write one in another language.
20:14:14 <Deewiant> Quite.
20:14:58 <Sgeo> Mycology?
20:16:06 <alise_> Sgeo: Deewiant's comprehensive Befunge wondersuite of tests & trinkets.
20:16:37 <fizzie> Deewiant: Oh, I maybe should've mentioned; I found a rather amusing Octave bug recently, http://savannah.gnu.org/bugs/index.php?29465
20:16:48 <alise_> Being a preliminary Befunge-93 examination, a compleat & well-regarded Befunge-98 crunch-suite of all the odds & ends one expects in the Befunge-98 business, & a test suite of that most feral of fingerprints, TRDS.
20:17:19 <Deewiant> fizzie: That's odd indeed :-P
20:21:16 <alise_> byebye, be back soon
20:21:51 -!- alise_ has quit (Remote host closed the connection).
20:25:25 <AnMaster> <alise_> You're wrong there. <-- indeed. For example Brainfuck doesn't
20:25:36 <AnMaster> and what about the old LISP machines?
20:25:59 <Deewiant> A few examples against an "[a]lmost everything" does not me a wrong make
20:26:20 <AnMaster> Deewiant, true. Was that mathematical "almost all"?
20:26:52 <fizzie> Deewiant: You *could* reformulate it as something like "if it interacts well with some other language, odds are good it does it well with C", though. (I'm sure there's exceptions to that, too, but it didn't say "all".)
20:27:21 <AnMaster> Deewiant, also I don't think my lawn mover interacts well with C
20:27:32 <AnMaster> (you forgot to restrict yourself to programming languages)
20:27:36 <AnMaster> fizzie, what about VHDL?
20:27:50 <fizzie> AnMaster: What does it interact well with, then?
20:28:06 <AnMaster> fizzie, memory circuits perhaps?
20:28:11 <fizzie> That's not a language.
20:28:14 <AnMaster> fizzie, true
20:28:24 <AnMaster> fizzie, what about verilog? I have no idea if you can mix them
20:28:50 <AnMaster> but presumably you can use two FPGAs one programmed in VHDL and one in Verilog and make them communicate
20:29:42 <fizzie> Yes, well, that's a bit of a different thing. You could have two separately running programs written in different language that communicate over a pipe; I wouldn't quite say that's some FFI-like integration.
20:29:53 <AnMaster> true
20:29:59 <AnMaster> fizzie, it could be RPC though
20:30:04 <AnMaster> which is kind of similar
20:30:24 <AnMaster> fizzie, for FPGAs that would be like a co-processor I guess
20:31:37 <fizzie> If you want a real exception, I'm sure there's some low-levelish languages that "interact well" with assembly -- letting you do inline asm and such -- but don't have any special convenience features for interacting with code written in C. (Not that it typically would be very difficult if you can do inline asm.)
20:31:48 <AnMaster> heh
20:33:37 <fizzie> You could also claim that Java interacts better with C++ than C, because writing JNI bits is syntactically a bit less ugly for C++, though the difference is not large.
20:34:06 <AnMaster> fizzie, does JNI allow you to call unmodified C++ code?
20:35:22 <fizzie> No. Well, yes. Well, it depends on what you mean by that. JNI methods need to be specifically written to be callable from Java, but of course you can call unmodified C++ code from them. But it doesn't quite work so that you could use C++ bits without some manual glue.
20:35:48 <fizzie> Though I wouldn't be surprised if someone's written automation for that alread.y
20:36:21 <AnMaster> fizzie, I mean something like calling something in libc or libstdc++ from java with no in-between C/C++ wrapper
20:37:12 <fizzie> Well, no, it doesn't do that.
20:37:12 <AnMaster> fizzie, there are after all several ways to do FFI. One is to give you a special C API to interface with the app you want. The other one is to allow describing the foreign function completely in the non-C language.
20:37:21 <AnMaster> I don't know which is most common
20:38:04 <AnMaster> I think C# and such does the latter
20:38:21 <AnMaster> at least I remember using a extremely low level opengl wrapper in C# once
20:38:33 <Sgeo> Haskell uses the latter, right?
20:38:48 <AnMaster> not sure about python, does it provide the latter as well as the former?
20:38:52 <AnMaster> I know it provides the former at least
20:39:01 <Sgeo> Actually, Python does provide the latter
20:39:03 <AnMaster> erlang provides mostly the former.
20:39:04 <Sgeo> See the ctypes module
20:39:20 <AnMaster> Sgeo, ah never used that. Only used the C API for embedding python
20:39:42 * Sgeo wonders if Half-Life will work on this machine
20:40:14 <AnMaster> Sgeo, you know that is no VR right?
20:40:15 <AnMaster> ;P
20:40:42 <Sgeo> lol
20:41:13 <fizzie> Gforth has a FFI that's close to the latter part, with a twist. You declare C functions using the "c-function" word, but it also allows you to use "\c" prefix in front of a line to write actual C code. Then it uses gcc to compile all \c lines and wrapper functions (using the usual gforth stack-passing conventions and such) for each c-function declaration, so that you can start to use those just like Forth words.
20:41:49 <AnMaster> heh
20:42:41 <AnMaster> fizzie, I don't require the latter to provide a 100% mapping of weird C types. Managing a majority of the cases is enough to be considered valid for that category
20:42:42 <fizzie> It's a bit kludgy, like everything else there.
20:42:48 <fizzie> "In order to work, this C interface invokes GCC at run-time and uses dynamic linking. If these features are not available, there are other, less convenient and less portable C interfaces in lib.fs and oldlib.fs. These interfaces are mostly undocumented and mostly incompatible with each other and with the documented C interface; you can find some examples for the lib.fs interface in lib.fs."
20:43:00 <AnMaster> (for example: handling structs but perhaps not intricate details of padding related to bitfields)
20:43:17 <AnMaster> (or not supporting varargs)
20:43:38 <AnMaster> (at least on x86_64 iirc varargs can be somewhat gnarly)
20:43:59 <AnMaster> (even llvm doesn't support it without manual help from the code gen, as is done by C compilers)
20:45:33 <Sgeo> WHY DOES STEAM KEEP CRASHING?
20:46:27 <fizzie> Maybe you need a some sort of safety valve there?
20:46:57 <Sgeo> lol
20:47:41 <Sgeo> The Visual Studio debugger is complaining about uncaught exception, but Steam's still working
20:47:46 <Sgeo> If I respond, Steam will die
20:47:47 <fizzie> Try adding something like a http://upload.wikimedia.org/wikipedia/commons/d/d7/Proportional-Safety_Valve.jpg (disclaimer: I have no clue about steam engineering, but it looks impressive enough.)
20:49:25 <Sgeo> I wonder if it has something to do with IE8
20:50:17 <AnMaster> <fizzie> Try adding something like a http://upload.wikimedia.org/wikipedia/commons/d/d7/Proportional-Safety_Valve.jpg (disclaimer: I have no clue about steam engineering, but it looks impressive enough.) <-- tag it with "should be svg" ;)
20:52:22 <fizzie> Here's another silly problem: the third monitor I have is 1280x1024 tft, rotated 90 degrees; for some reason it can't remember xrandr settings right, so I need to "xrandr --screen 2 --output DVI-0 --rotate left" manually.
20:52:22 <fizzie> After I do this, the region on the left side that normally lets the mouse cursor pass through to other screens is not updated, so only the 1024 upper pixels let the mouse go through; the lowest 256 are a wall.
20:52:22 <fizzie> Whenever I have the mouse on the lowest part of that screen, I always get it stuck there for a moment before remembering to go up a bit before trying to leave the screen.
20:53:31 <AnMaster> fizzie, heh
20:53:35 <AnMaster> fizzie, that's crazy
20:53:54 <fizzie> I should've made the bot description field in the AI tournament participant submission form non-optional; again out of the 32 bots only 7 have bothered to give any sort of description as to what they've done.
20:54:02 <fizzie> And one of those 7 is just "well..."
20:54:15 <AnMaster> fizzie, haha
20:54:35 <fizzie> And one is "War... War never changes.", a Fallout reference; the name of the bot is "ydinsota", which is Finnish for "nuclear war".
20:55:00 <fizzie> And in fact they seem to be spectacularly un-descriptive for the most part.
20:55:10 <fizzie> "Canada is a bot that fights fair, no dirty tricks."
20:55:24 <fizzie> "King Hippo": "I have my weakness. But I won't tell you! Ha Ha Ha!"
20:56:07 <fizzie> And "Beware of the wombat!"
20:56:17 <AnMaster> fizzie, is the last one a reference?
20:56:37 <fizzie> Well, it's a reference to the bot name, which is "Wombat".
20:56:48 <AnMaster> ah
20:56:52 <fizzie> Together they might be referring something else, not sure.
20:57:07 <AnMaster> fizzie, "beware of the dog" I guess
20:57:24 <fizzie> * L6 WOMBAT (Weapon Of Magnesium, Battalion, Anti-Tank), a British recoilless rifle
20:57:24 <fizzie> * Women's Mountain Bike and Tea Society (WOMBATS), a cycling group founded by Jacquie Phelan
20:57:24 <fizzie> * Worldwide Observatory Of Malicious Behaviors and Attack Threats, an FP7 research project on cyberattack data gathering and threat analysis [1]
20:57:24 <fizzie> * Waste Of Money, Brains And Time, usually referred to a project. An example is the $99 PC from the movie The First $20 Million Is Always the Hardest.
20:57:33 <fizzie> Wikipedia's acronym expansions for WOMBAT.
20:57:44 <fizzie> It could be that last one. :p
20:58:05 <AnMaster> http://llvm.org/docs/ReleaseNotes.html#whatsnew <-- release is scheduled for 12 April, so they don't have a lot of time to fix that up in
20:58:36 <Deewiant> Fix what?
20:58:57 <AnMaster> Deewiant, that they have no newlines in there for example?
20:59:18 <AnMaster> "New SSAUpdater and MachineSSAUpdater classes for unstructured ssa updating, changed jump threading, GVN, etc to use it which simplified them and speed them up. Combiner-AA improvements, why not on by default? Pre-regalloc tail duplication x86 sibcall optimization New LSR with full strength reduction mode The most awesome sext / zext optimization pass. ? The ARM backend now has good support for ARMv4
20:59:18 <AnMaster> backend (tested on StrongARM hardware), previously only supported ARMv4T and newer. Defaults to RTTI off, packagers should build with make REQUIRE_RTTI=1. CondProp pass removed (functionality merged into jump threading). " and so on
20:59:21 <AnMaster> and the * ...
20:59:26 <AnMaster> under most entries
20:59:35 <Deewiant> Oh, you just meant that page
20:59:38 <AnMaster> Deewiant, well yes
20:59:46 <Deewiant> I thought you were referring to it for the release date
20:59:59 <AnMaster> Deewiant, nah they are on the main page
21:00:23 <Sgeo> MST3k time
21:00:31 <AnMaster> MST3k?
21:00:46 <Deewiant> The release date is somewhat in fluctuation anyway
21:00:50 <Deewiant> Since there are unfixed regressions
21:00:51 <AnMaster> also I just found a new use for a laptop screen. To somewhat block/reduce the noise of a cd drive behind it
21:01:28 <AnMaster> (desktop cd/dvd drive whines slightly when playing a cd, even at the low speeds of audio CDs)
21:01:36 <AnMaster> (especially annoying for audio cds)
21:01:43 <AnMaster> Deewiant, hrrm
21:03:18 <AnMaster> Deewiant, link to those?
21:03:20 <fizzie> My DVD drive does not "whine slightly" when playing audio CDs; it makes quite a lot of noise. I've just flac'd our very few audio CDs so that I don't need to actually play them.
21:03:44 <AnMaster> fizzie, except that would be more than all my harddrives together I calculated half a year ago
21:03:59 <AnMaster> the average compression radio of flac seems to be ~50% for classical music
21:04:23 <Sgeo> Mystery Science Theater 3000
21:04:41 <Deewiant> AnMaster: See llvm-dev mailing list...
21:04:51 <AnMaster> Deewiant, link to that ;P
21:04:55 <Deewiant> I don't have a link
21:05:06 <Deewiant> I don't use the archives
21:05:15 <fizzie> It's around 50% for our non-classical music too, but like I said, we have a very small set of CDs.
21:05:16 <Deewiant> If you just want the bugs, Google llvm 2.7 blocker or something like that
21:05:30 <AnMaster> ah you subscribe to it
21:05:30 <AnMaster> heh
21:05:35 <Deewiant> No, I use gmane
21:05:43 <AnMaster> well that have a link too
21:05:45 <Deewiant> Over NNTP
21:05:57 <AnMaster> Deewiant, you know that is almost like gopher
21:06:00 <AnMaster> in rarity
21:06:04 <Deewiant> NNTP?
21:06:05 <fizzie> (You can stick 2000 reasonable-sized audio CDs on a terabyte drive, though; they seem to be around half a gig each here.)
21:06:08 <Deewiant> Not really
21:06:10 <AnMaster> I didn't even know they *had* nntp
21:06:15 <Deewiant> NNTP is a lot more common than Gopher
21:06:16 <AnMaster> Deewiant, well, for anything but usenet
21:06:21 <Deewiant> Maybe
21:06:22 <AnMaster> and usenet is still somewhat more common yes
21:06:56 <Deewiant> Our school's student association has their own newsserver which is commonly used for at least job offers and the like
21:07:11 <Deewiant> It does have a web frontend these days, though.
21:07:30 <AnMaster> http://llvm.org/bugs/show_bug.cgi?id=6586 <-- just one?
21:07:37 <AnMaster> that is still open
21:08:07 <Deewiant> Yeah, the situation improved in the past few days
21:08:26 <Sgeo> ROFL. One of the rifts on "Invasion of the Neptune Men" had something like "Featuring Santa"
21:08:31 <fizzie> It used to be used quite a lot for actual studying-and-course-news stuff, but nowadays there's only one officially sanctioned web-bortal way of communicating.
21:08:35 <Sgeo> Guess where Santa lives according to Futurama..
21:08:43 <fizzie> (Which, of course, doesn't let the students post anything...)
21:09:06 <Deewiant> Many courses still refer to their NG but nothing ever gets posted
21:09:12 <AnMaster> fizzie, web-bortal?
21:09:16 <Deewiant> wep-bortal
21:09:31 <AnMaster> Deewiant, not WPA these days?
21:09:33 <fizzie> AnMaster: "The study and teaching portal Noppa".
21:09:42 <AnMaster> fizzie, well, I meant the spelling
21:09:48 <fizzie> Oh.
21:09:50 <Deewiant> "The study and teaching bortal Noppa"
21:09:58 <fizzie> Well, it is "a handy tool for both students and lecturers", so who am I to argue.
21:09:59 <AnMaster> Deewiant, yes
21:10:10 <AnMaster> a handy bool yes
21:10:15 <AnMaster> either true or false
21:10:29 <fizzie> Admittedly the RSS feeds of newsposts is a good feature, as are the email notifications; but it's all so unidirectional.
21:10:31 <AnMaster> law of excluded middle is always in effect there
21:10:46 <AnMaster> fizzie, newsbosts you mean
21:10:55 <AnMaster> and botifications
21:11:12 <fizzie> Yes, why not.
21:11:24 <AnMaster> :D
21:11:41 <AnMaster> err I mean :b of course
21:12:11 <fizzie> Also it sends the email notifications with the poster's email as the SMTP sender, so every time I make a newspost, I get a bounce from one guy's over-quota mailbox.
21:12:56 <fizzie> Actually that was last year; this year I get a "Unable to deliver message to the following recipients, because the message was forwarded more than the maximum allowed times." bounce, it seems.
21:13:28 <AnMaster> fizzie, hah
21:13:51 <AnMaster> fizzie, so it didn't deliver any message?
21:13:57 <AnMaster> or just to some?
21:14:09 <AnMaster> (I mean, did it list every one in that list?)
21:14:17 <fizzie> No, just the one broken one.
21:14:26 <fizzie> The other students presumably get their messages just fine.
21:14:59 <Deewiant> Or maybe not!
21:15:01 <AnMaster> did you try contacting IT support?
21:16:18 <fizzie> Deewiant: I did get a real reply to the newspost from another student, so at least one other person got their message.
21:16:28 <Deewiant> Maybe he was the only one
21:16:40 <Deewiant> You don't know!
21:16:58 <fizzie> And the mail-loopy address is not one of our university's; it's some custom email address. Nobba lets you register whatever you want as the ebb-bmail address there.
21:17:06 <fizzie> Or is that "abbress"?
21:17:15 <AnMaster> fizzie, baddres
21:17:18 <AnMaster> err
21:17:20 <AnMaster> baddress
21:17:21 <AnMaster> even
21:17:21 <Deewiant> babbles
21:17:23 <AnMaster> bad dress
21:18:06 <AnMaster> which reminds me, I should transfer those lecture notes pictures from my phone over bluetooth sometime soon
21:18:07 <fizzie> 32 returns from 52 groups now that it's ~45 minutes until deadline.
21:18:17 <fizzie> Deewiant: Did you finish whatever it was you were doing?
21:18:27 <Deewiant> Yes, a bit less than an hour ago
21:18:33 * AnMaster waits for anyone to ask how those are related
21:18:38 <fizzie> Good, good; just thought I'd remind.
21:18:43 <Deewiant> :-)
21:18:51 <fizzie> AnMaster: A lecturer in a bad dress?
21:18:55 <AnMaster> fizzie, no
21:18:56 <Deewiant> Incidentally, this was the third of three such exercises
21:19:12 <Deewiant> The first time around I did it a day or two early and then forgot to return it until a day after the deadline
21:19:30 <Deewiant> Fortunately the course personnel were nice and didn't deduct any points
21:19:53 <Deewiant> Anyway, it is thus clearly a better idea to do stuff immediately before the deadline
21:19:55 <fizzie> I did one coursework thing a month before deadline, then forgot to return it and returned it a day late.
21:20:04 <AnMaster> fizzie, bad dress → badly dressed people → university in general → you → panoramas → images → lecture notes
21:20:05 <Deewiant> Yep
21:20:16 <AnMaster> fizzie, convoluted yes
21:20:48 <fizzie> "badly dressed people → university in general" is a bit of a leap.
21:20:59 <AnMaster> fizzie, well, CS people then
21:21:08 <fizzie> You stereotypist.
21:21:14 <Gregor> I'm not a badly-dressed person :(
21:21:34 <AnMaster> fizzie, well I'm a CS student myself. I'm not badly dressed if the average isn't I guess.
21:21:51 <Deewiant> Gregor: Which reminds me: I chose your hat a few days back, did you abide?
21:22:00 <Gregor> Deewiant: I always abide.
21:22:07 <Deewiant> Awesome
21:22:18 <Gregor> http://www.facebook.com/photo.php?pid=30595531&l=c65d70c86e&id=1055580469 <-- my usual style of dress
21:22:29 <fizzie> AnMaster: We had two very well-dressed folks from the Finnish equivalent of your Piratpartiet talking on the "law in network society" course just yesterday. Admittedly they weren't CS students, though.
21:22:30 <Deewiant> Makes me wonder about your profession
21:22:48 <Deewiant> fizzie: Did they say anything interesting?
21:22:56 <fizzie> Makes me wonder about your orientation (sexual)!
21:23:00 -!- kar8nga has joined.
21:23:07 <Deewiant> You wonder about the strangest things
21:23:33 <Gregor> And wonder them in oddly-parenthesized ways.
21:24:06 <AnMaster> fizzie, law students tends to be *very* well dressed
21:24:15 <fizzie> Deewiant: Well, they said the same things what they always say, which I guess are interesting but not exactly novel if you've heard them before. It was one of the authors of that freely-available book, http://www.barrikadi.fi/pamfletit/jokapiraatinoikeus-0 (Finnish only).
21:24:33 <AnMaster> <Deewiant> Gregor: Which reminds me: I chose your hat a few days back, did you abide? <-- which one?
21:24:33 <fizzie> AnMaster: They weren't exactly law students, either. One of them was a student of history, and I have no idea what the other one was.
21:24:41 <Deewiant> Right.
21:24:43 <AnMaster> I like his fezes
21:24:56 <Deewiant> I can't actually remember :-S
21:25:09 <AnMaster> Deewiant, he has so many weird ones ;)
21:25:15 <Deewiant> I remember I tried to pick an abnormal one but I can't remember what I settled on
21:25:31 <Deewiant> AnMaster: fezzes*
21:25:46 <Gregor> Fezi
21:25:48 <Gregor> :P
21:25:55 <fizzie> Fezzies.
21:25:58 <Gregor> X-D
21:25:59 <Deewiant> fizzies
21:26:04 <AnMaster> Deewiant, ah
21:26:06 <fizzie> There's only one of those.
21:26:28 <AnMaster> fizzie, no. Sometimes I have seen fizzien <some number> here too
21:26:40 <fizzie> There's quite many places on the interwebs that sell "bath fizzies".
21:26:44 <Deewiant> :-D
21:26:48 * AnMaster prefers to read the word as fizzien <whatever the number was> rather than fizzie n<whatever the number was>
21:26:54 <Gregor> I want a bath fizzie >: )
21:27:21 <AnMaster> Gregor, what do you actually do for work
21:27:31 <Deewiant> Hmm, what happened today O_o
21:27:32 <fizzie> Gregor: We've been partial to such products from Lush (lush.com), but I'm not sure if they have them around your neighbourhood.
21:27:43 <Deewiant> 60 packages to upgrade
21:27:43 <AnMaster> Deewiant, try clog?
21:27:50 <AnMaster> oh that
21:27:55 <AnMaster> Deewiant, be careful. soname change
21:28:04 <Gregor> AnMaster: I guess I'm a research scientist.
21:28:08 <Deewiant> soname?
21:28:20 <AnMaster> iirc that is the name for
21:28:36 <AnMaster> libfoo.so.1 vs libfoo.so.2
21:28:59 <AnMaster> Gregor, ah that explains it. Those kinds of hat would only work at university ;P
21:29:12 <AnMaster> hats*
21:29:14 <Deewiant> libdrm or what being the actual change?
21:29:48 <Gregor> AnMaster: More generally I'm a doctoral student, but that's not what I do "for work" :P
21:30:33 <AnMaster> Gregor, I vote for this attitude on said day: http://codu.org/hats/BrownFedora-sm.jpg
21:30:33 <AnMaster> ;)
21:30:57 <Gregor> choosemyhat.com is for hats, not attitudes :P
21:31:00 <AnMaster> Deewiant, libdrm?
21:31:07 <AnMaster> Deewiant, iirc it was some kerberos stuff
21:31:19 <AnMaster> at least ssh broke during the upgrade with some error about old soname krb thing not found
21:31:25 <Deewiant> I just saw libdrm go up a version number
21:31:31 <Deewiant> And most other things go up a release number
21:31:32 <AnMaster> Deewiant, well maybe that too
21:31:49 <AnMaster> Deewiant, well libkrb messed up for me for a bit there
21:32:07 <AnMaster> Gregor, still, that is an awesome attitude on that picture :P
21:32:18 <Deewiant> I don't appear to have libkrb installed
21:32:29 <AnMaster> Deewiant, huh, here it is a dep of sshd?
21:32:56 <Deewiant> heimdal did go up a version number
21:33:02 <Deewiant> I thought you meant a package by that name
21:33:05 <AnMaster> Deewiant, well it is libkrb
21:33:10 <AnMaster> libkrb5 even
21:33:16 <AnMaster> didn't remember exact name
21:33:22 <AnMaster> /usr/lib/libkrb5.so.26 is owned by heimdal 1.3.2-1
21:33:25 <AnMaster> it was .25 before
21:33:29 <AnMaster> meaning ABI breakage generally
21:34:06 <Deewiant> Argh
21:34:10 <AnMaster> Deewiant, what?
21:34:17 <Deewiant> Now catalyst depends on openssl-compatibility which only exists for i686
21:34:23 <AnMaster> Required By : alpine cvs evolution-data-server gnome-vfs gtk2 kdelibs libcups librpcsecgss libtirpc neon openssh smbclient
21:34:30 <AnMaster> Deewiant, what the heck is catalyst?
21:34:33 <AnMaster> Deewiant, and: file a bug
21:34:50 <Deewiant> catalyst is AMD's display driver
21:34:54 <AnMaster> pacman -Ss catalyst
21:34:55 <Deewiant> I doubt I need to
21:34:56 <AnMaster> returns nothing?
21:34:59 <Deewiant> It's in AUR
21:35:02 <AnMaster> oh okay
21:35:10 <AnMaster> Deewiant, file a comment on that page then so it can be fixed still
21:35:11 <Deewiant> It was dropped from community last summer IIRC
21:35:43 <Deewiant> AnMaster: There's a comment on openssl-compatibility already
21:35:46 <Deewiant> http://aur.archlinux.org/packages.php?ID=36308
21:35:57 <AnMaster> okay
21:36:03 <Deewiant> Unsurprisingly enough
21:36:05 <AnMaster> can't see why a display driver needs openssl
21:36:25 <Deewiant> Except the md5 seems wrong
21:36:38 <AnMaster> mhm
21:36:47 <Deewiant> Or it's using the wrong one
21:36:50 <Deewiant> I don't think my CARCH is set
21:36:54 <Deewiant> I've had problems with that before
21:37:48 <Deewiant> AnMaster: Any idea where the $CARCH comes from into a PKGBUILD?
21:39:01 <Deewiant> Bloody catalyst updates... I hate having to always mess with the PKGBUILDs
21:39:53 <Deewiant> I need to install the OpenGL bits (I think that's what they are) into the 32-bit chroot but it doesn't quite work cleanly since it installs all bits by default, some of which depend on xorg and the kernel (both of which aren't present in the chroot...)
21:40:13 <AnMaster> Deewiant, eh. No idea
21:40:37 <Deewiant> So typically: mess with the PKGBUILD, doesn't work since I missed something. Try again, having lost the changes made last time. Repeat a couple of iterations until it installs.
21:40:41 <AnMaster> Deewiant, doesn't it use split kernel/user space drivers?
21:40:52 <Deewiant> Just one package
21:42:32 <AnMaster> Deewiant, ah, nvidia drivers splits it
21:42:37 <AnMaster> and iirc there are lib32 ones even
21:43:20 <Deewiant> Argh, and the damn pacman update made me lose the changes without even getting a chance to try the PKGBUILD once
21:43:34 <AnMaster> Deewiant, what?
21:43:43 <AnMaster> Deewiant, trying what pkgbuild?
21:43:47 <Deewiant> catalyst's
21:43:56 <Deewiant> The one I'm manually deleting stuff from
21:44:18 <AnMaster> how did pacman make you lose it?
21:44:39 <Deewiant> pacman update changed PKGEXT from .pkg.tar.gz to .pkg.tar.xz
21:45:27 <AnMaster> Deewiant, yes and?
21:45:29 <Deewiant> I think the pacman that was trying to upgrade the catalyst was still using .tar.gz while the pacman used to create the package used .tar.xz
21:45:35 <AnMaster> can't you use the old ones still?
21:45:44 <Deewiant> Anyway, it complained about not finding a .tar.gz when it had made a .tar.xz
21:45:55 <Deewiant> FATAL: Could not open /lib/modules/2.6.33-deewiant/modules.dep.temp for writing: No such file or directory
21:45:58 <Deewiant> Yay, it worked
21:46:02 <AnMaster> Deewiant, did it?
21:46:05 <Deewiant> Yes, it did
21:46:13 <AnMaster> FATAL is usually a bad indication
21:46:14 <Deewiant> I know there's no modules.dep in the chroot, doesn't matter :-P
22:24:57 <fizzie> Deewiant: The game is on: http://www.cis.hut.fi/htkallas/ai-2010.txt
22:25:03 <fizzie> Deewiant: Might be more interesting if you were participating. :p
22:25:49 <Deewiant> And if one of those were mine. :-P
22:25:57 <Deewiant> I like the NPEs
22:26:22 <fizzie> Those results always come fastest. :p
22:26:28 <Deewiant> :-D
22:26:49 <AnMaster> NPE?
22:27:03 <fizzie> AIARCH: RED player crashed: Uncaught exception: java.lang.NullPointerException
22:27:18 <AnMaster> heh
22:27:28 <AnMaster> fizzie, they didn't test it very well?
22:27:40 <AnMaster> fizzie, how fast is that report updated?
22:27:42 <fizzie> Most likely. Will be interesting to see if it crashes all other games.
22:27:52 <fizzie> It's a cron job, once per hour.
22:28:11 <AnMaster> fizzie, how long is one game permitted to run?
22:28:14 <fizzie> The "E P" in the result table is supposed to read "BLUE PLAYER" vertically, it just gets clipped a bit. After all 45 bots have been seen, the table'll be quite a bit larger, then it'll fit.
22:28:27 <fizzie> One hour of thinking time for both participants.
22:28:38 <fizzie> I'm running 33 games simultaneously, though.
22:28:51 <fizzie> (11 quad-core workstations, 3 simultaneous matches each.)
22:29:11 <AnMaster> fizzie, so it is in user time? or user + sys?
22:29:20 <Deewiant> Wall clock time on random people's workstations? :-P
22:29:31 <AnMaster> Deewiant, that would be unreliable
22:29:31 <fizzie> Deewiant: No, RLIMIT_CPU time.
22:29:50 <AnMaster> man: warning: /usr/share/man/man3x/ulimit.3.gz: ignoring bogus filename
22:29:50 <AnMaster> man: warning: /usr/share/man/man3x/ulimit.3p.gz: ignoring bogus filename
22:29:50 <AnMaster> man: warning: /usr/share/man/man3x/ulimit.3p.gz: ignoring bogus filename
22:29:50 <AnMaster> huh
22:29:50 <Deewiant> Meh, CPU time sucks, you can't parallelize
22:29:55 * AnMaster wonders what the heck that is
22:30:03 <Deewiant> AnMaster: That's been going on a while.
22:30:10 <Deewiant> Dunno what it is either.
22:30:25 <fizzie> Deewiant: You can't parallelize anyway, the Java security policy for the tournament mode is an all-deny one, so it won't let you create any threads. :p
22:30:50 <AnMaster> $ pacman -Qo /usr/share/man/man3x/ulimit.3.gz
22:30:50 <AnMaster> /usr/share/man/man3x/ulimit.3.gz is owned by man-pages 3.24-1
22:30:52 <Deewiant> fizzie: Meh!
22:30:53 <AnMaster> $ pacman -Qo /usr/share/man/man3/ulimit.3.gz
22:30:53 <AnMaster> /usr/share/man/man3/ulimit.3.gz is owned by man-pages 3.24-1
22:30:55 <AnMaster> huh
22:31:17 <fizzie> Deewiant: What would you need threads for, anyway, except to get some annoying nondeterminism in your move-search?
22:31:34 <Deewiant> Searching multiple branches simultaneously, of course
22:31:43 <AnMaster> fizzie, what does it allow then? Some standard library funcs I presume?
22:32:00 <fizzie> But the point is that I need to be able to run multiple matches simultaneously, otherwise I'll be here all week.
22:32:03 <Deewiant> "Some" as in almost all of the vast Java standard libs
22:32:11 <Deewiant> Sure, sure
22:32:21 <fizzie> Yes; IO in general is not allowed, though.
22:32:45 <fizzie> I've special-cased the System.out/.err streams to discard writes so that it won't crash if someone leaves some "debugging printfs" in. :p
22:32:48 <AnMaster> Deewiant, fizzie, ooh I just got an idea for the future version of this. When quantum computers become commonplace that is
22:33:00 <fizzie> And you could do some "user-space" (well, inside-vm) threads, though I wouldn't want to start guessing how much overhead a Java implementation of that would have.
22:33:48 <AnMaster> fizzie, doesn't java implement it's own user space threads then?
22:33:52 <AnMaster> by default I mean
22:34:03 * AnMaster points out things like erlang does
22:34:13 <fizzie> By default I think Java threads are done using platform threads, pthreads on posixy things and so on.
22:34:18 <fizzie> Though that's just my guess.
22:34:27 <AnMaster> well erlang uses m:n basically
22:34:29 <fizzie> In any case you can't use those because of the security policy. :p
22:34:36 <AnMaster> mapping it on a number of system threads called schedulers
22:34:47 <fizzie> Updated the report, now there's enough games in the table so that the "blue player" text is visible too.
22:35:09 <fizzie> synaesthesia seems to be doing pretty well so far.
22:35:13 <AnMaster> fizzie, what is Ti?
22:35:23 <Deewiant> Result table: (Bl = blue wins, Re = red wins, Ti = tie)
22:35:30 <AnMaster> oh there
22:35:31 <AnMaster> above
22:35:38 <AnMaster> had scrolled down a bit too far to see it
22:35:53 <AnMaster> fizzie, does it say how long each game ran for?
22:36:17 <AnMaster> fizzie, what does AIARCH stand for?
22:36:22 <fizzie> AnMaster: In the actual results report, yes; not in this plaintext status report.
22:36:58 <AnMaster> Report generated at 2010-04-10 00:33:03. <-- you should have waited 30 seconds
22:37:20 <fizzie> It's not such a bad time now, either; aa:bb:ab, after all.
22:37:53 <fizzie> I guess I could actually add game length in wall-clock time, e.g. in parentheses after the move count.
22:42:36 <AnMaster> fizzie, how long does that report take to generate?
22:42:42 <AnMaster> fizzie, why does it need to be a cron job
22:42:49 <AnMaster> I mean it could be push on game finished
22:43:05 <AnMaster> fizzie, or you could provide live coverage :D
22:43:11 <AnMaster> like webtv or such
22:44:12 <AnMaster> 1 2.00 0.09-2.00 1.7 jaautio (+1, =0, -0)
22:44:12 <AnMaster> 2 1.73 0.86-1.86 0.5 synaesthesia (+9, =1, -1)
22:44:15 <AnMaster> also that looks weird
22:44:28 <AnMaster> fizzie, why doesn't the second one score higher than the first?
22:44:44 <fizzie> It's normalized by the number of games played so far.
22:44:48 <AnMaster> hm
22:44:50 <AnMaster> okay
22:44:57 <fizzie> The first one has won all its games, while the other one has losses too.
22:45:10 <fizzie> The "0.09-2.00" is the range of possible scores still achievable for that bot.
22:45:12 <AnMaster> the first one played far fewer
22:45:22 <fizzie> Well, so far.
22:45:39 <AnMaster> well yes
22:45:51 <fizzie> The order is not exactly "fair"; it starts with all matches of the bot that happened to be first on the list.
22:45:58 -!- alise has joined.
22:46:13 <AnMaster> fizzie, didn't you have two older non-participating bots during previous years?
22:46:18 <fizzie> As for updating more often, there was some problems with sqlite's locking; I write each move of each game (and with 33 simultaneous games, there's quite a lot of those coming in) into a sqlite db, and the report-generation reads the same file. So I have the cron-job do a filesystem-level "cp" copy of the database file and then generate the report on that; it might not be quite safe for the report-generation, but at least it won't dist
22:46:19 <fizzie> urb the actual tournament progress.
22:46:28 <augur> so i learned about a new grammar formalism last night
22:46:39 <fizzie> I haven't added those in yet; I'll run the "official" games first, then the nice-to-know extras later.
22:46:50 <AnMaster> ah
22:46:53 <fizzie> And there were seven non-participating ones last year, I think.
22:47:01 <AnMaster> fizzie, seven ones?
22:47:03 <AnMaster> huh
22:47:04 <fizzie> Top-5 from 2008, one from the Scheme era, and the randombot.
22:47:09 <AnMaster> ah
22:47:38 <fizzie> The report seems to have autoupdated now.
22:47:39 <AnMaster> fizzie, are they still in java btw?
22:47:44 <fizzie> Yes.
22:47:54 <AnMaster> oh wait you said java security above
22:47:54 <AnMaster> meh
22:47:59 <fizzie> This time there weren't even any non-Java JVM languages, I think. Or at least no-one has asked about it.
22:48:03 <AnMaster> fizzie, didn't you talk about switching to python?
22:48:03 <augur> its called "sewing grammars"
22:48:12 <AnMaster> fizzie, and is that allowed?
22:48:24 <alise> hah, people are finally ignoring augur entirely
22:48:30 <augur> alise shut your face :|
22:48:32 <fizzie> AnMaster: It is, though it's not exactly supported by the course.
22:48:36 <AnMaster> augur, ssssh, keep quiet, we are following http://www.cis.hut.fi/htkallas/ai-2010.txt
22:48:39 <AnMaster> it is in progress
22:48:52 <AnMaster> ;P
22:48:53 <alise> I think we've just found the #esoteric equivalent of the Super Bowl
22:48:58 <AnMaster> alise, :D
22:49:10 <alise> "suxbot"; that's an optimistic name.
22:49:35 <AnMaster> alise, we just need fizzie to switch to postgresql so it can query real time updates
22:49:44 <AnMaster> since sqlite locking yeah has it's problems
22:49:59 <fizzie> AnMaster: And they switched some programming courses from Java to Python, but I see no reason to do so for this tournament. Not that I trust Java's sandbox, but running arbitrary Python code sounds even worse, at least without some additional complicating layers of isolation there.
22:50:15 <Deewiant> chroot
22:50:17 <AnMaster> fizzie, jyton?
22:50:39 <AnMaster> or whatever it was called
22:50:40 <AnMaster> jython
22:51:38 <AnMaster> which one was ironsomething?
22:51:38 <AnMaster> oh .NET
22:51:38 -!- kar8nga has quit (Remote host closed the connection).
22:51:51 <AnMaster> fizzie, how comes that table at the top is mostly white?
22:51:54 <AnMaster> I mean
22:52:04 <AnMaster> you said many games were played at once?
22:52:19 <AnMaster> but does it run synaesthesia against all the other ones first?
22:52:24 <AnMaster> rather than in a random order?
22:52:47 <AnMaster> fizzie, what is that n that must be positive btw?
22:52:52 <AnMaster> (as RED) WINS against suxbot: 53 moves, AIARCH: BLUE player crashed: Uncaught exception: java.lang.IllegalArgumentException: n must be positive
22:52:53 <AnMaster> in there
22:54:18 <AnMaster> fizzie, any estimate on how long it may take?
22:54:32 <AnMaster> fizzie, also another idea: bot announcing the progress in here
22:54:33 <AnMaster> ;P
22:55:16 <fizzie> Deewiant: chroot is not exactly a non-root operation. I've been doing this with about ~no support from the Officials.
22:55:42 <fizzie> Same goes for a real SQL server; I'd use one if they had it conveniently installed, but I don't exactly want to install PostgreSQL in my home directory.
22:55:54 <alise> "I love games, even though I am not very good at them. Chess, and even Checkers, are way too complicated, so my favorite is the "children's" game Connect-Four."
22:55:55 <alise> --Zeilberger
22:56:04 <alise> it's because they haven't found a finite perfect chess AI yet
22:56:08 <Deewiant> fizzie: You can always request it
22:56:33 <fizzie> Deewiant: I'd really rather not bother them; they seem overworked enough as-is.
22:57:00 <alise> Is you guys' university good? I should come and terrorise you.
22:57:31 <alise> Surprisingly, that first sentence is actually the correct way to phrase that with "you guys".
22:57:35 <AnMaster> "about ~no"
22:57:43 <AnMaster> didn't alise define ~ to be ¬ before?
22:57:50 <alise> AnMaster: no law of the excluded middle; it's not the same as "about"
22:57:52 <alise> Actually I should come and terrorise you anyway
22:57:53 <AnMaster> so I guess you had full support from them fizzie
22:58:27 <AnMaster> alise, ah but I use classical logic and consider LEM perfectly fine most of the time.
22:58:42 <AnMaster> alise, I'm not constructivist
22:58:43 <alise> Yeah, but you're an anti-computer whorebag.
22:58:45 <alise> So there.
22:58:50 <AnMaster> alise, what?
22:58:56 <AnMaster> how does that follow?
22:59:03 <alise> THE FOUR-COLOUR THEOREM DIN'T GET PROVED WITH DOUBLE NEGATION BEYOTCH
22:59:08 <alise> WE CONSTRUCTED US SOME DAMN FINE MAPS
22:59:20 <AnMaster> alise, well yes and?
22:59:21 <alise> AND WE COMPUTED THE FUCK OUT OF THEM!
22:59:27 <AnMaster> I never said constructivist methods doesn't work
22:59:50 <alise> http://www.swfme.com/view/1046212 oh my god the pain
22:59:57 <AnMaster> I just think that non-constructive ones are fine as well.
22:59:58 <fizzie> As for the IRC bot announcing results, we did talk about that on the course channel last year, I just completely forgot about it; I did mention it not 15 minutes ago. It would probably be better to put it on the course channel instead of here, though.
23:00:13 <AnMaster> fizzie, could be on both
23:00:24 <AnMaster> fizzie, and there is a course channel on freenode? or elsewhere?
23:00:34 <Deewiant> IRCnet presumably
23:00:38 <fizzie> AnMaster: I don't want to try adding multi-server support in a Funge-98 bot. (What, so I should write it with something else?)
23:00:41 <AnMaster> Deewiant, why?
23:00:45 <fizzie> IRCnet, and it's mostly Finnish.
23:00:50 <Deewiant> Because that's where things tend to be
23:00:50 <fizzie> That's where all our course channels are.
23:01:01 <fizzie> Force of tradition and all.
23:01:09 <AnMaster> fizzie, also it should be possible with an external multiplexer currently
23:01:27 <fizzie> AnMaster: Incidentally, if you want to see all bots that should appear in the report sooner or later, http://www.cis.hut.fi/htkallas/ai/list.cgi has a list.
23:01:29 <AnMaster> I thought IRCnet was next to dead?
23:01:35 <alise> ehird@dinky:~$ mlton
23:01:36 <alise> MLton 20070826 (built Fri Oct 05 23:09:43 2007 on yellow)
23:01:40 <alise> $
23:01:43 <alise> I /may/ be needing a REPL some time, MLton.
23:01:55 <AnMaster> alise, what is mlton?
23:02:03 <fizzie> AnMaster: 74955 concurrent users isn't actually "dead".
23:02:10 <AnMaster> fizzie, what with it lacking services and so on
23:02:11 <alise> A whole-program optimising Standard ML compiler that produces uber-efficient code.
23:02:12 <Deewiant> MLton is a compiler, not an interpreter
23:02:20 <alise> Deewiant: So's SBCL; it has a REPL.
23:02:25 <alise> Admittedly SBCL doesn't do the whole-program magic.
23:02:26 <Deewiant> Shush
23:02:35 <Deewiant> REPLs are below the dignity of something as awesome as MLton
23:02:39 <alise> Still; MLton is incompatible with other MLs to some degree, so I don't feel good about using another interpreter as a REPL.
23:02:48 -!- jcp has joined.
23:02:52 <AnMaster> alise, write it in the common subset?
23:03:07 <alise> AnMaster: There is no "common subset", some implementations just suck at the standard.
23:03:17 <fizzie> The servicelessness is a matter of choice, not a sign of deadness. Though certainly it has gotten a bit quieter lately.
23:03:22 <alise> And OS interaction will always be slightly untransportable from one implementation to another without strict standardisation.
23:03:33 <alise> Deewiant: STALIN is cooler than MLton.
23:03:42 <fizzie> The http://irc.netsplit.de/networks/top100.php user-count rankings still put it as the largest real IRC network; for obvious reasons I don't count QuakeNet.
23:03:47 <alise> STALIN just takes your code and beats the fuck out of it and spits out superhumanly good C.
23:03:51 <alise> Fuck yeah.
23:03:53 <AnMaster> alise, well follow the standard then, excluding the parts that very few support?
23:03:54 <AnMaster> as in
23:04:02 <AnMaster> a reasonably widely supported subset
23:04:04 <alise> You know what, I've decided that talking to AnMaster is fruitless.
23:04:10 <alise> At least right now.
23:04:11 <AnMaster> alise, why?
23:04:20 <alise> Because you keep saying the same stupid thing.
23:04:42 <fizzie> (I'm not sure why the top-100 page doesn't list freenode, though; the top-10 page does.)
23:04:47 <AnMaster> no you don't even make sense
23:04:52 <AnMaster> now*
23:05:07 <AnMaster> fizzie, has any bot hit 2 so far?
23:05:12 <AnMaster> fizzie, I mean
23:05:18 <AnMaster> when the results are finished for a given year
23:05:27 <alise> Anyway, I think with MLton I could approach the speed of cfunge using the same implementation techniques.
23:05:39 <AnMaster> fizzie, oh btw is there any perfect play in that game?
23:05:59 <fizzie> AnMaster: None of the officials, but the 2008 winner got a perfect score in the 2009 tournament.
23:06:02 <Deewiant> alise: Only approach cfunge? Psh. :-P
23:06:08 <alise> Doing sane macroptimisation like Deewiant... I could easily surpass it.
23:06:14 <alise> Deewiant: I said "using the same implementation techniques".
23:06:15 <AnMaster> fizzie, heh
23:06:22 <fizzie> And no, the game's not solved.
23:06:26 <Deewiant> alise: Yes, you did. Psh.
23:06:36 <alise> If you're essentially implementing retarded algorithms, then you can't beat retarded inline ASM.
23:06:51 <alise> Deewiant: What, you think MLton regularly beats microprofiled ASM? :-)
23:07:05 <AnMaster> alise, anyway what with the t issue fixed now in cfunge it is way closer
23:07:08 <Deewiant> You think AnMaster's asm is any good? ;-)
23:07:15 <AnMaster> Deewiant, I don't use much asm
23:07:15 <AnMaster> at all
23:07:17 <AnMaster> ....
23:07:21 <alise> Deewiant: No, but I think he's tried every possible string of ASM to find the fastest.
23:07:22 <Deewiant> "much at all"?
23:07:41 <pikhq> I may need to poke at cfunge and see what it's doing. Maybe beat it into a pulp. :P
23:07:46 <alise> I think cfunge is pretty shitty code TBQH.
23:08:10 <AnMaster> Deewiant, as in, one function, the one that fills the static funge space. Which uses SSE non-temporal stores to avoid a rather large "read block into cache first" hit
23:08:29 <AnMaster> when it fills it with the space pattern for empty
23:08:33 <pikhq> alise: Yes, but I'm curious.
23:08:35 <alise> "Hey, let's implement ber-nave algorithms. Now, let's unroll the fucking loops! Oh shit it doesn't match the standard. Let's copy from CCBI. Now: ASM time!"
23:08:44 <alise> Knuth would weep.
23:08:49 <AnMaster> alise, you are just silly you know
23:09:04 <AnMaster> alise, "Oh shit it doesn't match the standard." hasn't happend so far like that
23:09:05 <alise> ber-nave -- now there's a loanword amalgamation you don't see every day.
23:09:19 <AnMaster> and they aren't
23:09:21 <alise> AnMaster: considering I've heard you just copy from CCBI when your shit is broken I disagree entirely
23:09:42 <AnMaster> alise, that is an exaggeration
23:09:43 <alise> anyway, I don't care what you think as I already know you think cfunge is a perfectly innocent well-implemented, well-optimised non-CCBI-copy
23:09:51 <alise> it's none of these things but I don't really care what you think
23:09:55 <alise> like... at all
23:10:15 <AnMaster> I have based my code on CCBI in two fingerprints, that is all basically: TURT and 3DSP. Because at the time I implemented those I didn't know very much of the underlying theory
23:10:23 <AnMaster> like matrix math for 3DSP
23:10:28 <pikhq> Dude, fastcall really doesn't do that much, especially compared with better implementation. :P
23:10:54 <AnMaster> pikhq, which variant of fastcall btw?
23:10:59 <pikhq> Oh, and it does *fuck-all* on inlined-functions.
23:11:28 <AnMaster> pikhq, in gcc? well I generally use clang these days
23:11:30 <AnMaster> so no idea
23:11:48 <pikhq> AnMaster: It *cannot* do anything for inlined functions.
23:11:56 <AnMaster> pikhq, anyway I mainly target x86_64. It isn't like the inline asm is even used for x86
23:12:29 <pikhq> fastcall means "pass the arguments in registers". A static inline function means "this function is essentially a safe macro."
23:12:31 <AnMaster> pikhq, well, that would depend on register allocation. After all inlining means copying the code for it. So fastcall would simply not apply to the inline usages
23:12:50 <pikhq> Yes. And I'm saying fastcall on a static inline function cannot do anything.
23:12:51 <alise> I wish ML didn't call its numbers "reals".
23:12:54 <alise> They're not really reals.
23:12:57 <pikhq> BUT YOU STILL DO IT.
23:12:59 <AnMaster> pikhq, so it isn't really relevant except to the cases where it is emitted as a call
23:13:00 <alise> Call them "fakes" :P
23:13:08 <pikhq> Which it shouldn't be.
23:13:09 <AnMaster> pikhq, the compiler is free to not inline static inline
23:13:27 <pikhq> AnMaster: Test. Your. Damned. Optimisations.
23:13:48 <AnMaster> pikhq, Oh I certainly profiled that attribute. You think I don't profile?
23:14:11 <alise> note: AnMaster found a 0.0001s difference and thought that it was obviously his genius, not acceptable margin of error
23:14:27 <AnMaster> pikhq, over average of 200 runs (if I remember the numbers correctly, was over a year ago) there was a 4% speedup on average iirc
23:14:50 <pikhq> ... fastcall on functions *without arguments*?
23:14:56 <Deewiant> Wherein you were testing on Mycology or some such
23:15:00 <pikhq> It is literally impossible for that to do anything.
23:15:00 <alise> AnMaster: Cargo cult, hells yeah
23:15:17 <alise> Put the line in, run run run, wow it's faster, 4% on a program that runs almost immediately anyway!
23:15:20 <alise> This is clearly a GOOD THING!
23:15:22 <AnMaster> pikhq, hm? It may have slipped on some such function by mistake I guess
23:15:29 <AnMaster> pikhq, it would simply have no effect there then
23:15:57 <AnMaster> pikhq, for example editing of code can leave such things remaining for example
23:16:27 <pikhq> Yes, but it still sucks.
23:16:49 <AnMaster> pikhq, what does? An __attribute__ that happens to have no effect?
23:17:07 <pikhq> Yes.
23:17:12 <AnMaster> well now I guess you sound like alise in code aesthetics
23:17:31 <AnMaster> (btw since I think personal attacks are just irritating he is now on ignore)
23:17:40 <alise> Oh, please; because we have taste and don't just leave meaningless cruft around that will later be defended with "it makes it go faster" we're Apple-loving beauty freaks.
23:17:42 <pikhq> It's like having "0;" all over the place.
23:17:55 <AnMaster> pikhq, perfectly fine. Esoteric too.
23:17:59 <AnMaster> somewhat
23:18:02 <pikhq> Sure, it *doesn't do anything*, but that doesn't make it not *ugly*.
23:18:05 <alise> Personal attacks, yeah, those things that I did none of.
23:18:10 <alise> pikhq: why are you wasting your time?
23:18:13 <AnMaster> pikhq, what about IOCCC then?
23:18:23 <alise> he doesn't even understand what a personal attack is
23:18:27 <pikhq> AnMaster: IOCCC is about making the ugliest, most unreadable code.
23:18:48 <pikhq> AnMaster: Unless you are actually trying to do that, STOP DOING THINGS THAT MAKE CODE HARDER TO READ FOR NO BENEFIT.
23:19:19 <AnMaster> pikhq, well then I suggest you complain at ais for C-INTERCAL next time he is here
23:19:27 <AnMaster> it's C code is sometimes quite wonderfully weird
23:19:46 <AnMaster> pikhq, unreadable doesn't even begin to describe many parts of ick
23:19:50 <alise> pikhq: AnMaster likes to defend his code's inadequacy by half the time pointing out that LOL ESOTERIC, and the other half talking about how much he values coding standards.
23:20:03 <alise> Do you think you can reason a man out of a position he did not reason himself into?
23:20:13 <AnMaster> pikhq, yet I haven't heard you complain about that yet.
23:20:16 <pikhq> AnMaster: You have fastcall on functions without arguments *everywhere*.
23:20:36 <pikhq> That there is *retarded* and cargo cult programming.
23:20:40 <AnMaster> pikhq, no. I'm quite sure I don't.
23:20:54 <pikhq> Would you like me to start listing them?
23:21:03 <AnMaster> pikhq, plus actually it did more than just fastcall at one point.
23:21:07 <AnMaster> might be good to know
23:21:10 <pikhq> bool fungespace_create(void);
23:21:13 <AnMaster> of course it could be cleaned up
23:21:15 <pikhq> void fungespace_free(void);
23:21:22 <AnMaster> pikhq, those used to take argument
23:21:27 <AnMaster> so I guess I forgot to update there
23:21:37 <AnMaster> pikhq, feel free to submit a patch
23:21:56 <AnMaster> I don't consider it high priority
23:22:00 <pikhq> instructionPointer * ip_create(void);
23:22:03 <AnMaster> there are other more important issues
23:22:11 <pikhq> ipList* iplist_create(void);
23:22:34 <AnMaster> pikhq, those two never took argument as far as I can recall, so accident there I guess.
23:22:41 <pikhq> funge_stack * stack_create(void);
23:22:52 <AnMaster> pikhq, but listing them won't help with anything
23:22:57 <AnMaster> what is the point of doing so
23:23:10 <AnMaster> better submit a patch if you care that much
23:23:40 <pikhq> void sysinfo_cleanup(void);
23:23:43 -!- tombom_ has quit (Quit: Leaving).
23:23:52 <AnMaster> pikhq, took a parameter before
23:23:54 <AnMaster> also as I said
23:24:02 <AnMaster> this listing is completely and utterly pointless
23:24:11 <pikhq> genxWriter genxNew(void);
23:24:22 <pikhq> Okay, screw the list.
23:24:24 <AnMaster> pikhq, anyway, what I plan to do next is test the new speed up for the fork benchmark better. Then push it
23:24:26 <AnMaster> after that
23:24:29 <AnMaster> new funge space
23:24:34 <AnMaster> probably
23:24:35 <pikhq> Suffice it to say *every single (void) function is fastcall*.
23:24:50 <AnMaster> pikhq, see above though
23:24:55 <alise> pikhq: genx isn't even AnMaster's code -- clearly he's fucked with it to break it
23:24:56 <AnMaster> pikhq, you obviously didn't read
23:25:01 <AnMaster> <AnMaster> pikhq, plus actually it did more than just fastcall at one point.
23:25:04 <AnMaster> that line to be specific
23:25:23 <pikhq> AnMaster: EEEEW.
23:25:30 <AnMaster> pikhq, what?
23:25:49 <AnMaster> make sense
23:26:06 <pikhq> A macro that implies that it's just for fastcall doing more than that?
23:26:17 <pikhq> I'm taking away your C license.
23:26:24 <AnMaster> pikhq, well it did something else for speed. I don't remember what
23:26:33 <alise> MOAAAAAAAAAR SPEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEED
23:26:35 <AnMaster> I'm not sure if it was ever comitted
23:26:39 <AnMaster> or not
23:26:45 <pikhq> Oh, also.
23:26:45 <AnMaster> committed*
23:26:45 <pikhq> FUNGE_ATTR_FAST static inline void discard_line(void)
23:26:57 <fizzie> alise: Speaking of suxbot, did you see how much it crashes?-)
23:26:57 <AnMaster> pikhq, that one also used to take a parameter
23:26:58 <AnMaster> so again
23:27:07 <pikhq> AnMaster: ITS STATIC INLINE.
23:27:15 <alise> fizzie: I didn't. Heh.
23:27:16 <pikhq> FASTCALL DIDNT DO ANYTHING WHEN IT DID.
23:27:18 <AnMaster> pikhq, yes, but it was used in more than one place before
23:27:24 <alise> reallysuxbot: int main(){*0}
23:27:24 <AnMaster> in fact
23:27:29 <AnMaster> I think it still is
23:27:54 <pikhq> Believe it or not, GCC will still inline the shit out of static functions.
23:27:55 <AnMaster> pikhq, there is nothing that guarantees something *will* be inlined just because of "static inline"
23:28:06 <AnMaster> pikhq, well it didn't for me before
23:28:25 <AnMaster> pikhq, just FYI. Complaining about frame size when some verbose parameter was on iirc
23:28:27 <pikhq> AnMaster: What I'm saying is you, sir, do cargo cult programming.
23:28:33 <pikhq> And that you should stop it. Stop it now.
23:28:59 <AnMaster> pikhq, and I'm saying that isn't true. Due to a number of factors mentioned above
23:29:30 -!- FireFly has quit (Quit: Leaving).
23:29:37 <pikhq> AnMaster: "I'm too lazy to remove useless lines of code"
23:29:43 <AnMaster> pikhq, also I would be interested in seeing you criticising the unreadable code of ick next. That is the very least I expect from you
23:29:46 <AnMaster> really
23:29:55 <pikhq> This is the sign of someone who should not be allowed near machinery more complex than a wheel.
23:30:02 <AnMaster> pikhq, ^
23:30:18 <AnMaster> pikhq, next time ais is here I suggest
23:30:21 <AnMaster> I'm sure he will like it
23:30:31 <AnMaster> iirc the convickt code is especially bad
23:30:41 <alise> AnMaster is an expert at logical fallacy.
23:30:53 <Gregor> Doood
23:30:56 <Gregor> Wheel's are AWESOME
23:31:03 <AnMaster> pikhq, the code for threaded intercal using setjmp()/longjmp() is also quite horrible
23:31:05 <Gregor> Have you ever really thought about just how brilliant the wheel is? :P
23:31:08 <pikhq> AnMaster: ick sucking does not mean that you have cause to suck.
23:31:09 <pikhq> It just means that ick also sucks.
23:31:23 <AnMaster> pikhq, but you should certainly go complain to ais about this?
23:31:24 <AnMaster> no?
23:31:36 <pikhq> And I'm going to go poke around at CIntercal.
23:31:41 <alise> pikhq: Difference: ick sucks on /purpose/.
23:31:43 <alise> It's esoteric C.
23:31:49 <alise> AnMaster's code isn't interesting-esoteric, it's just shit-esoteric.
23:31:52 <alise> also, *C-INTERCAL
23:31:55 <AnMaster> pikhq, iirc the yuk code (debugger) was also quite messy
23:32:00 <pikhq> Oh, ick is *meant* to be unreadable?
23:32:15 <AnMaster> pikhq, well, so is parts of cfunge.
23:32:15 <alise> pikhq: Well, its parser uses Perl idioms to pay homage to CLC-INTERCAL.
23:32:18 <pikhq> Well, then. AnMaster, your point is "ick is meant to suck therefore I can get away with sucking."
23:32:20 <alise> That's basically some of the fun :-)
23:32:33 <alise> AnMaster is just lying, his code isn't interesting-shit, it's just shit that he can't write properly so he falls back on the esoteric excuse
23:32:38 <alise> Heard it all before
23:32:38 <Ilari> What could be fun: C implementation that complies with the standard. Except that all the undefined and implementation defined behavor would be really funky.
23:32:43 -!- Tritonio_GR1 has joined.
23:32:50 <pikhq> Which can be reduced to "I'm a terrible programmer. Fuck you."
23:33:17 <Deewiant> Ilari: AKA a DS9K implementation
23:33:21 <alise> Ilari: DeathS- what Deewiant said.
23:33:48 <AnMaster> pikhq, unreadable code fits right into cfunge I feel. Consider the quite horribly unreadable macro stuff in lib/libghthash that double includes files to do something like C++ templates in C
23:33:59 <AnMaster> quite a nice piece of unreadable code I feel
23:34:17 -!- Tritonio_GR has quit (Ping timeout: 258 seconds).
23:34:17 <AnMaster> pikhq, well worth checking out if you like unreadable code!
23:34:22 <Ilari> Say, 17 bit chars, 34 bit shorts, 51 bit ints, 68 bit longs and 85 bit long longs. Or something even more crazy.
23:34:43 -!- oerjan has joined.
23:34:47 <AnMaster> Ilari, doesn't char have to be a power of two in C99?
23:34:54 <pikhq> FUNGE_ATTR_FAST FUNGE_ATTR_NOINLINE FUNGE_ATTR_COLD FUNGE_ATTR_NORET static void print_features(void)
23:34:58 <pikhq> GAH WHAT IS WRONG WITH YOU
23:35:05 <pikhq> THE DUMB IT HURTS
23:35:09 -!- augur has quit (Ping timeout: 268 seconds).
23:35:19 -!- adam_d has quit (Ping timeout: 265 seconds).
23:35:22 <AnMaster> yay I'm breaking your mind!
23:35:25 <alise> I'm surprised pikhq hasn't noticed cfunge before now.
23:35:31 <Deewiant> Doesn't cold override fast there?
23:35:40 <pikhq> Deewiant: No.
23:35:48 <alise> It was truly the one thing that made me realise that AnMaster was irretrievably insane.
23:35:51 <pikhq> "cold" just means that it won't be stuck in the "hot" section.
23:35:59 <AnMaster> Deewiant, the fast one could be dropped.
23:36:00 <Deewiant> Thanks for the info! ... not
23:36:06 <oerjan> FUNGE_ATTR_COLD?
23:36:17 <Deewiant> FUNGE_ATTR_HAWT
23:36:20 <pikhq> AnMaster: This is not the "holy fuck that's crazy" reaction that you get to say, Malbolge.
23:36:36 <pikhq> This is the "holy fuck THAT IS RETARDED I HATE YOU" reaction that you get to, say, LOLCODE.
23:36:47 <Ilari> AnMaster: I don't think there are more requirements than integer number of bits at least 8.
23:37:01 <AnMaster> pikhq, did you look at the double include in that file I mentioned?
23:37:10 <AnMaster> pikhq, but yes that FUNGE_ATTR_FAST should be removed
23:37:14 <AnMaster> apart from that it looks fine
23:37:28 <AnMaster> FUNGE_ATTR_NORET is to allow error checking anyway
23:37:32 <alise> Hmm, "mlton foo.sml" isn't terminating.
23:37:36 <AnMaster> does the optimiser even use it?
23:37:37 <alise> Oh, now it is.
23:37:39 <alise> That was slow.
23:37:43 <pikhq> AnMaster: NOINLINE. In a static. Void. Function. That is only called once.
23:37:48 <Deewiant> alise: But now it's fast!
23:37:59 <alise> Deewiant: Yes! It prints "Hello, world!" in 0.002 seconds.
23:38:00 <pikhq> This is "fuck you, optimiser, I'm going to make you do soemthing dumb". The attribute.
23:38:06 <AnMaster> pikhq, correct. But why fill up the cache line for the "normal" path of code execution ;P
23:38:08 <alise> Amazing.
23:38:20 <Deewiant> alise: Imagine! It probably would've taken 0.004 if it'd've compiled it in only half a second
23:38:26 <pikhq> AnMaster: Uh...
23:38:27 <AnMaster> pikhq, after all it is for printing some info about the binary
23:38:28 <pikhq> Benchmark.
23:38:43 <pikhq> I DEMAND TO SEE BENCHMARKS JUSTIFYING EVERY SINGLE STUPID OPTIMISATION YOU HAVE MADE.
23:38:45 <alise> Deewiant: Of course, OCaml and Haskell both compile faster into similarly-performing binaries (OCaml beating Haskell by a lot).
23:38:52 <Ilari> Or 17 bit chars, 34 bit shorts, 51 bit ints, 85 bit longs and 119 bit long longs...
23:38:54 <Deewiant> alise: Yep
23:39:08 <Deewiant> 17 bit chars, ew
23:39:10 <alise> Deewiant: SML/NJ, too.
23:39:11 <AnMaster> pikhq, well, you are not my employer. So that you have to do yourself
23:39:28 <Deewiant> alise: Don't go backpedaling on the language choice, now
23:39:36 <pikhq> AnMaster: Premature optimisation is the root of all evil.
23:39:36 <Ilari> And of course the canonical character set is is something totally whcky.
23:39:37 <alise> like anyone would pay AnMaster to code
23:39:39 <Sgeo> At least when I write ugly code, I admit that the code is ugly
23:39:39 <alise> I'd pay him not to code
23:39:42 <AnMaster> Deewiant, 17 bit char sounds fantastic
23:39:47 * Sgeo wonders if he's ever written nice code
23:39:49 <pikhq> Your code is filled with premature optimisation.
23:39:49 <alise> Deewiant: SML/NJ is Standard ML too, you know :P
23:40:01 <AnMaster> pikhq, did you look at the double include stuff?
23:40:04 <pikhq> Thus, your code is made of evil. And not the enjoyable kind.
23:40:07 <pikhq> AnMaster: Where?
23:40:07 <AnMaster> pikhq, yes or no?
23:40:14 <Deewiant> alise: That's fine, OCaml and Haskell aren't ;-P
23:40:15 <pikhq> *Where*?
23:40:21 <AnMaster> pikhq, I mentioned it above. *unreadability* WAS A GOAL
23:40:29 <Deewiant> pikhq: lib/libghthash
23:40:31 <AnMaster> pikhq, An express goal yes
23:40:33 <pikhq> AnMaster: *Where*?
23:40:39 <AnMaster> pikhq, if you don't read what I say *shrug*
23:40:44 <AnMaster> pikhq, I mentioned it above
23:40:45 <pikhq> AnMaster: I missed it.
23:40:49 <Deewiant> pikhq: lib/libghthash
23:40:50 <AnMaster> pikhq, your loss
23:40:56 <pikhq> I just saw "did you look at it in that file I mentioned?"
23:41:09 <AnMaster> your loss I'm afraid
23:41:22 <AnMaster> but yes Deewiant told you
23:41:27 <pikhq> lib/libghthash is a directory, AnMaster.
23:41:28 <AnMaster> and you ignored that too
23:41:34 <AnMaster> pikhq, yes but it affects the files in there
23:41:35 <alise> wow AnMaster is so pissy
23:41:36 <AnMaster> most of them
23:41:36 <alise> it's kinda funny
23:41:40 <AnMaster> :D
23:41:43 <alise> it's like i can feel him actually getting angry behind the screen
23:41:44 <pikhq> AnMaster: Uh...
23:41:48 <alise> so cute.
23:41:52 <pikhq> What the hell is your *point*?
23:42:03 <AnMaster> pikhq, that unreadability *is* a goal sometimes in cfunge
23:42:05 <pikhq> "Files from there are double included"?
23:42:13 <Sgeo> Darke is once again active in B
23:42:35 <AnMaster> pikhq, the *_priv.h ones are included more than once to emulate C++ templates basically
23:42:39 <AnMaster> as I SAID ABOVE
23:42:43 <pikhq> You've failed at *that* goal, too. Your code is just bad enough to make me think you're dumb.
23:42:45 <AnMaster> your loss for not reading it
23:43:16 <pikhq> You want unreadable code?
23:43:26 <AnMaster> pikhq, .. if you aren't going to read what I say anyway
23:43:29 <pikhq> a,b,c;main(z,i)char**i;{h:a=!a,b=!b;g:(b-1)[1[i]]>b[i[1]]?a^=a,c=(b-1)[1[i]],1[i][b-1]=i[1][b],b[i[1]]=c,b=&b[(void*)1]:(b=&b[(void*)1]),!b[i[1]]?:({goto g;}),a?:({goto h;}),b=!b;j:putchar(b[1[i]])[(void*)(b=&b[(void*)1])],1[i][b]?({goto j;}):putchar('\n');}
23:43:30 <AnMaster> I'm not going to say anything
23:43:34 <AnMaster> pikhq, heh nice
23:43:39 <pikhq> *That's* unreadable code.
23:43:43 <AnMaster> pikhq, so it is.
23:43:51 <coppro> Sgeo: wrong chanenl
23:43:53 <coppro> *channel
23:44:00 <AnMaster> pikhq, looks familiar?
23:44:00 <pikhq> I'm looking at hash_table_priv.h ATM.
23:44:08 <Sgeo> coppro, alise isn't in ##nomic for some reason
23:44:16 <AnMaster> pikhq, well I didn't write the hash library.
23:44:21 <AnMaster> pikhq, but I adapted it
23:44:32 <pikhq> Looks cargo-cultish.
23:44:47 <AnMaster> pikhq, to the specialisation (because at that point a 50% speed increased showed up, that was before static funge space)
23:45:00 <AnMaster> pikhq, maybe. I don't know what part would be
23:45:09 * Sgeo 's done.. well, not cargo-cultish, but superstitious stuff before
23:45:38 <AnMaster> pikhq, but please go bash ick next. Because a lot of it's unreadability is on the same level as this
23:45:46 <AnMaster> now I'm going to bed. Night
23:45:50 <pikhq> Oh, the static inline fast-ness.
23:46:14 <AnMaster> pikhq, actually I'm going to keep it. Because it does no harm.
23:46:31 <Sgeo> There was one line, that I couldn't figure out why, but I left it in [or left it uncommented], because I thoguht it was related to crashinexss
23:46:34 <AnMaster> now night →
23:46:37 <alise> and so, on that day, new heights of pure idiocy were reached.
23:46:52 <pikhq> I'm going to litter my code with "0;"!
23:46:55 <pikhq> HOORAY!
23:47:03 <pikhq> It does nothing so WHATS THE HARM?
23:47:04 <alise> i'm gonna start tagging all my functions static inline __attribute__((noreturn))
23:47:07 <alise> even the ones that return
23:48:06 <pikhq> Also, AnMaster: double-including a header file so you can redefine the macros used for it?
23:48:11 <pikhq> Yeah, that's fairly mundane.
23:48:19 -!- oklofok has quit (Read error: Connection reset by peer).
23:48:24 <pikhq> Not "unreadable", not "clever". Just mundane.
23:48:41 -!- oklopol has joined.
23:48:52 <alise> you figured out how to twist the c preprocessor to do something actually useful as opposed to what it usually does (make code more confusing)!
23:48:53 <alise> ESOTERIC!
23:49:57 * Sgeo should write a language
23:51:04 <Sgeo> Hm
23:51:15 <Sgeo> newlanguage : functionalprogramming :: glass : OOP?
23:51:31 <pikhq> Sgeo: So, Lazy K.
23:51:36 <alise> *logicprogramming
23:51:36 <alise> moar esoteric
23:51:40 <Sgeo> Wait, I think Unlambda has it covered. Or Lazy K, which I never heard of
23:51:55 <alise> Lazy K would be better without the multiple-syntaxes gimmick.
23:52:02 <pikhq> alise: It would.
23:52:16 <pikhq> The SKI-subset is what should be kept.
23:53:15 <fizzie> I'm not *completely* sure on why you hawk on the static-inline-fastness so much, since it does at least have a theoretical chance of having an effect -- good or bad -- if the function happens to be not inlined for some reason.
23:53:36 <fizzie> As opposed to the no-arg thing, I mean.
23:54:01 <pikhq> They're ridiculously tiny functions, and it is very unlikely for them to either not be inlined or have the fastcall-thing matter.
23:54:08 * Sgeo wants to write a .. relational DB language or something. Code and runtime stored in Database table
23:54:10 <Sgeo> *tables
23:54:32 <Sgeo> I tried to do something similar before, but iirc, it was never-implemented crap
23:54:47 <Sgeo> Or maybe I only think it's crap because it was from a while ago
23:55:11 <pikhq> It seems that he just went through and fastcalled everything.
23:55:28 <Sgeo> What's a fastcall?
23:55:31 <alise> MLton supports continuations via callcc and throw.
23:55:31 <alise> MLton has a facility for saving the entire state of a computation to a file and restarting it later. This facility can be used for staging and for checkpointing computations. It can even be used from within signal handlers, allowing interrupt driven checkpointing.
23:55:33 <alise> I think I'll like this language.
23:55:53 <fizzie> Isn't that more of an implementation thing than a language thing, having stuff stored in a DB table?
23:56:09 <pikhq> Sgeo: "fastcall" is an alternate C calling convention that sticks arguments in registers.
23:56:24 <alise> ugh, prolog handles arithmetic so shittily
23:56:32 <Sgeo> It probably doesn't work with most FFIs, does it?
23:56:39 <pikhq> Not cleanly.
23:57:02 <Sgeo> Are there any other reasons not to use Fastcall?
23:57:19 <pikhq> Not the standard calling convention.
23:57:41 <pikhq> Has some limitations on what arguments your function can take.
23:57:58 <pikhq> Makes me cockpunch you for using it everywhere.
←2010-04-08 2010-04-09 2010-04-10→ ↑2010 ↑all