00:03:58 -!- kar8nga has quit (Remote closed the connection).
00:43:31 -!- Asztal has quit (Read error: 110 (Connection timed out)).
00:45:22 -!- MizardX has quit (Read error: 110 (Connection timed out)).
01:00:41 -!- cheater2 has quit (Read error: 60 (Operation timed out)).
01:08:58 -!- MissPiggy has quit (Remote closed the connection).
01:09:13 -!- MissPiggy has joined.
01:23:56 -!- MissPiggy has quit.
01:44:34 -!- immibis has joined.
01:45:33 -!- MizardX has joined.
01:52:25 <immibis> has anyone used the Irrlicht 3D engine in here?
02:11:31 -!- MizardX has quit (Connection timed out).
02:16:34 -!- Slereah_ has quit (Client Quit).
02:26:02 -!- bsmntbombdood has joined.
02:48:26 <uorygl_> Hmm. Package-on-package looks like a neat way of doing a computer.
02:49:17 <uorygl_> You have a processor, and then memory right on top of it.
02:51:06 <uorygl_> It replaces the von Neumann bottleneck with a von Neumann hula hoop. Except no, that's an exaggeration.
03:49:27 <Gregor> if yesterdays submission was "why Gregor should not write waltzes", then this improved version is perhaps "why Gregor should write waltzes": http://filebin.ca/xucnrd/maybewaltzpointtres.ogg
04:21:11 -!- Pthing has quit (Remote closed the connection).
04:39:11 <oklopol> the chord progression near 30 is pretty eso, i love part2´
04:45:42 <oklopol> and i love the 58th second of it
04:46:59 <oklopol> (i hope our times go at the same speed)
04:47:06 <Gregor> Hm, interesting. You're drawing me to the conclusion that I did better with the melody in the second part, but better with the chord progressions in the first part.
04:48:51 <oklopol> i'm more of a micromusician, so excuse me if it should be obvious
04:49:27 <Gregor> I would say 1:07. It switches to F at 1:17, but the intervening section is just the transition.
04:50:03 <uorygl_> What does a micromusician do?
04:50:11 <Gregor> Idonno, I chose not to ask :P
04:51:00 <oklopol> i think my opinion about the first part is 39-53 is great, chordally. the part before that is first boring, then good.
04:51:29 <Gregor> I was actually going to scrap the beginning, but I decided that having a simple intro with buildup was probably good *shrugs*
04:51:49 * uorygl_ researches the cromulence of "chordally".
04:52:23 <oklopol> uorygl_: i'm more interested in short snippets than complete songs.
04:52:50 <uorygl_> Well, "chordally" appears to be a completely valid word.
04:52:52 <oklopol> i was going by "microeconomics", without any sort of understanding of what that is.
04:53:02 <oklopol> uorygl_: what does it mean?
04:53:23 <uorygl_> It means precisely what you think it means.
04:53:41 <uorygl_> Of course, I'll have to check with the language geeks to verify. :P
04:54:06 <oklopol> uorygl_: consider the monoid consisting of prefix sets, with cartesian product as the operator
04:54:31 <oklopol> i think i proved it is, but would be nice to have a second opinion because i won't have time to write anything down
04:55:04 <oklopol> could ask #math i guess, i just don't like to start my mornings by being called an idiot
04:55:47 <uorygl_> What do you mean by "prefix set"?
04:56:02 <oklopol> a set that does not contain two words that are prefices of each other
04:57:07 <uorygl_> How do you interpret the tuple of two strings as a string? Concatenate them?
04:57:34 <uorygl_> Well, that... is a monoid. :P
04:57:40 <oklopol> yes, obviously it's a monoid
04:57:42 <uorygl_> Well, you could, say, concatenate them but with a comma in between.
05:00:36 <uorygl_> This may be equivalent to asking whether, if S x T is an element of the monoid, S and T must be. Is it?
05:01:19 <uorygl_> I think that's a necessary condition, at least...
05:01:25 <uorygl_> Um, my Internet connection is going to drop soon.
05:01:43 <uorygl_> Imagine if S and T are strings.
05:01:49 -!- oerjan has joined.
05:01:55 <uorygl_> Which, if the monoid is free, they must effectively be, right?
05:02:20 <oklopol> but isn't {"aa"^n | n \in N} free
05:02:54 <oklopol> map a <-> aa to get an isomorphism between that and the free monoid with one generator
05:03:08 <oklopol> or am i being completely stupid here
05:04:53 <oklopol> also without the prefix-freeness restriction, the thing is not a monoid ({1, a} and {a} commute but are clearly primitive)
05:05:05 <oklopol> so i don't think it's sufficient, at least
05:05:14 <oklopol> i wish there was a mathematician here.......
05:05:25 <oklopol> oh HEY oerjan didn't see you there
05:06:30 <oerjan> i would like a restatement of the question, please
05:06:40 <oerjan> i couldn't quite make head or tails of the log
05:06:50 <oklopol> 06:53… oklopol: uorygl_: consider the monoid consisting of prefix sets, with cartesian product as the operator
05:06:50 <oklopol> 06:53… oklopol: is it free?
05:07:40 <oerjan> so each element is of the form M_1 x M_2 x ... x M_n, where M_i are prefix-free sets?
05:08:08 <oklopol> you do a cartesian product, then concatenate the tuples together
05:09:04 <oerjan> but still, _each_ element of the monoid is a set?
05:09:14 <oerjan> of concatenated things
05:09:57 <oklopol> {"asd", "fas"} x {"kilo", "fel"} => {"asdkilo", "asdfel", "faskilo", "fasfel"}
05:09:59 <oerjan> now, prefix-free means that if st is an element, s cannot be iirc
05:12:04 * oerjan tries to convince himself that the combination of two prefix-free sets is prefix-free
05:12:45 <oklopol> i wonder if i actually went through the proof that it is
05:12:55 <oklopol> i just instantly got the idea for how to prove that
05:13:09 <oerjan> three cases: (1) s1*s2t (2) s*t (3) st1*t2
05:14:59 <oklopol> and yeah i guess there are cases
05:15:40 <oerjan> (1) ok no prefix of s1 can be in the first set since s1 itself is. nor can s1 itself. so you cannot have s1 in the combination
05:15:43 <oklopol> everything's sort of in my internal representation, i solved the problem during the period 6:00-6:20 with my eyes closed on the bed
05:16:51 <oklopol> or actually maybe ten minutes more in both directions
05:17:14 <oerjan> (2) s is in the first set. the empty string is not in the second, assuming it is non-empty (needs to be assumed i think)
05:18:08 <oerjan> (3) only s of st1 prefixes is in the first set. t1 isn't in the second.
05:18:20 <oklopol> yeah that was the trivial part
05:18:32 <oerjan> um that was the _whole_ part
05:18:51 <oklopol> i mean i just said "the monoid", so clearly what you did there was trivial
05:19:08 <oklopol> if it's given, it must be obvious!
05:19:40 <oerjan> ok now let s1s2...sn = t1t2...tm where s_i, t_i are in the same set. need to prove m=n and all s_i = t_i
05:20:03 <oklopol> only if si and ti are in the base right?
05:20:54 <oklopol> i don't know what an initial set is, all i know about freeness is its definition
05:21:34 <oerjan> ok we need to find out what a monoid being free means in practice
05:21:46 <oklopol> the base is easy to find, just take the set of all things that can't be divided in two, because all this is finite, you can easily see we get that everything is representable as a concatenation of those
05:22:01 <oerjan> it must have a set of generators, and no two different combinations of generators must be equal
05:22:55 <oklopol> the last part is the only nontrivial thing, and i think i proved it... well okay it seems really trivial now
05:23:01 <oerjan> hm wait it's not enough to check individual strings. the monoid elements are still _sets_
05:23:23 <oklopol> well who said anything about strings
05:23:45 <oerjan> "prefix-free" implies strings afaik
05:23:48 <oklopol> should go shower, i hear it's customary to do what every week
05:24:07 <oklopol> yes, but i mean who said anything about checking individual strings
05:24:38 <oerjan> ok this now feels complicated
05:25:33 <oklopol> i proved a few lemmas first
05:26:02 * oklopol seriously considers getting paper
05:26:58 <oklopol> i started by seeing what happens if you assume the contrary
05:27:12 <oklopol> so take AB = CD where A and C are primitive, and A != C
05:27:18 <oklopol> i think that's the only case you need to look at
05:27:52 <oklopol> if you can now show a contradiction, then C and D can be broken down in some way, we can then show by induction that all parts must be the same
05:31:43 -!- clog has joined.
05:31:43 -!- clog has joined.
05:31:47 <oklopol> basically what i do is first i show that for each element of A, there must be either a prefix or an antiprefix (antiprefix(a) = at for some t) for it in C
05:31:59 -!- clog has joined.
05:31:59 -!- clog has joined.
05:32:06 <oklopol> this is clear, otherwise the stuff in AB that starts with the string couldn't have matching rows in CD
05:32:14 -!- clog has joined.
05:32:14 -!- clog has joined.
05:32:28 -!- clog has joined.
05:32:28 -!- clog has joined.
05:32:42 -!- clog has joined.
05:32:42 -!- clog has joined.
05:32:56 -!- clog has joined.
05:32:56 -!- clog has joined.
05:33:10 -!- clog has joined.
05:33:10 -!- clog has joined.
05:33:16 <oerjan> um why is that a finite set
05:33:16 <oklopol> then for all i, ci = a * xi for some xi
05:33:34 -!- clog has joined.
05:33:34 -!- clog has joined.
05:33:37 <oklopol> didn't i directly mention all this is finite?
05:33:58 <oklopol> that's what you get for coming to class late
05:34:09 <oklopol> well okay you won't need any help now, shower time ->
05:34:15 <oerjan> ok that means it might actually be possible to think of cardinalities anyway...
05:34:46 <oklopol> finite strings, finite sets
05:35:30 <oklopol> also my proof doesn't rely on the sets being finite
05:35:47 <oerjan> i don't think i have the brain for this any longer
05:42:49 -!- oerjan has quit ("No brain today").
05:48:58 -!- clog has joined.
05:48:58 -!- clog has joined.
05:49:16 -!- clog has joined.
05:49:16 -!- clog has joined.
05:49:31 -!- clog has joined.
05:49:31 -!- clog has joined.
05:49:45 -!- clog has joined.
05:49:45 -!- clog has joined.
05:50:17 -!- clog has joined.
05:50:17 -!- clog has joined.
05:50:39 -!- clog has joined.
05:50:39 -!- clog has joined.
05:52:15 -!- clog has joined.
05:52:15 -!- clog has joined.
05:52:36 -!- clog has joined.
05:52:36 -!- clog has joined.
05:53:54 -!- clog has joined.
05:53:54 -!- clog has joined.
05:54:13 -!- clog has joined.
05:54:13 -!- clog has joined.
05:54:31 -!- clog has joined.
05:54:31 -!- clog has joined.
05:54:49 -!- clog has joined.
05:54:49 -!- clog has joined.
05:55:07 -!- clog has joined.
05:55:07 -!- clog has joined.
05:55:31 -!- clog has joined.
05:55:31 -!- clog has joined.
06:19:43 -!- tombom has joined.
06:24:40 -!- Sgeo_ has joined.
06:27:16 -!- Gracenotes has quit (Remote closed the connection).
06:29:43 -!- Gracenotes has joined.
06:38:18 -!- immibis has quit (Read error: 113 (No route to host)).
06:39:27 -!- Slereah has joined.
06:41:56 -!- Sgeo has quit (Read error: 110 (Connection timed out)).
06:46:25 -!- Sgeo_ has quit ("Leaving").
06:47:05 -!- immibis has joined.
06:58:11 -!- mycroftiv has joined.
07:10:00 -!- tombom has quit ("Leaving").
07:44:27 -!- cheater2 has joined.
07:49:20 -!- Slereah has quit (Read error: 110 (Connection timed out)).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:01:47 -!- mycronext has joined.
08:02:05 -!- mycroftiv has quit (Nick collision from services.).
08:02:15 -!- mycroftiv has joined.
08:02:30 -!- mycroftiv has quit (Client Quit).
08:02:39 -!- mycronext has changed nick to mycroftiv.
08:51:47 -!- immibis has quit (Read error: 110 (Connection timed out)).
09:31:00 -!- cheater2 has quit (Read error: 104 (Connection reset by peer)).
09:31:27 -!- cheater2 has joined.
09:39:57 -!- kar8nga has joined.
10:07:30 -!- Slereah has joined.
10:20:20 -!- oerjan has joined.
10:20:23 -!- atrapado has joined.
10:20:53 -!- Gregor has quit (Read error: 110 (Connection timed out)).
10:29:43 * oerjan finds today's iwc annotation very reassuring. well, maybe.
10:38:05 -!- FireFly has joined.
10:39:43 <FireFly> Interesting, now sun.com redirects to oracle.com
10:41:10 * oerjan feels there _has_ to be an ancient prophecy somewhere that could be interpreted to foresee that
10:50:36 -!- Slereah_ has joined.
10:55:05 -!- Slereah has quit (Read error: 110 (Connection timed out)).
11:04:37 -!- BeholdMyGlory has joined.
11:44:13 <AnMaster> * oerjan feels there _has_ to be an ancient prophecy somewhere that could be interpreted to foresee that <-- indeed
11:44:44 <AnMaster> also while sun was pretty bad, IMO oracle is worse
12:21:31 -!- oerjan has quit ("I predict sunny weather. Eventually.").
12:31:10 -!- kar8nga has quit (Remote closed the connection).
12:45:03 -!- MizardX has joined.
12:53:57 -!- Gregor has joined.
14:04:29 -!- scarf has joined.
14:08:45 -!- Sgeo has joined.
14:09:21 <Sgeo> Message to ehird, assuming that he is, in fact, ok: Fine Structure's final story has been released.
14:18:41 -!- fizzie has joined.
14:33:55 -!- zeotrope has joined.
14:34:38 -!- scarf has changed nick to scarf|away.
14:35:58 -!- scarf|away has changed nick to scarf.
14:43:35 -!- kar8nga has joined.
14:56:51 -!- muni has joined.
15:09:43 -!- cpressey has joined.
15:28:21 -!- Pthing has joined.
15:28:55 <pikhq> Sgeo: Hot diggity.
15:53:07 -!- atrapado has quit ("Ex-Chat").
16:00:18 -!- scarf has changed nick to scarf|away.
16:28:43 -!- Asztal has joined.
16:32:18 -!- MissPiggy has joined.
16:36:42 -!- zeotrope has quit (Read error: 104 (Connection reset by peer)).
16:41:08 -!- scarf|away has changed nick to scarf.
16:43:22 -!- AnMaster has quit (Success).
16:46:18 -!- scarf has changed nick to scarf|away.
16:52:22 -!- AnMaster has joined.
16:55:36 -!- kar8nga has quit (Remote closed the connection).
17:01:00 -!- AnMaster has quit (Read error: 54 (Connection reset by peer)).
17:03:18 -!- AnMaster has joined.
17:17:28 -!- scarf|away has changed nick to scarf.
17:31:24 -!- scarf has quit (Remote closed the connection).
17:44:22 -!- tombom has joined.
17:52:52 -!- muni has quit.
18:03:55 -!- tombom_ has joined.
18:04:32 -!- kar8nga has joined.
18:08:24 -!- zeotrope has joined.
18:15:36 -!- augur has quit (Read error: 110 (Connection timed out)).
18:18:18 -!- tombom__ has joined.
18:23:30 -!- augur has joined.
18:26:43 -!- oerjan has joined.
18:27:57 -!- tombom has quit (Read error: 110 (Connection timed out)).
18:33:48 -!- tombom_ has quit (Read error: 101 (Network is unreachable)).
18:37:53 -!- MigoMipo has joined.
18:39:30 -!- AnMaster has quit (Connection reset by peer).
18:45:42 -!- AnMaster has joined.
18:49:28 <FireFly> Yeah, it's a nice language
18:49:48 <AnMaster> I can't use dvi on my nvidia card it seems. Why? Because it causes X to lock up whenever DPMS kicks in
18:49:50 <AnMaster> that is, if the monitor is large enough
18:50:18 <AnMaster> it works fine for 4:3 monitors on DVI -_-
18:50:55 <FireFly> "4:3" doesn't really say anything about the size?
18:51:00 <AnMaster> also sshing in and killing X results in screwed up video mode. Reloading the nvidia kernel module after that causes it to claim that the nvidia card is unsupported (until reboot)
18:51:03 <AnMaster> so I guess something was really badly screwed up there
18:52:07 <oerjan> clearly it means a monitor with 4 x 3 pixels. works fine, just a bit hard to read on.
18:52:09 <AnMaster> FireFly, my ability to test is "large widescreen" and "small 4:3"
18:52:21 <AnMaster> FireFly, also I (had) a large 4:3 that is vga only
18:52:45 <AnMaster> had due to backlight dying, which is why I got a replacement (which is sadly widescreen, but you can't find 4:3 easily these days)
18:53:34 <AnMaster> also nvidia module was spewing things to Xorg.log
18:53:37 <FireFly> I ordered a new monitor last week, hopefully it'll work well
18:53:48 <FireFly> I'm using ATI though... so probably not the _same_ problem, at least
18:54:24 <AnMaster> FireFly, http://sprunge.us/GEgP
18:54:38 <AnMaster> and then it repeats those last lines forwver
18:54:42 <AnMaster> btw I'm badly lagged due to bouncer still joining channels
18:54:56 <FireFly> Ah, you and your +inf networks
18:56:12 <AnMaster> FireFly, anyway, that was just joining on freenode
18:56:18 <AnMaster> that causes it to throttle badly
18:56:28 <AnMaster> freenode has really low rate limits
18:56:35 <FireFly> But that's a maximum of 20 channels, at least
18:56:43 <FireFly> how many channels did you join, all in all? 600?
18:56:44 <AnMaster> FireFly, you can ask a staffer for extended limit
18:56:52 <AnMaster> so I'm in over 70 channels on freenode
18:57:06 <AnMaster> FireFly, also it's slightly below 500
18:57:18 <AnMaster> 490 or something like that last I checked
18:57:36 <AnMaster> it's per network, so I would have to sum all the values up
18:58:11 <AnMaster> (the info in the client on number of channels is per network that is)
18:58:23 <FireFly> isn't the client scriptable?
18:58:24 <MissPiggy> FireFly did you write that CSS3 thing
18:58:42 <FireFly> Assuming you meant the one on rosettacode
18:58:55 <AnMaster> <FireFly> isn't the client scriptable? <-- sure, but I don't feel like writing elisp right now
18:59:14 <AnMaster> FireFly, I need to study elkretsteori (whatever that is in English)
18:59:20 <FireFly> Well, there's no interpreter for CSS3 yet :P
18:59:26 <FireFly> Since the spec isn't completed
18:59:40 <AnMaster> FireFly, css3? what's new in it
18:59:59 <FireFly> Counters, move-to, new selectors, et cetra et cetra
19:00:43 <FireFly> And I'm too lazy to read and memorize all the specs, before they are even complete
19:00:45 <AnMaster> FireFly, anyway, what is elkretsteori in English I wonder...
19:01:11 <FireFly> I dunno, don't know what the course involves :P
19:01:41 <AnMaster> theory sounds too advanced in English
19:01:59 <FireFly> Electric circuit course, then, or something like that
19:02:18 <AnMaster> but really not sure about too advanced, it is only the second week of the course
19:02:52 <FireFly> Don't look at me, I'm still at gymnasium :P
19:04:33 <oerjan> *electronic, i would think?
19:04:38 <cpressey> Did someone say CSS3 is Turing-complete??
19:04:59 <FireFly> (for browser vendors, that is)
19:05:07 <FireFly> Personally, I hope it'll be :P
19:05:20 <cpressey> I'll keep the four horsemen on hand, in case it turns out to be...
19:05:38 <AnMaster> also what is the chance of non-square pixels on modern displays
19:05:47 <AnMaster> I suspect xdpyinfo is misinformed:
19:05:49 <AnMaster> resolution: 90x88 dots per inch
19:05:52 <oerjan> and i'll polish the wings on my pigs
19:06:06 <FireFly> Hopefully close to zero, AnMaster
19:07:29 <cpressey> OK, what little evidence I've turned up so far suggests that it is *not*, thank the stars.
19:07:53 <AnMaster> FireFly, they could drop js then
19:08:02 <AnMaster> thus only needing one scripting language
19:09:24 <FireFly> cpressey, if you want to look into it, the module I think is of most importance is the generated content one
19:09:25 <cpressey> Yay, stylesheets that can hang my browser!
19:09:37 <FireFly> http://etc.firefly.nu/css/euler-1.html
19:09:45 <FireFly> My take on Project Euler #1, (mostly) in CSS
19:09:52 <FireFly> Using JS for doing the hard work
19:11:09 <cpressey> Very cool, but happily, expressions like 5n+1 are only linear.
19:11:29 <FireFly> http://www.w3.org/TR/css3-content/#inserting0, #nested, #moving
19:11:31 <FireFly> Are also pretty interesting
19:11:47 <FireFly> (that is, those sections of that document)
19:12:41 <FireFly> Also, from what I've read, attr() should be able to return integer values and stuff
19:13:14 <FireFly> I hope not, but if that's usable in a ::before(n) or ::after(n), it'll probably be abuse:able
19:15:30 <AnMaster> <FireFly> My take on Project Euler #1, (mostly) in CSS <-- locks up firefox if I allow it in noscript
19:15:48 <FireFly> It should just freeze for a short while
19:15:58 <FireFly> Freezes my browser for like 4 seconds or something
19:16:07 <AnMaster> FireFly, this is on a sempron 3300+
19:16:34 <AnMaster> FireFly, we are talking more than half a minute (firefox 3.5)
19:17:12 <AnMaster> also, not firefox, Shiretoko, which is the arch non-official-brand firefox
19:17:39 <AnMaster> I hope 3.6 has a less messy name
19:17:47 <AnMaster> so I don't need to check it to type it out
19:18:30 <cpressey> Where did people get the impression that Turing-complete was "good" anyway? Clearly we need to implementations of esolangs in DSSSL and XSLT.
19:18:55 <FireFly> Took me one "script going slow" alert for it to complete for me, AnMaster
19:19:30 <FireFly> cpressey, not neccessarily good, but CSS being turing-complete would at least be _interestnig_
19:19:35 <AnMaster> FireFly, two went past before I gave up
19:20:03 <AnMaster> cpressey, DSSSL? Which one is that?
19:20:04 <FireFly> Oh well, it's not that interesting anyway
19:20:40 <cpressey> AnMaster: the predecessor to XSLT, basically
19:23:14 <cpressey> Or maybe Jinja2 templates. Assuming they're TC -- I think so but I haven't confirmed it. If not, then I'm sure some other templating language will come along...
19:24:29 <FireFly> Heh, Opera still has a bug with rgba background on body screwing it up
19:28:03 -!- MissPiggy_ has joined.
19:29:07 -!- MissPiggy has quit (Read error: 104 (Connection reset by peer)).
19:29:11 -!- MissPiggy_ has changed nick to MissPiggy.
19:29:23 -!- zeotrope has quit (Read error: 60 (Operation timed out)).
19:39:48 -!- fungot has joined.
19:45:34 -!- Sgeo|web has joined.
19:45:55 <Sgeo|web> No one's talked about Robozzle in a while
19:49:47 <Ilari> Try to push some new selector that would make CSS substly TC for next CSS release? :->
19:53:49 <Ilari> Substly TC => TC, but it isn't obivious it is TC.
19:57:06 <cpressey> Have CSS be able to style CSS, then point a stylesheet at itself!
19:57:30 <FireFly> Being able to use counters in the ::after(n) would surely be more than enough
19:57:50 <FireFly> Like, having a counter incrementing, and spawning new pseudo-elements
19:58:06 <FireFly> And then having a selector with higher specifity to halt it by overriding the counter-increment attribute :)
20:02:41 -!- MissPiggy has quit (Read error: 104 (Connection reset by peer)).
20:02:52 -!- MissPiggy has joined.
20:07:32 -!- Sgeo|web has quit (Ping timeout: 180 seconds).
20:20:10 <oklopol> AnMaster: are you active on all the 500 channels?
20:29:27 <uorygl_> So, I guess compiling C to JavaScript would be a scary proposition. Would compiling C-- to JavaScript be equally daunting?
20:32:33 <FireFly> C programmer trying JS: "wtf, int isn't defined?"
20:32:47 <cpressey> The fun bit would be the pointer arithmetic, I suppose.
20:33:03 <uorygl_> "Uh, how do I take the XOR of two JavaScript pointers?"
20:33:15 <FireFly> You'd have to simulate a register...
20:33:40 <uorygl_> Yeah. And that's precisely what I don't want to do.
20:33:40 <FireFly> Yeah, sounds like a scary proposition
20:34:24 <uorygl_> Which is why I'm asking about C-- instead.
20:34:28 <Ilari> Javashit has arrays, right?
20:34:52 <Ilari> Use those to simulate memory space?
20:37:23 <Ilari> And for translating C to JS, you don't have to support pointer XOR.
20:39:06 <Ilari> Pointer values pointing outside array (except to one-past-end) is instant UB.
20:46:07 <cpressey> Now do setjmp() and longjmp().
20:46:35 <Ilari> Oh, those are sure "fun".
20:48:12 -!- MigoMipo has quit (Read error: 104 (Connection reset by peer)).
20:49:37 <Ilari> More fun: Varargs.
20:50:32 <Ilari> And their type-unsafety. Plus va_start looking up starting point by variable name.
20:51:13 <cpressey> I think you're better off implementing a MMIX emulator in JS, then compiling your C code to MMIX.
20:51:31 <cpressey> Replace MMIX with your favourite machine code...
20:51:41 <fizzie> There's jsmips for that.
20:52:12 <fizzie> Apparently written in uppercase, also.
20:52:26 <cpressey> Oh, and there's a MIPS backend for gcc, too, looks like. There ya go.
20:52:49 <fizzie> "A test environment for JSMIPS is available online at http://codu.org/jsmips/system.html . This is a mostly-operational JSMIPS test environment with many UNIX binaries, including a working version of vi and a (slowly) working version of vim (with a few caveats)."
20:52:52 <cpressey> Just sucked all the fun out of that hell-project :)
20:55:52 -!- muni has joined.
20:56:32 <oklopol> Gregor also composes waltzes.
20:58:43 <cpressey> It's been a long time since I composed a waltz.
20:58:57 -!- GreaseMonkey has joined.
20:59:06 <oklopol> hehe, 23 seconds to compile (lambda a,b : a+a+b+b), if you give it append, cons, car and cdr
21:01:13 <oklopol> http://www.vjn.fi/pb/p416253316.txt
21:01:27 <oklopol> totally looks like something that should take 23 seconds
21:01:50 <oklopol> i guess the clue way would be to write a function that appends something to itself
21:02:36 <cpressey> So if I give Clue enough example Brainfuck programs, will it produce a working Brainfuck interpreter -- and how long would that take?
21:02:49 <cpressey> (plus the expected output of each, of course)
21:02:53 -!- Slereah has joined.
21:03:07 <oklopol> well actually i think something like brainfuck would be rather simple
21:03:28 <FireFly> That's the thing you talked about yesterday, oklopol?
21:03:59 <oklopol> it's the hot new thing in oklolandia
21:06:38 <oklopol> cpressey: the thing is you would have to give it very specific examples, basically how you program clue is you write a functional program in your head, then write an example of how the recurrence shuold go
21:07:03 <oklopol> i guess i could try implementing ski
21:07:56 <oklopol> ...or maybe some other time, that sounds really painful
21:08:11 <oklopol> really i should make a parser so someone else could see what it can do :P
21:08:21 <oklopol> i mean see as in try, and tell me
21:08:38 <pikhq> oklopol: SKI in C is painful.
21:08:59 <pikhq> Though for some reason the only problem I have now is the parser.
21:09:20 <oklopol> i made ski in thue, stop whining :P
21:09:55 <cpressey> Python -- never type curly braces again! "self.", on the other hand...
21:10:56 <FireFly> I see nothing wrong with it
21:11:19 <oklopol> you would if you always forgot to write it.
21:11:38 -!- muni has quit.
21:11:41 <FireFly> Well, I usually always write this. for instance-specific stuff, being used to JS
21:11:42 <GreaseMonkey> it's a pain if you've just switched to or from java
21:12:28 <GreaseMonkey> javac spat out a bunch of errors. why oh why did i just type self. there?
21:12:39 <uorygl_> Also, Thue does a few things more easily than C.
21:12:49 <GreaseMonkey> what made it worse was the fact that it was an in-function variable
21:13:08 <GreaseMonkey> oh yeah, speaking of thue, why do the interpreters poop out?
21:13:08 <oklopol> no spec or complete implementation yet, i've just been talking about it because i'm excited because the compiler/interpreter works apart from the parser.
21:13:08 <uorygl_> Dynamic memory allocation is very natural in Thue; it's quite unnatural in C.
21:13:38 <oklopol> oh well that's true, but i'm not sure i used it, i just had a writer head
21:13:39 <GreaseMonkey> the C interpreter is quite often incorrect and the python interpreter sometimes just stops
21:13:47 <oklopol> (probably did use it a bit)
21:14:07 -!- MigoMipo has joined.
21:14:14 <oklopol> GreaseMonkey: i made my own interp just for the ski so hard to say
21:14:40 <MissPiggy> how about Function Level programming
21:14:55 <MissPiggy> it's basically like programming in SK I have no clue why anyone would do that..
21:16:10 <cpressey> And I'm not sure why the Thue interpreters have problems; I mean, it's a simple enough language, it shouldn't be hard to get at least one of them correct.
21:16:24 <cpressey> I haven't tried either in a while.
21:16:41 <uorygl_> This kind of makes me want to write a Thue interpreter in Haskell.
21:16:57 <oklopol> i think it was my first haskell prog
21:17:07 <uorygl_> But eh. Haskell was not made to run Thue, now, was it.
21:17:29 -!- Slereah_ has quit (Read error: 110 (Connection timed out)).
21:17:35 <uorygl_> Or maybe it's more natural than I'm thinking.
21:18:52 <oklopol> well i always say if a language can't do string substitutions, it's not a haskell
21:20:41 <oklopol> my implications are not reversible
21:21:03 -!- augur has quit (Read error: 104 (Connection reset by peer)).
21:21:19 <oklopol> oh wait lazy k, i guess it's not, by what i said
21:21:29 * Gregor sucks the fun out of cpressey's concepts.
21:21:29 -!- augur has joined.
21:21:46 <oklopol> Gregor: way to waltz on his parade
21:22:57 <cpressey> Alas, twasn't even my concept -- I think it was uorygl's idea.
21:23:48 <cpressey> Maybe Thue to Javascript would be more doable?
21:25:06 <FireFly> Wouldn't that be pretty easy?
21:26:18 <cpressey> A thue interpreter in JS would be easy (or at least, no harder than C, Python, and Haskell, all of which have been complained about now.)
21:26:39 <cpressey> But to compile Thue to JS, without just using an interpreter written in JS...
21:30:26 <olsner> I also made a Thue in haskell
21:32:36 -!- immibis has joined.
21:33:30 <olsner> hmm, that other one was rather a compiler (written in sed) that produced mod_rewrite-style rules
21:41:49 <cpressey> uorygl_: compile C to Javascript.
21:43:56 <olsner> if you find a c-to-lisp and lisp-to-javascript compiler, you'll be done
21:45:30 <uorygl_> Hmm. I have a C-to-Lisp compiler, but not a Lisp-to-Javascript compiler; I do, however, have a Lisp-to-JVM compiler and a JVM-to-Javascript compiler.
21:48:06 <FireFly> But it's pretty buggy and stuff
21:48:36 <uorygl_> Oh, and all of those compile through x86. Too bad they're closed source so that I can't eliminate the language loops.
21:49:01 <uorygl_> Curse you, ACME Compiler Collection!
22:01:23 * pikhq is still having issues with his SKI evaluator's eval function.
22:01:39 <pikhq> Though finally my parser works right.
22:04:42 -!- kar8nga has quit (Remote closed the connection).
22:09:50 -!- MizardX- has joined.
22:25:24 -!- MizardX has quit (Connection timed out).
22:25:30 -!- MizardX has joined.
22:27:24 -!- MizardX- has quit (Connection timed out).
22:45:13 -!- MigoMipo has quit (Remote closed the connection).
22:50:02 -!- tombom__ has quit ("Leaving").
22:52:05 -!- FireFly has quit ("Thread.sleep(8*60*60*1000);").
22:52:10 -!- BeholdMyGlory has quit (Read error: 104 (Connection reset by peer)).
22:59:52 -!- oerjan has quit ("Good night").
23:17:35 -!- fizzie has quit ("jumpin' jumpin'").
23:19:21 -!- madbr has joined.
23:19:28 <SimonRC> I do rather like these 2 thumbdrives I have. ...
23:19:52 <SimonRC> they don't have caps, instead on end slides out kinda and turns around to expose the plug bit
23:20:15 <SimonRC> and when putting them away, I tend to take them both out, but one in each hand,
23:20:35 <SimonRC> then kinda flick them round and click them shut in sync
23:20:46 -!- fizzie has joined.
23:20:50 * uorygl_ ponders a USB thumb drive containing a hidden connector that extends whenever the drive expects to be plugged in.
23:21:35 <SimonRC> it's the sort of satisfying click that one expects from a remote detonator for blowing up a dam or something
23:21:44 * uorygl_ basks in his own cleverness.
23:22:10 <SimonRC> or maybe in an expensive lighter
23:23:46 <immibis> and when does the drive expect to be plugged in?
23:24:20 <uorygl_> Whenever you show it enticing photos of a USB port, perhaps.
23:25:30 <immibis> and how do you show the drive photos when it's not plugged in? does this drive have a webcam too?
23:26:08 <uorygl_> Or it has a microphone, and you can read excerpts from the USB standards to it.
23:26:15 <uorygl_> Or it has some tactile sensors.
23:26:28 <immibis> But then it's not just a USB thumb drive. It's a digital camera with a USB plug on it.
23:26:44 <immibis> And a microphone and tactile sensors.
23:26:56 <uorygl_> Well, the camera doesn't have to be useful for any purpose other than identifying USB ports.
23:27:13 <immibis> Then people will complain you can't use the camera.
23:27:18 <immibis> Except for identifying USB ports.
23:28:05 <uorygl_> Tell them that the USB drive was nevertheless designed and manufactured perfectly, and that this will all come in handy to someone at some point in the future.
23:30:39 <pikhq> Allow people to use the camera when it's plugged in.
23:30:44 <pikhq> So that you can identify the USB port.
23:45:34 -!- augur has quit (Connection timed out).
23:58:09 -!- madbr has quit (verne.freenode.net irc.freenode.net).
23:58:09 -!- Pthing has quit (verne.freenode.net irc.freenode.net).
23:58:09 -!- jix has quit (verne.freenode.net irc.freenode.net).
23:58:12 -!- jix has joined.
23:58:39 -!- Pthing has joined.
23:59:18 -!- cpressey has left (?).