←2011-04-15 2011-04-16 2011-04-17→ ↑2011 ↑all
00:27:44 <zzo38> Can it be invented, a card game involving the five Chinese elements? Maybe 0 to 9 and infinity of each suit, where the suits are the five elements.
00:31:34 <oerjan> well that sounds obviously _possible_...
00:33:10 <zzo38> oerjan: Do you have any other ideas of this?
00:33:28 <oerjan> nah
00:37:49 <zzo38> Any opinion about chess variants?
00:37:57 <zzo38> Including this one http://www.chessvariants.org/index/msdisplay.php?itemid=MSchesswithwicke
00:39:21 <zzo38> I have heard also of a game called "Chess with Quantum Bishops", which I did not invent but heard from someone else, and typed it by myself, though.
00:43:12 * oerjan imagines that like a game where the bishops are invisible, unless they capture something you only get to know _that_ they move, and you can only capture one if you can deduce that it _has_ to be in a particular spot
00:45:49 <oerjan> well unless the owner player decides it _is_ in a spot, to prevent you from capturing/going somewhere else
00:46:37 <oerjan> but if the owning player cannot give at least one consistent route for where the bishops have been, he loses.
00:46:59 <oerjan> the last could get particularly tricky when you consider the interaction with the _other_ player's bishops...
00:48:51 <oerjan> now one could also imagine a game where you had to sum actual quantum probabilities, but i somehow doubt anyone has the ability to really play that...
00:49:22 <oerjan> even computer assistance might give exponential blowup there
00:49:57 <oerjan> zzo38: is that similar to how that game is?
00:50:13 <oerjan> (not the last part with quantum probs/states)
00:50:26 <zzo38> oerjan: No. It isn't. Although your idea is also a possible idea of a chess variant.
00:50:52 <zzo38> Here is the rule for the Chess with Quantum Bishops that I heard of (my name is on it because I typed it): http://www.chessvariants.org/index/msdisplay.php?itemid=MSchesswithquant
00:53:43 <zzo38> But the idea you had, I had something similar, with Invisible Kings Chess, although the move must be made on secret paper.
00:53:55 <oerjan> ah kings, that would be even better of course
00:54:51 <oerjan> i note those quantum bishops can capture a piece other than at their end point...
00:55:27 <zzo38> Yes they can. These are the rules I have been told, by someone else, who also doesn't know who told him
00:56:34 * tswett nods.
00:57:14 * oerjan finds the alphabetic chess diagram hard to read...
00:57:55 <tswett> Simple chess-with-visibility: you can see an opponent's piece if and only if one of your own pieces can reach it within two moves.
00:58:31 <oerjan> fog of war?
00:58:38 <tswett> Yup.
00:58:43 <zzo38> tswett: That is another possible idea. If you have an account on Chess Variants, you can post it?
00:58:52 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
00:59:05 <tswett> A pawn can see two moves ahead of it (unless it's near the far row), but not diagonally at all. A rook in a good position can see the whole board.
00:59:11 <tswett> zzo38: I don't have an account there.
00:59:23 <oerjan> tswett: um pawns capture diagonally
00:59:51 <tswett> oerjan: indeed. It may be more interesting if a pawn can only see straight forward, though.
01:00:13 <tswett> So in order for a pawn to capture, some other piece must be able to see the victim.
01:00:25 <zzo38> Or maybe you can use the "Try" rule of Kriegspiel chess?
01:04:25 <tswett> Looks like essentially, with that rule, a pawn can see whether there is a piece in each direction, but not what type of piece it is.
01:05:51 <zzo38> Once I invented a game that seems to be very different from chess: it is one-dimensional, has 72 cells, twelve kind of pieces (one of which is a neutral piece), pieces that affect other pieces when moving (not only the piece it captures), the players have different armies, no check/mate. Yet, actually, it is exactly the same as normal chess.
01:06:45 <zzo38> tswett: What are you refering to? Are you refering to the "Try" rule? If so, that is not quite what it is.
01:06:59 <tswett> The "Try" rule, yes.
01:08:15 <zzo38> The "Try" rule actually just says whether or not any of your pawns can capture. And then you must try. If you failed, you can try again or you can make a different move.
01:10:04 <tswett> Huh. Perhaps there are multiple variants.
01:11:34 <zzo38> Also, with your idea, sometimes you will not know if you are in check? Some rule must be added to help with this? Such as, either you are told if you are in check, or you can see the checking piece, or you just try and have to try again if you made the wrong move, or something else.
01:12:22 <tswett> Yes, perhaps we should also let kings see pieces that have them in check.
01:12:44 <Sgeo> http://www.winestockwebdesign.com/Essays/Lisp_Curse.html
01:13:39 -!- atrapado has quit (Quit: Abandonando).
01:14:08 <oerjan> gah huge font
01:14:24 * oerjan unzooms
01:15:57 * oerjan wonders if he knows that intercal _has_ an OO extension.
01:21:11 <oerjan> Sgeo: what's BBM?
01:28:35 <oerjan> "brilliant bipolar mind", apparently
01:34:24 -!- augur has joined.
02:04:46 <zzo38> Of course in chess with wickets, the Rook can never be the Ball-haver before castling.... I did not pay attention to that at first..... but now I do.
02:16:39 <coppro> zzo38: where do you find these things?
02:17:18 <zzo38> coppro: What things?
02:17:29 <zzo38> Chess variants?
02:19:40 <coppro> everything
02:21:02 <zzo38> Everywhere!
02:22:05 <coppro> zzo38: question about Kirby's chess. How does one get a Kirby to be a king?
02:23:04 <zzo38> coppro: You can't, but in case you combine it with a game that has multiple Kings, then you can.
02:23:54 <zzo38> Now I have six types of items listed in my "Invented".
02:24:29 <coppro> also your bland chess problem is impossible to get to in a game
02:24:31 <zzo38> And I highly recomand this one: http://www.chessvariants.org/index/msdisplay.php?itemid=MSchessvariantsq
02:25:29 <zzo38> coppro: Yes you are right about that. I did not notice that at first, but now I can see that is true. However, in fairy chess sometimes you have positions that are impossible to get to.
02:26:27 <zzo38> Some of these things I did not pay enough attention!
02:27:30 <coppro> zzo38: oh wait... it might be possible if you promote to a bishop
02:28:17 <zzo38> coppro: No, it is not possible. See there is the "p" in the same file. Pawns do not capture in this game so it could not have happened.
02:31:16 <zzo38> Do you believe me? Or have I made another mistake?
02:39:08 <coppro> zzo38: ah, nope, my intuition was correct
02:42:44 -!- monqy has quit (Read error: Operation timed out).
02:45:53 -!- monqy has joined.
02:51:24 <zzo38> Have you seen my latest additions to TeXnicard?
03:09:16 -!- augur has quit (Remote host closed the connection).
03:27:28 -!- augur has joined.
03:29:04 -!- augur has quit (Remote host closed the connection).
03:29:06 -!- z^ck has quit (Ping timeout: 276 seconds).
03:29:17 -!- z^ck has joined.
03:30:17 -!- augur has joined.
03:30:38 -!- augur has quit (Remote host closed the connection).
03:54:02 <coppro> zzo38: no; I have not been following TeXnicard at all
03:56:30 -!- pingveno has quit (Ping timeout: 246 seconds).
03:57:38 -!- pingveno has joined.
04:00:33 <quintopia> ...i don't follow it either
04:04:50 <zzo38> coppro,quintopia: OK; but if you are interest and have question, please ask a question/complaint if you have any, please. Or say there is nothing, if you have nothing yet.
04:05:22 <quintopia> i have nothing and i never will have anything because it is not something that interests me :)
04:05:36 <zzo38> OK.
04:08:29 -!- lifthrasiir has quit (Ping timeout: 260 seconds).
04:10:01 -!- lifthrasiir has joined.
04:14:10 <zzo38> Although would you be able to help with illustrations/diagrams/cartoons in a book of the program?
04:15:29 <coppro> probably not
04:15:32 <coppro> I have little spare time
04:19:27 <zzo38> OK
04:19:53 <zzo38> (O, and also examples, I forgot "examples" in that list above)
04:22:30 <coppro> and when I do have time, my bizarro thing that is ostensibly a relationship seems to take it up
04:22:49 <quintopia> i would consider it. how much does it pay?
04:24:21 <zzo38> quintopia: I don't know yet, if it pays anything at all. But regardless, it is not yet time, please.
04:24:52 <quintopia> i would do it for the right price, but probably not for free ;)
04:25:25 <zzo38> Of course it is GNU GPL and you can sell your own copies (so can anyone) if you want to, including the book, and the computer file. It can also be done selling the book with the DVD for the computer file in the back.
04:29:34 <zzo38> quintopia: OK, I can understand that.
04:32:31 <zzo38> However currently I have no way to pay, but also is not yet time. But I would agree to following: That the illustrations/diagrams/cartoons and the graphics (but not codes) for examples are BY-NC-SA (belonging to the person who made these graphics), that they can sell the book with it, that I also have a license to sell the book with them but must pay royalties, others must contact you first.
04:34:06 <zzo38> But if later I can pay, I might do so even early, to someone who would expect the money, maybe.
05:14:42 -!- augur has joined.
05:19:54 -!- copumpkin has joined.
05:44:41 -!- pikhq has joined.
05:45:10 * pikhq declares that everything hates him
05:45:10 <lambdabot> pikhq: You have 1 new message. '/msg lambdabot @messages' to read it.
05:45:33 <oerjan> i assume that was a hate message, then.
05:45:42 -!- Slereah has quit.
05:45:54 <pikhq> copumpkin: re: lambdabot. Uh? I know not.
05:46:17 <copumpkin> pikhq: I could've sworn you'd linked to a set of heisig stories at some point
05:46:23 <copumpkin> maybe I'm just confused
05:46:25 <pikhq> I don't recall one.
05:46:39 <copumpkin> ah well
05:46:41 <Gregor> OK, I've got a tempo knob :)
05:46:44 <pikhq> Fuck. This. Economy.
05:46:50 <copumpkin> pikhq: what's wrong?
05:47:00 <pikhq> copumpkin: Well, I'm in a demographic with 50% employment.
05:47:08 <pikhq> copumpkin: As you can imagine, getting a job is very difficult.
05:47:13 <copumpkin> ah yes :/
05:47:15 <pikhq> And currently, I have no working computer.
05:47:22 <copumpkin> damn :/
05:47:23 <pikhq> Because my power supply broke.
05:47:49 <pikhq> Also, my PS3 broke. I need to reflow it and reapply thermal paste to the GPU/CPU. Can't afford thermal paste.
05:48:20 <copumpkin> wow, bad time
05:48:47 <copumpkin> where are you?
05:49:03 <pikhq> Colorado Springs, CO, USA
05:49:07 <copumpkin> ah
05:49:53 <pikhq> So I'm currently coaxing an old P4 system that's not mine into cooperating with me.
05:50:22 <pikhq> I swear, this thing is a decade old.
05:50:30 <pikhq> Actually, almost exactly that.
05:51:41 <pikhq> Anyways, I have concluded that everything hates me.
05:52:06 <pikhq> Most especially the job market.
05:52:24 <pikhq> It should *not* be difficult to find even a minimum wage job.
05:52:36 <pikhq> And yet, it seems to be impossibly so.
05:53:11 <pikhq> Unless, of course, I want to cease going to college. And fuck that.
05:54:46 <copumpkin> yeah, it's annoying choice
05:55:08 <copumpkin> you could transfer to somewhere more "happening" job-wise
05:55:14 <copumpkin> or aren't there college jobs?
05:55:21 -!- monqy has quit (Ping timeout: 276 seconds).
05:56:08 <pikhq> It's not even like I have a hard-to-work-with schedule.
05:56:54 -!- monqy has joined.
05:57:59 <pikhq> 12-4 M-W, 10-2 T-Tr. Fuck everyone wanting part-time workers working, say, 10-4 on 3 weekdays a week. That's just fucking cruel.
05:59:58 <pikhq> In completely unrelated news, I have finally found a replacement for Make that I like.
06:00:49 <pikhq> Called "redo". A third-party implementation of a djb idea.
06:00:57 <zzo38> Did anyone win both the Nobel Prize and the Ig Nobel Prize?
06:02:22 <copumpkin> pikhq: anyway, good luck with finding a job and/or a working computer! was wondering where you'd gone
06:02:26 * copumpkin goes to sleep
06:02:42 <zzo38> pikhq: How does this "redo" work?
06:03:03 <pikhq> zzo38: Each build rule is a shell script with extension ".do".
06:04:28 <pikhq> To start a build, you call "redo foo". This will just execute foo.do. The command "redo-ifchange" denotes a dependency. If the dependency's timestamp has changed, then redo-ifchange will execute the dependency
06:04:36 <pikhq> 's rule before continuing execution.
06:05:06 <oerjan> zzo38: http://en.wikipedia.org/wiki/Andre_Geim
06:05:25 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
06:05:58 -!- augur has quit (Remote host closed the connection).
06:06:32 <pikhq> default.ext.do will create a generic rule for .ext
06:06:48 <pikhq> (default.do, BTW, is also a generic rule)
06:07:09 <pikhq> The shell scripts have 3 arguments passed to them: the first is the target, sans extension, the second is the target's extension, the third is a temporary file that will get renamed to the target upon succesful execution of the build rule.
06:08:06 <zzo38> When I work with my own projects, I do not need any make files or build rules, because it is simple and a few lines of a shell script will do, there are not many files to deal with, some are temporary such as the ".idx", ".toc", ".scm", ".o" (if any), ".log". I usually only distribute the ".w", ".exe", and the compile script (called "compile").
06:08:34 <zzo38> However, for a thing with build rules, that system you describe seems it can help when you need them, certainly good for that kind of things.
06:10:20 <pikhq> It's not more complex than make, it's more flexible than make, and *holy fuck it does spaces in filenames right*.
06:10:54 <zzo38> pikhq: Then, that is good. I did not say it was more complex than make, though.
06:11:08 <pikhq> Yeah, I'm not saying you did.
06:11:12 <pikhq> I'm just saying: :D
06:11:32 <pikhq> Oh, yeah, and there's a subset of its functionality written in 150 lines of shell script.
06:11:43 <pikhq> Not even very dense lines of shell script.
06:14:19 <pikhq> (the shell script doesn't check dependencies; it just does a full build from the top)
06:16:18 <zzo38> I suppose in my system the ".c", ".h" and ".tex" files are also like temporary files, a bit
06:31:05 <zzo38> Is it possible in the redo system, to, make a rule for .do files?
06:32:06 <oerjan> IT'S .DO ALL THE WAY DOWN
06:32:30 <oerjan> that almost should be an INTERCAL (non-error) statement
06:37:31 -!- augur has joined.
06:42:32 -!- oklofok has joined.
06:42:47 <quintopia> i wonder if our minecrafters are gonna get sucked into this one soon also: http://www.rockpapershotgun.com/2011/01/21/love-grows-stronger-deeper-cheaper/
06:45:32 -!- oklopol has quit (Ping timeout: 264 seconds).
06:50:33 -!- myndzi\ has changed nick to myndzi.
06:52:14 <pikhq> zzo38: Presently, it doesn't have the ability to generate .do files.
06:52:37 -!- augur has quit (Remote host closed the connection).
06:52:38 <pikhq> zzo38: Not many technical reasons it couldn't, it's just not yet been implemented.
06:53:49 <pikhq> You can quite easily generate dependencies, though. redo-ifchange is just another command, after all. :)
06:54:56 <pikhq> 3 lines for automatically calculating the dependencies for a C file... :)
06:55:01 -!- augur has joined.
06:55:50 <pikhq> Goodness. It makes the traditional C build-system seem halfway reasonable.
06:56:01 <pikhq> s/build-system/build setup/
06:56:06 -!- augur has quit (Remote host closed the connection).
06:58:46 <zzo38> I use make files with other projects, but my own projects I never need a build-system.
06:59:14 <zzo38> Calculating dependencies for a C file, you can check for #include header files, and then you might check for libraries too?
06:59:41 <pikhq> It'll only handle #include headers. Sadly, there's no real automagic way of handling objects.
07:00:10 <pikhq> Well, you *could* rather easily say "For each .c file I want an .o file, and link them together kthx".
07:00:25 <zzo38> And if it includes any #line directives then it usually means the file named in the #line is generating the .c file from it?
07:01:08 <pikhq> DEPS=`echo *.c|sed s/.c/.o/g`;redo-ifchange $DEPS;gcc $DEPS -o foo
07:01:13 <zzo38> Maybe you have to check if you need any -l library also
07:01:47 <pikhq> (note: almost certainly a better way of doing that than piping into sed. At 1 in the morning, my shell magic goes away)
07:01:50 <zzo38> What is traditional C build setup?
07:03:58 <pikhq> Y'know, where you have "compilation units", the only possible interaction between two of them comes courtesy of a preprocessing step, and generally involves there being no easy way of determining what files make up a program?
07:06:13 <pikhq> Causing a lot of fairly unfortunate things, such as building being *very hard* to do right, libraries being a PITA, and whole-program optimization requiring some very low-level changes in the whole thing.
07:07:24 <pikhq> (GCC's implementation involves *inserting sections* into the freaking object files containing an intermediate form of the program which the linker (with a plugin) can parse through so that it can pass the whole chunk back to the compiler)
07:14:56 <zzo38> Is that what happens when I type -fwhole-program ?
07:17:11 -!- Phantom_Hoover has joined.
07:18:01 <pikhq> No, that's what happens when you use -flto on GCC 4.5 or 4.6.
07:18:08 <pikhq> (note: buggy as hell on 4.5)
07:19:14 <pikhq> -fwhole-program makes GCC assume that what's been passed on the command line represents the whole program, thereby allowing it to make a few more assumptions...
07:20:04 <pikhq> (most notably that no symbols can be accessed unless a pointer gets passed outside of the program)
07:22:51 <pikhq> Huh. Lions used to live in North America.
07:22:59 <Phantom_Hoover> pikhq!
07:23:02 <Phantom_Hoover> YOU'RE ALIVE
07:23:12 <pikhq> Panthera leo atrox went extinct ~11,000 years ago.
07:23:17 <pikhq> Phantom_Hoover: Yes, but my computer is not.
07:23:27 <Phantom_Hoover> :(
07:23:30 <Phantom_Hoover> http://www.reddit.com/r/AskReddit/comments/gr2au/ive_hit_rock_bottom_advice/
07:23:57 <Phantom_Hoover> Am I a bad person for immediately thinking "duh, that's what happens when you dedicate your life to living off a parent."
07:25:38 <pikhq> Phantom_Hoover: From the sounds of it, it's more that his mother was taking advantage of him. "Just to repeat, at the time I was almost exclusively helping care for my brother until he left."
07:25:52 <Phantom_Hoover> Well, OK.
07:26:16 <Phantom_Hoover> (Could this be Sgeo in another life? WE MAY NEVER KNOW.)
07:26:39 <Phantom_Hoover> Sometimes I wonder if I should stop with the Sgeo mocking.
07:26:55 <pikhq> Taking care of a fairly disabled person is not exactly mooching...
07:27:24 <pikhq> And a parent allowing it to happen at the expense of other, fairly basic needs (college, social life, job, etc.) is not exactly helpful.
07:30:08 <pikhq> And then booting him out after having basically used him for 6 years with nothing to show for it?
07:30:16 <pikhq> Damned near abusive, really.
07:32:05 <quintopia> eh i know a guy who pays the entirety of the mortgage of the house he lives in, despite not having his name anywhere on the deed. (his mom, father-in-law, and brother-in-law own it but pay nothing to stay there)
07:32:33 <zzo38> Then he should write his name somewhere on the deed!
07:32:38 <quintopia> we've told him to get the fuck out of there, but he feelsl like that would basically be dooming his mother to be homeless, and she can't work, so...
07:32:41 <quintopia> it sucks
07:33:08 <pikhq> quintopia: I'm pretty sure that gives him an ownership interest, and if push came to shove he could get the deed.
07:33:09 <quintopia> zzo38: then he'd have to pay those people the first 10 years worth of the mortgage to buy them out, which he doesn't have the money for
07:33:13 <pikhq> (presuming common law)
07:33:19 <quintopia> pikhq: how does that work
07:33:22 <quintopia> i could tell him
07:33:39 <pikhq> quintopia: He'd have to explain the situation to a lawyer.
07:33:51 <pikhq> quintopia: That's, uh, about the full extent of it that I'm aware of.
07:33:58 <quintopia> ha, well okay
07:34:18 <pikhq> "People have ended up fully paying for a house loan that there name isn't on, and sued for ownership succesfully."
07:34:49 <quintopia> yes but he's only paying all the current payments on it
07:34:58 <quintopia> he will never be able to pay for the first ten years of it
07:35:08 <quintopia> sounds like a stretch
07:35:17 <pikhq> Also, even if he didn't do that, he'd be pretty damned hard to kick out: as he is paying for it, he is renting, and so they'd have to go through the full eviction process.
07:35:35 <zzo38> I meant, write his name on there without removing the names that are already there
07:35:36 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
07:35:48 <quintopia> well, it's not that he minds living there, and they would never kick him out
07:35:48 <pikhq> (note: actually pressing this with family involved may be difficult, because that's his freaking family.)
07:35:55 <quintopia> it's just that he doesn't want to pay anymore
07:36:17 <pikhq> He may wish to talk with them.
07:36:17 <zzo38> Too bad, if you have a house to live at, you have to pay!
07:36:18 <quintopia> because he can't really afford it
07:36:35 <quintopia> zzo38: then why isn't everyone else there paying?
07:37:35 <quintopia> but yeah i agree he needs to somehow get those people to pay or give him the deed, even if it means threatening his own mother with a lawsuit :/
07:37:54 <zzo38> quintopia: I think they should pay too, isn't it?
07:37:58 <pikhq> It is most definitely *not* a healthy situation.
07:38:33 <pikhq> At a minimum, get them agree to help pay the mortgage... And get it in writing.
07:40:19 <zzo38> Yes, they should probably do that.
07:40:19 -!- Phantom_Hoover has joined.
07:41:35 * pikhq is feeling a bit Russian ATM
07:42:04 <pikhq> Vodka.
07:42:06 <pikhq> It does that.
07:42:21 <Phantom_Hoover> Is Russian the same as tired and emotional?
07:42:41 <pikhq> Not really.
07:45:43 <zzo38> Sometimes in C programming there is something where + or | or ^ can be used all of them can work, which are considered best? Does it depend on anything?
07:46:55 <pikhq> Pick whichever is most clear in context; modern compilers *will* choose whichever is fastest.
07:47:39 <pikhq> (basic arithmetic is one of the few things where actually generating *optimal* code isn't too hard)
07:47:40 <zzo38> How can the compiler necessarily know if such a situation exists?
07:48:01 <zzo38> (Assume where both operands are non-constant)
07:48:20 <pikhq> Oh, "both operands are non-constant"? Okay, that throws shit out.
07:48:54 <pikhq> Beats me; probably varies depending on ISA or CPU.
07:49:04 <pikhq> Pick whichever is most clear in context.
07:49:42 <pikhq> Unless, of course, you can show that doing otherwise nets you worthwhile performance gains.
07:50:23 <zzo38> In case of constants, sometimes you might be able to know by the compiler, probably, such as: (x<<4)|0x5 then you can put ^ or + instead it still works (but | is probably most clearly).
07:50:51 -!- augur has joined.
07:51:15 <pikhq> There's rather a lot of clever stuff you can do with arithmetic when constants are known.
07:52:57 <zzo38> But in other complicated cases with non-constant, it is difficult. It could be made a macro using #define that is defined as such, and then use this macro. And redefine it when compiling on a computer that is different in case it depending on ISA or CPU.
07:53:32 <pikhq> Yeah, but doing that is only going to matter much in a handful of cases.
07:53:55 <pikhq> In the general case, programmer time is more important than CPU time.
07:55:07 <pikhq> In the specific case, you end up producing code like that of x264.
07:55:34 <quintopia> the only place it could make a difference is in the inner loop of a something that happens a LOT. like the only line in a loop happening 1000^3 times in a row
07:55:43 <pikhq> Like in x264.
07:55:49 <quintopia> yer
07:56:13 <pikhq> There is another place it could make a difference, BTW.
07:56:31 <pikhq> If one opcode is smaller than the other, than making the wrong choice *could* produce cache misses.
07:56:40 <quintopia> lul
07:56:55 <quintopia> sure if you use the longer opcode a thousand time inline
07:57:25 <quintopia> i'm going to reject that case as insignificant also
07:57:26 <pikhq> But given general coding habits, I don't think many people actually give a damn about caching at all.
07:57:49 <quintopia> systems designers care a lot
07:57:54 <quintopia> that's about it
07:58:17 <quintopia> in particular, about L2 misses
07:58:19 <pikhq> And a handful of programmers working on high-performance code.
07:58:37 <pikhq> Like in x264.
07:59:07 <quintopia> i think "except for x264, it doesn't matter" pretty much covers it
07:59:24 <pikhq> Yeah.
07:59:33 <pikhq> Well, there *are* other video encoders. :P
08:00:04 <pikhq> Just not many *quite* as dependent on uberoptimisation to get encoding in real time.
08:00:04 <zzo38> I would say I guess, I would care if writing an assembly language program, for sure. But in C, it is different for different computer, usually it doesn't matter and | is usually the mostly clearly one to use, at least to me it is.
08:00:51 <pikhq> Anyways, the general rule on optimisation covers this. "Don't unless you can show it's actually fucking worth it."
08:01:23 -!- Sgeo has quit (Read error: Connection reset by peer).
08:01:49 <pikhq> quintopia: Incidentally, x264 actually cares extensively about L1 misses. I'm not fucking kidding.
08:02:57 <quintopia> i was thinking of systems programmers in regards to L2 misses, since they give a much bigger penalty. i assume x264 started caring about L1 misses once they'd shaved off every L2 miss they could
08:03:15 <pikhq> Well, yeah.
08:03:37 <pikhq> It is optimised to the point that L1 misses actually make a measurable difference.
08:06:27 <quintopia> man now i'
08:06:30 <quintopia> m inspired to code
08:06:46 <pikhq> Probably helps that it has an extensive number of very tight loops running dozens of times per frame.
08:08:36 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
08:13:51 -!- ais523 has quit (Remote host closed the connection).
08:24:05 <oklofok> i had a math dream!
08:24:17 <oklofok> it was fucking pathetic, but nice try i guess :D
08:24:40 <pikhq> I think I managed that after the linear algebra binge I had earlier this week.
08:25:02 <pikhq> Note to self: putting off 2.5 months of homework until the week it's all do is a bad idea.
08:25:41 <oklofok> better that than putting it off until it's all *don't*!
08:26:03 <pikhq> Well, yes.
08:26:15 <pikhq> My *recent* procrastination habits are a major improvement over my past habits.
08:26:25 <pikhq> I'm passing classes now!
08:26:31 <oklofok> good for you
08:26:38 <oklofok> i actually never need to pass another class
08:26:56 <oklofok> unless i want a degree past math
08:27:10 <pikhq> Yeah, it's kinda a bad thing to fail classes your freshman year.
08:27:40 <oklofok> i did! i failed this course called "introduction to computers" or something where we learned to excel
08:27:44 <oklofok> and stuff
08:28:26 <fizzie> I failed our "orientation for studying" class by sleeping when I was supposed to go to a "library exercise".
08:28:37 <fizzie> Then I redid on my fifth year or se.
08:29:16 <oklofok> i almost failed my bachelor's thesis seminar thingie because i skipped a library exercise
08:29:18 <pikhq> Try doing it on actually relevant classes.
08:29:37 <pikhq> Retaking calc III and physics I is t3h sucks.
08:29:42 <oklofok> pikhq: well i have attended like 5 lectures this year
08:29:48 <oklofok> they aren't mandatory here
08:29:53 <pikhq> Oh, well, physics I is actually completely *irrelevant*.
08:29:57 <pikhq> But you know what I mean.
08:30:39 <oklofok> you know, i knew what you meant until you said that, suddenly i'm not so sure
08:30:40 <oklofok> :P
08:31:12 <pikhq> oklofok: Is physics relevant to a CS degree?
08:31:15 <pikhq> I think not.
08:32:55 <oklofok> calculus isn't all that useful either in cs afaik
08:33:16 <pikhq> No, but I'm also wanting a math degree.
08:33:20 <oklofok> but at least it has some brain expansive properties
08:33:30 <oklofok> well yes
08:33:38 <pikhq> And calculus is pretty dang relevant to a math degree.
08:33:39 <fizzie> While physics can be used to expand... some entirely other regions.
08:33:55 <oklofok> fizzie: too much information
08:34:13 <oklofok> i already know statistics gives you a boner
08:34:28 <pikhq> fizzie: SCIENCE FETISHIST!
08:36:41 <oklofok> so about my dream, a proper coloring f is an assignment of numbers to vertices without edges uv such that f(u) = f(v); the list coloring number of graph G is the smallest number l such that if you give each vertex a list of color choices of size l, you can choose a color for each vertex in their list so that the coloring is proper
08:36:53 <oklofok> argh
08:36:58 <oklofok> phone rings - >
08:37:56 <oklofok> that was the coloring part, then let's talk about flows
08:38:49 * pikhq wonders at the bizarre math education scheme
08:39:41 <pikhq> arithmetic -> more arithmetic -> some geometry -> some algebra -> some geometry -> some algebra -> some trigonometry -> FIN
08:39:56 <oklofok> an orientation of a graph means you choose a direction for each edge (talking about finite undirected graphs here), an everywhere nonzero flow on G is an orientation of G plus a function f assigning whole numbers to edges such that sum of incoming stuff = sum of outgoing stuff, and no vertex has zero flow coming in
08:40:23 -!- oerjan has quit (Quit: leaving).
08:40:45 <oklofok> now there is this rather non-old (80's) theorem that says that every graph has such a flow using just numbers 0...5 on the edges
08:41:23 <oklofok> and even weirder, even the fact that for all G there exists any everywhere nonzero flow at all was proven only in 76
08:41:40 <oklofok> my dream was about proving this theorem from 76
08:42:36 <oklofok> and umm, what i did was i confused the nonzero flow number with the list coloring number, and tried to prove that every graph has a k such that from lists of size k you can always find a coloring
08:42:47 <oklofok> and i seriously thought about this for some time
08:42:50 <oklofok> then i woke up
08:43:56 <oklofok> and without realizing i had the wrong definition, in about a second i realized that it's obvious that k = number of vertices works, and simply because of K_7, 6 is not enough for all graphs and thus i must have the wrong definition
08:44:01 <oklofok> erm
08:44:09 <oklofok> i mean, without realizing i was proving the wrong theorem
08:44:34 <oklofok> so that's pretty much definitive proof that math is just off when i sleep.
08:45:45 <oklofok> but again, i thank my dream director for trying
08:45:58 * oklofok notices pikhq said something
08:46:59 <pikhq> Hah.
08:48:00 <oklofok> so if i understood correctly, they are trying some new notation for the division algorithm (i mean the algorithm you use to divide numbers), and some teachers decided to try to teach both the old and the new notation to kids
08:48:05 <oklofok> and no one learned to divide
08:48:45 <oklofok> because given 6/9, they didn't know which algorithm was the correct one to run
08:50:28 * pikhq should sleep
08:50:39 -!- pikhq has quit (Quit: Lost terminal).
08:50:43 <oklofok> :\
08:51:18 <oklofok> well i was gonna give him some quality math but i guess the man doesn't appreciate quality
08:54:43 <oklofok> so a quasiorder is a<a, a<b<a => a=a, a<b<c => a<c; given graph G and edge e = uv, contraction of e means you remove u and v, and put vertex e back instead, all connections from u and v going to e now; a minor is the quasiorder obtained from having H<G if H is (isomorphic to) a subgraph of G, and having H<G if H is G with some edge contracted (i think!)
08:55:11 <oklofok> the minor theorem states
08:55:51 <oklofok> that if you have an infinite sequence G_1, G_2, G_3, ..., then there exist i, j such that G_i is a minor of G_j
08:56:30 <oklofok> the minor relation is obviously a quasiorder, and this also makes it a well-order
08:57:03 <oklofok> the fun thing is the minor theorem was proven in a sequence of articles containing about 500 pages put together
09:03:07 -!- cheater has quit (Ping timeout: 260 seconds).
09:11:40 <zzo38> I found some stupid game show answers. "Who is the only Marx brother that remained silent throughout all their films?" "Karl." "What is the capital of Italy?" "France." "Name something people believe in but cannot see." "Hitler."
09:19:20 <oklofok> there are marx brothers who did films?
09:24:08 <zzo38> I don't know.
09:37:30 <zzo38> __TT___ ____ __ TH_ _________ (What are you doing?)
09:39:08 <zzo38> "BATTLE HYMN OF THE REPUBLIC" fits neither the template nor the category.
09:44:53 -!- BeholdMyGlory has joined.
09:54:28 -!- monqy has quit (Quit: hello).
09:56:38 -!- zzo38 has quit (Quit: Tee hee, Brutus.).
09:56:58 <Vorpal> <oklofok> there are marx brothers who did films? <-- come on, even I know that
09:57:13 <Vorpal> oklofok, iirc they were back in the pre-colour movie era.
09:57:29 <Vorpal> oklofok, comedy iirc
09:58:00 <Vorpal> (that is about how much I know about them, wouldn't be able to answer the question zzo38 quoted)
10:00:43 <oklofok> well i have this really vague feeling i've heard
10:00:55 <oklofok> of "marx brothers"
10:01:10 <oklofok> but then i go "or was it the wright brothers?"
10:01:11 -!- MigoMipo has joined.
10:01:47 <Vorpal> oklofok, the latter I think invented the first working motorised airplane
10:02:41 <oklofok> or one of the first at least
10:02:59 <oklofok> i've heard some conspiracy theories about this
10:03:04 <Vorpal> oklofok, well, it is they who got the credit for the invention at least
10:03:10 <oklofok> sure
10:03:14 <oklofok> i have to go to work ->
10:03:54 <Vorpal> oklofok, there were previous inventors who could have gotten it working. Some were too early, the internal combustion engine was not yet invented. Some died in experiments gone wrong.
10:04:05 <Vorpal> cya
10:22:12 -!- KingOfKarlsruhe has joined.
10:45:35 -!- MigoMipo has quit (Ping timeout: 240 seconds).
10:46:16 -!- MigoMipo has joined.
10:51:28 -!- MigoMipo_ has joined.
10:54:46 -!- MigoMipo has quit (Ping timeout: 252 seconds).
10:55:12 -!- Wamanuz has quit (Remote host closed the connection).
11:03:04 -!- MigoMipo_ has quit (Read error: Connection reset by peer).
11:29:07 -!- Sgeo has joined.
11:50:48 -!- Slereah has joined.
11:55:11 -!- Slereah has quit (Ping timeout: 240 seconds).
11:55:24 -!- MigoMipo has joined.
12:01:35 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.86.1 [Firefox 3.6.16/20110319135224]).
12:42:08 -!- azaq23 has joined.
12:47:46 -!- Slereah has joined.
12:54:32 -!- Slereah has quit (Ping timeout: 240 seconds).
12:59:14 -!- Slereah has joined.
13:05:27 -!- Wamanuz has joined.
13:06:49 -!- FireFly has joined.
13:19:39 -!- FireFly has quit (Read error: Operation timed out).
13:22:58 -!- hiato has joined.
13:23:16 -!- hiato has left.
13:25:09 -!- FireFly has joined.
13:27:18 -!- Wamanuz has quit (Remote host closed the connection).
13:38:32 -!- Wamanuz has joined.
13:39:11 -!- cheater has joined.
14:01:20 -!- Phantom_Hoover has joined.
14:11:53 <Phantom_Hoover> http://www.reddit.com/r/reddit.com/comments/gr65o/18_year_old_reports_rape_police_dont_trust_her/c1ppnc2
14:12:02 <Phantom_Hoover> God I really hate these people.
14:12:08 <Phantom_Hoover> The doctors were SO IMPERSONAL
14:12:49 <Phantom_Hoover> It's not like their job is to objectively analyse and attempt to cure my problems, rather than to be nice.
14:17:09 <Phantom_Hoover> @tell elliott Looks like ED has actually been replaced for good.
14:17:09 <lambdabot> Consider it noted.
14:30:19 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
14:42:59 -!- azaq23 has quit (Quit: Leaving.).
15:12:45 -!- copumpkin has joined.
15:15:07 -!- Mathnerd314 has quit (Ping timeout: 252 seconds).
15:42:23 -!- cheater- has joined.
15:44:49 -!- cheater00 has quit (Ping timeout: 250 seconds).
15:53:25 -!- FireFly has quit (Read error: Operation timed out).
15:56:05 -!- Wamanuz has quit (Ping timeout: 246 seconds).
15:56:35 -!- Wamanuz has joined.
16:08:52 -!- FireFly has joined.
16:21:26 -!- azaq23 has joined.
16:37:23 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
16:54:59 -!- copumpkin has joined.
16:58:35 -!- cheater00 has joined.
16:59:31 -!- cheater- has quit (Ping timeout: 246 seconds).
17:03:10 <Sgeo> elliott: Arm actually said something that made sense!
17:06:32 <oklofok> your arm? :D:DSSSDDD
17:14:46 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
17:21:26 <Vorpal> elliott: "In mid-2003 Introversion began selling the source code for the game, along with other tools on the Uplink Developer CD." <-- hmm!
18:05:11 -!- monqy has joined.
18:23:30 -!- elliott has joined.
18:23:35 <elliott> help
18:23:36 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
18:23:47 <elliott> @messages
18:23:48 <lambdabot> Phantom_Hoover said 4h 6m 38s ago: Looks like ED has actually been replaced for good.
18:24:35 <elliott> Not even a database backup?
18:24:57 <elliott> Anyway, someone help me; I can't press the numbers above 0 and less than 9 on my laptop. `, which is right next to the successor of 0, works
18:25:04 <elliott> Even with Fn or Alt or shift
18:25:12 <elliott> xev sees nothing
18:25:13 <elliott> Halp?
18:25:46 <oklofok> i can do my best to help you
18:25:53 <oklofok> so umm
18:25:57 <oklofok> take finger
18:25:59 <oklofok> put on 0
18:26:00 <oklofok> move right
18:26:04 <oklofok> try not to move too much
18:26:10 <oklofok> then drop
18:26:12 <elliott> -
18:26:23 <elliott> 0 is at the right side of the numbers, dumbo
18:26:38 <oklofok> oh sorry let me try again
18:26:48 * oklofok thinks
18:27:08 <oklofok> what?
18:27:09 <Vorpal> elliott, <Vorpal> elliott: "In mid-2003 Introversion began selling the source code for the game, along with other tools on the Uplink Developer CD." <-- hmm! <-- however I can now add that bit rot quotient is high. Not worth the effort.
18:27:23 <elliott> Vorpal: Pirate, eh?
18:27:32 <oklofok> what do you mean side of numbers, numbres don't have sides
18:27:37 <elliott> Vorpal: Anyway, they offer Darwinia as access to a svn repository, which is way cooler :P
18:27:44 <elliott> oklofok: it's `(numbers less than 9)90
18:27:46 <Vorpal> elliott, wow indeed !
18:27:46 <oklofok> that's not what geometry of numbers is lol :DDDD
18:28:01 <oklofok> elliott: okay i think i'm getting it
18:28:01 <Vorpal> elliott, anyway uplink: lots of weird g++ errors
18:28:18 <Vorpal> ./app/dos2unix.h:6:38: error: expected class-name before ‘{’ token <-- as far as I can tell there is no error there for example
18:28:21 <oklofok> so i guess you know more about fingers than me
18:28:38 <elliott> Vorpal: Use gcc 9-...uh or something :P
18:28:42 <oklofok> i just know http://www.3news.co.nz/New-Zealand-man-cooked-and-ate-his-finger/tabid/423/articleID/207216/Default.aspx
18:28:44 <Vorpal> elliott, this is after sed-ing around to fix iostream.h -> iostream and such, otherwise I don't get this far
18:28:45 <elliott> I dunno how to formulate that number with only 9, 0 and arithmetic
18:28:57 <elliott> anyway, Vorpal, plz to be helping
18:29:11 <monqy> 9/9 for 1
18:29:13 <elliott> a
18:29:16 <monqy> then go from there
18:29:21 <elliott> monqy: ah, thanks
18:29:21 <Vorpal> elliott, plus there is a perl script used in the make file that is missing, it seems to encrypt strings in some source files. For now I changed it to skip that step, since the perl script is nowhere to be found!
18:29:27 <elliott> Vorpal: try g++ (9/9)+(9/9)+(9/9)
18:29:27 <monqy> 9/9 + 9/9 + 9/9 + 9/9 + 9/9
18:29:36 <Vorpal> elliott, what? gcc 3?
18:29:37 <Vorpal> hm
18:29:39 <elliott> er
18:29:45 <elliott> (9/9)+(9/9)
18:29:46 <elliott> typo, sorry
18:29:51 <Vorpal> elliott, gcc 2?
18:29:53 <elliott> ye
18:29:54 <elliott> s
18:29:56 <elliott> well
18:30:00 <elliott> it was released in two thousand and one
18:30:00 <Vorpal> elliott, RIGHT. That would be painful
18:30:06 <elliott> meh? not really
18:30:07 <oklofok> (9/9)+(9/9) and (9/9)+(9/9)+(9/9) are next to each other on the keyboard so it's understandable
18:30:08 <elliott> use the compiler they did
18:30:18 <elliott> was gcc three mature in say nine-teen ninety nine?
18:30:24 <Vorpal> elliott, chances of getting it to run on my system... are low
18:30:33 <Vorpal> gcc 2 that is
18:30:35 <elliott> gcc three then
18:30:46 <Vorpal> that might be doable
18:30:58 <oklofok> elliott: okay here goes: finger on NINE then go left but be careful
18:31:00 <Vorpal> elliott, not sure I care enough though
18:31:02 <elliott> "It may be that the act of actually cutting off his finger (and eating its flesh) made staff take him more seriously and provide the care and understanding that he longed for."
18:31:02 <elliott> :D
18:31:13 <elliott> Vorpal: so did you pyrate the game
18:31:18 <Vorpal> elliott, anyway helping with what? "<elliott> anyway, Vorpal, plz to be helping"
18:31:32 <elliott> Vorpal: `90
18:31:39 <elliott> Vorpal: that's what happens when i run over my number row
18:31:42 <oklofok> elliott: seriously this time i got it right
18:31:44 <elliott> fn+, alt+, shift+, nothing works
18:31:48 <elliott> xev does not report any events
18:31:53 <elliott> keyboard is otherwise functioning perfectly
18:31:54 <elliott> halp
18:32:08 <Vorpal> elliott, not the game no. I found a friend who had it, and didn't play it any more. The dev cd, yes
18:32:20 <elliott> rite
18:32:30 <elliott> i would have given you it, but no optical drive
18:32:34 <elliott> well i don't think the superdrive works in linux
18:32:37 <elliott> also, i dunno where the disk is
18:32:39 <elliott> also, i'm lazy and it's cheao
18:32:40 <elliott> cheap
18:33:15 <Vorpal> elliott, anyway, getting the game itself isn't that hard to get to work. In fact I think if I had used my laptop with ubuntu lts it would have worked out of box. Because I copied all the .so's that I needed from it.
18:33:18 <elliott> ok
18:33:19 <elliott> this site
18:33:21 <elliott> has some fucking javascript
18:33:22 <elliott> that stops me
18:33:24 <elliott> selecting a whole paragraph
18:33:31 <Vorpal> elliott, noscript!
18:33:32 <elliott> fuck
18:33:32 <elliott> that
18:33:33 <elliott> shit
18:33:45 <elliott> Vorpal: is there a version of noscript that only blocks shit like that? :)
18:34:03 <Vorpal> elliott, you could select "globally enable scripts" and then leave it at that until you run into a site like this
18:34:18 <elliott> i'd have to use firefox, though :(
18:34:41 <Vorpal> elliott, isn't there a version for chrome?
18:34:55 <Vorpal> elliott, anyway, just turning off javascript for now should work even in chrome
18:34:57 <elliott> no official noscript, chrome does have js blocking features
18:35:00 <elliott> that are pretty similar
18:35:00 <Vorpal> or doesn't it have the option?
18:35:05 <elliott> but i think it's only off-by-default
18:35:12 <Vorpal> elliott, well, you could enable them for now?
18:35:16 <elliott> (with a UI for whitelisting quickly)
18:35:23 <elliott> http://cdn2.techie-buzz.com/images/postimg/arpit/BlockJavaScrip.NoScriptsfeaturesinChrome_18B/disablejavascriptchromenoscriptextension.png
18:35:44 <elliott> btw
18:35:48 <elliott> i can't update my system
18:35:50 <elliott> or install packages
18:35:55 <elliott> because i can't type my password
18:35:57 <Vorpal> elliott, I find that quick whitelisting is really quick. And a shitload of sites load much faster without js. So if you have an old computer like I do, noscript is worth it.
18:36:03 <elliott> because it has digits that are not 9 or 0 in it
18:36:15 <Vorpal> <elliott> because it has digits that are not 9 or 0 in it <-- what?
18:36:25 <elliott> <elliott> Vorpal: `90
18:36:25 <elliott> <elliott> Vorpal: that's what happens when i run over my number row
18:36:25 <elliott> <oklofok> elliott: seriously this time i got it right
18:36:25 <elliott> <elliott> fn+, alt+, shift+, nothing works
18:36:25 <elliott> <elliott> xev does not report any events
18:36:26 <elliott> <elliott> keyboard is otherwise functioning perfectly
18:36:28 <elliott> <elliott> halp
18:36:42 <Vorpal> elliott, what OS?
18:36:50 <Vorpal> elliott, is this your macbook air?
18:36:55 <elliott> ubuntu. yes.
18:37:02 <Vorpal> elliott, does it work from OS X?
18:37:03 <elliott> i might try os x...
18:37:05 <elliott> this happened before a reboot btw
18:37:13 <elliott> i was actually cleaning my keyboard
18:37:21 <Vorpal> elliott, oh damn. With what?
18:37:22 <elliott> it was at the password prompt since i hadn't realised i'd put it on stand-by
18:37:32 <elliott> Vorpal: oh, i think i just enabled something
18:37:34 <elliott> by pressing the kesy
18:37:45 <Vorpal> elliott, oh. Right. Any clue what?
18:37:51 -!- FireFly has quit (Remote host closed the connection).
18:37:51 <elliott> i thought maybe some number pad mode, but no
18:38:01 <elliott> i'll try os x now... but since it persisted across a reboot i'm not hopeful
18:38:05 <Vorpal> elliott, wait, if you are at gdm, look at the lower edge of the screen iirc.
18:38:12 <elliott> what does it do
18:38:15 <Vorpal> elliott, there is some "keyboard layout" thing
18:38:17 <elliott> ah
18:38:21 <Vorpal> elliott, iirc only after you typed user name
18:38:24 <Vorpal> elliott, but before password
18:38:26 <elliott> isn't that just language setting
18:38:28 <elliott> which is different
18:38:33 <Vorpal> elliott, not sure. Worth checking anyway
18:39:01 -!- elliott has quit (Read error: Connection reset by peer).
18:39:04 <Vorpal> elliott, also try holding down shift for a time, could be some accessabilty thing (doesn't explain 1-8 though)
18:39:07 -!- elliott has joined.
18:39:11 <Vorpal> <Vorpal> elliott, also try holding down shift for a time, could be some accessabilty thing (doesn't explain 1-8 though)
18:39:20 <elliott> Vorpal: It's not. Same result in OS X.
18:39:26 <elliott> Fecking feckshit.
18:39:26 <Vorpal> elliott, so broken hw?
18:39:37 <Vorpal> elliott, what the fuck did you do when cleaning keyboard
18:39:39 <elliott> Vorpal: Maybe. I need to figure out if you can reset the keyboard controller somehow.
18:39:42 <oklofok> elliott: solution #2, use Vorpal's keyboard, "<Vorpal> elliott, also try holding down shift for a time, could be some accessabilty thing (doesn't explain 1-8 though)"
18:39:42 <Vorpal> I mean seriously
18:39:44 <elliott> I did absolutely nothing, srs
18:39:59 <oklofok> you will have two more
18:40:02 <oklofok> then use induction
18:40:13 <elliott> oklofok: excellent
18:40:13 <Vorpal> elliott, on screen keyboard might solve password
18:40:23 <elliott> Vorpal: uh yeah that is sort of not a long-term solution
18:40:30 <Vorpal> elliott, indeed not.
18:40:37 <oklofok> being useful is something i like being good at
18:40:40 <Vorpal> elliott, warranty?
18:40:53 <elliott> Vorpal: i believe so, i'd rather they didn't find all my goat porn though
18:41:00 <Vorpal> heh
18:41:08 <Vorpal> elliott, truecrypt
18:41:09 <elliott> Vorpal: also they might decide Linux is a warranty-voider :)
18:41:33 <elliott> iirc occasionally they decide to just give you a new one
18:41:36 <elliott> and they copy the HD over
18:41:38 <elliott> the issue being
18:41:44 <elliott> do they literally copy the HD over ala dd
18:41:48 <elliott> or do they just copy the OS X files
18:41:58 <elliott> also it boots into linux unless you hold down opt, so yeah
18:42:05 <Vorpal> elliott, okay how much of the keyboard circuits can you access? You could try checking with a multimeter if the signal reaches the controller at all
18:42:17 <elliott> now you are just trolling me :)
18:42:18 <oklofok> yeah he'll do that
18:42:22 <Vorpal> elliott, no, I'm serious
18:42:24 <elliott> one, i don't have a multimeter
18:42:28 <Vorpal> oh okay
18:42:32 <elliott> two, my access is zero, unless i like
18:42:36 -!- oklopol has joined.
18:42:38 <elliott> unscrewed the ultra-tiny screws
18:42:42 <elliott> somehow punched past the battery stuff
18:42:53 <elliott> poked a hole in the unified circuit board
18:43:01 <elliott> then maybe i could access the keyboard circuit.
18:43:09 <Vorpal> elliott, sorry, I'm used to the kind of computer where they consider the palm rest with the touchpad user replacable (yes, lenovo did that)
18:43:25 <Vorpal> I'm not sure I agree, it was rather fiddly
18:43:52 <elliott> Heck, maybe Apple have just decided that those digits aren't important enough for the space they take on the keyboard controller, and then updated my hardware in-place as I slept.
18:44:06 <Vorpal> sounds like apple yeah
18:44:15 <elliott> ".XXX domains go live.. will browsers automatically open .xxx sites in private browsing mode?"
18:44:19 <elliott> first good justification for .xxx ever :D
18:44:23 <Vorpal> joke aside, if it is hardware issue, you don't have much choice except using the warranty
18:44:32 <elliott> i sure hope it isn't
18:44:45 <elliott> tyrbnv
18:44:46 <elliott> update
18:44:51 <elliott> mashing the digit keys REAL HARD does nothing
18:44:58 <oklopol> the other day my crt started being all screwy so i turned it off for a while and now it's fine again
18:45:01 <oklopol> have you tried this
18:45:09 <elliott> NO BUT I AM HOLDING DOWN SHIFT LIKE VORPAL SAID
18:45:56 <Vorpal> elliott, oh and, if this is not the keyboard controller but something broken by cleaning it, then I will call apple "shit build quality"-company
18:45:58 <Vorpal> more than before
18:46:19 <Vorpal> anyway I very much doubt you can access or re-program the keyboard controller without opening the computer
18:46:26 <Vorpal> unless the world changed a lot recently
18:46:34 <elliott> Let's put it this way: it is impossible to access under the kesy.
18:46:38 <elliott> keys
18:46:44 -!- oklofok has quit (Ping timeout: 264 seconds).
18:46:45 <elliott> You can barely fit your nail in the tiny tiny gap.
18:46:54 <elliott> And it's impossible to fit it in enough to lift the key.
18:46:59 <Vorpal> elliott, I'm having some visions of upgrading firmware on this old PS/2 keyboard now XD
18:47:02 <elliott> Nothing has physically happened to the keyboard controller.
18:47:23 <Vorpal> elliott, so how did you clean the keyboard? Not lifting keys?
18:47:40 <elliott> I will retract this statement if it turns out that one to eight form a row for the keyboard...
18:47:46 <elliott> The matrixes are fucked up enough to allow that, right?
18:48:12 <Vorpal> elliott, the matrices on a keyboard are so fucked up that nothing makes sense without seeing the matrix
18:48:23 <elliott> :)
18:48:24 <Vorpal> they usually do not correspond at all with the physical layout
18:48:28 <elliott> at least i still have my smilies
18:48:43 <elliott> Vorpal: right, so it's unlikely that those digits are consecutive in one thing that could break separately
18:49:07 <Vorpal> elliott, well you said shift, ctrl, and fn were broken
18:49:10 <elliott> Er, no.
18:49:18 <Vorpal> no?
18:49:19 <elliott> Just that shift+x ctrl+x fn+x does nothing for x in one to nine
18:49:35 <Vorpal> elliott, oh, but 1-8 you said before?
18:49:37 <Vorpal> not 1-9?
18:49:38 <elliott> er
18:49:40 <elliott> to eight
18:49:40 <elliott> typo
18:49:42 <Vorpal> right
18:49:43 <elliott> well thinko
18:53:01 <elliott> Greetings,
18:53:03 <elliott> With acid-state-0.3, you can use regular Haskell data structures
18:53:03 <elliott> without worrying about data loss or durability. Your state will simply
18:53:03 <elliott> always be available to you even after software crashes or power
18:53:05 <elliott> outages.
18:53:07 <elliott> fuck yeah
18:53:11 <elliott> if only i could type exclamation marks
18:53:20 <Sgeo> elliott, I'm writing a rename function
18:53:24 <Sgeo> To deal with conflicts
18:53:26 <elliott> for what
18:53:30 <Sgeo> Picolisp
18:53:35 <elliott> why are you wasting your time
18:53:38 <elliott> the library has no conflicts
18:53:58 <elliott> anyway renaming is just... setq?
18:54:00 <elliott> (setq foo bar)
18:54:01 <Sgeo> Yes, because no one can ever write their own libraries
18:54:03 <elliott> omg bar is now foo
18:54:20 <elliott> Sgeo: oh, i forgot you specialise in caring intensely about stupid hypotheticals
18:54:26 <elliott> ok i'm leaving os x now.
18:55:01 <Sgeo> elliott, that doesn't help in the event of a public function using another public function that happens to collide
18:55:07 <Ilari> Next weekend could be good time to take a look at global allocation rates 15th and after.
18:55:13 <Sgeo> Anyway, rename is trivial once I understood what to do
18:55:21 <elliott> nothing will solve that fundamentally
18:55:26 <elliott> since you could use any layers of parsing and eval
18:55:40 <Sgeo> ?
18:55:55 <elliott> (de test () (run-this "(colliding-function)"))
18:56:29 <Sgeo> http://sprunge.us/EPXi
18:56:49 <elliott> 19:55 elliott: (de test () (run-this "(colliding-function)"))
18:56:51 <Sgeo> Oh, I see
18:56:52 <elliott> that will not be able to solve this.
18:57:32 -!- FireFly has joined.
18:58:09 <elliott> "Assuming you start the Haskell runtime up only once (like this), on my machine, making a function call from C into Haskell, passing an Int back and forth across the boundary, takes about 80,000 cycles (31,000 ns on my Core 2) -- determined experimentally via the rdstc register"
18:58:17 <elliott> haha when i was eighty thousand
18:58:18 <elliott> i was expecting like
18:58:20 <elliott> fifteen minutes
19:00:57 <elliott> bleh so Vorpal any smart ideas :)
19:02:11 <elliott> I wonder if Niki and the Robots will be a decent game or just a Haskell tech demo.
19:02:32 <Vorpal> elliott, for the keyboard? Well not really no. Since you have no multimeter and a machine that is more or less a black box
19:02:55 <elliott> I want answers based in RANDOM SPECULATION
19:03:19 <Vorpal> elliott, you could try directing a tachyon flow with reversed polarity at it then
19:05:23 <Ilari> Oh, Global allocations for 15th: 91 136 IPv4 addresses (16x/32 and 6x/48 in IPv6 front).
19:05:58 <elliott> gahh
19:06:05 <elliott> even all the F keys work
19:11:06 <elliott> Vorpal: this sucks :(
19:11:22 <Vorpal> elliott, Bah, young kids today! Complaining about missing 1-8! Now when I was young we had to go uphill both ways to access even the single key a!
19:11:38 <elliott> your MOM has the single key a
19:11:46 <oklopol> xD
19:11:56 <Vorpal> heh
19:12:02 <elliott> maybe i'll reset the SMC
19:12:17 <Vorpal> elliott, SMC?
19:12:18 <oklopol> i was being SARCASTIC by the way
19:12:22 <elliott> system management controller
19:12:34 <elliott> controls fans, lihts, power, cpu speed
19:12:35 <elliott> lights
19:12:48 <Vorpal> elliott, oh, on classical PPC macs you could "zap PRAM" by holding down some key combo at start
19:12:52 <Vorpal> fixing some weird issues
19:12:58 <elliott> i know :)
19:13:03 <Vorpal> elliott, is this something similar?
19:13:04 <elliott> but not so many issues as SOME people thought
19:13:10 <elliott> "I'm having troubles with my Mac" "ZAP THE PRAM"
19:13:18 <Vorpal> elliott, indeed, what the hell was the PRAM for?
19:13:21 <elliott> Vorpal: No, the equivalent nowadays is permissions[exclamation mark]
19:13:28 <elliott> "I'm having trou-" "Use Disk Utility to fix the permissions"
19:13:55 <Vorpal> elliott, I meant "is this something similar" in the "does it fill the same technical purpose"
19:14:08 <elliott> Resetting the System Management Controller (SMC)
19:14:08 <elliott> Resetting the SMC on Mac portables with a battery you can remove
19:14:09 <elliott> Resetting the SMC on portables with a battery you should not remove on your own
19:14:11 <elliott> best way to categorise ever
19:14:15 <elliott> (from apple.com)
19:14:25 <Vorpal> elliott, the latter I guess?
19:14:28 <elliott> Vorpal: I don't think so, I think open firmware nvram is the closest?
19:14:28 <elliott> and yes
19:14:37 <elliott> shift-control-option and power button
19:14:38 <Vorpal> elliott, what was the nvram for?
19:14:41 <elliott> and release all of them simultaneously
19:14:44 <elliott> ok
19:14:46 <elliott> Vorpal: things
19:14:47 <Vorpal> elliott, wait what?
19:14:51 <Vorpal> elliott, at the same time?
19:14:52 <Vorpal> how?
19:14:57 <Vorpal> elliott, come on, you are only human
19:14:59 <elliott> Vorpal: shut down computer, shift-control-option-powerkey
19:15:01 <elliott> it's a key
19:15:03 <elliott> then turn it on
19:15:09 <Vorpal> how fast does it sample the keyboard
19:15:09 <Sgeo> http://sprunge.us/BFNf
19:15:12 <elliott> who knows
19:15:17 <Vorpal> elliott, remember you have to release them IN THE SAME SAMPLE
19:15:19 <Vorpal> says apple
19:15:23 <elliott> yes yes yes
19:15:27 -!- elliott has quit (Remote host closed the connection).
19:15:30 <Vorpal> elliott, which is utterly silly
19:15:33 <Vorpal> gah
19:15:51 <oklopol> elliott: on a related note, you are rather unhateful nowadays, have you started smoking weed or something?
19:17:08 -!- elliott has joined.
19:17:11 <elliott> didn't work.
19:17:11 <elliott> fuck.
19:18:15 <Vorpal> elliott, so warranty it is. Copy the image of ubuntu then remove it?
19:18:21 <elliott> ugh
19:18:22 <elliott> to what
19:18:26 <elliott> it's a lot of gigs
19:18:34 <Vorpal> elliott, backup external hdd?
19:18:43 <elliott> I don't have one :)
19:18:47 <Vorpal> elliott, or just copy what you need from it, then do the install manually after?
19:18:54 <elliott> what I need is also several gigs
19:18:58 <elliott> (big torrents)
19:19:39 <Vorpal> elliott, come on a backup external hdd is just a few hundred SEK. Not sure what that is £. 10-20 £ maybe?
19:20:02 <elliott> I know.
19:20:10 <elliott> I'd just rather explore every other option first because installing Ubuntu on this was a BITCH.
19:20:27 <elliott> also, it would almost certainly take weeks, which is lame
19:21:38 -!- atrapado has joined.
19:22:21 <elliott> blehhh
19:22:22 <elliott> WHY ME
19:24:01 <elliott> oklopol fix my computer
19:25:30 <elliott> Gregor: If you don't fix my computer, Fythe will be unable to handle numbers from one to eight, inclusively.
19:27:42 <elliott> I NEED
19:27:42 <elliott> MY
19:27:43 <elliott> NUMBERS
19:28:47 <oklopol> elliott: i had another idea, have you considered using your keyboard *before* it stopped working?
19:28:59 -!- Slereah has quit (Ping timeout: 276 seconds).
19:29:17 <monqy> do you have any virtual keyboards
19:31:13 <elliott> on-screen?
19:31:16 <elliott> yes
19:31:19 <elliott> that's uh, kinda inconvenient
19:32:15 <elliott> can someone say an octothorpe
19:32:20 <elliott> i want to join a new channel but option+three won't work
19:33:58 <elliott> HELLO
19:34:02 <elliott> CAN I HAVE AN OCTOTHORPE
19:34:03 <elliott> TAHNKA
19:34:27 -!- Slereah has joined.
19:34:34 <elliott> CAN
19:34:35 <elliott> I HAVE
19:34:38 <elliott> AN OCTOTHORPE
19:34:39 <elliott> SLEREAH
19:36:40 <elliott> you are all terrible people
19:36:49 <elliott> i can't even type a bot trigger to ask a bot to do it for me
19:41:00 <Gregor> elliott: That's not much of a ransom demand since it's my repo :P
19:42:55 <elliott> Gregor: I will simply be unable to write code to handle one to eight
19:43:32 <Gregor> It already handles one to eight :P
19:43:41 <Gregor> And besides that, I too am a codar
19:45:09 <Gregor> http://9gag.com/gag/104879/ The best cat
19:45:32 <elliott> lol at "reddit" account
19:45:35 <elliott> step one, set up site
19:45:41 <elliott> step two, make site get all content from reddit
19:45:42 <elliott> PROFIT
19:47:27 <Gregor> http://i.imgur.com/Y1HPH.jpg The best cat
19:47:28 <Gregor> :P
19:48:40 <Vorpal> Gregor, finally a cat picture that *isn't* cute.
19:48:57 <Vorpal> because while it is awesome, you can't call it cute
20:05:29 <Vorpal> elliott, ugh, uplink is littered with inline asm
20:05:37 <elliott> Vorpal: Awesome
20:05:48 <Vorpal> elliott, where does x86_64 keep the frame pointer
20:05:53 <elliott> Erm
20:05:53 <Vorpal> I need to rewrite this bit
20:05:55 <elliott> Somewhere
20:05:56 <elliott> Ask Gregor
20:05:59 <Vorpal> elliott, *which register*
20:06:01 <Vorpal> okay
20:06:03 <elliott> rsp?
20:06:05 <elliott> rep?
20:06:06 <elliott> rbp?
20:06:08 <elliott> rxp?
20:06:09 <elliott> rpeepee?
20:06:12 <Vorpal> asm (
20:06:12 <Vorpal> "movl %%ebp, %0;"
20:06:12 <Vorpal> :"=r"(framePtr)
20:06:12 <Vorpal> );
20:06:16 <elliott> rbp presumably
20:06:17 <Vorpal> that is what I'm trying to translate
20:06:24 <Gregor> rbp
20:06:26 <Vorpal> right
20:06:28 <elliott> you want movq
20:06:29 <elliott> not movl
20:06:33 <elliott> and change it to a long
20:06:40 <elliott> (framePtr that is)
20:06:42 <Gregor> It's more common to vomit it on x86_64 than on x86 though.
20:06:42 <elliott> well
20:06:43 <Vorpal> elliott, it is a pointer
20:06:46 <elliott> if it's a pointer that's fine
20:06:49 <elliott> Gregor: "Vomit it"?
20:06:53 <elliott> Oh, omit it.
20:06:57 <elliott> -vomit-frame-pointer
20:07:12 <Vorpal> anyway I doubt this is critical, the code seems to be for generating a back trace
20:07:58 <Vorpal> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.5.2/../../../../include/c++/4.5.2/bits/fstream.tcc:837:5: error: ‘int std::basic_filebuf<_CharT, _Traits>::sync() [with _CharT = char, _Traits = std::char_traits<char>]’ is protected
20:07:59 <Vorpal> anyone?
20:08:33 <Vorpal> this is in "dos2unixbuf::sync", the name scares me
20:09:53 <Vorpal> /bin/sh: ./configure: /bin/sh^M: bad interpreter: No such file or directory
20:09:54 <Vorpal> FUN
20:10:14 <Vorpal> okay, so dos2unix
20:11:46 <elliott> i like how you need to use dos-to-unix to get some code called dostounix to work
20:11:59 <elliott> <Vorpal> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.5.2/../../../../include/c++/4.5.2/bits/fstream.tcc:837:5: error: ‘int std::basic_filebuf<_CharT, _Traits>::sync() [with _CharT = char, _Traits = std::char_traits<char>]’ is protected
20:12:05 <elliott> Vorpal: the code is initiating a bad template
20:12:09 <elliott> it will tell you where in the source file
20:12:10 <elliott> lower down
20:12:12 <elliott> or above
20:12:27 <oklopol> argh, the only toenail i want to bite is just out of reach
20:12:36 <elliott> noted
20:12:51 <oklopol> i can reach it's corner but not the part that's really screwy
20:13:22 <oklopol> maybe i should try that yoga thing
20:13:36 <oklopol> okay succeeded
20:16:51 <elliott> `addquote all that
20:17:13 -!- news-ham has joined.
20:17:15 <elliott> welcome back, News Ham
20:17:18 <oklopol> well i have no idea where the nearest scissors are
20:17:19 <elliott> news-ham
20:17:21 <news-ham> Croat generals jailed for crimes: Two Croatian military leaders are jailed for war crimes committed in the 1990s, provoking anger in Zagreb where many regard them as war heroes. http://www.bbc.co.uk/go/rss/int/news/-/news/world-europe-13092438
20:17:29 <elliott> "Croat"
20:17:31 <elliott> best adjective
20:18:48 <elliott> oerjan: cheney on the mta is not just implemented in scheme
20:18:58 <elliott> the "standard" version uses setjmp/longjmp, mind you
20:19:20 <elliott> 00:43:12: * oerjan imagines that like a game where the bishops are invisible, unless they capture something you only get to know _that_ they move, and you can only capture one if you can deduce that it _has_ to be in a particular spot
20:19:20 <elliott> 00:45:49: <oerjan> well unless the owner player decides it _is_ in a spot, to prevent you from capturing/going somewhere else
20:19:20 <elliott> 00:46:37: <oerjan> but if the owning player cannot give at least one consistent route for where the bishops have been, he loses.
20:19:20 <elliott> 00:46:59: <oerjan> the last could get particularly tricky when you consider the interaction with the _other_ player's bishops...
20:19:23 <elliott> sounds like a computer could help :)
20:20:26 <oklopol> that might actually be a lot of fun, done right
20:20:31 <elliott> yeah
20:20:34 <elliott> now apply it to _all_ pieces
20:20:36 <elliott> except like
20:20:40 <elliott> one pawn and the king
20:20:42 <elliott> to get things going
20:20:43 <oklopol> then it would probably suck
20:20:50 <elliott> ok yeah :D
20:21:03 <elliott> i don't like how the owner can decide it's somewhere, though
20:21:07 <elliott> it should always be up to the rules
20:21:10 <oklopol> but a really simplistic game based on having visible and invisible pieces that use the same simple moving rules
20:21:34 <oklopol> and the invisible ones can only be killed by forcing them on some square and attacking it
20:21:38 <elliott> "This essay is yet another attempt to reconcile the power of the Lisp programming language with the inability of the Lisp community to reproduce their pre-AI Winter achievements."
20:21:40 <elliott> ...
20:21:53 <elliott> so basically, "You guys discovered AI isn't as easy as it looks: YOUR FAULT"
20:22:23 <elliott> "Now make this thought experiment interesting: Imagine adding object orientation to the C and Scheme programming languages. Making Scheme object-oriented is a sophomore homework assignment. On the other hand, adding object orientation to C requires the programming chops of Bjarne Stroustrup."
20:22:25 <elliott> no it doesn't?
20:22:29 <elliott> you can implement objects in a small file of C
20:22:32 <elliott> then it's just syntactic sugar
20:23:01 <elliott> this article is just a rambling form of the old boring argument "MACROS = YOU ALL USE YOUR OWN INDIVIDUAL DIALECT OF LISP AND IT IS IMPOSSIBLE TO COLLABORATE LOL"
20:23:27 <elliott> "In a world where teams of talented academics were needed to write Haskell, one man, Dr. Tarver wrote Qi all by his lonesome."
20:23:29 <oklopol> i gather you're reading something now
20:23:38 <elliott> if he means implementation he's obviously wrong, jhc was written mostly by one person to start with
20:23:43 <elliott> oklopol: 01:12:44: <Sgeo> http://www.winestockwebdesign.com/Essays/Lisp_Curse.html
20:24:13 <oklopol> i assume you wrote that because how else could the author know the exact opposites of your opinions
20:24:42 <elliott> :D
20:24:45 <elliott> i don't disagree with all of it
20:24:49 <elliott> i just think it's a stupid article
20:24:50 <elliott> which it is
20:25:01 <elliott> "Answer: The Lisp Curse kicks in. Every second or third serious Lisp hacker will roll his own implementation of lazy evaluation, functional purity, arrows, pattern matching, type inferencing, and the rest."
20:25:05 <elliott> arrows - a language feature
20:25:39 <elliott> "The Lisp Curse does not contradict the maxim of Stanislav Datskovskiy"
20:25:42 <elliott> so that's where he learned verbosity
20:26:27 <elliott> so um
20:26:35 <elliott> this webdesign company specialises in making websites as ugly as this essay apparently?
20:26:56 <Gregor> elliott: Even uglier!
20:27:03 <elliott> http://www.winestockwebdesign.com/
20:27:07 <elliott> FUCK YEAH WEB DESIGN
20:27:15 <elliott> "face-to-face" WHY DOES THAT MATTER
20:27:28 <elliott> cool, the about page is like an older version of the home page
20:29:22 <elliott> 05:46:17: <copumpkin> pikhq: I could've sworn you'd linked to a set of heisig stories at some point
20:29:23 <elliott> 05:46:23: <copumpkin> maybe I'm just confused
20:29:23 <elliott> 05:46:25: <pikhq> I don't recall one.
20:29:26 <elliott> he did.
20:29:39 <Gregor> elliott: lol, it is X-D
20:30:00 <Gregor> * Portfolio: Coming soon!
20:30:02 <Gregor> I doubt it :P
20:30:08 <elliott> i like how the spacing on the menu changes when you change page
20:30:10 <elliott> very artistic
20:30:24 <elliott> wow, this is the first website i've seen that codu.org is better-designed than
20:30:31 <elliott> [asterisk][exclamation mark]
20:30:42 <elliott> maybe i'll just use unicode codepoint names in brackets
20:31:00 <elliott> 05:59:58: <pikhq> In completely unrelated news, I have finally found a replacement for Make that I like.
20:31:00 <elliott> 06:00:49: <pikhq> Called "redo". A third-party implementation of a djb idea.
20:31:05 <elliott> erm i believe i linked that ages ago ;D
20:31:08 <elliott> anyway, it's not that nice imo
20:31:20 <elliott> tup is better: http://gittup.org/tup/
20:31:33 <elliott> "See the difference? The arrows go up. This makes it very fast."
20:31:49 <elliott> (Explanation: "In a typical build system, the dependency arrows go down. Although this is the way they would naturally go due to gravity, it is unfortunately also where the enemy's gate is. This makes it very inefficient and unfriendly. In tup, the arrows go up. This is obviously true because it rhymes.")
20:32:03 <Gregor> ... huh.
20:32:07 <elliott> What :P
20:32:16 <Gregor> Does that have any meaning at all? :P
20:32:20 <elliott> Yes :P
20:32:23 <elliott> It clarifies on the page.
20:32:33 <Gregor> I refuse to read it.
20:32:48 <elliott> Read this oh-so-professional paper instead: http://gittup.org/tup/build_system_rules_and_algorithms.pdf
20:32:49 <Gregor> I can only assume that it refers to the order in which dependencies are listed in files (leaf to root or root to leaf)
20:32:55 <elliott> Nope :P
20:32:57 <elliott> It's about the DAG.
20:33:14 <elliott> tup's way of handling dependencies -> faster builds, in fact optimal in some cases.
20:33:20 <Gregor> Oh kaaaaaaaay ... but the direction you choose to make the arrows appear in the DAG makes roughly no difference whatsoever ...
20:33:29 <elliott> Gregor: Read the fucking paper X-D
20:33:37 <elliott> Gregor: The orientation is the same, but the arrows are reversed.
20:33:38 <elliott> So instead of
20:33:49 <elliott> hello_world from foo.o (from foo.c, foo.h) and bar.o (from foo.h, bar.c), it's
20:34:04 <Gregor> Anyway, I still refuse to read 'cuz I'm awesome like that, so *AWAAAAAAAAAAAAAAAY* :P
20:34:11 <elliott> foo.c to foo.o to hello world, foo.h to (foo.o to hello_world) and (bar.o to hello world), bar.c to bar.o to hello_world
20:34:15 <elliott> Which is faster
20:34:20 <elliott> [exclamation mark]
20:34:50 <elliott> Anyway, it has better time complexity, is optimal in some cases unlike make, and is faster in practice :P
20:35:42 <oklopol> i read the lisp thing all by myself
20:36:06 <elliott> 06:11:08: <pikhq> Yeah, I'm not saying you did.
20:36:07 <elliott> 06:11:12: <pikhq> I'm just saying: :D
20:36:07 <elliott> 06:11:32: <pikhq> Oh, yeah, and there's a subset of its functionality written in 150 lines of shell script.
20:36:07 <elliott> 06:11:43: <pikhq> Not even very dense lines of shell script.
20:36:07 <elliott> that is not really relevant to whether it is a good build system or not, only to whether it is simple
20:36:11 <elliott> In fact, it's pretty dishonest
20:36:16 <elliott> redo is based on shell-script-type things
20:36:28 <elliott> all that thing does is essentially recursive sh :)
20:36:37 <Sgeo> elliott, are you aware of how many protected symbols there are in Picolisp?
20:36:48 <elliott> tup is probably a simpler model but harder to implement so shortly because sh/all languages suck :)
20:36:53 <elliott> or rather, are not as tuned to the problem
20:37:23 <elliott> 06:42:47: <quintopia> i wonder if our minecrafters are gonna get sucked into this one soon also: http://www.rockpapershotgun.com/2011/01/21/love-grows-stronger-deeper-cheaper/
20:37:23 <elliott> don't like the blurriness
20:37:24 <elliott> but maybe fun
20:37:45 <Sgeo> (mapc zap (diff (all) '(meth NIL *Pid *Msg *Solo *Led *PPid This *Hup @@@ bye *OS *DB *Zap *Ext quote *Sig2 *Sig1 *Err *Dbg @@ *Bye *Uni *Tsm *Adr *Fork ^ T @ *Run *Class *Scl)))
20:37:56 <elliott> that's not much
20:37:56 <Sgeo> bye isn't protected
20:38:17 <Sgeo> I just wanted to be able to exit, and forgot about the ability to segfault at will
20:38:26 <elliott> xD wat
20:38:29 <Sgeo> It felt like much when I was determinign that list one bit at a time
20:38:37 <elliott> what's the diff between mapc and mapcar
20:38:42 <elliott> Sgeo: you could have automated it...
20:38:43 <Sgeo> Not sure
20:38:46 <Sgeo> elliott, how?
20:38:48 <elliott> with (all)
20:38:49 <elliott> duh
20:38:50 <Sgeo> catch doesn't catch the error
20:38:58 <elliott> look at property list?
20:39:09 <elliott> everything is stored in there
20:39:11 <elliott> so...
20:39:36 <Sgeo> I don't get your point
20:40:04 <elliott> so whether a symbol is protected or not
20:40:07 <elliott> should reflect in its property list
20:40:11 <elliott> because picolisp stores all data in cells
20:40:16 <Sgeo> That information doesn't seem to be in its property list
20:40:27 <elliott> well, it's SOMEWHERE :)
20:40:34 <Sgeo> In the C code, I'd guess
20:40:35 <elliott> look at the C impl?
20:40:42 <elliott> aren't you on sixty-four bit?
20:40:48 <Sgeo> No
20:40:51 <elliott> weird
20:40:56 <Sgeo> Too lazy
20:41:08 <elliott> 06:54:56: <pikhq> 3 lines for automatically calculating the dependencies for a C file... :)
20:41:14 <elliott> let's be fair, it takes about that many lines in make, too
20:41:26 <elliott> IIRC tup works it out automatically
20:41:42 <elliott> I may be wrong, though
20:41:49 <elliott> Sgeo: you said you spent ages of time trying exhaustively
20:41:57 <elliott> anyway it could easily be implemented
20:42:04 <elliott> try to modify all symbols and then put the value back
20:42:10 <elliott> error --> that's your next protected symbol
20:42:13 <elliott> and store it manually in a list
20:42:16 <elliott> to remove from the list of all symbols
20:42:17 <elliott> then repeat
20:42:22 <elliott> final list is protected symbols
20:42:34 <Sgeo> "store it manually"
20:42:35 <Vorpal> elliott, oh my, where can I find freetype 1?
20:42:36 <elliott> in fact, you could do it easily with a shell script invoking picolisp too
20:42:44 <elliott> Vorpal: debian archives?
20:42:46 <Vorpal> elliott, ah
20:42:52 <elliott> Sgeo: (push "Protected" 'name)
20:42:58 <elliott> have a function for it, p
20:42:59 <elliott> (p 'name)
20:46:27 <Vorpal> oh wait, it is included with this cd
20:46:29 <Vorpal> how nice
20:46:42 <Vorpal> elliott, btw I found one cause of weirdness was missing "using namespace std;"
20:46:54 <elliott> Vorpal: ah, here is a better explanation of paperclipping: http://www.singinst.org/blog/2007/06/11/the-stamp-collecting-device/
20:46:55 <Vorpal> ftdump.c:172:1: error: pasting "." and "glyph_object" does not give a valid preprocessing token <--- ... ... great ...
20:47:04 <elliott> just remove the hash-hash
20:47:05 <elliott> to fix
20:47:28 <elliott> well, actually a good (very shallow) summary of the risks of AI in general
20:47:41 <Vorpal> FOOTPRINT( first_instance );
20:47:41 <Vorpal> hm
20:47:48 <Vorpal> #define FOOTPRINT( field ) Save_Memory( &memory_footprint.##field )
20:47:50 <Vorpal> ah indeed
20:50:10 -!- augur has quit (Remote host closed the connection).
20:51:35 -!- augur has joined.
20:52:34 -!- augur has quit (Remote host closed the connection).
20:54:56 <Vorpal> elliott, btw, autoconf works perfectly once you copy in a new config.guess that knows about x86_64
20:55:02 <elliott> heh
20:55:28 <Vorpal> elliott, say what you want about autoconf, it is very sturdy
20:55:45 <elliott> Vorpal: You should send Introversion a diff and info about the config.guess update, maybe they'd make an "official" release of it.
20:55:59 <elliott> I guess you'd need to assign copyright though...
20:56:07 <Vorpal> elliott, well, the *developer cd* I, um, ...
20:56:14 <elliott> Vorpal: THEY KNOW NOTHING
20:56:17 <elliott> Send it anonymously
20:56:18 <elliott> :D
20:56:29 <elliott> Signed,
20:56:30 <elliott> DEEP BIT
20:56:30 <Vorpal> elliott, well the diff is huge so far. I do keep it all under hg.
20:56:48 <Vorpal> elliott, I guess it would be risk free if I jump between enough systems on the way!
20:56:58 <elliott> THEY'LL NEVER TRACK YOU DOWN IN TIME
20:57:02 <Vorpal> FTEngine.C:22:22: fatal error: freetype.h: No such file or directory <-- wait what, it is there
20:57:20 <Vorpal> elliott, you mean, before my death?
20:57:21 <elliott> Try -isystem.
20:57:25 <elliott> It's probably doing <freetype.h>
20:58:08 <Vorpal> elliott, uh what, I do have -I there. I passed "free type is in here" thingy to configure
20:58:19 <Vorpal> elliott, the issue was #include "freetype.h"
20:58:22 <Vorpal> PLUS
20:58:28 <Vorpal> it is in freetype/freetype.h
20:58:32 <elliott> Ah.
20:58:35 <elliott> And I said -isystem.
20:58:38 <elliott> -I doesn't let you load <x>.
20:58:39 <elliott> Just "x".
20:58:43 <elliott> -isystem lets you do both.
20:59:02 <elliott> (I think?)
20:59:07 <elliott> I know -isystem turns off warnings in headers included from there.
20:59:08 <Vorpal> elliott, that would mean rerunning autoconf I think... *That* would be more problematic
20:59:14 <elliott> I think.
20:59:21 <elliott> Vorpal: Or just modifying the Makefile or invoking make with CFLAGS.
20:59:44 <Vorpal> elliott, right. There is a meta-makefile invoking configure and make
20:59:49 <elliott> Ouch.
20:59:51 <Vorpal> elliott, for various third party libraryes
20:59:53 <Vorpal> libraries*
21:00:50 <elliott> "I think we just have to swallow the bitter pill that Nick is feeding us here: it’s far easier to build a GAI that destroys the entire planet than a GAI that does anything else, and this holds true even if you weren’t trying to code the GAI to destroy the planet."
21:00:52 <elliott> omg
21:00:59 <elliott> this means that the universe PREFERS AIs which destroy the world
21:01:01 <elliott> GOD HATES THE WORLD
21:01:11 <Vorpal> FTGlyphVectorizer.h:79:5: error: a class-key must be used when declaring a friend
21:01:11 <Vorpal> FTGlyphVectorizer.h:79:5: error: friend declaration does not name a class or function
21:01:12 <Vorpal> the fuck?
21:01:22 <Vorpal> I have zero idea what that is
21:02:04 <Vorpal> elliott, ANY IDEA?
21:02:13 <elliott> Vorpal: Uh. Show me the line.
21:02:31 <Vorpal> friend FTGlyphVectorizer;
21:02:36 <elliott> Show me the file.
21:02:39 <Vorpal> sec
21:02:45 <elliott> VORPAL VIOLATES YET MORE LAWA
21:02:46 <Deewiant> friend class FTGlyphVectorizer;
21:02:47 <elliott> LAWS
21:02:50 <Vorpal> elliott, it is causing errors in the .C file that corresponds to this .h
21:02:54 <elliott> Do what Deewiant said :P
21:02:57 <elliott> I wonder what that's for?
21:03:06 <elliott> friend typename? friend union?
21:03:10 <Vorpal> Deewiant, ah
21:03:11 <elliott> oh
21:03:12 <elliott> for functions?
21:03:18 <elliott> I guess older C++ lacked function friends or something.
21:03:36 <Vorpal> GLTTGlyphPolygonizer.C:188:58: error: invalid conversion from 'void (*)(...)' to 'void (*)()'
21:03:36 <Vorpal> GLTTGlyphPolygonizer.C:188:58: error: initializing argument 3 of 'void gluTessCallback(GLUtesselator*, GLenum, void (*)())'
21:03:37 <Vorpal> great
21:03:44 <Vorpal> at least that one I think I could tackle
21:04:03 <Vorpal> MAYBE
21:04:46 <elliott> Vorpal: The first just needs a cast :P
21:04:52 <Vorpal> elliott, there is a cast!
21:04:56 <elliott> Err, there's only one error.
21:04:58 <elliott> Vorpal: What kind?
21:05:05 <elliott> Try reinterpret, aka THE NUCLEAR CAST.
21:05:09 <Vorpal> #if defined(WIN32) && !defined(__CYGWIN32__)
21:05:09 <Vorpal> typedef void (CALLBACK *glu_callback)(CALLBACKARG);
21:05:09 <Vorpal> #else
21:05:09 <Vorpal> typedef void CALLBACK (*glu_callback)(CALLBACKARG);
21:05:09 <Vorpal> #endif
21:05:10 <Vorpal> gluTessCallback( tobj, GLenum(GLU_BEGIN),
21:05:11 <Vorpal> (glu_callback) gltt_polygonizer_begin );
21:05:23 <elliott> reinterpret_cast<glu_callback>(gltt_...)
21:05:24 <Vorpal> typedef inside a function yay
21:05:32 <Vorpal> (I wasn't even aware that was possible)
21:06:02 <Vorpal> elliott, no luck.
21:06:11 <Vorpal> elliott, I think gluTessCallback might have changed prototype
21:06:12 <elliott> Same error?
21:06:14 <Vorpal> that would explain it
21:06:22 <Vorpal> elliott, same error yes
21:06:34 <elliott> Vorpal: Remove CALLBACKARG or replace it with ... :P
21:06:40 <elliott> Or figure out where it's defined and fix that.
21:07:02 <Vorpal> /usr/include/GL/glu.h:typedef void (GLAPIENTRYP _GLUfuncptr)();
21:07:07 <Vorpal> GLAPIENTRYP
21:07:08 <Vorpal> nice word
21:07:11 <elliott> Vorpal: The reason you can't convert (void (asterisk)(...)) to (void (asterisk)()) is because varargs functions can have as fucked up a call mechanism as they want.
21:07:16 <elliott> (Convert safely, that is.)
21:07:28 <elliott> Vorpal: Just make sure CALLBACKARG is empty, then.
21:07:36 <Vorpal> #if defined(__GNUC__) || defined(_GNUG_)
21:07:36 <Vorpal> #define CALLBACKARG ...
21:07:36 <Vorpal> #else
21:07:36 <Vorpal> #define CALLBACKARG void
21:07:36 <Vorpal> #endif
21:07:37 <Vorpal> hah
21:07:40 <elliott> Right.
21:07:42 <elliott> Make it empty (not void).
21:07:54 <Vorpal> hm... // IMHO, the (...) vs. (void) warning is due to GNU-C/C++.
21:08:06 <Vorpal> elliott, this file is .C
21:08:09 <Vorpal> elliott, empty means void
21:08:12 <elliott> Vorpal: Oh, right.
21:08:15 <elliott> Even in a function pointer?
21:08:19 <Vorpal> elliott, afaik yes
21:08:25 <elliott> Just make it define it as void then?
21:08:26 <Vorpal> could be wrong, I'm not a C++ expert
21:08:28 <elliott> That's what the function _wants_, isn't it?
21:08:29 <elliott> Bleh.
21:08:35 <elliott> Yeah, make it void.
21:08:37 <elliott> It should work. Maybe.
21:08:39 <elliott> But maybe not.
21:08:40 <Vorpal> elliott, the issue is that these functions seem to have meaningful parameters...
21:08:46 <elliott> Yeah, but it'll work :P
21:08:50 <Vorpal> static void CALLBACK gltt_polygonizer_begin( GLenum type )
21:08:50 <Vorpal> {
21:08:50 <Vorpal> if( handler != 0 )
21:08:50 <Vorpal> handler->begin(int(type));
21:08:50 <Vorpal> }
21:08:53 <elliott> Vorpal: Ooh wait, you could cast gluTessCallback itself.
21:09:01 <elliott> To take the right kind of argument.
21:09:03 <Vorpal> elliott, if it is void how could this function possibly work?
21:09:06 <elliott> Then call that casted function pointer.
21:09:10 <elliott> Vorpal: Because invalid C programs work.
21:09:20 <elliott> Calling conventions are generally uniform on xeightsix-sixtyfour/Linux.
21:09:22 <Vorpal> elliott, uh, it is called with another function pointer to one that takes void*
21:09:26 <elliott> Calling conventions are generally uniform on xeightsix-sixtyfour/Linux.
21:09:40 <Vorpal> elliott, that was a reply to "<elliott> Vorpal: Ooh wait, you could cast gluTessCallback itself."
21:09:44 <elliott> Yes.
21:09:52 <elliott> Cast it to take the kind of type Uplink thinks it takes/wants to giv eit.
21:10:02 <elliott> asterisk give it
21:10:09 <Vorpal> elliott, doing the void define worked
21:10:13 <Vorpal> now onto the next error
21:10:27 <Vorpal> GLTTGlyphPolygonizerHandler.h:41:3: error: 'GLTTGlyphPolygonizer' does not name a type
21:10:28 <Vorpal> GLTTGlyphPolygonizerHandler.C: In constructor 'GLTTGlyphPolygonizerHandler::GLTTGlyphPolygonizerHandler(int)':
21:10:31 <Vorpal> hrrm
21:10:34 <elliott> Just remove the if from the define,t hen
21:10:37 <elliott> asterisk , then
21:10:39 <Vorpal> GLTTGlyphPolygonizerHandler.C:42:3: error: 'polygonizer' was not declared in this scope
21:10:41 <elliott> Make it define it as void unconditionally.
21:10:46 <Vorpal> elliott, I did that...
21:10:49 <Vorpal> elliott, in the cast
21:10:50 <elliott> Vorpal: First one: Put class in front.
21:10:55 <elliott> Second one: Probably solved by that.
21:11:16 <elliott> Vorpal: I would do it outside the cast.
21:11:20 <Vorpal> elliott, wait what, not class there
21:11:23 <elliott> Define CALLBACKARG as void unconditionally in that code you pasted.
21:11:23 <Vorpal> it is
21:11:25 <elliott> Vorpal: Show the line
21:11:26 <Vorpal> private:
21:11:27 <Vorpal> GLTTGlyphPolygonizer* polygonizer; // set by GLTTGlyphPolygonizer
21:11:33 <elliott> Where is GLTTGlyphPolygonizer defined
21:11:50 <Vorpal> looking...
21:12:20 <Vorpal> elliott, in a file that wasn't included
21:12:26 <elliott> Problem solved.
21:12:32 <Vorpal> now I'm scared how that could possibly have worked back then!
21:12:32 <elliott> How did this ever use to compile..
21:12:36 <elliott> [asterisk]...
21:12:40 <Vorpal> elliott, hah, great minds think alike
21:13:13 <Vorpal> oooh this is a good one...
21:13:15 <elliott> Would anyone like to give me a shiny laptop to use while this one is being repaired? :P
21:13:17 <Vorpal> #ifndef __FTGlyphVectorizer_h
21:13:18 <Vorpal> #include "FTGlyphVectorizer.h"
21:13:18 <Vorpal> #endif
21:13:27 <Vorpal> include guard.... around the include!
21:13:32 <elliott> Vorpal[exclamation mark] I bet you're not using your ThinkPad[exclamation mark]
21:13:39 <elliott> Also, that's a saner way to do include guards, just not in C :P
21:13:40 <Vorpal> sure I am
21:13:47 <elliott> Avoids a file access/read/lex/etc.
21:14:08 <Vorpal> but the define it checks is defined in the included file
21:14:15 <Vorpal> elliott, how does that spreading out make any sense
21:14:42 <Vorpal> elliott, besides the include guard is also in the included file
21:14:43 <elliott> Vorpal: because include guards are used when you include the same file multiple times in the space of one compilation
21:14:55 <elliott> Doing it around the include avoids looking at the include file itself when it has already been included
21:14:59 -!- sebbu has quit (Read error: Connection reset by peer).
21:15:00 <elliott> which is generally expensive (disk access, etc.)
21:15:10 <elliott> "The first draft of the R7RS small language standard is now
21:15:10 <elliott> available at:
21:15:10 <elliott> http://trac.sacrideo.us/wg/attachment/wiki/WikiStart/r7rs-draft-1.pdf
21:15:10 <elliott> This is a relatively small revision to the R5RS
21:15:13 <elliott> [...]
21:15:14 <Vorpal> elliott, disk cache
21:15:14 <elliott> Most importantly, we have added modules"
21:15:14 <elliott> fail
21:15:22 <elliott> Vorpal: Ha
21:15:26 <elliott> Vorpal: Still a roundtrip.
21:15:32 <elliott> Vorpal: And more important is lexical analysis/preprocessing.
21:15:46 -!- sebbu has joined.
21:15:46 -!- sebbu has quit (Changing host).
21:15:46 -!- sebbu has joined.
21:15:46 <elliott> Doing it around has no disadvantages other than being ugly, which is why I said it is not better in C.
21:16:06 <elliott> lo, it has modules and exceptions and records
21:16:08 <Vorpal> elliott, I wonder if I should skip building the bundled libmikmod, it errors out with thousands of errors on one file... And hope that the system one will be compatible
21:16:25 <elliott> [asterisk]lol,
21:16:39 <elliott> * The set of characters used is required to be consistent with
21:16:39 <elliott> the latest Unicode standard only in so far as the
21:16:39 <elliott> implementation supports Unicode.
21:16:51 <elliott> so when Unicode eight comes out, all implementations will become spec-incompliant[exclamation mark]
21:17:03 <Vorpal> elliott, what a silly name: libtcp4u
21:17:07 <Vorpal> s/ / 7
21:17:08 <Vorpal> gah
21:17:12 <Vorpal> s/7/\//
21:17:13 <elliott> can someone link me to r five rs, kinda hard to google
21:17:16 <elliott> if you can't type five
21:17:28 <elliott> also, what
21:17:32 <elliott> oh
21:17:33 <elliott> right
21:17:40 <elliott> unicode seven
21:17:43 <Vorpal> elliott, here is a 1234567890 bar for you
21:17:52 <elliott> you are the first person to do that for me
21:17:58 <elliott> i can never express how grateful i am
21:18:02 <elliott> ...can i have an octothorpe too?
21:18:14 <Vorpal> a what?
21:18:24 <monqy> it's in the topic
21:18:27 <monqy> can you copy from the topic
21:18:34 * Vorpal looks up there
21:18:39 <elliott> optional procedure: (transcript-on filename)
21:18:39 <elliott> optional procedure: (transcript-off)
21:18:40 <elliott> Filename must be a string naming an output file to be created. The effect of transcript-on is to open the named file for output, and to cause a transcript of subsequent interaction between the user and the Scheme system to be written to the file. The transcript is ended by a call to transcript-off, which closes the transcript file. Only one transcript may be in progress at any time, though some impleme
21:18:40 <elliott> ntations may relax this restriction. The values returned by these procedures are unspecified.
21:18:44 <elliott> lol, can't believe rFIVErs has that
21:18:46 <Vorpal> monqy, what is the symbol?
21:18:51 <elliott> octothorpe
21:18:59 <monqy> octothorpe
21:18:59 <Vorpal> elliott, oh a hash
21:19:00 <Vorpal> #
21:19:05 <elliott> THANK YOU :D
21:19:09 * elliott so happy
21:19:11 <Vorpal> elliott, call a hash a hash
21:19:15 <monqy> octothorpe
21:19:17 <elliott> it's called an octothorpe
21:19:31 <Vorpal> elliott, here is the shifted row on my keyboard: !"#¤%&/()=
21:19:39 <Vorpal> elliott, it probably doesn't correspond to your
21:20:05 <Vorpal> elliott, but anyway why the fuck would you call it that
21:20:23 <monqy> presumably because that's what it's called
21:20:27 <Vorpal> Number sign
21:20:27 <Vorpal> (Redirected from Octothorpe)
21:20:29 * elliott reverts an edit of a past discussion on esowiki...
21:20:32 <Vorpal> just saying
21:20:51 <Vorpal> monqy, actually it has many names
21:20:55 <elliott> octothorpe is the least ambiguous name.
21:20:59 <elliott> for instance
21:21:01 <elliott> in the US it's the pound sign
21:21:17 <Vorpal> elliott, in Sweden it is often called "brädgård"
21:21:32 <Vorpal> meaning lumberyard
21:21:37 <Vorpal> probably from how it looks
21:21:44 <monqy> like a lumberyard?
21:21:45 <Vorpal> (liked piled up planks)
21:21:48 <elliott> hash. hex. pound. sharp. space. square
21:21:56 <elliott> octothorpe is the only completely unambiguous name. also it sounds nice.
21:21:58 <Vorpal> monqy, a pile of planks
21:22:03 <Vorpal> monqy, seen from the top
21:22:13 <monqy> what's the swedish word for a pile of planks as seen from the top
21:22:18 <elliott> a shebang is an octothorpe and a bang[exclamation m[caret]W[caret]Wbang]
21:22:27 <elliott> it's like i'm in the sixties[exclamation mark]
21:22:40 <Vorpal> monqy, uh? I don't know any. I'm just saying that is what it is thought to resemble. Meaning it got the name lumberyard
21:27:20 <elliott> I WANT MY NUMBERS BACK
21:27:25 <Vorpal> elliott, you know what... this uplink uses both freetype 1 and 2. At the same time.
21:27:30 <elliott> NUMBERS
21:27:33 <elliott> I WANT MY NUMBERS BACK
21:27:44 <Vorpal> elliott, complain to apple
21:28:23 <elliott> I
21:28:24 <elliott> WANT
21:28:24 <elliott> MY
21:28:26 <elliott> NUMBERRRRS
21:28:26 <elliott> NOOOOW
21:28:29 <elliott> CAN'T COOOODE
21:29:35 <Vorpal> elliott, oh no, you will become a PH
21:29:49 <elliott> but i had the best ideaaaaa
21:29:57 <elliott> I WILL RECLUSIFY INTO CAVE FOREVER ->
21:32:16 -!- Phantom_Hoover has joined.
21:32:22 -!- wareya has quit (Read error: Connection reset by peer).
21:32:40 <Vorpal> app/dos2unix.cpp: In member function ‘virtual int dos2unixbuf::pbackfail(int)’:
21:32:40 <Vorpal> app/dos2unix.cpp:67:20: error: ‘base’ was not declared in this scope
21:33:03 <Vorpal> elliott, issue, it is inheriting from streambuf in libstdc++
21:33:06 -!- wareya has joined.
21:33:07 <Vorpal> as far as I can tell
21:33:13 <Vorpal> elliott, help!
21:33:16 <elliott> uh
21:33:19 <elliott> show me the function
21:33:21 <elliott> or
21:33:22 <elliott> the header
21:33:23 <elliott> or anything
21:33:26 <elliott> or the line
21:33:33 <Vorpal> elliott, http://sprunge.us/EdcX
21:33:40 <Vorpal> elliott, basically there is no base() here
21:33:57 <elliott> http://www.cplusplus.com/reference/iostream/streambuf/pbackfail/
21:34:02 <elliott> http://msdn.microsoft.com/en-us/library/aa277867(v=vs.60).aspx
21:34:09 <elliott> http://www.qnx.com/developers/docs/6.5.0/index.jsp?topic=/com.qnx.doc.dinkum_en_ecpp/streambu.html
21:34:13 <elliott> http://www.opensource.apple.com/source/gcc/gcc-937.2/libio/streambuf.cc
21:34:17 <elliott> Vorpal: Does glibc not have it?
21:34:18 <Vorpal> elliott, maybe you need to add c?
21:34:23 <Vorpal> elliott, for the parameter
21:34:29 <elliott> Yes, add the parameter.
21:34:38 <elliott> Failing that, glibc is Trying To Be Different again :)
21:34:43 <Vorpal> nope, no luck
21:35:00 <Vorpal> elliott, also you mean libstc++
21:35:02 <Vorpal> not glibc
21:35:09 <Vorpal> stdc*
21:35:30 <elliott> Oh, it's part of gcc, isn't it?
21:35:33 <elliott> Or... is it part of glib?
21:35:34 <elliott> I forget.
21:35:35 <elliott> glibc
21:35:38 <elliott> [asterisk][asterisk]
21:35:40 <Vorpal> elliott, gcc I think
21:35:44 <elliott> Right. Pretty weird.
21:35:51 <elliott> libc used to be bundled with gcc, so I guess it's heritage.
21:36:10 <Vorpal> elliott, wait, do you need to add some virtual somewhere maybe
21:36:12 <Vorpal> hrrm
21:36:25 <elliott> Vorpal: OK, wait.
21:36:28 <elliott> Since when is base anything?
21:36:29 <elliott> Base is nothing.
21:36:31 <elliott> I have never heard of base.
21:36:33 <elliott> Base does not exist.
21:36:35 <elliott> Where is base declared?
21:36:42 <Vorpal> uh indeed hm
21:36:46 <Vorpal> elliott, other languages has it
21:36:49 <Vorpal> but not C++ I guess
21:36:51 <Vorpal> wtf
21:36:51 <elliott> No they don't, they have super.
21:36:56 <Vorpal> elliott, C# has base()
21:37:00 <elliott> This is not Chash.
21:37:02 <elliott> Sorry.
21:37:05 <elliott> Coctothorpe.
21:37:07 <Vorpal> elliott, I said *other languages*
21:37:10 <Vorpal> some other ones
21:37:21 <elliott> Well I've never heard of base. I don't know what is going onthere.
21:37:21 <elliott> Wait.
21:37:22 <Vorpal> elliott, the name is actually "C sharp"
21:37:23 <elliott> gptr() > base()
21:37:30 <elliott> base() is the base of the pointer that gptr returns the current value of.
21:37:35 <elliott> That is the only way that makes sense.
21:37:48 <elliott> Yep.
21:37:51 <elliott> streambuf has base, it looks like.
21:37:57 <Vorpal> char_type * gptr () const
21:37:57 <Vorpal> char_type * egptr () const
21:38:01 <elliott> Vorpal: Have you tried this->base() or something?
21:38:02 <Vorpal> from man std::streambuf
21:38:05 <Vorpal> hm
21:38:13 <Vorpal> elliott, there is char_type * pbase () const
21:38:16 <elliott> Vorpal: Have you tried this->base() or something?
21:38:20 <elliott> base is in streambuf, says google.
21:38:22 <Vorpal> elliott, I guess I'll do it.
21:38:29 <elliott> Or, well, at least in Microsoft. :P
21:38:43 <Vorpal> elliott, what does it do?
21:38:50 <elliott> Returns the base to the pointer or something.
21:38:56 <Vorpal> app/dos2unix.cpp:67:21: error: ‘class dos2unixbuf’ has no member named ‘base’
21:39:06 <Vorpal> elliott, there is pbase, is it the same thing
21:39:08 <elliott> Vorpal: Try using the stdstream function on it.
21:39:11 <elliott> Streambuf function I mean.
21:39:13 <elliott> Vorpal: I DON'T KNOW C++
21:39:15 <elliott> Well, I do.
21:39:17 <elliott> But not the library.
21:39:22 <elliott> OK, so... lemme think
21:39:42 <elliott> Vorpal: Just do
21:39:45 <Vorpal> elliott, got a link to that ms page?
21:39:46 <elliott> stremabuf::base()
21:39:47 <elliott> I think.
21:39:56 <elliott> streambuf
21:39:57 <elliott> I mean
21:40:13 <Vorpal> app/dos2unix.cpp:67:15: error: ‘base’ is not a member of ‘std::streambuf’
21:40:14 <elliott> It seems like pbase is for output and eback for input.
21:40:26 <elliott> Visual Studio 6.0
21:40:26 <elliott> Protected
21:40:26 <elliott> char* base() const
21:40:26 <elliott> END Protected
21:40:26 <elliott> Return Value
21:40:27 <elliott> Returns a pointer to the first byte of the reserve area. The reserve area consists of space between the pointers returned by base and ebuf.
21:40:31 <elliott> --microsoft
21:40:33 <elliott> Uh.
21:40:46 <Vorpal> that description made little sense
21:40:48 <elliott> Vorpal: What IS this dostounix thing for?
21:40:54 <elliott> Do you need it?
21:40:58 <elliott> Or is it just a helper tool?
21:41:03 <Vorpal> elliott, I think it is for loading save games
21:41:09 <elliott> Can't you just stub it out? :)
21:41:12 <Vorpal> elliott, it is used all over the main source
21:41:23 <elliott> Yes, but you could make it an identity mapping.
21:41:29 <Vorpal> options/options.cpp:#include "app/dos2unix.h"
21:41:29 <Vorpal> world/generator/worldgenerator.cpp:#include "app/dos2unix.h"
21:41:30 <Vorpal> world/generator/langenerator.cpp:#include "app/dos2unix.h"
21:41:30 <Vorpal> world/world.cpp:#include "app/dos2unix.h"
21:41:31 <Vorpal> [...]
21:41:41 <Vorpal> elliott, not sure, it has code to convert the other way
21:41:44 <Vorpal> for loading I think
21:41:46 <Vorpal> err
21:41:47 <Vorpal> for saving
21:42:26 <elliott> blergh
21:42:32 <elliott> Wait.
21:42:45 <Vorpal> good thing, pbackfail is never called
21:42:45 <elliott> gptr = current input position
21:42:47 <Vorpal> I can stub out it
21:42:47 <elliott> beginning of input = eback
21:42:49 <elliott> Try eback.
21:43:01 <elliott> Or egptr...
21:43:02 <elliott> No.
21:43:06 <elliott> Vorpal: Try eback. I think.
21:43:10 <elliott> Err.
21:43:13 <elliott> Or egptr.
21:43:15 <elliott> Bleh.
21:43:17 <elliott> Vorpal: Just stub it out.
21:43:25 <elliott> Vorpal: wait
21:43:29 <Vorpal> elliott, as far as I can tell it is for checking if there is space to put in a char when doing the equiv of ungetc
21:43:29 <elliott> Vorpal: Streambuf functions probably call it.
21:43:31 <elliott> Vorpal: Streambuf functions probably call it.
21:43:33 <Vorpal> elliott, ouch
21:43:40 <elliott> Well
21:43:42 <elliott> gptr = current
21:43:45 <elliott> eback = beginning
21:43:46 <elliott> egptr = end
21:43:52 <elliott> I don't know which of the latter two you want.
21:43:57 <elliott> Probably eback. Even though that makes not much sense.
21:44:08 <elliott> Ah.
21:44:11 <elliott> Vorpal: Try eback.
21:44:14 <Vorpal> okay
21:44:20 <elliott> ...maybe.
21:44:55 <elliott> http://earslap.com/projectslab/otomata/?q=2h2d8882 this is fun
21:45:21 <Vorpal> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.5.2/../../../../include/c++/4.5.2/bits/fstream.tcc: In member function ‘virtual int dos2unixbuf::sync()’:
21:45:21 <Vorpal> /usr/lib/gcc/x86_64-unknown-linux-gnu/4.5.2/../../../../include/c++/4.5.2/bits/fstream.tcc:837:5: error: ‘int std::basic_filebuf<_CharT, _Traits>::sync() [with _CharT = char, _Traits = std::char_traits<char>]’ is protected
21:45:23 <Vorpal> elliott, now this
21:45:32 <elliott> show line
21:45:35 <elliott> always show the goddamn line
21:45:44 <Vorpal> elliott, right. the .tcc one?
21:45:49 <Vorpal> oh wait:
21:45:50 <Vorpal> app/dos2unix.cpp:76:20: error: within this context
21:45:53 * Vorpal looks for it
21:46:00 <Vorpal> int dos2unixbuf::sync() {
21:46:00 <Vorpal> return inner.sync();
21:46:00 <Vorpal> }
21:46:03 <Vorpal> the middle one
21:46:18 <elliott> hmmmm
21:46:22 <Vorpal> elliott, I think it fails because inheritance != embedding
21:46:23 <elliott> what type is inner
21:46:26 <elliott> but yeah
21:46:30 <elliott> Vorpal: you can cast anything to public
21:46:32 <elliott> :)
21:46:34 <Vorpal> filebuf inner;
21:46:35 <elliott> so you can achieve that
21:46:39 <elliott> without changing the code
21:46:39 <Vorpal> elliott, wait what? How?
21:46:45 <elliott> http://byuu.org/articles/programming/public_cast
21:46:48 <elliott> you're welcome
21:46:56 <elliott> i suggest putting the code all in that function to cordon off the evil
21:47:29 <Vorpal> elliott, my jaw. Refuses to go back up.
21:47:36 <elliott> Vorpal: oh, and that's C++0x... because of the variadic template
21:47:40 <elliott> I think you can specialise it for just this case
21:47:46 <elliott> but I'd just tell it to compile that file as C++0x in the makefile
21:47:52 <Vorpal> I'm not sure my template-fu is up to this
21:47:53 <elliott> you're already at maximum evil level, after all
21:48:00 <elliott> Vorpal: Just copy it, paste it, and do what it says at the bottom
21:48:06 <elliott> Plus make it compile that file as c++0x :P
21:48:29 <elliott> Alternatively find the public way to sync. But that's loser speak
21:48:31 <Vorpal> elliott, and you don't want to mess with this makefile. It is spawn of fashan.
21:48:33 <elliott> [exclamation mark]
21:48:40 <elliott> Vorpal: foo.C: CFLAGS+=-std=c++0x
21:48:46 <elliott> Just put it at the end :D
21:48:46 <Vorpal> elliott, this one is .cpp
21:48:49 <Vorpal> elliott, different project
21:48:51 <elliott> Yeah yeah
21:49:05 <Vorpal> hm
21:49:14 <elliott> The public member function pubsync of the parent class streambuf calls this virtual member function, which overrides the virtual member streambuf::sync.
21:49:19 <Vorpal> elliott, only good thing with this makefile is that it is non-recursive
21:49:24 <elliott> Why is it protected...
21:49:38 <Vorpal> elliott, so I could just use pubsync?
21:49:39 <Vorpal> thanks
21:49:42 <elliott> Vorpal: ...
21:49:45 <elliott> Vorpal: No.
21:49:49 <Vorpal> elliott, no?
21:49:54 <elliott> Vorpal: Well... ok, maybe.
21:49:55 <elliott> Try it.
21:50:02 <Vorpal> compiles
21:50:10 <elliott> If it breaks, don't come crying to me.
21:50:18 <Vorpal> elliott, why would it break?
21:50:28 <elliott> Because pubsync might not do the same thing that it's meant to do here.
21:50:33 <elliott> Because you're implementing sync, that pubsync calls for you.
21:50:41 <elliott> It might want to do extra stuff that conflicts with the extra stuff inner.pubsync already does.
21:50:41 <Vorpal> interface/localinterface/irc_interface.cpp:1021:1: error: pasting "UplinkIRCMonitor" and "::" does not give a valid preprocessing token
21:50:42 <elliott> But eh
21:50:43 <Vorpal> heh
21:50:46 <Vorpal> I know how to fix it
21:50:54 <Vorpal> but what, 1021 lines in a IRC interface?
21:50:56 <elliott> Vorpal: Enter here with your precompiled copy :D
21:51:02 <elliott> Also, why is that surprising?
21:51:05 <elliott> It's an IRC client[exclamation mark]
21:51:06 <Vorpal> IRC_MAP_ENTRY(UplinkIRCMonitor, "001", Received_RPL_WELCOME )
21:51:06 <Vorpal> IRC_MAP_ENTRY(UplinkIRCMonitor, "002", Received_RPL_LUSER )
21:51:07 <Vorpal> oh my
21:51:08 <elliott> It's an IRC client[exclamation mark]
21:51:15 <elliott> Why is >onek lines surprising?
21:51:18 <Vorpal> elliott, only part. It uses irclib in contrib
21:51:23 <elliott> Ah.
21:51:26 <elliott> Still
21:51:30 <elliott> wait
21:51:34 <elliott> It uses PYTHON Irclib?
21:51:37 <elliott> [asterisk]irclib
21:51:42 <Vorpal> IRC_MAP_ENTRY?
21:51:45 <Vorpal> where the fuck is it
21:51:48 <elliott> grep
21:51:50 <Vorpal> elliott, nope
21:52:01 <elliott> grep the whole source tree
21:52:05 <elliott> of everything
21:52:08 <elliott> it may be in irclib
21:52:09 <Vorpal> elliott, no python
21:52:11 <Vorpal> I mean
21:52:13 <elliott> oh
21:52:13 <Vorpal> meant*
21:52:15 <elliott> what irclib then
21:52:18 <Vorpal> elliott, C
21:52:24 <Vorpal> wait, C++
21:52:25 <elliott> I mean
21:52:27 <elliott> what link does it have
21:52:28 <elliott> or whatever
21:52:29 <elliott> URL
21:52:37 <Vorpal> elliott, nada, nothing.
21:52:46 <elliott> no introversion copyright? ;)
21:52:48 <Vorpal> elliott, not even a license
21:52:57 <Vorpal> it is in the external libs dir too
21:53:10 <elliott> http://earslap.com/projectslab/otomata/?q=0q1y2a3h4j5c607586 ;; this sounds nice
21:57:51 <Vorpal> interface/localinterface/irc_interface.cpp: In member function ‘virtual void IRCInterface::Update()’:
21:57:51 <Vorpal> interface/localinterface/irc_interface.cpp:756:5: error: ‘ProcessMessages’ is not a member of ‘CCrossThreadsMessagingDevice’
21:57:52 <Vorpal> void IRCInterface::Update ()
21:57:52 <Vorpal> {
21:57:52 <Vorpal> #ifndef WIN32
21:57:53 <Vorpal> CCrossThreadsMessagingDevice::ProcessMessages ();
21:57:57 <Vorpal> #endif
21:57:59 <Vorpal> }
21:58:10 <Vorpal> oh the irc lib too
21:58:31 <Vorpal> ~/uplink/developer/source $ grep -R ProcessMessages ../
21:58:31 <Vorpal> ../source/interface/localinterface/irc_interface.cpp: CCrossThreadsMessagingDevice::ProcessMessages ();
21:58:34 <Vorpal> elliott, GREAT!
21:58:37 <Vorpal> unsolvable
21:58:38 <elliott> hm?
21:58:40 <elliott> wht
21:58:41 <elliott> what is
21:58:59 <Vorpal> elliott, the function is from the irclib (well CCrossThreadsMessagingDevice is) but it is nowhere to be found
21:59:01 <Vorpal> only called
21:59:14 <elliott> hmm
21:59:15 <Vorpal> this think can not possibly have compiled
21:59:19 <elliott> well people have compiled this before, dunno if they have on linux
21:59:21 <elliott> try removing the call :P
21:59:34 -!- copumpkin has joined.
22:00:47 <Vorpal> // TODO : Kick
22:00:47 <Vorpal> // : Query
22:00:49 <Vorpal> elliott, heh ^
22:00:52 <elliott> lol
22:01:23 <Vorpal> elliott, so it doesn't render kicks. And doesn't handle queries
22:01:46 <Vorpal> uplink.cpp:82:35: error: ‘::main’ must return ‘int’ <-- I actually laughed out loud at this one
22:02:06 <Phantom_Hoover> Vorpal, if this is not the Uplink source I will hate you forever.
22:02:16 <Vorpal> Phantom_Hoover, ... did you read logs?
22:02:25 <Vorpal> Phantom_Hoover, and yes it is the uplink source
22:02:32 <Phantom_Hoover> ^_^
22:02:43 <elliott> news-ham: reddit
22:02:44 <news-ham> Hello, Reddit. This is my Portal Gun. http://www.reddit.com/r/pics/comments/grjuf/hello_reddit_this_is_my_portal_gun/
22:02:51 <elliott> WHO GAVE THE NEWS HAM A PORTAL GUN
22:02:51 <Vorpal> news-ham, Sweden
22:02:52 <news-ham> Horses die at Ayr Grand National: Two horses die during the running of the Scottish Grand National, a week after a similar tragedy at Aintree. http://www.bbc.co.uk/go/rss/int/news/-/news/uk-scotland-glasgow-west-13106252
22:03:03 <elliott> Vorpal: provide rss two w/o cdata
22:03:15 <elliott> Phantom_Hoover: hello my one to eight keys are borken
22:03:24 <Vorpal> elliott, apply simple one line regexp to strip out cdata tags and hope for the best?
22:03:37 <Phantom_Hoover> elliott, what did you do to news-ham
22:03:39 <news-ham> Vettel beats Button to China pole: Red Bull's Sebastian Vettel sets a scintillating lap to beat McLaren's Jenson Button and Lewis Hamilton in qualifying at the Chinese Grand Prix. http://news.bbc.co.uk/go/rss/int/news/-/sport1/hi/formula_one/13102798.stm
22:03:42 <elliott> but that would destroy what little orthogonality my function has left. also, i dunno if picolisp even has regexs
22:03:44 <elliott> regexes
22:03:48 <elliott> Phantom_Hoover: what do you mean what did i do to news-ham
22:03:50 <news-ham> Pollution hits EU wildlife havens: Air pollution is damaging 60% of Europe's prime wildlife sites in meadows, forests and heaths, a team of scientists warns. http://www.bbc.co.uk/go/rss/int/news/-/news/science-environment-13094597
22:03:53 <elliott> it just has reddit support now. what are the haps my friends
22:03:54 <news-ham> Battlefield 3 - Full Length "Fault Line" Gameplay Trailer http://www.reddit.com/r/gaming/comments/grfsv/battlefield_3_full_length_fault_line_gameplay/
22:04:01 <Phantom_Hoover> Ah.
22:04:13 <elliott> i was gonna add fox news
22:04:14 <elliott> but\
22:04:17 <elliott> [asterisk]but
22:04:19 <elliott> their feed sucks
22:04:32 -!- atrapado has quit (Quit: Abandonando).
22:05:53 <Vorpal> gucci_sdl.cpp: In function ‘bool GciSetScreenSize(int, int, int, int)’:
22:05:53 <Vorpal> gucci_sdl.cpp:301:56: error: default argument given for parameter 3 of ‘bool GciSetScreenSize(int, int, int, int)’
22:05:53 <Vorpal> gucci.h:26:6: error: after previous specification in ‘bool GciSetScreenSize(int, int, int, int)’
22:05:54 <Vorpal> h,m
22:05:55 <Vorpal> hm*
22:06:00 <Vorpal> bool GciSetScreenSize ( int width, int height,
22:06:00 <Vorpal> int bpp = -1, int refresh = -1 );
22:06:01 <Vorpal> in header
22:06:07 <Vorpal> bool GciSetScreenSize ( int width, int height,
22:06:08 <Vorpal> int bpp = -1, int refresh = -1 )
22:06:09 <Vorpal> in the source
22:06:15 <Vorpal> no, gcc, I don't see the issue
22:06:17 <Vorpal> elliott, any clue?
22:06:24 <elliott> hmm
22:06:29 <elliott> Vorpal: remove from source
22:06:31 <Vorpal> oh
22:06:33 <elliott> the = -[one]s
22:06:36 <Vorpal> C++ is very weird
22:07:16 <coppro> that particular rule is weird
22:07:29 <coppro> but unfortunately effectively necessary
22:07:35 <Vorpal> make[1]: Nothing to be done for `libgucci.a'.
22:07:37 <Vorpal> $ find .. -iname libgucci.a
22:07:38 <Vorpal> $
22:07:42 <Vorpal> I'm sorry?
22:08:10 <Vorpal> libgucci.a : $(OBJECTS)
22:08:14 <Vorpal> fail
22:08:15 <Vorpal> no body
22:08:27 <Vorpal> now, how to write the shortest possible body for this one
22:08:28 <elliott> coppro: Only necessary if you accept the rest of C++
22:08:45 <coppro> elliott: I accept all of it
22:08:46 <elliott> "Why does the Bible say I have to hate gayness? That's weird" "That particular rule is weird but unfortunately effectively necessary"
22:08:49 <Vorpal> arguably the header/source split is stupid
22:08:53 <Vorpal> very stupid
22:08:57 <elliott> coppro: See also: You are insane.
22:09:07 <elliott> Vorpal: Um, make has .a support
22:09:12 <Vorpal> <elliott> "Why does the Bible say I have to hate gayness? That's weird" "That particular rule is weird but unfortunately effectively necessary" <-- not quite the same
22:09:15 <Vorpal> elliott, well, they broke it
22:09:20 <elliott> Shut up, it's basically like gayness.
22:09:43 <Vorpal> GLUT_OBJECTS = gucci_glut.o resize_unix.o
22:09:43 <Vorpal> SDL_OBJECTS = gucci_sdl.o
22:09:43 <Vorpal> OBJECTS = gucci.o image.o $(SDL_OBJECTS)
22:09:43 <Vorpal> libgucci.a : $(OBJECTS)
22:09:44 <Vorpal> why
22:09:48 <Vorpal> doesn't it work
22:10:20 <Vorpal> elliott, !
22:10:35 <elliott> Given it a body yet?
22:10:39 <Vorpal> elliott, nope
22:10:42 <elliott> Well, try that.
22:10:49 <Vorpal> elliott, but <elliott> Vorpal: Um, make has .a support ?
22:11:12 <elliott> Well, I thought it did.
22:11:14 <elliott> Maybe not like that.
22:11:16 <Vorpal> hm
22:11:21 <elliott> There's that foo.a(bar.o) stuff.
22:11:32 <Vorpal> I forgot how ar works
22:13:02 <Vorpal> ah
22:13:04 <Vorpal> ar r
22:14:46 <Vorpal> $ make
22:14:47 <Vorpal> Linking... libtool: you must specify a MODE
22:14:47 <Vorpal> libtool: Try `libtool --help' for more information.
22:14:47 <Vorpal> make: *** [uplink.static] Error 1
22:14:47 <Vorpal> fun
22:15:00 <Vorpal> long live hiding the output
22:15:02 <Vorpal> (not)
22:16:57 <Vorpal> libtool: link: unable to infer tagged configuration
22:16:57 <Vorpal> libtool: link: specify a tag with `--tag'
22:16:58 <Vorpal> wut
22:17:03 <Vorpal> elliott, ANY GOOD WITH LIBTOOL?
22:17:17 <elliott> Aren't you meant to use libtool instead of ar?
22:17:20 <elliott> Or something?
22:17:23 <elliott> Fuck libtool, bro.
22:17:43 <Vorpal> elliott, this is used for linking the full uplink.static executable
22:18:02 <elliott> Remove all lines referencing libtool :D
22:18:10 <Vorpal> $(LIBTOOL) --quiet --mode=link $(LINK) $+ $(UPLINKSTATICLIBS) -o uplink.static
22:18:14 <Vorpal> elliott, you mean that
22:18:20 <elliott> YES CLEARLY
22:18:24 <elliott> You could just use gcc :P
22:19:00 <Vorpal> gcc: cc: No such file or directory
22:19:01 <Vorpal> huh
22:19:03 <Vorpal> oh right...
22:20:11 <Vorpal> what on earth
22:20:15 <Vorpal> gcc: /usr/lib/libttf.a: No such file or directory
22:20:19 <Vorpal> what is that supposed to be
22:21:11 <elliott> freetype
22:21:15 <elliott> probably one point oh
22:23:17 <Vorpal> fuck, irclib wasn't compiled, and now it doesn't want to compile
22:23:33 <Vorpal> irc.cpp:184:62: error: invalid conversion from ‘DWORD (*)(void*)’ to ‘void*’
22:23:33 <Vorpal> irc.cpp:184:62: error: initializing argument 3 of ‘void* CreateThread(void*, int, void*, void*, int, void*)’
22:23:34 <Vorpal> m_hThread = CreateThread(NULL, 0, ThreadProc, this, 0, NULL);
22:24:00 <elliott> :D
22:24:05 <elliott> maybe the IRC thing just plain doesn't work on linux
22:24:07 <Vorpal> m_hThread = CreateThread(NULL, 0, (void*)ThreadProc, this, 0, NULL);
22:24:08 <Vorpal> that
22:24:11 <elliott> link with wine
22:24:12 <elliott> i dare you
22:24:14 <elliott> winelib, that is
22:24:25 <Vorpal> builds
22:24:30 <elliott> what
22:24:31 <elliott> how
22:24:33 <elliott> you mean with winelib?
22:24:33 <Vorpal> elliott, the irc lib does exist in the linux executable
22:24:37 <elliott> you mean with winelib?
22:24:39 <Vorpal> elliott, nope
22:24:43 <elliott> how does it build then
22:24:43 <Vorpal> m_hThread = CreateThread(NULL, 0, (void*)ThreadProc, this, 0, NULL);
22:24:45 <Vorpal> COMPILES
22:24:46 <elliott> ...
22:24:50 <elliott> CREATETHREAD IS A WINDOWS FUNCTION
22:24:51 <Vorpal> adding the explicit cast there
22:24:52 <Vorpal> helps
22:24:59 <elliott> Vorpal: see above
22:25:08 -!- oerjan has joined.
22:25:11 <Vorpal> elliott, nope.
22:25:11 <Vorpal> linux/windows.cpp:HANDLE CreateThread(void *, int, void * threadProc, void *arg, int, void * )
22:25:12 <Vorpal> linux/windows.h:HANDLE CreateThread(void *, int, void * /* THREADPROC */, void * /* ARG */, int, void * );
22:25:15 <Vorpal> :D
22:25:16 <elliott> huh
22:25:17 <elliott> :D
22:25:51 <Vorpal> elliott, the header has these: http://sprunge.us/ILJf
22:25:57 <oerjan> <elliott> oerjan: cheney on the mta is not just implemented in scheme
22:25:59 <Vorpal> and some typedef
22:26:07 <Vorpal> typedef pthread_mutex_t CRITICAL_SECTION;
22:26:08 <Vorpal> yay
22:26:15 <Vorpal> typedef void *HWND;
22:26:15 <Vorpal> typedef void *HANDLE;
22:26:17 <oerjan> perhaps not but on wikipedia it redirects to chicken scheme...
22:26:19 <elliott> oerjan: er, in chicken
22:26:22 <elliott> oerjan: yeah no
22:26:34 <elliott> oerjan: http://home.pipeline.com/~hbaker1/CheneyMTA.html
22:26:37 <Vorpal> socket.h:6:0: warning: ignoring #pragma comment
22:26:46 <oerjan> (although i remembered chicken scheme first)
22:26:47 <elliott> http://home.pipeline.com/~hbaker1/cboyer13.c is the hand-translated proof of concept
22:26:49 <Vorpal> #pragma comment(lib, "wsock32.lib")
22:26:51 <Vorpal> what on earth is that
22:26:55 <Vorpal> elliott, ^
22:27:14 <elliott> Vorpal: dunno, maybe it causes linking with their windows build system?
22:27:16 <elliott> if it's a comment
22:27:18 <elliott> might be a custom thing
22:27:29 <Vorpal> hm
22:27:42 <Vorpal> irc.cpp:449:4: error: name lookup of ‘p’ changed for ISO ‘for’ scoping
22:27:42 <Vorpal> irc.cpp:449:4: note: (if you use ‘-fpermissive’ G++ will accept your code)
22:27:47 <Vorpal> *p = '\0';
22:27:49 -!- MigoMipo has quit (Read error: Connection reset by peer).
22:27:52 <elliott> -fpermissive
22:27:56 <Vorpal> yeah guess so
22:27:58 <elliott> presumably it's like
22:28:03 <elliott> for (char [asterisk]p = ...);
22:28:06 -!- pikhq has joined.
22:28:06 <elliott> [asterisk]p = '\0';
22:28:07 <Vorpal> elliott, it is in a while loop
22:28:09 <elliott> pikhq
22:28:10 <elliott> you lied
22:28:16 <Vorpal> elliott, while( (bool)m_socket )
22:28:16 <elliott> about the heisig stories
22:28:23 <elliott> pikhq: also i made several comments on redo in logs.
22:28:24 <Vorpal> oh wait
22:28:25 <Vorpal> for(char* p = szBuf; *p && *p != '\r' && *p != '\n'; ++p)
22:28:25 <Vorpal> ;
22:28:25 <Vorpal> *p = '\0';
22:28:27 <Vorpal> doh
22:28:38 <pikhq> elliott: Quod?
22:28:52 <elliott> pikhq: there's a lot, grep for "redo" on http://codu.org/logs/log/_esoteric/2011-04-16
22:28:56 <elliott> pikhq: until you find my first message
22:29:00 <elliott> then just go from there, it's a wall of text :)
22:29:07 <pikhq> Ah.
22:29:16 <elliott> pikhq: well i can quote if you want
22:29:23 <elliott> but it'd drown out Vorpal's valuable uplink compilation talk
22:29:26 <elliott> :D
22:29:28 <Vorpal> socket.cpp:112:53: error: invalid conversion from ‘int*’ to ‘socklen_t*’
22:29:28 <Vorpal> socket.cpp:112:53: error: initializing argument 3 of ‘int accept(int, sockaddr*, socklen_t*)’
22:29:29 <fizzie> Vorpal: MSVC++ has #pragma comment which adds a "comment record" in the object file/executable; with 'lib' it just makes the linker automatically look for that library without having to specify it.
22:29:30 <Vorpal> g a h
22:29:39 <Vorpal> fizzie, ouch
22:29:45 <elliott> Vorpal: reinterpret_cast
22:29:52 <elliott> reinterpret_cast<socklen_t[asterisk]>(x)
22:29:55 <Vorpal> elliott, actually I'll fix it properly
22:30:01 <elliott> okay
22:30:32 <elliott> pikhq: it continues past where you expect btw
22:30:38 <elliott> finishes at 0:
22:30:39 <fizzie> (You can also use it to specify some other linker options.)
22:30:40 <elliott> erm
22:30:41 <elliott> twenty:fourty-two
22:30:43 * pikhq looks into tup
22:30:45 <elliott> [asterisk]forty
22:30:51 <elliott> pikhq: there's more[exclamation mark] :D
22:30:54 <elliott> (my number keys are broken)
22:30:58 <elliott> tup is awesome, though
22:31:08 <elliott> he has his own linux-from-scratch/gentoo-alike called gittup
22:31:12 <elliott> http://gittup.org/gittup/
22:31:15 <pikhq> elliott: Still, you must admit: redo is a hell of a lot better than make. Thus my glee.
22:31:17 <elliott> the sources of all the software are stored in git
22:31:20 <elliott> and everything is built with tup
22:31:24 <Vorpal> elliott, a one line fix anyway
22:31:37 <elliott> oh, and everything is configured with menuconfig
22:32:11 <Gregor> For some reason, one of the parameters for the time signature event in MIDI is 32nds per quarter note.
22:32:14 <elliott> "Yeah, I'm marf. Yeah, my computer is captainfalcon. Yeah, I just edited the spellcasting in nethack because I felt like it. Then I changed ls to print "Sup bro, way to list those files", because I like to be encouraged when I list things, and because I like it when people call me "bro"1. Then I re-compiled both and got a new initrd in like two seconds. Go ahead -- try to change the ls on your system t
22:32:14 <elliott> o print out extra messages for no reason!2 You can't do it!! Unless of course you're running gittup.org. But if you're running gittup.org, why aren't you playing nethack or needlessly recompiling things just for fun? In fact, how are you reading this webpage?? It doesn't even come with a web browser."
22:32:30 <pikhq> And my glee comes from most make replacements screwing up even the bits that make gets right.
22:33:04 <elliott> "Some things that will never be in gittup.org:
22:33:04 <elliott> make
22:33:04 <elliott> makedepend
22:33:04 <elliott> automake
22:33:04 <elliott> autoconf
22:33:05 <elliott> libtool
22:33:07 <elliott> ant
22:33:08 <elliott> scons
22:33:10 <Vorpal> CrossThreadsMessagingDevice.cpp fails badly however
22:33:10 <elliott> glibc"
22:33:13 <elliott> A man after my own heart.
22:33:19 <elliott> pikhq: tup even gives you a build progress bar[exclamation mark] WHAT MORE COULD YOU WANT
22:33:26 <elliott> The only other system that does that is CMake, and CMake is the worst ever.
22:33:38 <elliott> pikhq: (Also, http://gittup.org/tup/tup_vs_mordor.html is amusing + funny)
22:33:47 <elliott> Why compare against make when you can compare against the All-Seeing Eye of Mordor?
22:34:30 <pikhq> CMake has the following benefits: it sucks *slightly* less than autoconf/make.
22:34:47 <elliott> pikhq: ALSO: Disadvantage of redo: It's practically impossible to offer an -n.
22:34:48 <pikhq> Which hardly counts.
22:34:50 <Vorpal> elliott, how does winelib work?
22:34:57 <elliott> Vorpal: It works exactly how wine works.
22:35:00 <elliott> By providing Windows API implementations.
22:35:01 <pikhq> elliott: Okay, true, there is that.
22:35:07 <elliott> pikhq: (I've even discussed this with the developer.)
22:35:11 <Vorpal> elliott, but to an ELF instead of a PE?
22:35:24 <elliott> pikhq: Also the developer dislikes IPvSix and wants us all to switch to using heavily-recursively-NATted IPvFour.
22:35:33 <elliott> OTHER THINGS THE DEVELOPER IS: A baby-murderer.
22:35:41 <elliott> This is a valid method of hoosing software.
22:35:44 <elliott> choosing.
22:35:57 <pikhq> Vorpal: winelib provides the Windows API as a library, instead of providing the entire Windows API *and* ABI.
22:36:21 <Vorpal> pikhq, okay. Actually I think I'll edit out the irc client from uplink instead. Looks saner.
22:36:30 <elliott> NO
22:36:31 <elliott> THE IRC CLIENT
22:36:32 <elliott> IS AWESOME
22:36:40 <elliott> LINK TO WINELIB
22:36:43 <elliott> OR DIE
22:36:48 <Vorpal> elliott, die then
22:36:51 <elliott> What
22:36:52 <elliott> It's just one -l
22:36:54 <elliott> And an -I
22:36:56 <elliott> How hard could that be
22:37:25 <elliott> Vorpal: ?
22:37:49 <elliott> Vorpal: In fact
22:37:56 <elliott> Vorpal: Wine has a tool to convert Windows Makefiels into Wine ones.
22:37:58 <elliott> I think.
22:38:05 <elliott> See winemaker.
22:38:09 <elliott> And
22:38:10 <elliott> To fix that problem, open notepad2/Makefile.in in a text editor and search for an assignment to a variable with IMPORTS as part of its name. There will be a list of import libraries. Now run winemaker again, but with these libraries prefixed by -i:
22:38:10 <elliott> $ winemaker --lower-uppercase -icomdlg32 -ishell32 -ishlwapi -iuser32 -igdi32 -iadvapi32 -ikernel32 .
22:38:14 <elliott> Easy[exclamation mark]
22:38:25 <elliott> And it lets you specify --dll.
22:38:26 <elliott> Vorpal: DO IT
22:38:28 <pikhq> elliott: So far, I at least approve of Tup's syntax.
22:38:45 <elliott> pikhq: It's not about the syntax, man, it's the arrows[exclamation mark] They go upwards[exclamation mark]
22:38:47 <pikhq> This is promising: hardly any make-alikes have non-painful syntax.
22:39:11 <pikhq> Have you considered making some new entries in Xcompose?
22:39:16 <elliott> MAYBE :D
22:39:21 <Vorpal> elliott, the issue is that it wants a lot of stuff that windows.cpp is missing
22:39:28 <elliott> pikhq: Once you've read the site, you probably want to check out http://gittup.org/tup/build_system_rules_and_algorithms.pdf.
22:39:32 <Vorpal> something about a huge window struct
22:39:37 <Vorpal> for threading
22:39:40 <elliott> pikhq: It's an interesting read describing why tup is so fast.
22:39:43 <Vorpal> and one for displaying windows
22:39:50 <elliott> pikhq: (And why make and all top-down build systems are inherently slower.)
22:40:24 <elliott> Vorpal: Yes.
22:40:35 <elliott> Vorpal: So compile the whole IRC client as a Windows program, with winelib.
22:41:11 <elliott> See http://www.winehq.org/docs/winelib-guide/winelib-getting-started or "man winemaker".
22:41:12 <elliott> Easy.
22:42:32 <Vorpal> elliott, PROBLEM is that it runs inside the same process as uplink
22:42:39 <Vorpal> that is going to play nuts with uplink
22:43:15 <elliott> Vorpal: not really
22:43:19 <elliott> well, probably not
22:43:21 <elliott> maybe not[exclamation mark]
22:43:24 <elliott> WHY NOT FIND OUT
22:43:58 <Vorpal> elliott, this is easier, and I don't care much for the irc interface.
22:45:28 <elliott> Vorpal: you are a terrible person
22:46:21 <Vorpal> URGH. That was some messed up screen
22:46:36 <Vorpal> it ran. But aborted.
22:47:27 <Vorpal> it didn't find data
22:47:27 <Vorpal> hm
22:49:28 <pikhq> elliott: So, it's preloading to figure out non-explicit dependencies?
22:49:30 <pikhq> I approve.
22:49:37 <Vorpal> the crap. What
22:49:47 <elliott> pikhq: Yes. (I would prefer it strace'd for statically-linked stuff, but what can you do.)
22:49:57 <elliott> pikhq: But really, that isn't the important thing. The important thing is that the arrows go up.
22:50:00 <elliott> It's a bottom-up build system.
22:50:15 <elliott> It traces from what's changed to what needs rebuilding, not from "here's what I'm tasked to build, now to trace all the dependencies".
22:50:32 <elliott> Which makes it much faster (see the paper, much better time complexity, also see the comparisons to Make and Mordor on the site)
22:50:34 <pikhq> elliott: I'm looking at the details that everything fucks up horribly currently.
22:50:43 <elliott> Yar :P
22:50:52 <pikhq> elliott: I'll admire the algorithm it uses on the dependency graph in a bit. :P
22:51:03 <Vorpal> *oh* this one is older
22:51:08 <Vorpal> than the one I had as a native
22:51:09 <Sgeo> Why why why does the only other person active in #picolisp right now have to be Arm?
22:51:13 <Vorpal> err, as their one
22:51:18 <elliott> Vorpal: what do you mean by older?
22:51:23 <pikhq> Oh jesus *it can actually output the dependency graph*?
22:51:25 <pikhq> I approve.
22:51:28 <elliott> Sgeo: haha, sprunge a conversation snippet, i wanna lol
22:51:35 <Vorpal> elliott, v1.31 vs. v1.54
22:51:38 <elliott> Vorpal: ah
22:51:40 <Vorpal> elliott, incompatible options file format
22:51:56 <elliott> I really want to tell Arm he doesn't know shit in octothorpepicolisp, but I think he is a committer :)
22:51:59 <Vorpal> elliott, and data seems a bit screwy too
22:52:16 <coppro> new game:
22:52:21 <coppro> pick any random wikipedia article
22:52:27 <Sgeo> elliott, all that happened just now is that he had a workaround for a problem, but I remembered a builtin that worked just fine
22:52:32 <coppro> click the first link to occur in the body of the page
22:52:32 <coppro> repeat
22:52:33 <Sgeo> He doesn't seem to have noticed, though
22:52:36 <coppro> you will visit Aristotle
22:52:46 <Vorpal> elliott, huh there is an option for multi-monitor over network
22:52:49 <Vorpal> I'm not sure what...
22:52:53 <elliott> coppro: O RLY?
22:53:00 <elliott> coppro: reddit says it was "philosophy".
22:53:05 <pikhq> "# It will detect if your build description isn't parallel-safe, and tell you."
22:53:08 <pikhq> :D
22:53:12 <elliott> So basically you can get anywhere really popular if you keep clicking.
22:53:14 <elliott> Which is OBVIOUS.
22:54:00 -!- copumpkin has quit (Ping timeout: 240 seconds).
22:54:04 <coppro> elliott: philosophy is part of the loop with aristotle
22:54:11 <coppro> I just like aristotle more
22:54:27 -!- copumpkin has joined.
22:55:02 * pikhq starts on the paper
22:55:12 <elliott> pikhq: DID YOU READ THE COMPARISON TO MORDOR
22:55:14 <elliott> It is hilarious.
22:55:21 <Phantom_Hoover> LINK TO PAPER
22:55:33 <elliott> ("This one time a beam of light was flying through the vacuum of space at the speed of light and then tup went by and was like "Yo beam of light, you need a lift?" cuz tup was going so fast it thought the beam of light had a flat tire and was stuck. True story." --make vs tup)
22:55:43 <elliott> Phantom_Hoover: It's about build systems.
22:55:47 <elliott> SOMEHOW I DOUBT YOU ARE INTERESTED
22:55:51 <Phantom_Hoover> MORDOR
22:55:52 <Phantom_Hoover> REFERENCES
22:55:53 <Phantom_Hoover> ARE
22:55:55 <Phantom_Hoover> ALWAYS
22:55:56 <elliott> ONLY ON ONE PAGE
22:55:57 <Phantom_Hoover> INTERESTING
22:56:03 <elliott> http://gittup.org/tup/index.html IS THE SITE
22:56:22 <elliott> "For the tup case there is a Tupfile in each directory, as is the tup-convention. Tupvention."
22:56:32 <elliott> pikhq: I sure hope you did read the comparisons if only because they're hilarious :P
22:56:48 <elliott> "I didn't run a million cuz it would take forever to create a million files, and I value the life of my hard drive. Maybe I'll do that someday. Yeah that's right. I said maybe someday I will *kill* my hard drive, just for another data point. Is it right to value the pursuit of science over life? Even if it's something that does not ever truly live? That is a question that even tup cannot answer."
22:57:07 <Vorpal> elliott, data files I have won't work with this version of uplink. It's all fucked up
22:57:07 <Vorpal> :(
22:57:14 <elliott> Vorpal: :(
22:57:16 <elliott> Vorpal: Ask on the forums?
22:57:22 <Vorpal> elliott, har har
22:57:22 <elliott> Vorpal: There will be modders there.
22:57:24 <elliott> What?
22:57:27 <elliott> What's funny?
22:57:38 <Phantom_Hoover> THAT GODDAMN LIBGTK
22:57:42 <Vorpal> elliott, development cd access forum is closed to registered owners of it
22:57:49 <elliott> Oh :P
22:57:52 <Vorpal> elliott, to allow posting source code
22:57:58 <elliott> Vorpal: Good reason to buy it[exclamation mark] :D
22:58:07 <Vorpal> elliott, maaaybe
22:58:18 <elliott> [[Q: HELP!!!!! How do you use the voice analyser???? I am talking into my mike but nothing happens....wtf????
22:58:18 <elliott> A: The "speak into your mike" message is just to attempt to emulate reality, all you need to do is:
22:58:18 <elliott> 1. Go to the company's public access server, save the phone number of the admin.
22:58:18 <elliott> 2. Phone the admin <also open the voice analyser and leave it running in the background>.
22:58:18 <elliott> 3. He will then speak, the voice analyser will say "recording voice pattern" and then it'll say "Analysing voice recording". After this point you can hang up, BUT LEAVE THE VOICE ANALYSER RUNNING!!!
22:58:20 <elliott> 4. Go to the voice check on the computer you're trying to hack, press the "playback" button
22:58:22 <elliott> SIMPLE!!! ]]
22:58:24 <elliott> --Uplink FAQ
22:58:38 <Phantom_Hoover> elliott, what Uplink is this.
22:58:42 <elliott> Phantom_Hoover: Uplink Uplink.
22:58:45 <Phantom_Hoover> THIS IS ONLINK IS IT NOT
22:58:45 <Vorpal> it's expensive
22:58:48 <elliott> NO IT IS NOT
22:58:53 <Phantom_Hoover> ERM
22:58:57 <elliott> Vorpal: Yeah, but you save the cost of the game :P
22:59:07 <Phantom_Hoover> WHY DID NOÖNE INFORM ME OF THIS
22:59:21 <elliott> Also Introversion are cool enough to justify supporting them even though their business model is outdated.
22:59:27 <elliott> I WANT TO PLAY SUBVERSION DAMMIT
22:59:43 <Phantom_Hoover> SUBVERSION
22:59:46 <Phantom_Hoover> SO AWESOME
22:59:54 <Phantom_Hoover> I WILL GET SUNGLASSES JUST TO PLAY IT
22:59:56 <elliott> Vorpal: Also the dev disk might be more up to date?
22:59:59 <pikhq> elliott: I did read the comparisons.
23:00:02 <elliott> Dunno. Like it says "Note: Requires the full version of Uplink to be installed" :P
23:00:08 <elliott> pikhq: GOOD
23:00:16 <Phantom_Hoover> elliott, I can't install Uplink...
23:00:17 <Vorpal> elliott, maybe
23:00:24 <elliott> That was at Vorpal.
23:00:31 <Vorpal> Phantom_Hoover, why not?
23:00:42 <Vorpal> <elliott> Dunno. Like it says "Note: Requires the full version of Uplink to be installed" :P <-- I have that
23:00:51 <Vorpal> elliott, But TOO NEW VERSION
23:00:57 <elliott> Right. Thus the disk might be newer.
23:01:00 <Phantom_Hoover> Vorpal, it requires an outdated version of libgtk.
23:01:03 <elliott> If not, someone will know how to fix it, presumably.
23:01:08 <elliott> Phantom_Hoover: He's using the developer disk.
23:01:11 <elliott> disc
23:01:12 <Phantom_Hoover> A version so outdated it's not available through normal channels.
23:01:13 <elliott> i.e. he's trying to compile it.
23:01:15 <Phantom_Hoover> elliott, ah, right.
23:01:16 <elliott> The game itself runs fine for him.
23:01:19 <Vorpal> Phantom_Hoover, no it doesn't. Only the installer does
23:01:28 <elliott> And define the normal channel.
23:01:29 <elliott> channels
23:01:31 <Phantom_Hoover> Vorpal, that doesn't help.
23:01:42 <Phantom_Hoover> elliott, APT, or indeed any official source.
23:01:47 <Vorpal> Phantom_Hoover, anyway. I don't need it for the developer one
23:02:17 <elliott> Phantom_Hoover: So you didn't even try looking at the source archives?
23:02:18 <elliott> lol
23:02:20 <Vorpal> Phantom_Hoover, the issue is I have version 1.54 + it's data files. Developer disc is 1.31. The results of 1.31 on 1.54 data files are... curious
23:02:21 <Vorpal> FOR EXAMPLE
23:02:22 <elliott> Vorpal: How did you install it without the installer btw?
23:02:26 <Vorpal> the tutorial mission
23:02:29 <Vorpal> is replaced
23:02:30 <Vorpal> with another
23:02:33 <Vorpal> one from ARC
23:02:40 <Vorpal> which is complete messed up
23:02:41 <elliott> :D
23:02:42 <Phantom_Hoover> elliott, source archives from *what*?
23:02:49 <elliott> Vorpal: Last question?
23:02:51 <elliott> Phantom_Hoover: ...
23:02:53 <elliott> Phantom_Hoover: The GTK site?
23:02:57 <Vorpal> <elliott> Vorpal: How did you install it without the installer btw? <-- trivial, one symlink
23:03:01 <elliott> Sometimes your wilful ignorance astounds me, Phantom_Hoover.
23:03:08 -!- ais523 has joined.
23:03:08 <Phantom_Hoover> elliott, 'wilful'.
23:03:18 <elliott> Well, it DOES sound like you gave up before, say, googling "GTK".
23:03:19 <Vorpal> elliott, actually one symlink + copy one *.so from /usr/lib32 on my laptop
23:03:24 <elliott> To then complain about it is... interesting.
23:03:32 <Vorpal> elliott, that was all I needed to make it run
23:03:37 <Phantom_Hoover> elliott, I didn't, because *that's an absurdly vague search for the problem I had*.
23:03:46 <elliott> Phantom_Hoover: You needed an older version of GTK.
23:03:52 <elliott> You were trying to find it on "official sources".
23:04:00 <elliott> You seem to have given up before looking outside of the whatever repositories.
23:04:01 <Vorpal> elliott, If you want to run the installer, you would need gtk1
23:04:08 <Phantom_Hoover> elliott, and at the time, I didn't know these things, since it was quite some time ago.
23:04:13 <Phantom_Hoover> That is not wilful ignorance.
23:04:28 <Vorpal> elliott, oh and tell the self-extracting .sh --help, and it will tell you how to direct it to unpack in a good place
23:04:32 <Vorpal> so you can get at the files directly
23:04:38 <Vorpal> instead of the installer failing to launch
23:04:50 <elliott> Phantom_Hoover: Define these things... you didn't know of google?
23:04:55 <elliott> shrug
23:05:24 <Vorpal> elliott, looking at some persons knowing there is a step by step guide and knowing there is google, they still fail to apply either
23:05:24 <Phantom_Hoover> elliott, FFS, *I did not understand the shared library issue enough to consider searching source archives.*
23:05:28 <Vorpal> elliott, like my dad did today
23:05:38 <Phantom_Hoover> *Googling 'GTK' would still have been utterly useless.*
23:05:47 <Vorpal> elliott, my dad, is the nightmare of a helpdesk worker
23:06:08 <elliott> Phantom_Hoover: OK fine but bringing it up later seems odd.
23:06:25 <elliott> Vorpal: My mother justifies it with "I CAN'T UNDERSTAND IT IF IT'S WORDS"
23:06:28 <elliott> "I'M A VISUAL LEARNER"
23:06:46 <Vorpal> elliott, ah, my dad can't do that. He is a scientist after all. It wouldn't work.
23:06:49 <elliott> If you ever see on the news the story of a psychopath child who killed his mother after being asked for technical support, try and sympathise momentarily.
23:07:02 <Vorpal> no I haven't seen that story
23:07:06 <elliott> WELL ONE DAY YOU MIGHT
23:08:12 <pikhq> So far, I approve of tup.
23:08:53 <Vorpal> elliott, you said you had uplink. What version?
23:09:00 <Vorpal> please please let it be 1.31!
23:09:20 <elliott> Vorpal: I... dunno.
23:09:22 <elliott> Vorpal: It might be.
23:09:24 <Vorpal> elliott, brb, while you search for the cd!
23:09:27 <elliott> Vorpal: But no optical drive.
23:09:29 <elliott> Well.
23:09:37 <elliott> I dunno if the SuperDrive works with Ubuntu.
23:09:58 * pikhq shall have to play with it a bit and see what, if anything, is annoying to do with it
23:10:29 <elliott> pikhq: Tup's own build system is a pretty good demonstration, btw.
23:12:06 * pikhq wonders how well it handles, say, autogenerated headers for a C file...
23:12:40 <elliott> : foo.in |> my-magic-generator |> foo.h
23:12:49 <elliott> : uses-foo-h.c |> ... |> uses-foo-h
23:12:51 <elliott> Should work fine...
23:13:26 <pikhq> Except that I'd like to not have to duplicate *all* the command stuff just to say "the following C files use a generated header".
23:13:28 <elliott> pikhq: BTW, if you do
23:13:31 <elliott> : $(mingwsrcs) tup-dllinject.dll |> ^ MINGW32LINK tup.exe^ version=`git describe`; echo "const char *tup_version(void) {return \"$version\";}" | @(TUP_MINGW)-gcc -x c -c - -o tup-version.omingw; @(TUP_MINGW)-gcc %f tup-version.omingw $(MINGWLDFLAGS) -o tup.exe |> tup.exe tup-version.omingw
23:13:39 <elliott> Then it shows MINGWLINK tup.exe in normal, and the rest of the line dimmed.
23:13:44 <elliott> Which is great.
23:13:47 <pikhq> : foreach *.c |> build-junk |> %.o
23:13:54 <elliott> pikhq: You don't?
23:14:02 <elliott> pikhq: It figures out the header dependency automatically.
23:14:06 <pikhq> : foo.c foo.h |>|>
23:14:15 <elliott> pikhq: It figures out the header dependency automatically.
23:14:16 <elliott> No?
23:14:19 <pikhq> elliott: Uh, before a build has happened it has no idea.
23:14:19 <elliott> Isn't that the point of the preload?
23:14:28 <elliott> Oh, that's true.
23:14:39 <pikhq> And if the header hasn't been generated yet it'll bork.
23:17:20 <pikhq> Oh, well, the macro feature seems to make up for that.
23:17:39 <elliott> <pikhq> : foo.c foo.h |>|>
23:17:41 <elliott> I think that might even work.
23:17:42 <elliott> Maybe.
23:17:44 <elliott> Uhh, dunno.
23:18:01 <pikhq> Actually, it'd be : foo.c | foo.h |>|> is anything
23:18:04 <pikhq> s/is/if/
23:18:27 <elliott> Right.
23:18:35 <Vorpal> <elliott> Vorpal: But no optical drive.
23:18:35 <Vorpal> <elliott> Well.
23:18:35 <Vorpal> <elliott> I dunno if the SuperDrive works with Ubuntu.
23:18:37 <Vorpal> what about
23:18:42 <Vorpal> your other computers?
23:18:46 <Vorpal> elliott, so did you find the cd?
23:18:51 <elliott> Vorpal is really obsessed with my other computers.
23:18:59 <Vorpal> elliott, remember you have to repay me for 1234567890 !
23:19:01 <elliott> No, I don't look for things I doubt I'd be able to read on your command.
23:19:10 <Vorpal> ;)
23:19:12 <elliott> The only other computer I have easy access to is my other laptop.
23:19:14 <elliott> Which lacks an optical drive.
23:19:17 <Vorpal> oh
23:19:26 <elliott> I am not going to get my iMac, plug it in, find a keyboard, [...], just for Uplink.
23:19:34 <elliott> If the SuperDrive works, I'll look for Uplink today or tomorrow.
23:19:41 <elliott> I think I know where it is, maybe.
23:25:08 <pikhq> Okay, I am positively amazed at how simple it is to write a build system.
23:25:21 <elliott> tup is pretty small :)
23:25:31 <elliott> It works on Windows, I'd wager the portability stuff is a good chunk of the code.
23:26:11 <elliott> Well, OK, tup is pretty long (thirteen-k lines).
23:26:21 <elliott> But then, it's doing graph manipulation and serialisation... in C.
23:26:33 <elliott> And it's insanely fast, and full-featured.
23:26:45 <elliott> pikhq: BTW, tup has an inotify-based file monitor.
23:26:52 <elliott> Starts the inotify-based file monitor. The monitor must scan the
23:26:52 <elliott> filesystem once and initialize watches on each directory. Then
23:26:52 <elliott> when you make changes to the files, the monitor will see them
23:26:52 <elliott> and write them directly into the database. With the monitor
23:26:52 <elliott> running, 'tup upd' does not need to do the initial scan, and can
23:26:53 <elliott> start constructing the build graph immediately. The "Scanning
23:26:55 <elliott> filesystem..." time from 'tup upd' is approximately equal to the
23:26:57 <elliott> time you would save by running the monitor. When the monitor is
23:26:59 <elliott> running, a 'tup upd' with no file changes should only take a few
23:27:03 <elliott> milliseconds (on my machines I get about 2 or 3ms when
23:27:05 <elliott> everything is in the disk cache). If you restart your computer,
23:27:07 <elliott> you will need to restart the monitor.
23:27:08 <elliott> Gregor: I bet you could easily hook that up to your desired file-changes-auto-rebuild system
23:27:19 <elliott> It'd just have to "tup upd" after writing the database.
23:27:41 <pikhq> I approve of tup.
23:27:58 <elliott> Hmm... I'm surprised the monitor can't already do that...
23:28:22 <elliott> * I humbly present the Love-Trowbridge (Lovebridge?) recursive directory
23:28:22 <elliott> * scanning algorithm:
23:28:24 <elliott> LOVEBRIDGE
23:28:44 <Vorpal> elliott, I was able to pirate 1.31
23:28:57 <elliott> Yar har fiddledy-dee.
23:29:55 <copumpkin> pikhq: I found it!
23:30:27 <copumpkin> ./11.03.09:18:44:07 <pikhq> http://www.alljapaneseallthetime.com/blog/data/Heisig_complete_v3.rtf Annoyingly, it's RTF.
23:30:31 <elliott> yep
23:30:32 <elliott> told you
23:30:33 <elliott> all lies
23:30:36 <elliott> ALL
23:30:36 <elliott> LIES
23:34:30 <elliott> Okay, making the monitor auto-build is hard enough that I'm just going to ask the mailing list to do it :)
23:40:10 -!- BeholdMyGlory has quit (Remote host closed the connection).
23:44:16 -!- cheater- has joined.
23:46:55 -!- cheater00 has quit (Ping timeout: 246 seconds).
23:57:42 -!- FireFly has quit (Read error: Operation timed out).
23:59:40 -!- augur has joined.
←2011-04-15 2011-04-16 2011-04-17→ ↑2011 ↑all