←2010-09-12 2010-09-13 2010-09-14→ ↑2010 ↑all
00:02:42 -!- yiyus has quit (Ping timeout: 240 seconds).
00:02:46 <cpressey> olsner: see, i've never done that, so i decided it was time to play catch up :)
00:02:57 <cpressey> also, alise's sexp-in-awk-parser is similar
00:03:03 <cpressey> (i think)
00:04:23 -!- yiyus has joined.
00:08:50 -!- madbrain has quit (Ping timeout: 264 seconds).
00:28:08 -!- BeholdMyGlory has quit (Read error: Connection reset by peer).
00:29:40 -!- relet has quit (Quit: Leaving.).
00:43:58 <cpressey> well it... almost works
00:45:20 <olsner> that's... almost good?
00:46:00 <oerjan> almost yay
00:47:55 <alise> cpressey: how is it similar?
00:48:49 <cpressey> alise: you keep trampolining back the to //
00:48:54 <cpressey> *back to the
00:49:01 <alise> ah
01:01:19 <cpressey> d'oh
01:04:25 <cpressey> works now
01:05:34 <olsner> heh, battle programmer shirase doesn't accept money, but will work for vintage scsi cards
01:17:17 -!- Quadrescence has quit (Ping timeout: 265 seconds).
01:23:24 <alise> i thought that rung a bell; iirc fizzie linked to this a while back: battle programmer shirase
01:23:25 <alise> er
01:23:27 <alise> http://www.youtube.com/watch?v=6WxJECOFg8w
01:23:29 <alise> stupid clipboard
01:29:46 <alise> #esoteric
01:29:46 <alise> grr
01:29:51 <alise> why is this rendering so messed up
01:37:00 -!- Mathnerd314 has quit (Ping timeout: 272 seconds).
01:38:15 <cpressey> http://pastie.org/1154814
01:38:40 <cpressey> now you can criticize, mock, double compile, etc
01:39:48 <alise> wow it uses monaco
01:39:53 <alise> disorienting
01:40:09 <alise> cpressey: it's the most boring, conservative implementation of lisp i have ever seen.
01:40:28 <alise> congrats :P
01:41:47 <cpressey> \o/
01:41:48 <myndzi> |
01:41:48 <myndzi> >\
01:41:52 <alise> cpressey: Hmm, you have a state machine parser. Nice.
01:42:03 <alise> cpressey: It's like a recursive descent parser minus the recursion.
01:42:07 <cpressey> that was the objective of the exercise
01:42:27 <alise> if (*(state->ptr) == (char)0) {
01:42:31 <alise> if (!*(state->ptr))
01:42:58 <cpressey> boo
01:43:11 <alise> what?
01:43:11 <cpressey> builds on amiga, too
01:43:18 <alise> my line is clearly superior
01:43:24 <cpressey> oh, clearly
01:43:27 <alise> your is Javaesque in its senseless, readability-impairing verbosity
01:43:32 <alise> *yours
01:43:50 <alise> NUL is an implementation detail; you're really asking "is there no character?".
01:44:16 <cpressey> ... NUL is seriously exposed in C.
01:45:41 <alise> of course
01:45:46 <alise> but your conditional does not express your intent as clearly as mine
01:45:54 <cpressey> i like to only use ! on things that are actually boolean.
01:46:09 <cpressey> i think mine expresses my intent painfully explicitly
01:46:26 <cpressey> IF THIS IS A NUL, THEN..
01:46:45 <cpressey> '\0' is also ok
01:49:34 <alise> of course, yours is correct in a very literal, assembly sense
01:49:39 <alise> but K&R would not approve.
01:51:32 <cpressey> agreed. they would not.
01:51:48 <cpressey> anyway... i might write some kind of evaluator on this, now
01:52:06 <alise> i sort of wish C had classes now
01:52:09 <alise> because I'm writing a better parser
01:52:13 <alise> and I instinctively passed a parser argument, right
01:52:14 <alise> and wrote
01:52:16 <alise> p->next();
01:52:21 <alise> but then i realised that, with standard C,
01:52:29 <alise> I couldn't assign a meaningful function pointer there for e.g. an arbitrary string
01:52:32 <alise> because you can't do closures
01:52:38 <cpressey> i totally wished C had superstructures when I wrote this, because of all the casting
01:53:02 <alise> but i don't want to just use a string pointer
01:53:03 <alise> because... stdin
01:53:43 <cpressey> alright
01:56:32 <pikhq> alise: God, if C just had closures.
01:58:50 <alise> cpressey: eh i'm too lazy to
01:58:58 <alise> why have you made it resumable, anyway?
01:59:14 <cpressey> alise: because i never did one like that before
01:59:16 <oerjan> so he can put it on his resume, silly
01:59:33 <cpressey> oh yes, that's the sort of thing prospective employers want to hear
01:59:43 <cpressey> "so, how many ways have you written parsers?"
02:00:17 <cpressey> quite frankly, i'm not sure why I do ANYTHING I do
02:00:54 <cpressey> wh...
02:00:57 <cpressey> because it was fun!
02:01:41 <cpressey> and doing it in C is mainly because of my Amiga proclivities
02:02:06 <cpressey> and, i figure, if it can build there, it can build anywhere.
02:02:38 <cpressey> pikhq: first it's closures, next it's garbage collection, then the next thing you know, you aren't C anymore
02:03:20 <alise> pikhq: I humbly suggest we all just use OCaml.
02:03:28 <alise> Yes, it's shit, but are you really going to use that as an objection to a C replacement?
02:05:54 <cpressey> You know, 25-35 years ago, academia was devising new languages left and right, and so few of them have survived.
02:05:56 <pikhq> cpressey: libgc already.
02:06:32 <alise> libgc is meh!
02:06:36 <alise> so conservative.
02:06:40 <alise> cpressey: i imagine many gems have been lost.
02:07:07 <cpressey> pikhq: only to help find the leaks!
02:07:48 <pikhq> alise: Yeah, but it's a significant improvement over malloc in many use cases.
02:08:03 <pikhq> Of course, when you can *convince* people of that, you can probably convince them to just drop the C. :P
02:08:06 <alise> and [other language] is a significant improvement over C :)
02:08:09 <alise> heh
02:08:25 <pikhq> "We use C because we need it to be FAAASST"
02:08:28 <alise> remember when Vorpal was rabidly arguing for memory memory management which is EASY to do properly, over SLOW SLOW gc?
02:08:39 <alise> (he's retarded in new, excitingly different ways now!)
02:08:42 <pikhq> "... But you spend more time writing it in C than you do using it"
02:08:58 <cpressey> alise: strangely, i don't. well, ... 1) units of measurement <-> type system. 2) automatic construction of GUIs from data types. 3) self-modifying grammars. I've seen old papers on all of these. And those languages were forgotten. but the ideas keep coming up
02:10:10 <cpressey> now we have 1) Frink (but it sucks) 2) ...? probably some jQuery plugin somewhere. 3) Zz, Plof, etc.
02:10:33 <alise> Frink does not suck :<
02:10:39 <alise> he's even making it more CASy
02:10:46 <cpressey> Not compared to Wolfram Alpha, I suppose
02:11:01 <alise> 2) is... what was it called
02:11:05 <cpressey> Haven't played with it in a while
02:11:15 <alise> TV
02:11:30 <alise> http://www.haskell.org/haskellwiki/TV
02:11:47 <alise> http://www.haskell.org/haskellwiki/Tangible_Value ;; more permalinky
02:11:49 <zzo38> How can I, in TeX, like \ignorespaces but instead keep track of if there is a space there or not?
02:12:49 <cpressey> alise: That's certainly interesting... I wonder how much it can/must infer
02:13:31 <alise> cpressey: then there's the ultra-fun, way-out-there http://www.haskell.org/haskellwiki/Eros
02:13:32 <alise> based on TV
02:13:49 <zzo38> For other variants of C includes C++ and Objective-C and D, because of the different opinion of different people.
02:13:57 <alise> cpressey: this is Conal Elliott's stuff
02:14:01 <alise> (couldn't you guess? :))
02:14:10 <alise> totally a hero of mine
02:14:12 <zzo38> Unfortunately C++ is not completely compatible with C (for many reasons), even though it might seem at first.
02:14:14 <cpressey> alise: Ooh.
02:14:27 <cpressey> No, couldn't guess. [I refer you to the rock.]
02:14:38 <alise> yeah haskellers are totally famous
02:14:52 <alise> his blog is fun http://conal.net/blog/
02:14:55 <cpressey> But it proves I'm not jaundiced on everything, because I'm actually quite interested in this
02:15:02 <Sgeo> My English homework's easier than my comp. homework
02:15:05 <Sgeo> This is alarming
02:15:05 <alise> i like http://arcanesentiment.blogspot.com/ as my language-blog
02:15:10 <alise> it's like lambda the ultimate but more interesting
02:16:07 <cpressey> what disturbs me is that I can't *tell* what I'll find actually-interesting and what will bore me. there is a pattern but I can't expres or predict it
02:16:09 <alise> "Topless data" ;; totally didn't need that mental image
02:16:13 <alise> Clothes are illogical!
02:16:25 <alise> *express
02:16:29 <Slereah> But they keep me warm :(
02:16:30 <alise> cpressey: perhaps typo corrections interest you
02:16:53 <alise> Slereah: "I am an android; as such, I do not require fibrous garments to keep my internal systems at their optimum temperature."
02:17:37 <cpressey> alise: not as such, no
02:17:50 <Sgeo> Maybe I should switch my loyalty to Icon
02:18:05 <cpressey> Sgeo: What. Are. You. Talking. About. Questionmark.
02:18:17 <Sgeo> I'm reading the thing alise linked
02:18:25 <cpressey> Icon is an... interesting one.
02:18:33 <cpressey> But I think Griswold realized it doesn't scale.
02:18:43 <cpressey> (scale in some... conceptual sense)
02:19:20 <alise> icon's model is fun
02:19:28 * oerjan read that as (scala in some... conceptual sense)
02:19:39 <alise> y < (x | 5) is cool too
02:19:43 <alise> perl 6 has that
02:19:57 <alise> i forget what they're calling them; the perl 5 implementation is Quantum::Superpositions
02:20:06 <cpressey> Icon is like a non-gross Perl in a lot of ways
02:20:07 -!- Patashu has joined.
02:20:10 <alise> xD
02:20:23 -!- Patashu has quit (Client Quit).
02:20:55 <cpressey> I can imagine doing that in Haskell and it being this clunky monster but you could do it right and look I have this nifty type for it!
02:21:23 <oerjan> nifty 150 character type
02:21:52 <alise> you couldn't really do that in haksell
02:21:53 <alise> *haskell
02:22:25 <Sgeo> http://arcanesentiment.blogspot.com/2010/08/from-python-to-c.html
02:22:43 <cpressey> alise: not with a syntax anything like that, no
02:22:57 <cpressey> you're basically writing an interpreter for your miniiconexplang
02:23:35 <alise> Sgeo: what?
02:23:47 -!- benuphoenix has quit (Quit: leaving).
02:25:13 <cpressey> "Manual memory management is hard. If it accounts for half of your bugs, that's normal."
02:25:30 <alise> I'd say that's an underestimate for C.
02:25:34 <alise> *underestimation
02:25:39 <alise> Probably about right for C++.
02:25:44 <alise> (There you have new/delete.)
02:26:10 <cpressey> Oh and clever pointers.
02:26:15 <cpressey> Oh, I mean smart pointers.
02:26:18 <cpressey> (No I don't.)
02:26:49 <alise> pointers with Ph.D.s
02:26:54 <cpressey> C++ "in the large" is particularly fun because everyone uses a different kind of smart pointer.
02:27:04 <alise> *Ph.Ds.?
02:27:16 <cpressey> Obnoxious pretentious pointers?
02:27:29 <cpressey> "No, this is NOT your data. Pfft."
02:29:20 <Sgeo> Is Delphi a good language?
02:30:03 <alise> not really
02:30:07 <cpressey> Sgeo: Delphi is basically Pascal with goodies.
02:30:08 <alise> Pascal is nice in its insane "purity"
02:30:24 <alise> the Delphi developers thought "oh, that sounds like a nice thing to give OOP"
02:30:31 <cpressey> I like Pascal as a pedogogical language.
02:30:33 <alise> and then went totally insane, turning it into C++ without braces
02:30:42 <alise> cpressey: I bet the original Macintosh's Pascal code was nice.
02:30:53 <cpressey> alise: I get the impression it was, yes.
02:30:53 <Sgeo> C++:C::Delphi:Pascal?
02:31:11 <alise> Sgeo: C++:SomethingEvenSimplerThanC::Delphi::Pascal
02:31:16 <alise> They literally turned Pascal into C++.
02:32:07 <alise> cpressey: What editor do you use?
02:32:20 * Sgeo wonders if Clojure might be a Lisp with (almost) everything he sees in Pascal
02:32:26 <Sgeo> erm, in Factor
02:33:37 <cpressey> alise: You will mock me if I tell you.
02:33:46 <alise> cpressey: I really won't.
02:33:56 <Sgeo> Is there anyone here who hasn't been mocked by alise?
02:33:56 <cpressey> because it's not emacs and it's not vim and it has an actual gui.
02:33:57 <alise> Just seven years ago I was bashing out PHP in Notepad.
02:34:07 <alise> Awful PHP at that.
02:34:11 <cpressey> well it's not notepad, thank the gods
02:34:20 <alise> cpressey: Hell, I don't even like Emacs or vim.
02:34:28 <cpressey> it's SciTE and the main reason I use it is consistency between *nix and Windows.
02:34:31 <alise> I use the former simply because I gave up.
02:34:40 <alise> SciTE is alright
02:35:04 <alise> I was going to write an editor using Scintilla at one point (same author as SciTE; the editing component backend).
02:35:15 <alise> It's a bit weird though, can't place my finger on it. Something odd about it.
02:35:27 <alise> cpressey: now amend, there's a good editor.
02:35:28 <cpressey> surprised. i guess i'm too used to getting the seeing the hidden disappointment when I tell people I don't use emacs
02:35:36 <cpressey> s/getting the/
02:35:50 <cpressey> s/getting the //
02:35:52 <alise> Emacs can get stuff done, but the UI is so terrible that I wouldn't blame anyone who didn't use it.
02:36:02 <alise> It's a big dog but it can do pretty much anything I want with a big gob of elisp, so.
02:36:09 <pikhq> Emacs does not know "user-friendly".
02:36:11 <alise> Editing Haskell in anything else is... painful.
02:36:16 <alise> Lisp too.
02:36:33 <pikhq> User-antagonistic. Works just fine if you're willing to fight back.
02:36:36 <alise> yeah when I open Emacs I pretty much resign myself to leaving my platform behind and dabbling in its land
02:36:36 <cpressey> Emacs has TECO as an ancestor. I don't know if there's anything I can add to that.
02:36:41 <alise> cpressey: not really
02:36:45 <alise> Emacs was first implemented on top of TECO
02:36:46 <cpressey> Is it not?
02:36:48 <alise> but it was nothing like modern Emacs
02:36:50 <cpressey> Well, that's what I meant.
02:36:52 <alise> and it's implemented-on, more than extension-of
02:37:00 <alise> then it was pretty much thrown out and replaced
02:37:02 <cpressey> Still carries the miasma.
02:37:06 <coppro> I need food
02:37:11 * coppro goes to cafeteria
02:37:12 <alise> cpressey: I've used TECO.
02:37:15 <alise> It's acceptable.
02:37:22 <pikhq> TECO lives on more in *ed* than in Emacs.
02:37:27 <alise> TECO's better than ed. IMO.
02:37:33 <alise> It's much more flexible :-)
02:37:38 <pikhq> Well, yes.
02:37:48 <alise> pressing escape is inconvenient on most keyboards though
02:37:52 <alise> if you remapped capslock to it it'd be cool
02:38:14 <cpressey> I used to use nedit, which was actually alright, except for the *tif dependency.
02:38:26 <alise> teco is quite simple really
02:38:35 <alise> -5DIGoodbye$0TT$$
02:38:37 <alise> where $ = escape
02:38:42 <alise> -5D <- delete 5 chars back, just like vi
02:38:48 <alise> I...$ <- insert this
02:38:58 <alise> 0TT <- "print line 0 lines away from this one"
02:39:06 <alise> $$ <- "do all this and print out the results"
02:39:23 <cpressey> I like TECO as a historical artifact. I've tried to get into Emacs several times, many many times, and never made it fully in.
02:39:40 <cpressey> If I were to use TECO at work...
02:39:42 <alise> besides, TECO has a short brainfuck interpreter
02:39:43 <alise> @^UB#@S/{^EQQ,/#@^UC#@S/,^EQQ}/@-1S/{/#@^UR#.U1ZJQZ\^SC.,.+-^SXQ-^SDQ1J#@^U9/[]-+<>.,/<@:-FD/^N^EG9/;>J30000<0@I/
02:39:43 <alise> />ZJZUL30000J0U10U20U30U60U7@^U4/[]/@^U5#<@:S/^EG4/U7Q7;-AU3(Q3-91)"=%1|Q1"=.U6ZJ@i/{/Q2\@i/,/Q6\@i/}/Q6J0;'-1%1'
02:39:43 <alise> >#<@:S/[/UT.U210^T13^TQT;QT"NM5Q2J'>0UP30000J.US.UI<(0A-43)"=QPJ0AUTDQT+1@I//QIJ@O/end/'(0A-45)"=QPJ0AUTDQT-1@I//
02:39:44 <alise> QIJ@O/end/'(0A-60)"=QP-1UP@O/end/'(0A-62)"=QP+1UP@O/end/'(0A-46)"=-.+QPA^T(-.+QPA-10)"=13^T'@O/end/'(0A-44)"=^TUT
02:39:47 <Sgeo> Any opinions on Notepad++?
02:39:47 <alise> 8^TQPJDQT@I//QIJ@O/end/'(0A-91)"=-.+QPA"=QI+1UZQLJMRMB\-1J.UI'@O/end/'(0A-93)"=-.+QPA"NQI+1UZQLJMRMC\-1J.UI'@O/en
02:39:50 <alise> d/'!end!QI+1UI(.-Z)"=.=@^a/END/^c^c'C>
02:39:56 <alise> Sgeo: it's very solidly meh
02:40:00 <alise> I was always a Notepad2 guy myself
02:40:06 <pikhq> cpressey: Emacs has a very, very steep curve from "know nothing" to "usable in spite of ignorance".
02:40:09 <cpressey> Sgeo: At a place I used to work everyone LOVED Notepad++. I guess it's OK.
02:40:10 <alise> but i was also an idiot, so there you go.
02:40:24 <alise> cpressey: Anyway, really we should all just use amend.
02:40:32 <cpressey> alise: not acme?
02:40:51 <alise> cpressey: acme?
02:40:53 <alise> oh right
02:40:54 <alise> cpressey: no :P
02:40:59 <alise> i'm not that hardcore :(
02:41:07 <alise> a lot of the plan 9 gang use sam
02:41:16 <alise> which is basically a graphical window
02:41:18 <alise> with an ed window
02:41:22 <alise> and a bunch of file windows below
02:41:23 <alise> inside
02:41:42 <alise> you can select text and do basic insertions and scrolling with the bottom windows, but you mostly do everything inside the sam pane
02:41:43 <alise> and doing e.g.
02:41:44 <alise> /ab/
02:41:46 <alise> will highlight ab
02:41:57 <alise> so basically it's ed turned into a "graphical" editor
02:42:26 <cpressey> oh mt
02:42:28 <cpressey> *my
02:42:49 <alise> it's not bad if you know ed's command set really
02:42:52 <alise> but yeah, hardcore.
02:43:01 <alise> i'm talking about people like ken thompson here that use it
02:43:07 <alise> gods among men
02:43:22 <pikhq> alise: Hmm. That seems not too bad after the learning curve.
02:43:28 <alise> Sam is the preferred text editor of many eminent computer scientists; it replaced ed as Ken Thompson's favorite text editor, and he still uses it to this day. Sam is the text editor used by Bjarne Stroustrup [1] and Brian Kernighan [2]. Others, like Dennis Ritchie, have moved on to use acme instead.
02:43:32 <alise> pikhq: sam or TECO?
02:43:39 <alise> http://upload.wikimedia.org/wikipedia/commons/4/44/Sam_text_editor.png
02:43:40 <alise> screenshot of sam
02:43:43 <pikhq> alise: sam.
02:43:59 <alise> cpressey: ASK WHAT AMEND IS DAMMIT
02:44:46 <Sgeo> alise, an editor you have planned?
02:44:54 <alise> MAYBE
02:45:06 <Sgeo> Just Nothing
02:45:09 <alise> I actually did some work on leaden (its predecessor) but that code is elsewhere or lost right now.
02:45:15 <alise> Whatever.
02:45:26 <alise> Possibly the least conventional editor around, though...
02:45:34 <cpressey> alise: OK.
02:45:36 <alise> cpressey: How much would it irk you to use an editor where every single change to the file is saved automatically?
02:45:39 <cpressey> alise: WHAT IS AMEND DAMMIT
02:45:59 <cpressey> alise: I... it would take getting used to. Would it also save undo info in the file? I could live with that.
02:46:00 <Sgeo> Damnit, dammit
02:46:07 <alise> (Ctrl+S instead makes a version-control commit, after prompting for a one-line commit message. I call this feature "Overcome the Inertia Stopping Me Using Version Control".)
02:46:16 <alise> cpressey: It wouldn't; that's what Ctrl+S is for.
02:46:21 <alise> Or perhaps I will store undo information in ~/.amend/.
02:46:22 <cpressey> oh amend is yours!
02:46:24 <alise> It's certainly a good idea.
02:46:42 <alise> cpressey: Anyway, the idea is that whenever you'd save, you'd instead make a commit.
02:46:44 <Sgeo> ooooooO
02:46:47 * Sgeo likes
02:46:49 <Sgeo> *likey
02:46:51 <cpressey> That's a good idea.
02:47:00 <alise> Sgeo: the VCS thing or storing undo information to a file?
02:47:04 <Sgeo> VCS
02:47:21 <Sgeo> Although what about quick one-second files?
02:47:29 <Sgeo> Is there a default VCS?
02:47:35 <alise> Sgeo: When there is no repository, it will prompt to either create one or go into Boring Mode.
02:47:53 <cpressey> My only worry is that I made a bunch of changes, I don't like them, then amend crashes. Urg, I'm stuck with them. Of course, if the file is in VCS I can just revert, so, yeah.
02:47:56 <alise> Boring Mode should also be used for configuration files, like in /etc (even if you keep them in a VCS, it's not a good idea to change them underneath programs).
02:48:09 <alise> cpressey: Yeah, that's the idea.
02:48:23 <alise> Boring Mode -- which won't actually be called that -- should be used whenever you're without a VCS.
02:48:30 * Sgeo hopes that append will be available for Windows
02:48:33 <alise> (In Boring Mode, Ctrl+S when there are no unsaved changes will commit. So you can still do that.)
02:48:37 <alise> Sgeo: *amend, and maybe.
02:49:07 <alise> I won't make any great effort to support Windows; I'll make small fixes if they make it work, though.
02:49:10 <Sgeo> I feel like my spelling of alise's editor has just been alise's editored
02:49:32 <alise> quite
02:49:41 <alise> the other possible name was alter
02:49:43 <alise> but I liked amend more
02:50:08 <Sgeo> vcs-editor!
02:50:11 <Sgeo> </boring>
02:50:19 <alise> it has more features
02:50:30 <alise> cpressey: other features: very little ui, but not ui obscured behind non-obvious keyboard commands
02:50:42 <alise> it's just that there's not much to it that isn't integrated into a normal editing flow
02:50:59 <zzo38> I managed to now make Enhanced CWEB to be able to use special symbols for some words. Such as: blackboard bold "Z" for int or for signed int, blackboard bold "N" for unsigned, and so on.
02:51:02 <alise> ...self-discoverable, i.e. all keyboard shortcuts are either standard, included in a VERY tiny initial reference, or shown in the interface
02:51:25 <alise> cpressey: a proper sidebar tree view of a directory for navigating a project...
02:51:43 <alise> probably a list of files on the side since I'm stuffing other stuff onto the sidebar anyway; it can hold more entries than horizontal tabs
02:51:50 <alise> no menus :P
02:52:05 <alise> cpressey: my inspiration for some of this is http://www.logarithmic.net/pfh/yaedit
02:52:07 * Sgeo wants this to become a mainstream editor
02:52:12 <Sgeo> </yet-another-sgeo-meme>
02:52:25 <alise> which has the auto-save thing but no VCS support, a very obvious UI, and a sidebar as the only other UI
02:52:35 <cpressey> hmm
02:53:21 <alise> probably the first version of amend will be called "leaden" because i'm worried about giving anything rubbish the name amend, it's too good to tarnish :)
02:54:19 <cpressey> I like the idea of all shortcuts being visible. Or, ... well, a qualified version of that.
02:54:24 <Sgeo> "An option to set the bloody tab size and screw up your indenting. Tabs are 8 spaces, get over it.
02:54:24 <Sgeo> "
02:54:28 <Sgeo> Uhh...
02:54:34 <Sgeo> So much for editing Python code?
02:54:49 <alise> you can insert four spaces.
02:54:54 <alise> it's a very common opinion, anyway, that \t = 8 spaces
02:54:57 <alise> indentation
02:54:57 <alise> != tab
02:55:04 <alise> he means that \t shows as 8 spaces
02:55:12 <alise> although i think all indentation is by tabs, that's not what he's saying there
02:55:17 <alise> i don't agree with it but whatever
02:55:49 <cpressey> *my* editor would choke on tabs with the error message: "bad magic: plz man 1 expand"
02:56:13 <Sgeo> Some people may want to edit text, you know
02:56:19 <alise> Sgeo: and?
02:56:25 <alise> cpressey: nothing wrong with tabs, they're just horribly misused
02:56:40 <alise> tabs for indentation, spaces for alignment, although limited in editor support, is beautiful, since it looks perfect no matter what tabstop you se
02:56:42 <alise> *use
02:56:47 <alise> and retains the indentation information in a semantic form
02:56:56 <alise> even better are elastic tabstops, which don't even require a monospaced font for alignment :)
02:56:57 <alise> goodnight
02:57:02 <alise> someone check out what the hell this is:
02:57:03 <alise> * afaulds has quit (Quit: http://ajf.me/stuff/beep.exe - World's most advance beep app)
02:57:04 <alise> bye
02:57:05 <cpressey> goodnght
02:57:06 -!- alise has quit (Quit: Leaving).
02:57:27 * Sgeo carefully downloads
02:59:00 * Sgeo asks for Symantec to scan
02:59:11 * Sgeo watches Symantec take an unholy eternity to load
03:00:49 <Sgeo> Waiting for Symantec to start scanning...
03:01:17 <Sgeo> VirusTotal, which includes Symantec, found nothing
03:01:34 <Sgeo> local Symantec is still being a bitch
03:01:56 <Sgeo> Oh look, it completed
03:03:06 * cpressey can't wait can't wait
03:03:39 <Sgeo> local found the same thing as VirusTotal: Nothing interesting. I should have said that after it completed
03:03:44 <Sgeo> Instead of leaving it implied.
03:03:57 <cpressey> Did it at least go "beep"?
03:04:34 <Sgeo> I didn't actually run the thing
03:04:51 <cpressey> I dfound its source
03:04:55 <cpressey> (supposed source)
03:05:01 <cpressey> http://ajf.me/stuff/beep.c
03:05:33 <cpressey> case WM_COMMAND:
03:05:33 <cpressey> Beep(750, 300);
03:06:58 <Sgeo> I should make a Chrome profile that has Chrome's noscript enabled
03:07:04 <Sgeo> And doesn't have Flash or other plugins
03:07:09 <cpressey> http://ajf.me/reactos/stuff/arwinss-logo.png <-- much more entertaining than beep.c
03:07:09 <Sgeo> And starts in Incognito
03:07:13 <Sgeo> Hazmat Chrome
03:07:29 <Sgeo> Not as safe as a browser in a VM, but very close
03:08:56 <cpressey> Sounds decet
03:08:59 <cpressey> *decent
03:09:54 <cpressey> Ah I forgot Gnome terminal can open multiple tabs!
03:10:28 <cpressey> Of course, I tend to like having multiple desktop "screens" and sliding between them with Ctrl+Alt+arrowkeys better
03:10:40 <pikhq> I prefer screen.
03:11:02 <pikhq> Mmm, cheese.
03:11:04 <cpressey> I prefer screen for talking with a remote system that's going to drop me.
03:14:21 <Sgeo> Someday, I will switch to ReactOS
03:16:24 <Gregor> Sgeo: Once it becomes borderline-usable?
03:16:33 <Sgeo> Yes
03:16:41 <Sgeo> Or maybe when it becomes near-perfect
03:17:07 <Sgeo> (Although I'm scared that that might take decades)
03:17:42 <Sgeo> How long has WINE been around for?
03:18:43 <cpressey> Sgeo: Apparently it started in 1993.
03:18:46 <cpressey> (WP)
03:19:17 * Sgeo depresses
03:19:46 * Sgeo does not feel like waiting 20 years for usable ReactoS
03:19:49 <Sgeo> ReactOS
03:22:16 -!- yiyus_ has quit (Read error: Operation timed out).
03:29:11 -!- yiyus_ has joined.
03:29:52 <cpressey> Well, I added an evaluator to my parser. It knows 'car', 'cdr', and 'quote'. Exciting language!
03:30:19 <cpressey> It will probably become a C impl of Pixley. Eventually.
03:31:52 <cpressey> Oh, and I should probably make the *evaluator* non-recursive and resumable, too, just for consistency with the existing pointlessness.
03:35:02 <Sgeo> Pointfreeness?
03:42:18 <coppro> with no arguments
03:47:44 <wareya> arg[0]
03:49:33 <wareya> So, I took the concept of a language with expression nesting and 2d flow and made it less awful than what I wrote out Boat as.
03:49:36 <wareya> http://pastebin.com/YwLs2faU
03:59:01 -!- Mathnerd314 has joined.
04:05:09 <zzo38> Are any other needed symbols for data types in Enhanced CWEB?
04:05:16 <zzo38> (Other than the ones I have already listed)
04:06:45 <zzo38> I probably need "float" "double" "long double" I can use blackboard bold R for those.
04:06:52 <zzo38> (With the superscript - and +)
04:11:28 <cpressey> zzo38: Where can I download Enhanced CWEB?
04:14:25 -!- sftp has quit (Remote host closed the connection).
04:18:04 <cpressey> wareya: It looks a lot like C put into a 2D grid. But I don't see any obvious way to do conditional control flow -- neither in it nor in Boat.
04:18:25 <wareya> I haven't written conditionals into that one
04:18:33 <cpressey> Oh, in Boat it looks like ?(e){c}
04:18:38 <wareya> yeah
04:19:23 <cpressey> zzo38: I can't telnet into zzo38computer.cjb.net either, although I wasn't really expecting to be able to :)
04:26:18 <wareya> Variables of negative size...
04:28:41 <wareya> Moving XOR to : and ::
04:30:19 <wareya> Looks like I've used everything but , and .
04:30:24 <cpressey> variables of negative size could be stored backwards in memory
04:30:43 <zzo38> cpressey: Sorry. I do not currently have a telnet service running. (I used to, once. And I might possibly add others later)
04:30:54 <oerjan> aedi diputs a tahw
04:31:01 <wareya> That would be pretty nice, but how would their arraying work?
04:31:21 <zzo38> cpressey: Download Enhanced CWEB from: http://zzo38computer.cjb.net/cweb/
04:31:26 <zzo38> http://zzo38computer.cjb.net/cweb/cweb.zip
04:31:42 <wareya> Since the array indices of a null variable would all point to the same place (though it would end up being illegal to use them) it would make sense fot the array to be backwards too.
04:31:49 <zzo38> (Currently I am working on version 0.3 but there is version 0.2 can be downloaded from that URL)
04:32:06 <wareya> But it could turn out more abusable if the array indices always went to a higher address.
04:32:22 <wareya> Even if the variable were of negative size.
04:41:55 <wareya> Alright: http://pastebin.com/4TYRsGeJ
04:46:49 -!- oerjan has quit (Quit: Good night).
04:48:25 -!- GreaseMonkey has joined.
05:03:32 <wareya> I'm wondering about embedding conditions inside of expressions
05:03:36 <cpressey> wareya: I... didn't think you would take that seriously :)
05:03:50 <wareya> The negative variable thing?
05:03:53 <cpressey> yes
05:03:55 <wareya> I actually had that in my mind for a while.
05:03:57 <wareya> :)
05:04:01 <cpressey> :)
05:04:14 <wareya> 00:03 < wareya> I'm wondering about embedding conditions inside of expressions
05:04:17 <wareya> conditionals*
05:05:15 <cpressey> wareya: i have no opinion on that except "why not, C does it."
05:05:31 <wareya> C lets you embed if statements inside of expressions?
05:06:14 <zzo38> C lets you have ? : operator inside of expressions
05:06:15 <cpressey> zzo38: thanks, I have downloaded it. you might have more users if you made it possible to find that page from zzo38computer's main page. (not that you necessarily want more users)
05:06:19 <wareya> Ah, right
05:06:27 <cpressey> yes, I was thinking of ?:
05:06:38 <zzo38> cpressey: Yes I can might add that to the main menu
05:07:12 <zzo38> I might also add it to the gopher menu. The gopher menu is more organized, although not as many things available. I should add it to both menus, hopefully.
05:07:37 <wareya> I'm thinking about entire conditionals, statements included
05:08:00 <wareya> That would be another layer of depth in the expression nesting.
05:08:07 <zzo38> In C you can have function calls inside of an expression, so the function call can cause anything
05:08:19 <zzo38> In GNU C, I think you can even write it directly inline inside the expression
05:08:53 <wareya> I have to wake up and go to, uh, school in six hours.
05:08:58 <wareya> I should stop drinking caffiene
05:09:18 <zzo38> http://gcc.gnu.org/onlinedocs/gcc-4.5.0/gcc/Statement-Exprs.html#Statement-Exprs
05:10:15 <wareya> Looks complicated.
05:10:17 <wareya> :)
05:10:24 <lament> haskell allows statements in expressions!
05:11:08 <zzo38> Are there any other non-standard character escapes in some C compilers, other than \e for escape in GNU C?
05:12:31 <wareya> I think that GNU C allows x?:y as a shortcut for x?x:y
05:12:52 <wareya> but that's not a character escape so
05:13:59 <pikhq> C does allow multiple chars in a ''.
05:14:08 <pikhq> (IIRC, up to system word size)
05:14:50 <zzo38> cpressey: Do you have any questions/suggestions about Enhanced CWEB?
05:15:59 <cpressey> zzo38: It will take a long time for me to formulate any suggestions, but I do have one question. I think you posted a really simple example of a C program written in CWEB, to a pastebin, in the last few days (or week), but I don't remember the URL. Do you still have that?
05:16:20 <cpressey> I wish I remembered what the program did. It was simple, that's all I remember.
05:17:02 -!- augur has joined.
05:22:55 <zzo38> cpressey: No, I do not have the URL, sorry....
05:23:19 <zzo38> I also do not remember what program...
05:24:46 <cpressey> oh well. maybe i bookmarked it at work.
05:24:52 <cpressey> good night ->
05:33:06 -!- Fiber has joined.
05:34:03 <Fiber> Anyone here have any experience with enochian?
05:34:39 -!- Fiber has quit (Client Quit).
05:34:49 <pikhq> ... Enochian?
06:02:36 <zzo38> GNU C allows nested functions, which can take values from the containing function, as well as being able to jump out to a label in its containing function.
06:04:16 <Gregor> And to get pointers to those nested functions, it creates trampolines at runtime ... on the stack!
06:12:51 <pikhq> Gregor: Only if the functions close.
06:13:05 <pikhq> If they don't close, then it's just sugar for a normal function.
06:13:17 <Gregor> Fair enough.
06:13:20 <pikhq> I know this because I did nasty things.
06:21:49 -!- augur has quit (Remote host closed the connection).
06:21:57 -!- augur has joined.
06:23:50 <zzo38> Close? What do you mean by the functions close
06:26:55 <Gregor> Close in the sense of ... err, a closure.
06:27:04 <Gregor> That is, if the nested function refers to variables in the outer function's scope.
06:28:02 <pikhq> zzo38: Or, "close over variables".
06:28:42 <zzo38> O, OK. Refering to variables in the outer function's scope is one of its uses, for using these kind of function. Another use is jumping out of the function, to labels in the outer function.
06:29:37 <pikhq> zzo38: This, incidentally, is undefined if the outer function has ceased to be off the stack.
06:30:12 <zzo38> pikhq: Yes, but you would use it only before the outer function returns.
06:30:23 <pikhq> (technically, just *calling* the inner function if the outer function is off the stack is undefined, but GCC implements it in such a way that it has reasonable behavior if there's no closing)
06:30:36 <pikhq> zzo38: In which case you've just got something like a longjmp happening.
06:31:00 <zzo38> It might be called using a normal call, but it might also be used by a function pointer passed to another function
06:47:40 -!- zzo38 has quit (Remote host closed the connection).
06:48:50 -!- Patashu has joined.
06:49:24 -!- Patashu has quit (Client Quit).
06:53:55 -!- Mathnerd314 has quit (Quit: ChatZilla 0.9.86-rdmsoft [XULRunner 1.9.2.8/20100722155716]).
07:00:09 -!- tombom has joined.
07:11:26 -!- FireFly has joined.
07:17:03 -!- Quadrescence has joined.
07:48:53 -!- tombom has quit (Quit: Leaving).
07:59:59 -!- clog has quit (ended).
08:00:00 -!- clog has joined.
08:06:56 -!- FireFly has quit (Quit: swatted to death).
08:54:28 -!- Leonidas has quit (Ping timeout: 272 seconds).
08:59:16 -!- ais523 has joined.
09:19:51 -!- Flonk has joined.
09:36:32 <ais523> hmm, I independently invented arithmetic coding last night
09:37:00 <ais523> I wonder if that means that the patents on it should have been rejected for obviousness?
09:38:49 -!- contingo has quit (Quit: quit(save="no")).
09:56:09 <fizzie> "Is there any teaching in the prior art, as a whole, that would, not simply could, have prompted the skilled person, faced with the objective technical problem formulated when considering the technical features not disclosed by the closest prior art, to modify or adapt said closest prior art while taking account of that teaching, thereby arriving at something falling within the terms of the claims, and thus achieving what the invention achieves?"
09:56:17 <fizzie> If it's only "could", not "would", then it's not obvious.
09:57:06 <fizzie> I.e. just that you can independently invent it isn't enough; it also needs to be something you will necessarily "invent".
09:57:10 <fizzie> (I don't know how that works.)
10:03:36 -!- Leonidas has joined.
10:11:22 <ais523> well, it was the obvious solution, to me, of a problem I was having
10:13:23 <fizzie> For the obviousness, I guess it needs to be that for any "skilled person". I don't know how they measure that.
10:16:15 -!- lament has left (?).
11:04:46 -!- derdon has joined.
11:11:54 -!- Wamanuz2 has joined.
11:15:20 -!- Wamanuz has quit (Ping timeout: 276 seconds).
11:34:10 -!- Gracenotes has quit (Quit: ...).
11:43:57 -!- GreaseMonkey has quit (Remote host closed the connection).
12:35:40 -!- derdon has quit (Read error: Operation timed out).
12:36:39 -!- sftp has joined.
12:43:17 -!- Sgeo has quit (Ping timeout: 276 seconds).
13:00:10 -!- oerjan has joined.
13:07:24 -!- augur has quit (Remote host closed the connection).
13:18:36 -!- derdon has joined.
13:28:27 -!- ais523 has quit (Read error: Operation timed out).
13:30:53 -!- ais523 has joined.
14:17:08 -!- Flonk_ has joined.
14:18:42 -!- Flonk has quit (Ping timeout: 240 seconds).
14:18:50 -!- Flonk_ has changed nick to Flonk.
14:24:38 <cpressey> "< Fiber> Anyone here have any experience with enochian?" Well, it's a *language* I guess, but still. BZZZT.
14:45:02 -!- augur has joined.
15:01:42 -!- augur has quit (Ping timeout: 240 seconds).
15:06:32 -!- oerjan has quit (Quit: leaving).
15:21:48 -!- MigoMipo has joined.
15:23:55 -!- choochter has joined.
15:29:34 -!- cpressey_ has joined.
15:33:35 -!- augur has joined.
15:39:25 -!- Sgeo has joined.
15:39:49 <Sgeo> Thank you, Windows XP, for taking 10 minutes to boot up to a degree where XChat is usable
15:40:04 * Sgeo wonders if there's a bootchart for Windows
15:46:17 <cpressey_> i'm using irssi under cygwin! yay!
15:46:37 <cpressey_> i just need to set up that bitlbee thing so i can use this for jabber stuff
15:48:41 * Sgeo epiphanies about a Factor thing
15:53:33 -!- FireFly has joined.
15:59:01 -!- BeholdMyGlory has joined.
15:59:18 -!- Phantom_Hoover has joined.
16:01:32 -!- Sgeo has quit (Ping timeout: 276 seconds).
16:02:00 -!- Sgeo has joined.
16:04:59 <Phantom_Hoover> Is it just me, or was today's xkcd actually mildly amusing?
16:06:47 -!- ineiros has quit (Ping timeout: 245 seconds).
16:07:04 -!- ineiros has joined.
16:07:08 <Gregor> Phantom_Hoover: Impossible
16:07:12 <Gregor> *looks*
16:08:37 <Gregor> ... lawl, OK, the last two panels make it :P
16:08:50 -!- augur_ has joined.
16:09:48 -!- augur has quit (Read error: Connection reset by peer).
16:12:43 -!- augur has joined.
16:12:55 -!- augur_ has quit (Read error: Connection reset by peer).
16:16:20 <Sgeo> *sigh*
16:16:31 <Sgeo> Right now, we're looking at a slide on preincrement v postincrement
16:16:33 * Sgeo cries
16:17:52 <Sgeo> Sgeo is BORED!
16:17:56 <Sgeo> Perl is a BORING thing!
16:22:37 -!- oklofok has quit (Ping timeout: 245 seconds).
16:22:49 <Sgeo> I titled my classwork submission "Laziness is a virtue (Haskell is lazier than Perl =P)"
16:23:30 * Phantom_Hoover wonders what the laziest possible evaluation strategy is.
16:27:12 -!- oklofok has joined.
16:28:15 <Phantom_Hoover> Maybe "evaluate NOTHING".
16:29:38 <Sgeo> Said submission titled was visible in front of everyone
16:29:41 <Sgeo> She asked who Haskell was
16:29:52 <Sgeo> It just occured to me that Haskell was, in fact, a person >.>
16:29:54 <Sgeo> (is?)
16:30:27 <Phantom_Hoover> Not is.
16:30:41 <Sgeo> Ah :(
16:31:19 <Phantom_Hoover> Although other people are called that, obviously.
16:34:41 <Sgeo> Hey, Perl gets something right!
16:34:50 <Sgeo> (The mandatory braces for things like if)
16:34:55 <ais523> Haskell Curry
16:35:15 <ais523> he didn't actually invent currying functions, but the process is named after him anyway
16:36:51 <Phantom_Hoover> And he didn't invent Haskell!
16:37:07 <Phantom_Hoover> He did invent the Y combinator, but you can't have the Y combinator in Haskell!
16:39:27 <fizzie> The braces aren't mandatory for postfix if, though. (Personally I dislike them.)
16:40:05 <ais523> for a simple if, you can do it like this: "if(a) {b;}" becomes "a and b;"
16:40:54 <fizzie> That's true, though I've really only gotten into that habit with the "or die" case.
16:44:24 <Phantom_Hoover> print "hello" or die?
16:44:44 <Phantom_Hoover> Perl is now my favourite language.
16:45:09 <ais523> yep, pretty much
16:45:14 <ais523> the program errors out if it can't print hello
16:45:20 <Phantom_Hoover> :D
16:45:24 <ais523> say, if stdout is connecte to a file that's read only
16:46:00 <fizzie> fis@eris:~$ perl -e 'close STDOUT; print "hello" or die;'
16:46:00 <fizzie> Died at -e line 1.
16:46:32 <Sgeo> Hey, a Sgeo-meme is spreading!
16:47:44 <Phantom_Hoover> Although Perl was my favourite language when I discovered Perligata.
16:50:41 <ais523> fizzie: the close STDOUT from inside the program is sort-of cheating
16:50:53 <ais523> try $ perl -e 'print "hello" or die;' >&-
16:51:03 <ais523> that closes stdout from the shell
16:51:08 -!- zzo38 has joined.
16:51:22 <fizzie> ais523: It doesn't seem to print anything here, though.
16:51:34 <ais523> hmm, strange
16:51:50 <ais523> oh, what shell are you using? in csh, it probably closes stderr too
16:51:55 <ais523> because csh is insane
16:52:08 <fizzie> bash.
16:52:31 <fizzie> (In other news, the - for >&n was a new thing for me.)
16:52:57 <ais523> <&- is my favourite quick way to test error conditions on stdin
16:53:03 <ais523> it's sort-of hard to test otherwise, because it happens so rarely
16:54:50 -!- Sgeo has quit (Ping timeout: 276 seconds).
16:58:44 <zzo38> Any question(s), please?
16:59:09 <ais523> zzo38: did you know flogscript is now on anagolf?
16:59:36 <zzo38> ais523: Yes.
17:00:41 <zzo38> I have even sent in some entries, in FlogScript.
17:00:53 <zzo38> (And also some in other programming languages, too.)
17:01:30 <cpressey_> ais523: yes, currying should really be called schoenfinkeling.
17:01:48 <ais523> nah, schönfinkeling with the umlaut
17:02:00 <cpressey_> even better.
17:02:21 <Phantom_Hoover> Sounds like it'd make you go blind.
17:03:18 <fizzie> Phantom_Hoover: Only if you do it too much.
17:03:27 <Phantom_Hoover> I suppose.
17:06:06 <zzo38> Did you win a big spider yet?
17:08:12 <cpressey_> zzo38: Do you find that you code better when you are warm or when you are cold?
17:09:47 <zzo38> cpressey_: I don't know.
17:14:56 <cpressey_> i hadn't really thought about it until today
17:15:25 <zzo38> Neither have I
17:17:17 -!- zzo38 has quit (Quit: zzo38).
17:18:16 <ais523> wow, I have over a million points on anagolf
17:18:30 <ais523> making me 47th
17:20:20 -!- MigoMipo has quit (Remote host closed the connection).
17:20:55 -!- MigoMipo has joined.
17:23:50 -!- madbrain has joined.
17:28:18 -!- madbrain has quit (Ping timeout: 252 seconds).
17:37:40 <ais523> new anagolf problem, everyone!
17:44:04 -!- tombom has joined.
17:47:54 -!- ais523 has quit (Remote host closed the connection).
17:54:47 <Vorpal> line 103:assert(strcmp(buf, "11111001") == 0);
17:54:49 <cpressey_> languages should be about abstractions, but the first ffi to come along just kills that idea.
17:54:55 <Vorpal> main.c:103:2: warning: string length ‘2219’ is greater than the length ‘509’ ISO C90 compilers are required to support
17:55:08 <Vorpal> anyone has a clue about what is going on?
17:55:17 <cpressey_> Vorpal: that is extremely weird
17:55:27 <Vorpal> and buf it not some strange macro. It is just a char[9] or something about that size
17:56:12 <Vorpal> cpressey_, indeed. I get it for every assert(strcmp(buffer,"string-literal") == 0) in that file if compiling at more than -O0
17:56:20 <Vorpal> wait, assert is a macro
17:56:21 <Vorpal> hm
17:56:27 <Vorpal> doesn't it include the error message
17:56:28 <cpressey_> Vorpal: what if you move the strcmp expr out of the assert?
17:56:28 <Vorpal> or such
17:56:32 * Vorpal checks
17:56:45 <Vorpal> ahahahaha
17:56:50 <cpressey_> It'll do that CPP paste thing to turn it into a string
17:56:58 <Vorpal> cpressey_, you know assert() prints out the failed assertion?
17:57:02 <cpressey_> yes...
17:57:06 <Vorpal> I changed that to 1
17:57:09 <Vorpal> to see what it was
17:57:11 <Vorpal> let me pastebin it XD
17:57:30 <Vorpal> cpressey_, http://sprunge.us/LEHG
17:57:53 <Vorpal> cpressey_, I think that strcmp might be macroified for constant strings glibc headers
17:57:55 <Vorpal> magic
17:57:56 <cpressey_> nice!
17:58:14 <Vorpal> cpressey_, quite horrible yes
17:58:46 <cpressey_> recent gcc and its builtins stuff has not been happy-making
18:00:06 <Vorpal> cpressey_, I blame glibc headers here rather
18:01:07 <cpressey_> sure. i neither know nor can i make myself care
18:01:25 <cpressey_> all i know is i now see 'builtin' when gcc fails to do its job
18:01:41 <cpressey_> and this is yet another example :)
18:02:34 <Vorpal> cpressey_, nah it isn't really. It is actually glibc header magic...
18:02:43 <Vorpal> I'm 98% certain
18:02:57 <Vorpal> cpressey_, it wouldn't expand to that if done inside the compiler
18:06:31 <fizzie> It looks as if it comes from /usr/include/bits/string2.h.
18:07:42 <fizzie> Lots of pretty macros in that file.
18:08:19 <Vorpal> fizzie, presumably with newlines and indention though
18:08:26 <Vorpal> which should make it less painful
18:08:40 <fizzie> Well, yes, but it's still not really pretty.
18:14:19 -!- choochter has quit (Quit: lang may yer lum reek..).
18:15:23 -!- kar8nga has joined.
18:25:38 -!- augur has quit (Ping timeout: 276 seconds).
18:39:51 -!- augur has joined.
18:50:23 -!- Sgeo has joined.
18:54:23 -!- kar8nga has quit (Read error: Connection reset by peer).
18:55:54 <cpressey_> Vorpal: by 'gcc' i meant 'when i type gcc', not the compiler.
18:56:17 <cpressey_> i know you can use other c libraries than glibc with gcc -- that's not the point.
19:00:43 -!- Sgeo has quit (Ping timeout: 240 seconds).
19:15:37 -!- SgeoN1 has joined.
19:17:19 -!- SgeoN1 has quit (Client Quit).
19:28:56 -!- tombom has quit (Quit: Leaving).
19:35:20 -!- relet has joined.
19:37:31 <Phantom_Hoover> Hmm, there's $10,000 going for a disproof of the Time Cube.
19:50:21 <Slereah> Unfortunately, I'm not well versed in the crazy scientific method
19:54:20 -!- alise has joined.
19:54:32 <alise> hi
19:58:13 <coppro> Phantom_Hoover: the problem is that the prize is authored by the guy who authored time cube
19:58:22 <coppro> so you have to actually convince him
19:58:30 <Phantom_Hoover> coppro, yes...
19:58:36 <Phantom_Hoover> This is a problem...
20:00:00 <alise> cpressey: coppro: (Sgeo if he was here) I may be working on leaden today or in the next few days...
20:00:08 <Phantom_Hoover> Leaden?
20:00:46 <alise> Phantom_Hoover: the predecessor to amend.
20:00:53 <Phantom_Hoover> Amend?
20:01:05 <alise> http://tunes.org/~nef/logs/esoteric/10.09.12
20:02:06 <alise> Phantom_Hoover: (grep "amend")
20:02:36 <Phantom_Hoover> Oh, that crazy ed thing.
20:02:51 <alise> ed?
20:02:54 <alise> nothing to do with ed
20:03:43 <Phantom_Hoover> Oh, I am confused.
20:04:02 <alise> Phantom_Hoover: Search for "ASK WHAT AMEND IS DAMMIT".
20:04:05 <alise> That's the start of the conversation.
20:04:12 <Phantom_Hoover> sam was the crazy ed thing.
20:05:32 <Phantom_Hoover> And amend is presumably the editor you'd write for Lisp86 when it has such nice things as existence and an actual name.
20:05:50 <alise> Phantom_Hoover: Well, if you grepped for "ASK WHAT AMEND IS DAMMIT", you'd find out exactly what it is.
20:06:25 <Phantom_Hoover> alise, I read that, which is why I came to this conclusion.
20:06:34 <alise> No, it's what I'm writing round about now. :P
20:06:44 <alise> I already had a prototype version but I think it may have been deleted.
20:06:50 <alise> Or otherwise misplaced.
20:06:53 <Phantom_Hoover> The saving system is basically
20:06:58 <alise> awesome, yes.
20:07:09 <Phantom_Hoover> L86's hypothetical one emulated with conventional filesystems.
20:07:20 <Phantom_Hoover> DAMMIT WE NEED A BETTER NAME THAN LISP86
20:07:21 <alise> pretty similar, yeah
20:07:27 <alise> Lisp86 is a decent enough name
20:07:35 <alise> although it's more Lisp64
20:08:01 <Phantom_Hoover> alise, I stopped saying x64 when Gregor said I was a terrible person for it.
20:08:13 <alise> x86-64
20:08:15 <alise> -> Lisp64
20:08:25 <alise> Unless you want to say Lisp86-64, which is ludicrous.
20:08:33 <Phantom_Hoover> Heh.
20:08:51 <Phantom_Hoover> But I want a pretentious name!
20:09:01 <alise> Phantom_Hoover: Opal.
20:09:03 <alise> Flow.
20:09:07 <alise> React.
20:09:13 <alise> Plato.
20:09:16 <alise> Socrates.
20:09:20 <alise> (When all else fails, list Greek scholars.)
20:09:24 <Phantom_Hoover> Hermeneutics!
20:09:34 <alise> Archaeology!
20:09:41 <Phantom_Hoover> Can't get much more pretentious than hermeneutics.
20:09:58 <alise> Phantom_Hoover: Lemma
20:09:59 <Phantom_Hoover> !postmodern
20:10:05 <alise> !postmodern Operating system
20:10:06 <EgoBot> Operating system
20:10:10 <alise> !postmodern The operating system of the future
20:10:11 <EgoBot> Tted Kennedy operating system of tted Kennedy future
20:10:15 <alise> It's a rather crappy filter.
20:10:16 <Phantom_Hoover> alise, naw, that's what we'll call the proof assistant.
20:10:23 <alise> Phantom_Hoover: Do we have to have one of those?
20:10:24 <Phantom_Hoover> (Lemma, that is)
20:10:35 <Phantom_Hoover> alise, you've got to have a proof assistant!
20:10:44 <Phantom_Hoover> HOW ELSE WILL YOU PROVE THINGS?
20:10:45 <alise> I'm so bored of proof assistants.
20:11:09 <Phantom_Hoover> But it'll be a LISP OS proof assistant!
20:12:31 <Phantom_Hoover> ANYWAY
20:13:27 <alise> 18:59:00 * Sgeo asks for Symantec to scan
20:13:31 <alise> You use SYMANTEC?
20:13:35 <alise> HAHAHAHAHAHAHAHAHAHAHAHAHAHAHA
20:13:39 <alise> HAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHA
20:13:43 <alise> AHAHAHAHAHAHAHAHAHAHAHAHA
20:13:46 <alise> HAHAHAHAHAHAHAHAHAhem.
20:13:54 <alise> [after long virus checking]
20:13:55 <alise> 19:04:34 <Sgeo> I didn't actually run the thing
20:13:57 <alise> Well that was pointless.
20:14:22 <alise> 19:11:04 <cpressey> I prefer screen for talking with a remote system that's going to drop me.
20:14:25 <Phantom_Hoover> As far as I understand, all virus scanners suck in the non-alise sense.
20:14:26 <alise> dtach?
20:14:31 <alise> Phantom_Hoover: NOD32 is pretty cool
20:14:38 <alise> Symantec though? Really?
20:14:50 <alise> ...of course, the whole idea of a virus scanner is pretty stupid, but ignoring that
20:14:51 <Phantom_Hoover> Norton's the utterly crap one, isn't it?
20:14:58 <alise> And McAffe.
20:15:02 <alise> *McAfee.
20:15:21 <alise> Phantom_Hoover: Symantec = Norton.
20:15:26 <alise> Norton is just their brand.
20:15:36 <Phantom_Hoover> Ahh.
20:15:39 <alise> McAfee is impressively shitty.
20:16:00 <Phantom_Hoover> Isn't Norton the one which sometimes gets confused and thinks itself a virus?
20:16:06 <alise> No idea.
20:16:31 <Phantom_Hoover> And McAfee the one which vapourises system files on the off chance that they are malicious
20:16:40 <alise> Phantom_Hoover: Can I have £171.71 to buy a keyboard with, please? Thanks.
20:16:52 <Phantom_Hoover> ...No.
20:17:00 <alise> Phantom_Hoover: I, uh... that is to say, please?
20:17:13 <Phantom_Hoover> What's wrong with your keyboard?
20:17:33 <alise> Uhh, nothing is particularly wrong with it, other than it not being terribly good. It's not broken or anything.
20:18:19 <Phantom_Hoover> And why should I provide you with a new one?
20:18:20 * Gregor smashes alise's keyboard with a mallet.
20:18:31 <alise> Phantom_Hoover: See, now you have to.
20:18:31 <Gregor> There, solution problemed.
20:18:49 <Phantom_Hoover> alise, make Gregor do it!
20:18:55 <alise> Phantom_Hoover: Or I won't provide any more ridiculously pipe-dreamy ideas for Lisp86 any more.
20:18:56 <Phantom_Hoover> He broke the damn thing?
20:19:12 <Phantom_Hoover> And anyway, how are you typing if Gregor smashed your keyboard in with a mallet?
20:19:15 <alise> AND THEN WHAT WILL YOU DO, BEING ABLE TO RELEASE THINGS THAT ARE EVEN VAGUELY RECOGNISABLE AS CONVENTIONAL OPERATING SYSTEMS IN A REASONABLE AMOUNT OF TIME?!
20:19:21 <alise> I am using an on-screen keyboard. REALLY QUICKLY
20:19:31 <Gregor> Phantom_Hoover: He's on his iPaddlePodoTouchiePhone
20:19:32 <alise> :Mouse skillz:
20:19:40 <alise> "The bad man touched me in the phone."
20:19:54 <Gregor> No, that's the iPaddlePedoTouchiePhone
20:20:09 <Gregor> Or, for the brits, the iPaddlePaedoTouchiePhone
20:29:04 <alise> Phantom_Hoover: GIVE ME THE MONEY
20:29:08 <alise> It's only £171.71!
20:29:16 <Phantom_Hoover> alise, noooo
20:29:26 <alise> And that's a prefix of the repeating pattern 171717171...!
20:29:29 <Gregor> alise: If it was 171.70 he'd be all over it.
20:29:31 <alise> Which is an omen, so give me the money!
20:29:33 <Phantom_Hoover> I stitched all of my money into a blanket.
20:29:40 <alise> UNSTITCH IT
20:29:41 <alise> ...OR DIE
20:29:52 <Phantom_Hoover> I use it to keep myself warm at night.
20:30:01 <Phantom_Hoover> And I have the Device.
20:30:18 <Phantom_Hoover> You would be unwise to try to kill me.
20:30:30 <Gregor> Ooooh, The Device.
20:30:34 <Gregor> We're so scaaaaaa*gack*
20:31:04 <Phantom_Hoover> BWAHAHA
20:31:07 <alise> Phantom_Hoover: I think you will find that the Device ... is no longer there.
20:31:11 * alise holds up the Device
20:31:12 <alise> :)
20:31:18 <Phantom_Hoover> alise, pah!
20:31:22 <Phantom_Hoover> It only works for me!
20:31:35 <alise> Security... override, power... maximum, target... Phantom_Hoover...
20:31:39 <Phantom_Hoover> And I still have my deion laser!
20:31:47 * Phantom_Hoover shoots self with deions.
20:31:52 <alise> Kickassery... complete and utter.
20:31:52 * Phantom_Hoover is as unto a god.
20:31:54 <alise> Er, Phantom_Hoover.
20:31:58 <alise> That's the false deion laser I planted there.
20:32:01 <alise> *holds up deion laser*
20:32:11 <alise> It's actually just a whiteboard pointer.
20:32:13 * Phantom_Hoover holds up real Device.
20:32:21 * alise holds up the real real Device.
20:32:32 * Phantom_Hoover holds up real real real Device.
20:32:33 <alise> I have an infinite supply of these; you might as well just give up.
20:32:45 * alise holds up the real real real real real real real real real Device.
20:32:56 * Phantom_Hoover holds up the coinductive real Device.
20:33:04 * alise kicks you before you have the chance to turn it on.
20:33:09 * alise steals it.
20:33:13 * Phantom_Hoover blocks the kick
20:33:15 * alise bashes your head unconscious.
20:33:17 <alise> Oh, shut up.
20:33:22 <alise> I already fired deion particles at myself.
20:33:23 * Phantom_Hoover wonders what the hell that means
20:33:32 <alise> I am, therefore, undefeatable.
20:33:45 <Phantom_Hoover> You do not know the true effects of deions!
20:33:56 <Phantom_Hoover> Your brain shall be mashed into fundamentalism!
20:34:55 <Phantom_Hoover> MWAHAHAHAHAHA
20:35:03 * Phantom_Hoover puts on labcoat.
20:35:16 <alise> 19:35:02 <Sgeo> Pointfreeness?
20:35:16 <alise> 19:42:18 <coppro> with no arguments
20:35:17 <alise> untrue
20:35:33 <alise> Phantom_Hoover: It turns out that, like Zaphod Beeblebrox, I am already God.
20:35:55 <alise> Now... to the small matter of the money.
20:35:55 -!- wareya has quit (Read error: Connection reset by peer).
20:35:59 <Phantom_Hoover> alise, ZB was only God inside Zarniwoops reality simulator!
20:36:07 <Phantom_Hoover> *Zarniwoop's
20:36:16 <alise> And you think this reality isn't simulated?
20:36:20 <alise> How pathetic!
20:36:54 -!- wareya has joined.
20:36:57 * Phantom_Hoover exits the simulation.
20:37:11 * Phantom_Hoover rewrites it with a screwdriver and a Van de Graaf generator.
20:39:38 <alise> You cannot leave!
20:39:41 <alise> I did not give you a red pill.
20:39:43 <alise> Or a telephone.
20:39:50 <alise> Or a mirror to melt into.
20:40:34 <Phantom_Hoover> Yeah, well, the root password is actually "password".
20:40:49 <Phantom_Hoover> sudo unmount /people/Phantom_Hoover
20:41:23 <alise> I wrote the simulation, in part.
20:41:25 <alise> I am not that stupid.
20:41:54 <alise>
20:41:58 <Phantom_Hoover> Yeah? Well I wrote the rest of the simulation!
20:42:06 <alise> (You can't see that, but I said "Computer, delete character Phantom_Hoo-- actually, never mind.")
20:42:26 <Phantom_Hoover> WELL I WROTE THE SIMULATION THE SIMULATION IS RUNNING IN
20:43:15 <alise> Wrong.
20:43:16 <alise> Your clone did.
20:43:27 <Phantom_Hoover> I AM YOUR FATHER
20:43:58 <alise> Wrong.
20:44:02 <alise> Your clone is.
20:44:32 <Phantom_Hoover> Yes, but I am the clone's father!
20:45:42 <alise> Wrong.
20:45:44 <alise> Your clone is.
20:46:59 -!- jcp has quit (Quit: Later).
20:47:14 <Phantom_Hoover> I am your evil twin!
20:47:38 <Vorpal> <cpressey_> Vorpal: by 'gcc' i meant 'when i type gcc', not the compiler.
20:47:38 <Vorpal> <cpressey_> i know you can use other c libraries than glibc with gcc -- that's not the point.
20:47:42 <Vorpal> what then *is* the point*
20:47:53 <Vorpal> s/ p/ *p/
20:48:01 <Phantom_Hoover> Vorpal, the point is that you're getting in the way
20:48:12 <Vorpal> Phantom_Hoover, ...?
20:48:20 <alise> indeed
20:48:29 <Vorpal> Phantom_Hoover, do you have any clue what you are replying to?
20:48:45 <Phantom_Hoover> alise, the person you think is my clone is actually me having time travelled.
20:48:59 <alise> Phantom_Hoover: Wrong. That's what your clone wanted you to think.
20:49:13 <Phantom_Hoover> No, that's what I want my clone to think.
20:49:16 <alise> Wrong!
20:49:32 <Phantom_Hoover> Wrong!
20:49:36 <Vorpal> -_-
20:49:41 <alise> That's what your unborn sister would like your mother's child's brother's grandfather's friend's dog's fleas' son's descendent's lover's sons to think.
20:51:09 <Phantom_Hoover> alise, that's what they want Vorpal to want you to think.
20:51:35 <alise> Unfortunately for them, Vorpal has an impenetrable defence: he never thinks!
20:52:18 <Phantom_Hoover> The scoundrel!
20:53:10 <Vorpal> alise, that is what you want your mother to think that you think.
20:53:11 <Phantom_Hoover> alise, do you actually plan to do anything majorly different to the Loper OS guy?
20:53:45 <alise> Phantom_Hoover: Some stuff.
20:53:50 <alise> Vorpal: Case in point.
20:53:52 <Phantom_Hoover> Such as?
20:54:08 <Vorpal> alise, that is what you want yourself to think (aka, wishful thinking)
20:58:11 <Phantom_Hoover> alise, examples??
20:58:31 <alise> Phantom_Hoover: stuff
20:58:55 <Phantom_Hoover> What stuff?
20:58:57 <Phantom_Hoover> Any stuff?
20:59:02 <alise> STUFF OF DEATH
20:59:02 <Phantom_Hoover> Philosophical stuff?
20:59:05 <Phantom_Hoover> Implication stuff?
20:59:10 <Vorpal> loper OS?
20:59:13 <Vorpal> which one is that?
20:59:16 <alise> Phantom_Hoover: don't tell him
20:59:29 <alise> or we'll get Vorpal's Criticism of Loper OS, Message 1 of 734
21:00:01 <Vorpal> alise, http://www.loper-os.org/ ?
21:00:07 <alise> no
21:00:11 <alise> that's some random kid's blog
21:00:14 <alise> utterly uncommentable on
21:00:32 <Vorpal> alise, http://code.google.com/p/loper/ ?
21:00:43 <Phantom_Hoover> No, some random project.
21:00:48 <alise> Yeah dunno what that is
21:01:06 <Vorpal> alise, so link then
21:01:13 <alise> no
21:01:19 <Vorpal> http://code.google.com/p/loper/ seems rather interesting btw
21:01:28 <alise> Nope, it's so boring I can barely comprehend it. La la la la
21:01:38 <Phantom_Hoover> It's complete madness.
21:01:42 <alise> Yes.
21:01:45 <Vorpal> Phantom_Hoover, I disagree
21:01:47 <alise> Lisp on hardware? That's inefficient!
21:01:47 <Phantom_Hoover> Nothing that we'd be interested in.
21:01:50 <Phantom_Hoover> Yeah!
21:01:59 <alise> It needs backwards compatibility with POSIX/C.
21:02:01 <Vorpal> alise, now you are just silly
21:02:02 <Phantom_Hoover> An OS not written in C will never succeed!
21:02:03 <alise> Otherwise it's doomed to failure.
21:02:08 <alise> Phantom_Hoover: See, it's obvious.
21:02:08 <Vorpal> alise, you know I love lisp machines
21:02:28 <Vorpal> besides. Writing a C compiler targeting lisp machines has been done before
21:02:40 <Vorpal> so it isn't exactly problematic to be able to port software over
21:02:46 <alise> That one doesn't appear to run arbitrary code.
21:02:46 <Phantom_Hoover> Yeah! Show those smug Lispers who's best!
21:03:00 <Vorpal> what the fuck are you on about
21:03:31 <Phantom_Hoover> Vorpal, just how stupid that Loper OS thing is.
21:04:07 <Vorpal> Phantom_Hoover, I disagree though. It seems quite interesting. Of course I haven't looked into the details
21:04:13 <alise> You're stupid!
21:04:35 <Vorpal> especially the bit about removing the disk/RAM dichotomy is interesting. And a lot more viable with modern fast flash based disks
21:04:39 <Vorpal> than with old harddrives
21:04:43 <Phantom_Hoover> Vorpal, oh, no! It has those crazy filesystem ideas!
21:04:51 <Vorpal> Phantom_Hoover, what is wrong with those?
21:04:53 <alise> Yeah, that's so stupid I can barely even think.
21:05:13 <Vorpal> alise, your acting skill is poor.
21:05:22 <Vorpal> alise, you would completely fail at poker you know
21:05:23 <alise> Wow, your paranoia is in top form today.
21:07:35 <Vorpal> in fact I would say that project seems thoroughly on the right path. At least from the limited info I have been able to find on it.,
21:07:36 <Vorpal> ti*
21:07:38 <Vorpal> it*
21:08:37 -!- yiyus_ has quit (Ping timeout: 240 seconds).
21:08:40 <alise> Why are you trying to rebut someone you strongly believe to me just fucking with you?
21:09:34 <Vorpal> alise, am I?
21:09:39 <alise> <Vorpal> in fact I would say that project seems thoroughly on the right path. At least from the limited info I have been able to find on it.,
21:09:57 <Vorpal> alise, yes, as you can see I didn't direct it at any specific person in here
21:10:16 <fizzie> Completely irrelevant to your fascinating discussion, but dang, that's some quality bitterness in the SVN trunk's README of that code.google-link.
21:10:31 <Vorpal> fizzie, oh indeed, I noticed that too
21:10:33 -!- augur has quit (Remote host closed the connection).
21:10:56 -!- yiyus_ has joined.
21:11:24 <alise> Vorpal: We are, obviously, fucking with you, and that is the Loper we were talking about.
21:11:34 <alise> fizzie: He's a rather bitchy fellow.
21:13:06 <Vorpal> doesn't seem nearly as bad as the ion guy though. And much less insane.
21:13:27 <alise> The blog has a bit more wrongness, but yeah, he's not as bitchy as tuomov.
21:13:34 <alise> Tuomov actually has some quite similar ideas, though.
21:13:47 <alise> His packaging design was the best I've seen yet (based on cryptographically-signed API signatures).
21:14:38 <Vorpal> alise, anything like the versioned modules stuff of the linux kernel?
21:15:14 <alise> I don't recall.
21:15:33 <alise> It was very good though, although of course surrounded by explanations of how everything else sucks, like everything tuomov writes.
21:15:44 <alise> Still, I put on my filtration goggles and after that his blog was an interesting read. It's gone now though.
21:16:24 <Vorpal> alise, anyway, hm you have similar ideas to these two. And you are bitchy too. 100% of the people preferring to replace concepts like file systems are bitchy? XD
21:17:05 <Vorpal> alise, his blog is gone?
21:17:06 <alise> I'm less bitchy than tuomov.
21:17:16 <alise> ...see, that's their orthographically-tuned web personas.
21:17:19 <Vorpal> alise, yes I didn't say you were as bad. Just more than average
21:17:21 <alise> Imagine what tuomov is like on IRC.
21:17:32 <alise> Vorpal: yeah his site is gone
21:17:35 <Vorpal> alise, a lot more nasty?
21:17:44 <Vorpal> alise, ion with it?
21:17:56 <alise> Vorpal: indeed, although there are mirrors
21:18:00 <alise> and there hadn't been a release in ages
21:19:05 <fizzie> Well, didn't he jump ship to Windows-land anyway?
21:19:24 <alise> Yes. But he was planning to develop ion anyway, using an X11 server.
21:19:31 <alise> But I think he got disillusioned with the idea. Not sure.
21:19:31 <Vorpal> alise, hm and while I would like to see file system replaced (though hierarchical organisation of data can still be useful for some tasks) I'm not enough annoyed by them to actually start replacing them myself. Besides I can't think of a good replacement that actually works...
21:19:51 <alise> "though hierarchical organisation of data can still be useful for some tasks" ;; nothing ever stopped you creating a HashTree object
21:20:14 <Vorpal> alise, indeed. Or a radix tree perhaps?
21:20:21 <alise> AssociativeTree
21:20:22 <Vorpal> I think a radix tree would be closer to a file system
21:20:23 <alise> you know what i mean
21:20:25 <alise> implementation is irrelevant :P
21:20:49 <Vorpal> alise, actually that sort of tree implements a flat namespace outwards
21:20:54 <Vorpal> while a radix tree would not
21:21:08 <alise> well, whatever.
21:21:21 <alise> you'd hide it behind an api :P
21:21:23 <Vorpal> alise, but sets is another very useful data type
21:21:32 <alise> instantiate a Set object
21:21:37 <alise> -- these don't have to be OOP objects
21:21:43 <alise> "construct a set value", etc
21:21:44 <alise> *etc.
21:21:51 <Vorpal> alise, where the set is inherently de-duplicative too
21:21:53 <Vorpal> which is cool
21:22:04 <alise> deduplicative storage should be a feature of all orthogonal persistence systems :)
21:22:23 <alise> anyway, there's no reason not to just use the same organisation methods on disk as we do in memory; orthogonal persistence is of course ideal for this
21:22:33 <Vorpal> alise, I do hope there is a way to GC data though. I mean, 300 GB in a laptop? Easy to run out of that
21:22:44 <Vorpal> I don't remember venti having any sort of GC
21:22:45 -!- Flonk has quit (Quit: ChatZilla 0.9.86 [Firefox 3.6.9/20100824153629]).
21:22:47 <alise> well you don't want to gc your personal files
21:22:56 <alise> venti is /not/ suitable for a laptop :P
21:23:02 <Vorpal> alise, indeed
21:23:05 <alise> Vorpal: deduplicative doesn't necessarily mean never-deleting
21:23:07 <Vorpal> alise, I might want to GC old versions of files and so
21:23:08 <alise> at all
21:23:11 <Vorpal> alise, very true
21:23:17 <Vorpal> alise, but venti does iirc
21:23:19 <alise> although in my ideal system it does mean automatically-versioning
21:23:31 <alise> (with some kind of GC; it's pipe-dream enough that I haven't thought about the implementation too much)
21:23:56 <Vorpal> alise, even with 1 TB of storage you could easily run out. I mean, downloading tv shows? Then you might want to delete those at some point
21:24:07 <alise> Vorpal: well, of course there will be a big delete button
21:24:20 <alise> well
21:24:21 <Vorpal> alise, while being able to just add in more TBs would be awesome, it is not realistic
21:24:21 <alise> not big
21:24:21 <Vorpal> :(
21:24:23 <alise> pretty small actually
21:24:26 <alise> but you know what i mean
21:24:37 <Vorpal> unless you are google
21:24:38 <cpressey_> this appears to be a fascinating conversation, i wish i wasn't busy
21:24:44 <Vorpal> cpressey_, hah
21:25:27 * Phantom_Hoover isn't very bitchy at all.
21:25:37 <Vorpal> alise, what about compression? For example, I had two large things on my laptop: icc and nwn. I compressed both to one squashfs each. Saved about 8 GB together.
21:25:43 <Vorpal> and fast enough from tests
21:26:11 <Vorpal> alise, for "mostly read only" data like such, some transparent compression might be nice
21:26:43 <alise> yeah there will probably be some sort of heuristic for that
21:26:52 <alise> heuristic upon heuristics
21:27:00 <alise> Vorpal: there will also probably be some sort of TransparentCompressionObject
21:27:14 <Vorpal> alise, well, might be a bit tricky, allowing manual marking as well might be useful. Because heuristics are by definition not exact
21:27:17 <alise> that compresses the object serialisation, or just some byte-array field of it, with some compression algorithm
21:27:21 <alise> and makes it behave just like the uncompressed object
21:27:26 <alise> caching the uncompressed version if it's not too big
21:27:30 <Phantom_Hoover> (The issue of fragmentation over time is still niggly, though)
21:27:33 <alise> yes everything will be manually settable too
21:27:36 <alise> Phantom_Hoover: not if you use a Torsion-style system
21:27:39 <alise> :P
21:27:50 <Vorpal> Phantom_Hoover, hm? Fragmentation is not that much of an issue on SSD
21:27:51 <Phantom_Hoover> alise, neither of us understand Torsion-style systems.
21:27:56 <alise> I do!
21:27:56 <alise> Sort of.
21:28:00 <oklofok> torsion groups!
21:28:02 <alise> It's just paging on a disk.
21:28:09 <Vorpal> alise, what is Torsion-style? I never heard of it before
21:28:09 <alise> Sort of like a fileystem does it, really.
21:28:21 <Phantom_Hoover> Then what the hell was I picking through the source for‽
21:28:21 <alise> <Vorpal> Phantom_Hoover, hm? Fragmentation is not that much of an issue on SSD ;; it is when all your objects are N apart
21:28:26 <alise> and you want to allocate an N+1-sized object
21:28:31 <alise> Phantom_Hoover: to make sure! I had no idea before you told me.
21:28:32 <Vorpal> alise, oh good point
21:28:42 <Vorpal> alise, you need to fragment the new object then yes
21:28:49 <Phantom_Hoover> alise, I wouldn't trust me as far as I could throw me!
21:28:57 <Phantom_Hoover> And I couldn't throw me very far!
21:28:58 <alise> Vorpal: now name one language that fragments objects :P
21:28:58 <Vorpal> alise, which lead to some bookkeeping overhead indeed. And a tiny slowdown
21:29:07 <alise> so you want a third address space
21:29:11 <alise> that disk and ram both map to
21:29:15 <alise> rather than using disk as the address space directly
21:29:18 <Vorpal> hm
21:29:19 <Phantom_Hoover> Which is what Torsion does.
21:29:24 <Vorpal> alise, indeed.
21:29:36 <alise> anyone here use Chrome?
21:29:42 <alise> wondering whether to use stable, beta or dev
21:29:50 <Phantom_Hoover> All three!
21:30:01 <Vorpal> alise, this would probably require special hardware support to do it in a non-painful way. Both from "ease of use for programming against" and "speed"
21:30:08 <alise> Vorpal: no
21:30:12 <Vorpal> either that or disallow native code
21:30:12 <alise> the algorithms are simple enough
21:30:15 <alise> the latter, yes
21:30:15 <Vorpal> and JIT everything
21:30:16 <Vorpal> hm
21:30:23 <alise> it's not like we have backwards compatibility of any sort in the first place
21:30:39 <alise> we're basically creating a radical lisp machine on top of a standard computer
21:30:45 <Phantom_Hoover> Vorpal, why no native code?
21:30:49 <alise> Phantom_Hoover: he's right.
21:30:52 <Vorpal> alise, you have to agree there is something special about poking hardware registers directly though. A special feeling
21:30:55 <alise> and because it could basically bypass the system security
21:30:58 <alise> and also mess up more or less everything
21:30:59 <Phantom_Hoover> alise, oh?
21:31:12 <alise> sure, it's machine code and we don't use a traditional process style
21:31:12 <Phantom_Hoover> I need an explanation!
21:31:16 <Vorpal> alise, so I'm a bit sad about seeing asm hacks going away
21:31:17 <alise> the processor won't help us much :P
21:31:32 <alise> Vorpal: well, you can peek and poke memory from the top privilege level (how do you think we interface with hardware?)
21:31:37 <alise> and i suppose jmp to it :P
21:31:47 <Vorpal> alise, hm true
21:31:49 <alise> but anyone but the OS or a really stupid user using that would be ... bad
21:31:52 <Phantom_Hoover> alise, so wait, what's wrong with native code?
21:31:54 <cpressey_> I have an easy solution. I'll design an OS that is the exact opposite of what alise and Phantom_Hoover's is
21:31:59 <Vorpal> alise, and yes I realise at some point you need to interface it
21:32:00 <cpressey_> and Vorpal can use that
21:32:31 <cpressey_> of course i'll need to read this log later to find out what exactly that is
21:32:36 <alise> cpressey_: oh be nice, he's actually expressing reasonable opinions here
21:32:44 <alise> Phantom_Hoover: it subverts the whole model, basically
21:32:58 <Phantom_Hoover> !!
21:33:01 <Vorpal> cpressey_, oh I love something lisp machine based. I'm just saying that if we are doing it on off-the-shelf hardware, then I find the occasional asm hackery quite nice.
21:33:03 <cpressey_> I would never be anything other than nice :)
21:33:07 -!- alise has left (?).
21:33:10 -!- alise has joined.
21:33:12 <alise> Oops.
21:33:18 <Phantom_Hoover> Wait, do you mean native code that hasn't been compiled by the Grand High Compiler?
21:33:32 <alise> yes
21:33:34 <alise> of course
21:33:36 <alise> -ChanServ- [#chromium-support] Welcome to #chromium-support, if you are using linux, please specify which distro. Remember that ArchLinux is not supported.
21:33:40 <alise> Arch: the new Gentoo
21:33:41 <Vorpal> Phantom_Hoover, indeed. I mean the occasional manual asm
21:33:55 <Vorpal> alise, why is arch not supported?
21:33:56 <Phantom_Hoover> Vorpal, well, I think I gave that some thought.
21:34:13 <Vorpal> alise, its a binary distro ffs
21:34:32 <Phantom_Hoover> We came to the conclusion that assembly would be allowed at a very high privilege level.
21:34:44 <alise> Vorpal: the chrome package isn't
21:34:47 <Vorpal> alise, from this I presume you run all in ring 1 with one large memory page?
21:34:52 <alise> anyway, presumably for the same reason as Gentoo
21:34:54 <alise> <Vorpal> alise, from this I presume you run all in ring 1 with one large memory page?
21:34:56 <alise> probably, maybe
21:34:57 <Vorpal> alise, so they support gentoo?
21:35:02 <Vorpal> alise, since it is not listed there
21:35:02 <alise> we might be able to use paging for our own perverse advantage
21:35:05 <alise> Vorpal: nobody uses Gentoo :)
21:35:14 <Vorpal> alise, pikhq does
21:35:19 <alise> I'm just saying that people used to not support Gentoo because of the userbase and the devs doing silly things
21:35:27 <Phantom_Hoover> alise, I thought we were using paging to implement the RAM-side abstract memory space/
21:35:36 <alise> Now people don't support Arch -- based on a sample size of one -- because of the userbase and AUR package writers doing silly things.
21:35:39 <alise> Phantom_Hoover: Yes, quite possibly.
21:35:51 <pikhq> The userbase has stopped expecting to be supported for doing silly things, and the devs have stopped doing silly things.
21:36:19 <Vorpal> alise, hm so not using one singe hugepage then?
21:36:26 <Vorpal> alise, no TLB misses = awesome
21:36:37 <Phantom_Hoover> alise, I may be sounding terribly sane, but using anything other than paging for that is going to devastate performance.
21:36:39 <Vorpal> of course your idea is even more awesome
21:36:39 <alise> Vorpal: Well, we might use a big hugepage.
21:36:49 <alise> After all, the actual memory access is near-irrelevant.
21:36:54 <Vorpal> alise, indeed
21:36:55 <alise> As long as you can refer to an object in the Lisp and get the right thing back.
21:37:01 <alise> The choice is basically for performance and memory usage.
21:37:13 <Vorpal> alise, completely self-implemented?
21:37:16 <alise> Yes.
21:37:22 <alise> (without multi-paging you could possibly use less memory space due to not having to map a page at a time)
21:37:22 <Vorpal> no forth at the base?
21:37:26 <Vorpal> just asm and lisp?
21:37:28 <alise> Well, maybe.
21:37:32 <alise> But probably just asm.
21:37:42 <alise> I mean, we're going to be doing horrible, rapey things to the hardware to get it to do our evil bidding for us.
21:37:45 <alise> So might as well...
21:38:00 <alise> "You tried to install a file that does not (or no longer) exist." --GDebi
21:38:03 <Vorpal> if only we could get lisp *all* the way down
21:38:16 <alise> Vorpal: Lisp Machine. Gosh.
21:38:23 <Vorpal> alise, yeah duh
21:38:23 <alise> Or do you mean replace electricity with little (s and )s?
21:38:30 <Vorpal> alise, I meant on *stock hardware*
21:38:39 <alise> Writeable microcode!
21:38:44 <alise> Fuck yeah!
21:38:48 <Vorpal> alise, well, perhaps.
21:38:52 <alise> "But alise, microcode isn't Lisp!"
21:38:57 <alise> Writeable nanocode!
21:38:58 <alise> Fuck yeah!
21:39:05 <Vorpal> alise, I think the intel microcode is rather limited.
21:39:14 <Vorpal> as in, it couldn't be made to do that
21:39:25 <Vorpal> even if you reverse engineered it
21:39:40 <alise> Anyway, ideally I'd build the most beautiful Lisp computers ever and raise them up with kittens to be the most amazingly fluffy computing devices ever to exist.
21:39:49 <alise> But that would require moving from my current position, and as a rule, I don't do that!
21:39:54 <alise> So stock hardware it is.
21:40:05 <alise> (Also there is the money thing.)
21:41:29 <cpressey_> sexplectricity
21:41:50 <Vorpal> is that the awful pun I think it is?
21:42:02 * cpressey_ watches so-called "reality" start to bend in front of him
21:42:14 <alise> (((())))
21:42:16 <alise> ALL THE WORLD IS A CAR
21:42:20 <alise> AND YOU ARE DRIVING ON THE ROAD TO THE END
21:42:21 <alise> THE RAPTURE
21:42:22 <alise> THE AWAKENING
21:42:24 <alise> THE... CDR
21:42:30 <Phantom_Hoover> alise, so wait, we have to write a nice compiler that can do everything *in x86 assembly*?
21:42:31 <cpressey_> that's not so much a pun as it is a forcemanteau
21:42:36 <Vorpal> alise, um if all the word is a car, so is the cdr :P
21:42:36 <alise> CONS CELL, in cinemas September.
21:42:41 <alise> forcemanteau <3
21:42:43 <alise> Phantom_Hoover: x86-64!
21:42:52 <alise> Phantom_Hoover: And, uh, well, not the entire compiler, I guess.
21:42:57 <alise> That can be bootstrapped from a more minimal thingy.
21:43:00 <Vorpal> Phantom_Hoover, why? Just write eval
21:43:01 <alise> But the runtime, yup.
21:43:01 <Vorpal> :P
21:43:13 <Vorpal> alise, couldn't parts of the runtime be implemented in lisp itself?
21:43:18 <alise> Phantom_Hoover: Hey, MenuetOS has a web browser and a DVD player and ... and it's written entirely in assembly.
21:43:22 <alise> I'm sure we can manage!
21:43:27 <Phantom_Hoover> alise, well...
21:43:31 <alise> Vorpal: Well, that'd be the standard library. But sort of, yeah.
21:43:36 <alise> Phantom_Hoover: MAN UP AND STOP BITCHING.
21:43:50 <Phantom_Hoover> alise, you bitch constantly!
21:43:54 <Gregor> alise: BITCH UP AND STOP MANNING
21:43:58 <Vorpal> alise, I mean... the GC and other memory management would probably need to be asm. And some hardware interfacing. But apart from that?
21:44:04 <alise> Phantom_Hoover: RESPECT YOUR ELDERS
21:44:07 <alise> Vorpal: Who knows!
21:44:25 <Vorpal> alise, okay add some interrupt handling and process scheduling to that
21:44:42 <Vorpal> but still, you can get away with the majority, including the compiler in lisp
21:44:58 <Phantom_Hoover> It would be nice if the compiler gave Magical Direct Memory Access at a high enough privilege level.
21:44:59 <alise> i dunno, i'd like to be able to bootstrap from a unix machine
21:45:00 <Vorpal> of course you still need to generate machine code from the compiler (and/or the JIT)
21:45:08 <alise> Phantom_Hoover: i just said it would :P
21:45:09 <alise> for drivers
21:45:16 <Phantom_Hoover> So we could write basically _everything_ other than the bootloader in Lisp.
21:45:17 <Vorpal> alise, so write a cross compiler in scheme or something
21:45:28 <alise> Vorpal: yeah, maintaining two compilers for the most wonderful dialect of Lisp ever invented
21:45:33 <alise> I'm trying to get away from Unix!
21:45:40 <Vorpal> Phantom_Hoover, the GC will be tricky in lisp too
21:45:56 <Vorpal> alise, only needed for initial bootstrap obviously
21:46:01 <Phantom_Hoover> alise, make a bootstrap, crappy compiler in x86-64 asm.
21:46:04 <Vorpal> alise, once it is self hosting: no longer needed
21:46:23 <alise> Vorpal: as i said, i'd like to maintain unix bootstrap as long as i can :P
21:46:29 <alise> Phantom_Hoover: then why write it in lisp? just keep it in asm
21:46:30 <Phantom_Hoover> This is sufficiently general that it can be compiled and linked to normal code on x86-64 unix.
21:46:30 <Vorpal> alise, what for?
21:46:52 <Phantom_Hoover> We then compile the good compiler, written in Lisp, with the crappy compiler.
21:47:20 <Vorpal> alise, I think writing a good compiler in pure asm will be highly painful
21:47:40 <Vorpal> alise, imagine trying to do transformations on the SSA form, in asm
21:48:23 <alise> okay fine
21:48:24 * Phantom_Hoover wonders to what degree CL compilers inline.
21:48:49 <alise> ehird@dinky:~/.config$ rm -rf chromium/ google-chrome/
21:48:49 <alise> rm: cannot remove directory `google-chrome/Default/User StyleSheets': Directory not empty
21:48:49 <alise> er...
21:50:29 <Phantom_Hoover> It seems to depend on how optimised it is...
21:50:34 -!- MigoMipo has quit (Quit: Quit).
21:52:43 <Phantom_Hoover> alise, OK, so where do we still have gapingly huge voids in the architecture?
21:53:28 <alise> everywhere!
21:54:15 <Phantom_Hoover> Hence "gapingly huge" i.e. we haven't even considered it.
21:54:48 -!- Sgeo has joined.
21:55:11 <alise> Everywhere!
21:55:23 <alise> Um, the UI, to a large degree. But I'll handle that tyvm >_>
21:55:37 <Phantom_Hoover> Yes, I had decided on this long ago.
21:55:59 <Phantom_Hoover> Erm... Oh, how do we handle the whole persistent-vs.-nonpersistent thing?
21:56:13 <alise> My current take is: don't even bother. Persist everything. GC will handle the rest.
21:56:25 <alise> We can buffer writes or whatever to avoid thrashing the disk.
21:56:31 <alise> Or maybe only persist an object after it's existed for, oh, 100ms.
21:56:44 <alise> Resuming stuff without some objects it depends on would be strange, though. So maybe we should just persist everything.
21:58:12 <Phantom_Hoover> alise, well, I think modern GCs use magic to analyse objects being created for how long they'll probably last.
21:58:50 <pikhq> Phantom_Hoover: Nope.
21:58:54 <alise> by modern GCs you mean state of the art :P
21:59:08 <alise> Phantom_Hoover: our GC job is super-fun
21:59:16 <alise> since it has to be both really good (FUCKING HUGE OBJECTSPACE)
21:59:22 <alise> and able to be run in a background thread
21:59:24 <alise> without much disturbance
21:59:26 <alise> woo
21:59:36 <alise> i think we should only gc certain subsets of objectspace
21:59:37 <pikhq> Magic analysis is state-of-the-art, not merely "modern". Also, hard.
21:59:37 <alise> somehow
21:59:38 <alise> at a time
22:00:44 <Gregor> "Magic analysis"
22:01:16 <Phantom_Hoover> Restrict Lisp64 to processors with MAGIC extensions?
22:01:28 <pikhq> Gregor: Yes. It uses magic to analyse the magic, thereby flimming the flange, and thus it collects the garbage from the wimble heap.
22:02:01 <Gregor> HEY CPRESSEY: EIGHTEBED IS SOOOO UNDERWHELMING
22:02:05 -!- derdon has quit (Ping timeout: 276 seconds).
22:02:12 <Gregor> NEEDS MAGIC ANALYSIS
22:02:39 <Gregor> http://codu.org/ccfc/ Look at how awesome I am at web design!
22:02:48 <alise> Ubuntu 10.04.1 review: yup, it still annoys you in a million different ways. Yup, it's still the only way you can use Linux on a regular desktop system and not get more than mildly ignored on a daily basis without constructing your whole environment from scratch.
22:03:07 <alise> Gregor: It's even a FREAKY! I mean WIKI!
22:03:21 <Gregor> WIKIS ARE THE FOOTUR
22:03:40 <Vorpal> Gregor, what is spamuser about?
22:03:45 <cpressey_> Gregor: :P
22:04:01 <alise> spamuser is where there is a bunch of people
22:04:01 <Gregor> Vorpal: They make "poorly-drawn comics" from spam subject lines.
22:04:02 <alise> and they spam
22:04:07 <alise> Gregor: SHUT UP DO NOT TELL HIM
22:04:26 <pikhq> Vorpal: Spam spam spam user and spam.
22:04:31 <alise> Gregor: How can you like Spamusement!, it's drawn by a well-known Mac fan!
22:04:38 <Vorpal> Gregor, awesome
22:04:54 <Gregor> alise: I like Spamusers more than Spamusement, and Clueless more than StevenF :P
22:05:03 <alise> Gregor: That's what she said.
22:05:47 <Phantom_Hoover> So how is stuff going to be GCed?
22:05:56 <alise> Phantom_Hoover: Very, very cleverly.
22:06:03 <alise> Not even Hotspot's GC can do what we want.
22:06:14 <alise> Symbolics just used a stop-the-world mark-and-sweep, which was hilariously idiotic.
22:06:24 <alise> In that the machine would suddenly freeze up and blink a square for a few seconds when it felt like it.
22:06:41 <Gregor> Almost every GC in popular use is stop-the-world.
22:06:50 <Gregor> If you don't stop the world, you need guards. Great for real-time, bad for fast-time.
22:07:15 <alise> Gregor: actually, an in-thread mark and sweep is quite easy
22:07:24 <Phantom_Hoover> Erm... when a process is running, isn't the rest of the world "stopped"?
22:07:31 <alise> Phantom_Hoover: Not if you have more than one core!
22:07:39 <alise> And, uh, yeah, but... stop-the-world means "don't run ANYTHING until we're done".
22:07:41 <Phantom_Hoover> Yes, I was thinking that.
22:08:13 <Phantom_Hoover> Well, we could possible make GCing work similarly to the process-switch code...
22:08:20 <Phantom_Hoover> *possibly
22:08:37 <alise> Gregor: Spawn a new thread. Copy whatever data structure lets you know which memory locations are free. Allocate a bit-array as long as the number of objects currently allocated, with the possibility for expansion. Go through the heap. Do the mark stuff to the bit-array, but don't mark it if it's in the free list (i.e., it's a new object since we started).
22:08:42 <alise> Finally, free 'em all up.
22:08:55 <alise> Uh, don't free it if it's in the free list, that is.
22:08:59 <alise> You know what I mean.
22:09:12 <Gregor> alise: Oh yeah, I remember that idea.
22:09:23 <Phantom_Hoover> alise, so does this happen with a similar mechanism to process-switching?
22:09:29 <alise> Phantom_Hoover: The GC? No.
22:09:31 <Gregor> alise: But to copy the data structures you need to ... copy the entire heap.
22:09:32 <alise> The GC needs to be very tricksy.
22:09:37 <alise> It will be an integral part of the OS.
22:09:42 <alise> Gregor: No, just the free list or whatever.
22:09:45 <Phantom_Hoover> As will multitasking.
22:09:47 <Vorpal> Gregor, alise: why not split it up in different arenas? Presumably you will have some non-stored results. Or are you going to write the result of every calculating out to memory? Like an intermediate result when doing a floating point calculation?
22:09:49 <alise> Whatever malloc uses to decide "what memory locations can I give out?"
22:10:34 <Vorpal> alise, not spilling registers to main memory is an important optimisation of compilers. Good register allocation.
22:10:42 <Vorpal> sure, I would love if you didn't have to
22:10:48 <cpressey_> steal lua's gc
22:10:54 <alise> no
22:11:00 <Vorpal> but the speed difference is actually quite noticeable for some sort of tasks
22:11:20 <Phantom_Hoover> cpressey_, we can't steal an existing GC for this.
22:11:24 <alise> Vorpal: the first version of the OS will probably be very stupid and inefficient.
22:11:29 <alise> but that's alright.
22:11:30 <cpressey_> it wants you to steal it !!
22:11:33 <Vorpal> alise, quite.
22:11:38 <alise> I mean, we can't even GC the whole objectspace.
22:11:54 <alise> Unless you want to GC all 4358935793457934579834759835739845 things you've consumed, written, or whatever, in the past whatever.
22:11:59 <alise> You need to do it bit-by-bit.
22:12:03 <Vorpal> alise, just avoid making fundamental design decisions stupid and inefficient.
22:12:07 <Phantom_Hoover> It'd be like stealing a toothpick to use as a javelin.
22:12:12 <alise> Vorpal: Indeed.
22:12:20 <Vorpal> alise, inefficient implementation is a lot easier to correct than inefficient design
22:12:27 <alise> Phantom_Hoover: oh so that's what i did wrong
22:12:41 <alise> Vorpal: of course, we'll end up totally iterating with new code many times before we actually figure out what we need to do...
22:12:43 <pikhq> alise: So, you want an incremental garbage collector.
22:12:45 <alise> if we ever do anything :P
22:13:01 -!- oerjan has joined.
22:13:10 <Phantom_Hoover> oerjan, are you very clever?
22:13:14 <alise> pikhq: Incremental, parallel-with-code, generational, concurrent (i.e. multithreaded), non-resource-heavy GC of wisdom and happiness and fluffy pink rainbow unicorn kittens.
22:13:16 <Vorpal> alise, and designing around "no non-persistent state" to the degree that if you calculate a+b+c you need to write out a+b to memory before calculating that + c would be ... daft.
22:13:19 <alise> pikhq: And a pony!
22:13:24 <oerjan> Phantom_Hoover: less so than i used to be
22:13:28 <alise> Vorpal: Yes, well, that's a compiler optimisation. :P
22:13:40 <pikhq> alise: Sooo... You want what GHC wants.
22:13:40 <Phantom_Hoover> alise, there's the solution, then.
22:13:46 <fizzie> I sort-of golfed ais's new "Cancel fractions" anagolf problem in Forth -- not well, 173 bytes, but anyway -- and here's the stderr of the working (anagolf ignores it) entry: http://p.zem.fi/pu9k -- that's one awfully bitchy interpreter. (Okay, so maybe my code isn't very well-behaving either.)
22:13:51 <Vorpal> alise, just remember that can go *across* expressions in a function.
22:13:54 <pikhq> And a pony.
22:13:55 <Phantom_Hoover> We get oerjan's soul and put it into a computer.
22:14:03 <Vorpal> alise, and with inlining, if you decide to do that, across functions
22:14:11 <alise> fizzie: show your code?
22:14:15 <oerjan> Phantom_Hoover: also what cleverness remains tends to be overwhelmed by my laziness
22:14:28 <alise> pikhq: Yeah, except GHC doesn't regularly GC a 1 TB object space.
22:14:38 <alise> pikhq: Of course, the whole point is to rabidly AVOID doing that in our case.
22:15:14 <Vorpal> <oerjan> Phantom_Hoover: less so than i used to be <--- hm? Is it not the usual case of learning enough to know how little you actually know?
22:15:43 <alise> it's called forgetfulness and age.
22:15:45 <Vorpal> <alise> pikhq: Incremental, parallel-with-code, generational, concurrent (i.e. multithreaded), non-resource-heavy GC of wisdom and happiness and fluffy pink rainbow unicorn kittens. <-- and without special hardware support?
22:15:47 <Vorpal> hrrm
22:15:48 <fizzie> alise: But then you'd steal my points! Well, okay, http://p.zem.fi/frac7
22:15:54 <Phantom_Hoover> oerjan, well, your soul will have to be electrocuted regularly.
22:16:05 <Phantom_Hoover> You may rest between GC passes.
22:16:17 <alise> I love how "aptitude upgrade" is deprecated for "safe-upgrade".
22:16:23 <alise> *"aptitude safe-upgrade".
22:16:34 <Vorpal> alise, there is an obvious way to do a completely concurrent GC.
22:16:39 <pikhq> Vorpal: Who said anything about "without special hardware support"?
22:16:51 <alise> pikhq: Without special hardware support.
22:16:53 <pikhq> There will be a PCIe garbage collector.
22:16:54 <pikhq> :P
22:16:54 <alise> Said.
22:17:01 <alise> psht, put the GC in the cpu
22:17:05 <alise> oh wait, that's just what a sane lisp machine would do
22:17:06 <alise> never mind me
22:17:08 <fizzie> I like the gcd in frac7, though: begin ?dup while tuck mod repeat, and that's all.
22:17:17 <alise> fizzie: Is that a full gcd?
22:17:22 -!- Mathnerd314 has joined.
22:17:29 <pikhq> alise: Putting it on PCIe is as close as you can get without actually modifying hardware design.
22:17:30 <Vorpal> alise, Do what NILFS does (or whatever it is called) but for the heap
22:17:31 <fizzie> It's Euclid's algorithm, a b -> gcd(a, b).
22:17:34 <alise> fizzie: Right.
22:17:37 <alise> fizzie: Pretty nice.
22:18:05 <alise> fizzie: Although Chuck hates you for using tuck, I bet.
22:18:09 <pikhq> (as it *could* then have access to the entire heap)
22:18:14 <alise> Why does my gforth freeze on "see X"?
22:18:18 <alise> It outputs "Code x" then hangs.
22:18:18 <Vorpal> alise, that is, make your memory a circular buffer. You can go behind and clean stuff up. Obviously you can't reference what is unreachable at any one point
22:18:20 <Vorpal> wait
22:18:20 <alise> Do I need gdb or what?
22:18:21 <Vorpal> hm
22:18:23 <Vorpal> alise, better idea
22:18:26 <alise> Because I have gdb.
22:18:29 <alise> And objdump.
22:18:37 <Vorpal> alise, snapshot based GC
22:18:50 <alise> yes, let's just copy the entirety of your hard disk
22:18:54 <alise> great idea
22:18:58 <alise> "To memory!"
22:19:00 <alise> even better!
22:19:01 <Vorpal> no no
22:19:04 <Vorpal> copy on write
22:19:06 <Vorpal> obviously
22:19:11 <alise> that's just fork()-gc
22:19:14 <Vorpal> alise, that way the GC will get a consistent picture of the state
22:19:14 <alise> which has some flaw that i've forgotten
22:19:17 <alise> cpressey: what was the flaw again?
22:19:40 <Vorpal> this assumes single assignment of course
22:19:54 <Vorpal> if you are able to modify the state it gets a lot more tricky
22:20:11 <fizzie> alise: I don't know, but I get raw binary garbage out of something like "see catch", which is pretty ugly too.
22:20:39 <Vorpal> and we are back to the not quite as awesome rotated log
22:20:41 <alise> no #gforth, grumble
22:20:52 -!- Gracenotes has joined.
22:21:02 <Vorpal> which of course gives you natural versioning
22:21:11 <Vorpal> of absolutely everything
22:21:23 <alise> I wish the integration stuff for Chrome was less rubbish.
22:21:30 <Vorpal> bbl
22:21:32 <alise> (The scrollbars extension especially.)
22:22:51 <pikhq> Ugh, the scrollbars.
22:22:56 <cpressey_> http://pastie.org/1156763
22:22:58 <alise> pikhq: there is an extension to fix them
22:22:59 <cpressey_> seriously?
22:23:07 <alise> but it doesn't work on https:// and text/plain it seems
22:23:18 * cpressey_ whacks Python with a kite
22:24:02 <alise> cpressey_: that's because it's
22:24:03 <alise> errors = ...
22:24:05 <alise> what you need to do is
22:24:10 <alise> errors = [[]]
22:24:15 <alise> errors[0] += 'boo'
22:24:17 <alise> no, i am not kidding.
22:24:19 <olsner> cpressey_: if you can, please kill Python completely
22:24:25 <alise> i think there's a nicer way to do this
22:24:27 <alise> but i forget what
22:24:34 <cpressey_> the nicer way is to write it in lua
22:24:39 <cpressey_> django does not make that an option, sadly
22:24:49 <alise> cpressey: make it a class, for instance
22:25:06 <alise> class r(object): def __init__(self): self.errors = []; def __call__(self): self.errors += 'boo'
22:25:33 <cpressey_> alise: you... weren't kidding
22:25:53 * cpressey_ backs away from the computer
22:26:12 <cpressey_> any language that works like that, i don't trust
22:26:19 -!- Sgeo has quit (Ping timeout: 240 seconds).
22:26:33 <cpressey_> alise: i will (sigh) make it a class (sigh)
22:26:52 <Vorpal> <cpressey_> http://pastie.org/1156763 <-- call c before defining it. Solves the issue. Of course now you have another problem to solve.
22:27:06 <cpressey_> still boggling at the errors[0] thing working though
22:27:27 <Vorpal> cpressey_, I don't see the issue with that code. Nor do I see why errors[0] would work
22:28:30 <alise> Vorpal: 'x += y' is 'x = x + y'
22:28:40 <alise> python has no variable declaration indicator
22:28:47 <alise> so all new assignments in a scope declare a new variable
22:28:58 <alise> rather than referring to the upper function -- because python doesn't really have closures per se
22:29:09 <alise> foo[0] = ... works because that's not a variable
22:29:16 <alise> it depends on foo existing
22:29:18 <alise> so it looks for a foo
22:29:20 <alise> finds it from the upper scop
22:29:22 <alise> *scope
22:29:23 <alise> and voila!
22:29:28 <alise> cpressey_: in python 3 i think you can do
22:29:29 <alise> nonlocal foo
22:29:31 <alise> foo += ...
22:29:31 <cpressey_> actually I did this: upvalue={'errors':[]}
22:29:36 <alise> dunno if it works in 2.7
22:29:38 <alise> you can try it
22:29:41 <Vorpal> <alise> foo[0] = ... works because that's not a variable <-- ugh
22:29:43 <alise> that's obviously the simple way to do it
22:29:43 <alise> er in 2.6
22:30:51 <cpressey_> what if I read it before I assign to it?
22:30:59 <cpressey_> that's easier to explain in a comment
22:31:04 <Vorpal> if you want to use python and you don't need compatibility, just use python 3.
22:31:10 <alise> pikhq: what Chrome can look like on Ubuntu: http://news.softpedia.com/images/news2/Ubuntu-10-04-Radiance-and-Ambiance-Themes-for-Google-Chrome-2.jpg
22:31:15 <Phantom_Hoover> alise, so anyway, any further ideas on the GC?
22:31:17 <alise> pikhq: so, native
22:31:23 <alise> pikhq: but it doesn't do the scrollbars on text files and https://
22:31:24 <alise> *sigh*
22:31:26 <alise> text/plain, that is
22:31:29 <alise> Phantom_Hoover: not right now
22:31:29 <pikhq> alise: So very almost native.
22:31:37 <alise> <Vorpal> if you want to use python and you don't need compatibility, just use python 3. ;; the only reason to use Python is libraries
22:31:38 <alise> i.e. compatibility
22:31:41 <Vorpal> alise, how do the scrollbars usually look
22:31:45 <alise> Vorpal: different.
22:31:55 <Vorpal> alise, good point. Don't know how many libraries are translated yet
22:32:02 <alise> not many at all
22:32:08 <Vorpal> hm
22:32:17 <Vorpal> alise, due to compatibility right? XD
22:32:17 <pikhq> Vorpal: Aero scrollbars.
22:32:23 <alise> pikhq: no
22:32:25 <Vorpal> pikhq, doesn't mean anything to me
22:32:27 <alise> Vorpal: http://i1-news.softpedia-static.com/images/extra/LINUX/large/chrome-stable-02_large.jpg
22:32:32 <alise> default chrome scrollbars on linux
22:32:35 <alise> except they have ends now, whatever
22:32:48 <cpressey_> no, it don't. rotten little language, eh wot
22:32:53 <cpressey_> ah well
22:32:54 <alise> anyway, the integration is perfect with the extensions, just not on https:// and text/plain (and presumably... images?)
22:33:00 <pikhq> Okay, somewhat close to Aero.
22:33:01 <Vorpal> alise, look normal apart from missing arrows at end?
22:33:06 <pikhq> Vorpal: Aero is the Vista theme.
22:33:06 <alise> cpressey: try "nonlocal x"
22:33:12 <alise> Vorpal: no, those aren't normal gtk scrollbars.
22:33:28 <alise> see http://news.softpedia.com/images/news2/Ubuntu-10-04-Radiance-and-Ambiance-Themes-for-Google-Chrome-2.jpg for what it should look like with that gtk theme
22:33:29 <Vorpal> pikhq, my total time using vista is about 20 minutes.
22:33:34 <alise> i.e. very different
22:33:35 <Vorpal> pikhq, over a year ago
22:34:03 <Vorpal> alise, okay they look like clearlooks ones though!
22:34:15 <pikhq> Oh, I see. It's using the Android widgets.
22:34:26 <alise> pikhq: it is? haha
22:35:00 <Vorpal> alise, if those turn blue with the window is in the fg it matches clearlooks apart from missing arrow buttons
22:35:03 <pikhq> alise: Because it's bloody hard to get GTK to work in the way that Chrome wants it to.
22:35:04 <alise> Vorpal: no
22:35:07 <alise> they stay like that
22:35:12 <Vorpal> alise, ah, that is strange
22:35:16 <alise> pikhq: yeah chrome is a bit perverse :)
22:35:18 <alise> pikhq: it works well on windows
22:35:25 <alise> but the linux port evidently gave them headaches
22:35:39 <alise> it's a damn fast browser though and the actual ui is nice, so
22:36:00 <Vorpal> alise, it looks incredibly non-native on Windows too!
22:36:01 <pikhq> I'd imagine they just used a *lot* of things that only Win32 allows because Win32 is perverse like that.
22:36:05 <Vorpal> alise, at least on XP and in 7
22:36:08 <Vorpal> haven't tried in vista
22:36:10 <alise> Vorpal: on XP, yes
22:36:11 <alise> not on 7
22:36:13 <alise> not with Aero on
22:36:17 <alise> with Aero on, it looks great
22:36:21 <pikhq> Vorpal: On Vista and 7 it uses/imitates the native theme.
22:36:21 <alise> the tab bar is actually in the transparent title bar
22:36:31 <Vorpal> alise, aero off due to it being virtualbox with intel graphics on host
22:36:31 <alise> pikhq: it requires Aero
22:36:36 <alise> Vorpal: well, precisely
22:36:40 <alise> with Aero it looks fine
22:36:50 <alise> http://upload.wikimedia.org/wikipedia/en/4/48/Chrome_windows.png
22:36:58 <alise> where that title bar is the normal translucent aero one
22:36:59 <Vorpal> alise, of course I would like to argue aero doesn't look fine .P
22:37:02 <Vorpal> :P*
22:37:08 <alise> Vorpal: well, it looks "right" for the rest of the environment.
22:37:15 <alise> hmm, the scrollbars work on images
22:37:16 <Vorpal> alise, okay
22:37:20 <alise> maybe the dev build makes it all work
22:37:32 <alise> it does! joy!
22:37:47 <pikhq> It apparently also looks native on OS X.
22:38:02 <alise> pikhq: ehh
22:38:18 <alise> it looks as native as anything that flagrantly violates the OS X conventions as much as it does can hope to
22:38:39 <alise> http://www.google.com/chrome/intl/en-GB/images/dlpage_mac.jpg
22:38:49 <alise> a bit weird what with the tab bar being pushed right to make way for the window buttons
22:38:52 <Vorpal> alise, looks native to me
22:39:01 <Vorpal> and yeah
22:39:07 <Vorpal> that bit is strange
22:39:16 <alise> Vorpal: yeah, but OS X has more obeyed conventions than other OSes
22:39:21 <alise> and doing that in the title bar is freaky shit :)
22:39:30 <pikhq> alise: Okay, well. As native as it can get without stopping saying "fuck you" to the OS X UI conventions.
22:39:31 <Vorpal> alise, *that* I agree on
22:39:37 <Vorpal> alise, for no good reason
22:40:06 <alise> Vorpal: Well, it has a good reason in Chrome's UI design.
22:40:10 <alise> It just doesn't belong on OS X.
22:40:38 <Vorpal> alise, besides I never found slightly inhomogeneous UIs a problem. And the only OS X version I used to any non-trivial extent is Tiger. Which had a mess of different UIs
22:40:42 <alise> (Specifically, Chrome's UI design: "We use the browser so much and for so many varying things that they're basically hosts to applications; therefore, crap the idea of even having a browser. All it is is a bunch of tabbed windows with controls inside.
22:40:42 <Vorpal> for apple stuff
22:40:43 <alise> ")
22:40:52 <alise> Vorpal: It's not about the look, it's about the work.
22:40:58 <Vorpal> alise, hm
22:41:19 <alise> I bet you wouldn't like your keyboard layout depending on which program you use; or some menus being horizontal; or whatever.
22:41:29 <alise> Or buttons looking like links in some applications.
22:41:41 <Vorpal> alise, hm
22:41:45 <Vorpal> alise, that happens
22:41:45 <alise> hm
22:41:58 <Vorpal> alise, I can think of all of those in various X apps :P
22:42:24 <alise> it shouldn't happen though :)
22:42:39 <pikhq> And it happens less and less in X these days.
22:42:43 <Vorpal> alise, no the thing that annoys me is "release button closes menu" so you need to *hold down* button to keep menu open
22:42:55 <pikhq> What with X only having 2 UI toolkits...
22:43:06 <pikhq> ... Ones that don't suck, that is.
22:43:07 <Vorpal> alise, I was using some weird athena-widget app to program an AVR processor last week that worked like that
22:43:11 <Vorpal> fucking annoying
22:43:46 <Vorpal> alise, was at a lab at university
22:44:39 <alise> <Vorpal> alise, no the thing that annoys me is "release button closes menu" so you need to *hold down* button to keep menu open ;; original Macintosh did that :)
22:44:40 <Vorpal> alise, and that was over the parallel port too. (the programming). Haven't used that for years.
22:44:46 <alise> original macintosh had tiny menus, though
22:44:47 <Vorpal> alise, I know original mac did it
22:45:08 <Vorpal> alise, and this had huge menus. Like you had to select AVR model from one
22:45:12 <Vorpal> with sub menus for series
22:45:13 <alise> Ouch.
22:45:37 <Vorpal> alise, and the sub menus opened when you moved halfway to the → that indicates the submenu
22:45:43 <alise> Lovely.
22:45:50 <Vorpal> alise, it was basically "worst UI I used the last 5 years"
22:46:00 <alise> brb
22:46:19 <Vorpal> alise, and the font was tiny. Didn't help that because of the parport requirement we had to use old computers. One with CRTs attached
22:46:28 <Vorpal> since the new ones lacks it
22:46:42 <Vorpal> alise, at least changing from 60 Hz to 75 Hz helped somewhat
22:46:48 <Vorpal> with avoiding headache
22:49:23 <Vorpal> alise, I googled the program name. It seems open source. But I think the version installed there might have been old. Can only find a screenshot for the windows version... Not the linux one.
22:49:24 <fizzie> Heh, legacy-free computers. Today I went to my supervisor's office (he's in the UK right now) to set his computer ready for a three-way Skype conference; he had taken his very custom ergo-keyboard and mouse with him, and left the university-supplied kbd+mouse there. Unfortunately both were PS/2, and in the meanwhile his workstation had been updated to legacy-free USB-only one.
22:49:54 <Vorpal> http://www.lancos.com/img/ponydump.png is the windows one. Even there stuff like text size for the menus is off
22:50:19 <Vorpal> and it was way worse in the linux version used there
22:51:43 <Vorpal> and the bg was the classical athena dark grey
22:51:56 <Vorpal> which is quite unusable with black text at small sizes on a blurry CRT
22:53:14 <fizzie> Font selection from a "close when the mouse cursor wanders off" submenu thing is a "nice" UI feature too, especially on a system with hundreds of typefaces. I've seen that in multiple programs, I think.
22:54:19 <Vorpal> fizzie, *shudder*
22:54:35 <Vorpal> fizzie, I don't think these closed like that, well submenus did but...
22:54:39 <cpressey_> fizzie: that seems very oldschool mac-ish to me
22:55:27 <Vorpal> fizzie, oh I forgot the linux version had missized labels and such
22:55:49 * Phantom_Hoover → sleep
22:55:54 <Vorpal> fizzie, for bus timing calibration the Yes button was hidden under the "are you sure" question except for about 10 pixels
22:56:02 <Vorpal> the no button was completely invisible
22:56:10 <cpressey_> alise: it no understand nonlocal. bah
22:56:28 <Vorpal> cpressey_, switch to 3
22:58:25 <Vorpal> cpressey_, it also makes "print" a function. Rather than a statement
22:58:36 <Vorpal> which is rather more sane too
22:59:37 <fizzie> Hah, again I was reminded of the System.out.println statement. :p
23:00:05 <Vorpal> fizzie, yeah well, that is for a non-scripting language.
23:00:15 <Vorpal> Plus it is not in the normal namespace
23:00:19 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
23:00:22 <fizzie> (There was also a "System.in.read" "(" expr ")" syntax for expressions.
23:00:26 <Vorpal> fizzie, but echo in bash is not a part of the syntax
23:00:27 <cpressey_> Vorpal: ... yeah great, I'll just close the ticket with "Won't Fix -- Python version not at 3"
23:00:41 <Vorpal> it is a normal command. A builtin yes, but also an external one
23:00:55 <Vorpal> cpressey_, work around it then
23:04:01 -!- GreaseMonkey has joined.
23:05:08 <Vorpal> cpressey_, is there any import from __future__ thing for the nonlocal thingy?
23:05:20 -!- cpressey_ has quit (Ping timeout: 276 seconds).
23:07:03 <Vorpal> cpressey, tough luck: http://psf.upfronthosting.co.za/roundup/tracker/issue8018
23:07:10 -!- FireFly has quit (Quit: swatted to death).
23:07:13 <Vorpal> hm
23:07:14 <Vorpal> strange url
23:07:18 <Vorpal> why did google give that
23:08:22 <Vorpal> http://bugs.python.org/issue8018
23:08:25 <Vorpal> that url works too
23:08:27 <Vorpal> and seem saner
23:08:53 <Vorpal> both are same ip though
23:08:59 <Vorpal> oh well
23:10:51 <alise> back
23:11:46 <alise> <Vorpal> and the bg was the classical athena dark grey
23:11:46 <alise> <Vorpal> which is quite unusable with black text at small sizes on a blurry CRT
23:11:50 <alise> if you can set dpi you can set colour resources
23:12:16 <Vorpal> alise, I didn't have root, and this was not modern ubuntu
23:12:28 <Vorpal> alise, so I doubt I can set DPI
23:12:32 <Vorpal> sure I could set resources
23:12:34 <Vorpal> that is easy
23:12:40 <Vorpal> alise, didn't have time to do that during the lab
23:13:18 <alise> Vorpal: err
23:13:19 <alise> if you can set
23:13:20 <alise> hz
23:13:21 <alise> i mean
23:13:34 <Vorpal> alise, hm that was possible with gnome monitor settings
23:13:41 <alise> xrdb -merge
23:13:46 <Vorpal> alise, it was feisty though. Very old ubuntu version
23:13:47 <alise> SomeRidiculousThing: white
23:13:51 <alise> SomeRidiculousThingForeground: black
23:13:52 <alise> or whatever :P
23:13:55 <alise> a bit hard if you don't have time though
23:13:58 <alise> *$ xrdb -merge
23:14:02 <Vorpal> alise, indeed I lacked the time
23:14:09 <Vorpal> alise, how old is feisty?
23:14:31 <alise> http://www.lancos.com/img/ponydump.png ;; is it really called PonyProg2000? <3
23:14:38 <alise> Vorpal: just april 2007
23:14:40 <alise> not that old
23:14:52 <Vorpal> hm
23:15:08 <alise> Now *Warty* is old; http://www.sizlopedia.com/wp-content/uploads/ubuntu-warthog.png.
23:15:14 <alise> Take a look at that brown, oh yeah.
23:15:21 <alise> Industrial GTK theme indahouse. And the default GNOME foot, too!
23:15:39 <Vorpal> alise, it said feisty but the bg was as in http://en.wikipedia.org/wiki/File:Ubuntu-desktop-2-804-20080708.png
23:15:41 <Vorpal> very strange
23:15:49 <alise> Hoary Hedgehog then upgraded to Brown But With Clearlooks and a Fancy Background: http://www.sizlopedia.com/wp-content/uploads/ubuntu-hedgehog.png
23:17:00 <alise> 6.06 introduced the brown/orange look and all: http://www.sizlopedia.com/wp-content/uploads/ubuntu-drake.png
23:17:11 <alise> (And, uh, was probably the first release not to be rubbish.)
23:17:31 <alise> Vorpal: Can you believe Ubuntu has only been going since 2004?
23:17:32 <Vorpal> alise, jaunty was a damn good ubuntu version
23:17:41 <Vorpal> alise, yes I can. 2004 is a long time
23:17:49 <alise> yeah it was more surprising in 2007 or so :P
23:18:06 <alise> 9.04 was very good, yes
23:18:12 <alise> gotta say though, I don't mind 10.04 apart from a few things
23:18:18 <Vorpal> alise, better than 9.10 and 10.04 IMO
23:18:23 <alise> nahh
23:18:33 <Vorpal> alise, like 10 of wakeup / sec when idle rather than 50
23:18:37 <alise> i'm so glad 11.04 will be called "Natty Narwhal"
23:18:40 <alise> Vorpal: hardware issues, ok
23:18:46 <alise> i guess
23:18:50 <alise> since 10.04 very much optimised that stuff
23:18:53 <Vorpal> alise, regression in 2.6.31 and later
23:18:53 <alise> especially bootup
23:19:05 <Vorpal> alise, so karmic has that issue too
23:19:13 <Vorpal> alise, for the series of CPU which I have
23:19:17 <Vorpal> in my thinkpad
23:19:18 <alise> ah
23:19:23 <alise> ha ha sucks to be you :P
23:19:28 <Vorpal> (core 2 duo, P8xxx iirc)
23:19:33 * alise dances around with his Toshiba
23:20:25 <Vorpal> anyway if it was 7.04 why did it had this bg .... http://en.wikipedia.org/wiki/File:Ubuntu-desktop-2-804-20080708.png
23:20:28 <Vorpal> and I checked the version
23:20:48 <alise> someone set it, perhaps
23:20:50 <alise> or: witchcraft
23:20:52 <Vorpal> perhaps
23:21:00 <alise> Vorpal: maybe network thing
23:21:03 <alise> with a shared backgrounds directory?
23:21:06 <alise> probably not
23:21:12 <Vorpal> alise, I checked and saw no nfs though
23:21:20 <alise> lol
23:21:23 <alise> you're paranoid to the max
23:21:29 <Vorpal> alise, no I'm curious :P
23:21:36 <Vorpal> alise, funny thing in ifconfig. The only ethernet was eth3
23:21:41 <Vorpal> even ifconfig -a listed no other
23:21:55 <Vorpal> alise, I find that rather strange
23:21:59 <Vorpal> no eth[0-2]
23:22:08 <alise> maybe it had 4 ethernet ports.
23:22:25 <Vorpal> alise, not that I saw, and I was connecting various stuff on the back
23:22:38 <Vorpal> alise, and yeah ifconfig -a would list them
23:22:42 <Vorpal> even down ones
23:24:08 <alise> http://www.chromeexperiments.com/detail/balldroppings/ ;; THIS IS SO FUN
23:24:29 <Vorpal> alise, requires flash?
23:24:36 <alise> don't think so; maybe it does
23:24:40 <alise> if you don't hear anything, then yes
23:24:49 -!- GreaseMonkey has quit (Quit: Welcome honored guest. I got the key you want! would you like onderves. of Yourself).
23:24:49 <alise> the balls bouncing (hee hee) creates beyootiful music based on your lines
23:24:53 <alise> it's quite hypnotic
23:24:55 <Vorpal> "Temporarily allow http://www.youtube.com/v/G6IKsek8DKE (<OBJECT>, application/x-shockwave-flash)"
23:25:02 <Vorpal> doubt it works in firefox anyway
23:25:19 <alise> it does
23:25:23 <alise> it's nothing chrome-specific
23:25:25 <alise> i'd assume
23:25:41 <Vorpal> it freezes firefox XD
23:25:48 <alise> might be flash
23:26:06 <Vorpal> alise, indeed. I don't have flash
23:26:12 <alise> <Vorpal> "Temporarily allow http://www.youtube.com/v/G6IKsek8DKE (<OBJECT>, application/x-shockwave-flash)"
23:26:17 <alise> try gnash
23:26:22 <Vorpal> alise, too much work
23:26:29 <Vorpal> and it shouldn't rely on it
23:26:29 <alise> sudo aptitude install gnash-mozilla or whatever
23:26:33 <Vorpal> alise, arch
23:26:37 <alise> i know.
23:26:44 <Vorpal> alise, my laptop is in backpack
23:26:52 <alise> i was mocking your choice of OS
23:26:54 <alise> :-P
23:27:02 <Vorpal> alise, arch is rather nice though
23:27:08 <Vorpal> alise, you can't deny that
23:27:16 <alise> yeah it's alright
23:27:17 <Vorpal> alise, sure, not as well integrated of course
23:27:26 <Vorpal> but it is better for a desktop
23:27:28 <alise> if you have the patience to set up your own environment it's nice
23:27:32 <alise> but Arch/GNOME is not much fun
23:27:32 -!- Mathnerd314 has quit (Disconnected by services).
23:27:49 <Vorpal> alise, if I try to set up an ipv6 router with network manager messing up I would go spare
23:27:53 -!- Mathnerd314_ has joined.
23:27:56 <Vorpal> here it is all nice and clean static network config
23:28:06 <Vorpal> well, dhcp, but no network manager at least
23:28:08 <alise> you can do that with ubuntu too :P
23:28:19 <alise> <Vorpal> "Temporarily allow http://www.youtube.com/v/G6IKsek8DKE (<OBJECT>, application/x-shockwave-flash)"
23:28:19 <alise> dude
23:28:20 <Vorpal> alise, NM is a pain though
23:28:23 <alise> that's the video of playing it
23:28:24 -!- Mathnerd314_ has changed nick to Mathnerd314.
23:28:26 <alise> press Launch Experiment or whatever
23:28:41 <alise> Vorpal: so disable NM
23:28:42 <Vorpal> alise, it says missing plugin on the launch experiment page
23:28:54 <Vorpal> alise, and the mdadm setup?
23:29:08 <alise> install it?
23:30:05 <Vorpal> alise, and the boot time? I timed jaunty and lucid. Jaunty is about 1/3 of luicd
23:30:08 <Vorpal> lucid*
23:30:16 <Vorpal> alise, of course arch on my old system beats both
23:30:24 <Vorpal> due to leaner system
23:30:46 <alise> err
23:30:52 <alise> Lucid boots almost instantly on supported hardware
23:30:53 <Vorpal> sempron 3300+ @ 2 GHz vs. core 2 duo @ 2.26 GHz . You think the latter would be faster.
23:30:54 <alise> well not almost instantly but
23:30:58 <alise> like 5x faster than jaunty
23:31:00 <Vorpal> alise, I don't have an SSD
23:31:03 <alise> nor do I
23:31:06 <alise> it's clearly a hardware support issue
23:31:10 <alise> and i meant on same hardware
23:31:15 <Vorpal> alise, or encrypted disk perhaps
23:31:17 <Vorpal> who knows
23:31:18 <alise> seriously, they optimised the fuck out of boot for lucid
23:31:26 <alise> no, encrypted disk has basically no overhead
23:31:34 <alise> probably just your hardware doesn't like it
23:31:36 <Vorpal> alise, dm-crypt. Not in the disk itself
23:31:41 <alise> i know.
23:31:53 <Vorpal> alise, ureadahead takes like 20 seconds. dumping ureadahead pack files says it loads 175 MB
23:31:56 <Vorpal> from all over the disk
23:32:24 <Vorpal> alise, so I believe that is the issue
23:32:30 <Vorpal> of course it is fast once ureadahead finished
23:32:35 <Vorpal> but it takes quite some time
23:33:01 <Vorpal> alise, readahead on jaunty was faster. Fewer files loaded I think
23:33:55 <Vorpal> alise, and now, almost night. Will check any reply in a few minutes. Then bed
23:36:32 -!- sftp has quit (Ping timeout: 276 seconds).
23:36:42 <alise> Vorpal: AXIOM
23:37:27 -!- Wamanuz2 has quit (Remote host closed the connection).
23:38:20 <Vorpal> alise, ??
23:38:38 <alise> Vorpal: yes
23:38:58 <Vorpal> alise, are you just trying to confuse me and make me stay?
23:39:24 <Vorpal> and since you hate me, why would you want to do that
23:39:29 <Vorpal> oh trolling
23:39:48 <alise> paranoia must be fun
23:40:05 <Vorpal> it is also sadly accurate
23:41:59 <alise> you're crazy
23:42:03 <Vorpal> alise, oh well, done now. Night →
23:42:07 <Vorpal> alise, and thanks
23:42:15 <Vorpal> alise, I thought you said I was the sanest person here
23:42:23 <Vorpal> I presume you just retracted that
23:42:28 <Vorpal> for which I'm grateful
23:42:40 <alise> sane in a boring way
23:42:43 <alise> but utterly crazy
23:42:51 <Vorpal> alise, so sane and crazy?
23:42:53 <alise> yep.
23:43:08 <Vorpal> alise, seems... like a contraction
23:43:27 <alise> nope.
23:43:50 <Vorpal> hm sane is opposite of mad. And mad is a synonym for crazy
23:43:54 <alise> incorrect.
23:44:02 <Vorpal> in which part?
23:44:09 <alise> there are more subtle facets to the meaning of those words than your mind appears to allow.
23:44:43 <Vorpal> oh well, true that there are subtleties. But lets just abstract those away
23:44:59 <alise> Let's not.
23:45:05 <Vorpal> alise, boring
23:45:13 <alise> That's what you are, indeed.
23:45:44 <Vorpal> alise, ... It was obvious from the context that I meant that not abstracting that away was boring
23:46:42 <alise> Yes, but using that context would have been boring.
23:47:18 <Vorpal> hm 7 credit card sized bits of plastic. Why can't they merge them into, say, 2 or 3?
23:47:36 <Vorpal> heck two are those are from different sections of the university
23:47:43 <Vorpal> at least those could be merged...
23:48:21 <olsner> someone should build a credit card-sized programmable credit card
23:48:37 <Vorpal> might be tricky to merge commuter card with university door card though
23:48:44 <Vorpal> both use magnetic strip and no chip
23:49:13 <Vorpal> but university door card and studentrabatt (whatever that is in English)
23:49:15 <Vorpal> should be doable
23:49:20 <olsner> well, that's what I mean, the magnetic strip should be programmable and switchable
23:49:26 <Vorpal> olsner, that too
23:49:29 <olsner> so that you can have all your cards in one
23:49:52 -!- BeholdMyGlory has quit (Read error: Connection reset by peer).
23:50:07 <Vorpal> olsner, yes not sure I'd trust the university doors with my bank card though
23:50:40 <olsner> the cool version would be with a card-thin touch interface on a simple LCD covering the part that isn't the magnetic strip
23:51:01 <olsner> you wouldn't have the bank card selected when trying to enter a door
23:51:46 <Vorpal> heh
23:51:53 <Vorpal> olsner, and the battery? where?
23:52:06 <olsner> built-in of course
23:52:15 <Vorpal> olsner, tricky with that thinness
23:52:44 <olsner> well, I'll just assume it's possible and let smart people deal with the problems while I complain at their slow progress
23:53:04 <Vorpal> olsner, ah
23:53:22 <olsner> *you* for example, why haven't you already built this? obviously you are either lazy or incompetent!
23:55:04 <Vorpal> olsner, XD
23:55:13 <alise> <olsner> *you* for example, why haven't you already built this? obviously you are either lazy or incompetent!
23:55:15 <alise> can't disagree!
23:55:19 <Vorpal> olsner, why haven't you done it?!
23:55:22 <alise> Vorpal: you've gone to bed twice now, by the way.
23:55:24 <Vorpal> alise, and what about you?
23:55:32 <alise> i'm lazy.
23:55:36 <Vorpal> alise, no I haven't. I said was was going to bed. Then I did it once
23:55:41 <Vorpal> alise, so am I indeed
23:55:56 * olsner too...
23:57:06 <Vorpal> actually it could have been 8 cards. Last year they combined door-card with university library card.
23:57:25 <Vorpal> an improvement
23:58:51 <Vorpal> hm att betala kåravgift eller ej. Det är frågan. Nu är det ju inte obligatoriskt längre... Och våran kår suger.
23:58:53 <Vorpal> olsner, ^
23:59:07 <olsner> *vår kår suger :)
23:59:20 <Vorpal> olsner, hm, kanske det
23:59:35 <olsner> jag skulle betala kåravgift tror jag
23:59:48 <Vorpal> olsner, jag läser väl för fan inte språkvetenskap :P
←2010-09-12 2010-09-13 2010-09-14→ ↑2010 ↑all