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