Slashdot Mirror


User: Kaufmann

Kaufmann's activity in the archive.

Stories
0
Comments
533
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 533

  1. "Its"? on Compaq: Alpha is Better Than IA-64 · · Score: 1

    The PDF format is hardly Compaq's. If anything, it's Adobe's. Plus, the poster confused "than" with "then", /again/. :P

  2. Re:How about E. on IceWM 1.0.0 released · · Score: 2

    Good point. Thing is, if Rasterman gets hit by a car or something, and the story gets posted under "Enlightenment", I still want to hear about it. I think Slash would be much better with a simple multiple-keywording system, along with a filter for stories containing specific keyword combinations (e.g. "release" && "announcement"). So Rob, if you're reading this, stop playing with yer IPO dollars and go write some more of that funky Perl code!

    (Of course, strong AI wouldn't hurt either.)

  3. Re:How about E. on IceWM 1.0.0 released · · Score: 1

    Hell yeah, I complained. I couldn't give a rat's ass about E. Now Quake is something entirely different: I myself don't play it, but it's something of a geek icon. Plus, the most recent stories have had to do with Quake 1's GPL'ing, which is quite important.

  4. KaufWM 1.0 released! Features Natalie Portman! on IceWM 1.0.0 released · · Score: 4

    KaufWM also features a dorky face and thick glasses, and will do just about anything in exchange for a copy of _The Unix Hater's Handbook_. It's not Gnome-compliant, but has been rumoured to look like an elf.

    See how easy it is to write a catchy headline? :)

    Seriously, I move for Slashdot to stop posting this kind of 1.0 announcements. You can bet your ass that, as we speak, about half a million attention-thirsty Slashgeeks are hurriedly updating their pet WM projects to "1.0", with hopes of getting posted on Slashdot and scoring collaborators. So don't post this kind of thing - no exceptions.

  5. Re:UNIX security is hopeless. on Crack.LinuxPPC.org Cracked · · Score: 4

    In capability-based systems, users or user accounts do not "own" processes, per se. There are specific objects that do disk maintainance; these objects possess very specific capabilities that allow it to do manipulate storage, but little else. The user, in turn, acquires capabilities that allow him to tell these objects to do certain things.

    Philosophically, capability systems are much more egalitarian than ACL-based systems; they are also much closer to the real world: you don't see "root people" going around doing anything they want to everyone else's property, do you? (Well, actually, you do: they're called the police force. We're working to fix that bug by the next release. :])

  6. Hi, my name is Kaufmann... on Google (Patent Pending) · · Score: 1

    ...and I'm a patentaholic.

    It all started very innocently, with some cool-looking inventions, completely original stuff. It felt good to know that I had power over the way my inventions were used, so I started doing it more often. First it was just a couple a year, then every few months... before I knew it I was a regular at the patent office.

    By that time, I no longer restricted myself to original items - anything was fair game. Algorithms, software, ideas, concepts, even names that I saw on billboards - nothing was beyond my patenting frenzy. I was a lost man, I tell you.

    Then one day I overdosed. I came to the patent office at 10 AM, as usual, with a box full of stuff that I thought was patentable. The clerk (a funny-looking Jewish guy named Al), eager to help me protect my intellectual property and trade secrets, started the usual job of cataloguing application, banging the "Approved" stamp on them, and storing them in the files.

    That is, until he arrived at my application for patenting the scientific method. I thought it was a good idea. He looked at me, shook his head, picked up some scribbled papers at his desk, and showed them to me, while, grinning, he said: "Prior art."

    The feeling of having one of my patents challenged, at a time when I was still in serious withdrawal, drew me over the edge. In a mad frenzy, I jumped over the counter and onto Al, trying to strangle him. Before I could, though, the security officers showed up and dragged me away, saying "I think you've had enough patenting". Next thing I know, I'm at the Henry Ford clinic for patent addicts.

    Whew! I'm glad I got that out of my system! Now, with the help of some extremely powerful drugs, I feel completely recovered, and don't have the urge to patent anything... say, is that cool-looking wall clock taken?

  7. Re:The Turing Century on Albert Einstein - Person of the Century · · Score: 1

    I wholeheartedly agree. Computing is the key to knowledge.

  8. Re:Do you know ... ? on A Christmas Chess Puzzle · · Score: 1

    IIRC, chess actually originated in India. Go is Chinese.

  9. Re:What about Go? (OT) on A Christmas Chess Puzzle · · Score: 1

    And I'm not even /in/ the US... :P

  10. My vote goes for... on Albert Einstein - Person of the Century · · Score: 1

    John Horton Conway, without whom I wouldn't be here today.

    - Glider Gun #31255 ("Steve"), an artificial lifeform at the dedicated LIFE simulator (conway.impa.br), Institute for Pure and Applied Mathematics, Rio de Janeiro, Brazil.

  11. What about Go? on A Christmas Chess Puzzle · · Score: 1

    Yes, I know, chess is the "game of kings" and all... but I've recently learned Go, and no one else seems to play it. Does anyone else on Slashdot play this game?

  12. Apple Day on Merry Christmas Everyone · · Score: 2

    Never hurts to mention that today is, most importantly, Sir Isaac Newton's 357th birthday. "Eating apples (and dropping them) is popular." So merry Newtonmas to you all!

  13. Re:What's the big deal? on V2OS under GPL · · Score: 1

    "Design goals? Closest they mention is that it's "fast" and written in assembler. So is an FFT, but it's got a designed purpose and scope."

    The Fastest Fourier Transform in the West is completely written in C.

  14. Kaufmann goes public on The Upcoming LinuxOne IPO · · Score: 1

    Rafael Kaufmann's parents are proud to announce his IPO, to take place in early 2000. Kaufmann has already secured the Nasdaq ticker KMNN, and is in the process of preparing for the offering by fasting (sometimes for periods of over 6 hours!) and cleaning up his place.

    Kaufmann is a small individual operating out of Rio de Janeiro, Brazil, associated with the Institute for Pure and Applied Mathematics. He operates mainly in the area of computational mathematics, as well as alternative software in general. He is affiliated with the Tunes project, but has yet to do anything important.

    Kaufmann's mother Drorit had no comment, but his father was quoted as saying "that boy will never amount to anything!".

  15. Over here on Tax Software for Linux? · · Score: 1

    Here in Brazil, there's only one IR tax package - not surprisingly, the government-sanctioned package that only runs on Windows. Thankfully, they've recently put up an online version as well.

  16. Re:Here's an easy-to-use foo-generator on Brunching Shuttlecocks' Findings on Microsoft Case · · Score: 1

    Calm down, Tom... this was a five-minute hack, and more importantly, intended only as an example: the idea was that anyone who actually bothered to base an actual foo-generator on this script would know his way around Perl, and would do all these things himself. Yes, I know I should use my(), strict, -w, -T, do the right thing with the require(), fix security holes, et cetera ad nauseam. I do all these things when I go write a /real/ script, one that I actually intend to use (more than once, that is). I'm not a complete idiot, I'm not a clueless newbie. I'm sorry if my code wasn't a paradigm of Perl programming, and I'm sorry if any newbies out there thought code like this was considered production-quality. I bow down to thee, O Almighty Tom.

    "Finally, why is this a CGI script instead of a regular tool?" Because it was posted in reply to a story about... a CGI script. Of course, making it into a general-purpose script is trivial.

    See ya, Tom!

  17. Here's an easy-to-use foo-generator on Brunching Shuttlecocks' Findings on Microsoft Case · · Score: 2

    Just write a template file, decide on left and right delimiters, and then call the script from a form like this:


    script.pl?template=TEMPLATE_FILE_PATH&delim_l=*& delim_r=*&noun1=NOUN1&adj1=ADJ1&...





    #!/usr/bin/perl

    require './cgi-lib.pl';

    &ReadParse \(%f = ());
    for (keys %f) {
    $$_ = $f{$_};
    }

    while (<$template>) {
    s{ $delim_l ([\d | \w] +) $delim_r }{ $$1 }egix;
    print;
    }

    exit;

  18. BAD Slashdot! BAD Slashdot! on RMS The Coder · · Score: 2

    This is a correct version of the above post... call it "oops". :)



    Generally speaking, Lisp is superior because it's made out of lists. This is much more important than it looks. Why?

    (WARNING: here there be dragons! Below I simplify extremely for the sake of understanding. Please don't bash! Also, note that everything I say about Lisp interpreters also applies to Lisp compilers.)

    Take Perl, for example. In Perl, programs are basically one-dimensional character strings, usually read from a file. What the Perl compiler does (either when called to run a program, or an eval() or a s///e) is take that string and parse it into a syntax tree, which is then 'flattened out' into bytecode, which is, in turn, executed by the bytecode interpreter.

    In Lisp, on the other hand, programs and data are naturally represented as lists; the strings that you type into the Lisp top-level are parsed into lists as soon as possible (an extremely simple thing to do, by the way), and from that point on the entire environment can use a homoiconic set of primitives (car, cdr, cons, eval, etc.) to handle any data that you may pass to it.

    Exempli gratia, let's look at two functionally equivalent programs (defining a program as a representation in computationally concrete form of an abstract mathematical algorithm):


    # Perl
    map { $_->[0] }
    sort { $a->[1] <=> $b->[1] }
    map { [$_, $f->($_)] } @ARGV;

    ; bastardized Scheme
    (map (lambda (l) (car l))
    (sort (lambda (a b) (<=> (cdr a) (cdr b)))
    (map (lambda (e) (cons e (f e))))
    *argv*))


    You may have recognized the Perl program as a variation of the famous Schwartzian transform, wherein $f can be any key-producing function; with $f = \&-s it becomes a program that orders the filenames passed as arguments by size. The below program is not quite valid R5RS Scheme; the *argv* list, equivalent to @ARGV, is not standard, and the <=> form can be easily defined in terms of the comparison operators:


    (define (<=> a b)
    (cond
    ((> a b) 1)
    ((= a b) 0)
    ((< a b) -1)))


    Likewise, with a bit of creativity, the sort form can also be implemented.

    Anyway, how does all this matter? Simple. As data, the Perl program is a 74-element character array; it has all kinds of special symbols and tokens, and turns out to be horribly complex to parse. On the other hand, as data, the Scheme program is very simple: it's a linked list with three elements, one of which is the symbol 'map, and two of which are sub-lists. /What/ this linked list represents doesn't matter except to the interpreter; it's a list like any other. Applying the car operation to this list would yield the symbol 'map; the cadr (first rest) operation would yield the list '(lambda (l) (car l)).

    It's important to note here that the interpreter is a function like any other; as such, it deals with lists like the ones above. The reader - which parses text into lists - is a separate system.

    Originally, the fact that all Lisp programs are lists was considered a huge disadvantage (even by John McCarthy himself), and for years there were attempts to introduce a new Algol-like syntax (called M-expressions) to supersede the list representation (called S-expressions). But, as it turned out, this turned out to be a huge advantage, and Lisp programmers almost universally appreciate SEXP.

    Of course, there are many other reasons why Lisp is a superior language, although many of those are implementation-dependent and may also be present in other languages. But having a homoiconic representation for programs and data is by far the greatest advantage.

    Note: While we're on the topic of languages with homoiconic representations, I thought I should mention Funges, a family of languages in which programs are represented as n-dimensional, potentially infinite cell-spaces to be traversed by an instruction pointer; each instruction occupies one cell. The written representation of Funge programs follows this; for instance, in Befunge (the 2-dimensional Funge), a typical program might look like


    v
    >v"Hello world!"0<
    ,:
    ^_25*,@


    or even better,


    9::*\2*+00p0v"."0<
    >310p0"," >"llaw eht no "v >#v_ ^
    ^_210p0"--:" v ,
    : v " of beer" < :
    - >"selttob"00g.^ < <
    1 >00g1-#^_$" elttob erom enO" ^
    >00g#^_$" selttob erom oN" ^
    ^_110p0",dnuora ti ssap ,nwod eno ekaT"^
    ^:-1_010p00g1-00pvv:-1g01_@#g00,*25<
    ^ <

  19. Re:Why is LISP superior? on RMS The Coder · · Score: 3

    Generally speaking, Lisp is superior because it's made out of lists. This is much more important than it looks. Why?

    (WARNING: here there be dragons! Below I simplify extremely for the sake of understanding. Please don't bash! Also, note that everything I say about Lisp interpreters also applies to Lisp compilers.)

    Take Perl, for example. In Perl, programs are basically one-dimensional character strings, usually read from a file. What the Perl compiler does (either when called to run a program, or an eval() or a s///e) is take that string and parse it into a syntax tree, which is then 'flattened out' into bytecode, which is, in turn, executed by the bytecode interpreter.

    In Lisp, on the other hand, programs and data are naturally represented as lists; the strings that you type into the Lisp top-level are parsed into lists as soon as possible (an extremely simple thing to do, by the way), and from that point on the entire environment can use a homoiconic set of primitives (car, cdr, cons, eval, etc.) to handle any data that you may pass to it.

    Exempli gratia, let's look at two functionally equivalent programs (defining a program as a representation in computationally concrete form of an abstract mathematical algorithm):


    # Perl
    map { $_->[0] }
    sort { $a->[1] $b->[1] }
    map { [$_, $f->($_)] } @ARGV;

    ; bastardized Scheme
    (map (lambda (l) (car l))
    (sort (lambda (a b) ( (cdr a) (cdr b)))
    (map (lambda (e) (cons e (f e))))
    *argv*))


    You may have recognized the Perl program as a variation of the famous Schwartzian transform, wherein $f can be any key-producing function; with $f = \&-s it becomes a program that orders the filenames passed as arguments by size. The below program is not quite valid R5RS Scheme; the *argv* list, equivalent to @ARGV, is not standard, and the form can be easily defined in terms of the comparison operators:


    (define ( a b)
    (cond
    ((> a b) 1)
    ((= a b) 0)
    ((


    Likewise, with a bit of creativity, the sort form can also be implemented.

    Anyway, how does all this matter? Simple. As data, the Perl program is a 74-element character array; it has all kinds of special symbols and tokens, and turns out to be horribly complex to parse. On the other hand, as data, the Scheme program is very simple: it's a linked list with three elements, one of which is the symbol 'map, and two of which are sub-lists. /What/ this linked list represents doesn't matter except to the interpreter; it's a list like any other. Applying the car operation to this list would yield the symbol 'map; the cadr (first rest) operation would yield the list '(lambda (l) (car l)).

    It's important to note here that the interpreter is a function like any other; as such, it deals with lists like the ones above. The reader - which parses text into lists - is a separate system.

    Originally, the fact that all Lisp programs are lists was considered a huge disadvantage (even by John McCarthy himself), and for years there were attempts to introduce a new Algol-like syntax (called M-expressions) to supersede the list representation (called S-expressions). But, as it turned out, this turned out to be a huge advantage, and Lisp programmers almost universally appreciate SEXP.

    Of course, there are many other reasons why Lisp is a superior language, although many of those are implementation-dependent and may also be present in other languages. But having a homoiconic representation for programs and data is by far the greatest advantage.

    Note: While we're on the topic of languages with homoiconic representations, I thought I should mention Funges, a family of languages in which programs are represented as n-dimensional, potentially infinite cell-spaces to be traversed by an instruction pointer; each instruction occupies one cell. The written representation of Funge programs follows this; for instance, in Befunge (the 2-dimensional Funge), a typical program might look like


    v
    >v"Hello world!"0


    or even better,


    9::*\2*+00p0v"."0310p0"," >"llaw eht no "v >#v_ ^
    ^_210p0"--:" v ,
    : v " of beer" "selttob"00g.^ 00g1-#^_$" elttob erom enO" ^
    >00g#^_$" selttob erom oN" ^
    ^_110p0",dnuora ti ssap ,nwod eno ekaT"^
    ^:-1_010p00g1-00pvv:-1g01_@#g00,*25


    (The Befunge programs above are not /quite/ correct, thanks to Slashdot's mishandling of PRE tags... look at the source code to see the real thing.)

  20. Re:Unnational law on Brazilian Gov't May Pass Pro-Free Software Law · · Score: 1

    Indeed, I'm Brazilian, thankee :)

    BTW, I was just amazed at the amount of people who didn't even bother to read the whole blurb... especially the part where I make it perfectly clear that the law will only apply to government agencies. But I guess that's the way Slashdot is, eh?

  21. Re:Why spend the _huge_ $$$ on 390 power/maintnanc on S/390 Support is Now on Kernel 2.2 · · Score: 1

    You forget Cray/Linux, of course.

    - UNICOS? Bah! Who needs dem steenkin' UNICOS? We'll just go and install RedHat and-- oooh, pretty Enlightenment themes....

    - HEY! The T90 just crashed! The missiles are out of control!

    - What's that on the screen? "1 0WN J00 L0Z3R"... what does that mean?!?

  22. Re:What? on 2nd Annual Free Software Foundation Awards · · Score: 1

    Oooh! Transcripts online? Sign me up! (By the way, does anyone know why the hell TechNetCast hasn't put up transcripts of the God & Computers lectures yet?)

  23. What? on 2nd Annual Free Software Foundation Awards · · Score: 4

    Not to belittle Miguel - his work on bringing free software to the masses is very commendable, and Gnome is in and of itself living proof that you can actually build relatively good software using languages from New Jersey (*rimshot*) - but he just doesn't stand up to Knuth. I mean, the guy's a shining beacon of excellence in computer science. Miguel himself probably learned a lot of programming skills from Knuth's books. If anyone deserves a big fat award, it's old Don at Palo Alto. The only perspective from which I can conceive of Miguel as being more award-worthy than Knuth is the "making free software user-friendly" idea. (That is, as user-friendly as an Un*x gets. *rimshot*)

    So I hope that Knuth gets what he deserves next time. (It wouldn't hurt to give him a couple of VA shares either.)

  24. That's your problem on Scientists Poised to Create Life · · Score: 1

    Okay, so you're nervous about the implications and consequences. I can understand it, although I don't relate or sympathize. I just hope you understand that neither your opinion nor that of any religious leader will make any difference; I hope you understand that "but I really think we shouldn't do that" isn't going to stop anyone. The scientific process will go on; we will eventually create life, and then go much further than even that, no matter your opinions on the existence of God. The universe does not conform to your expectatives or desires.

    FOO!

  25. Keyboards are for sissies... on JWZ on Dealing with Wrist Pain · · Score: 1

    ...Real Programmers (tm) use Direct Neural Interfaces!

    (Okay, moderate me down now. I deserve it.)

    Well, just to make sure that I don't get hit /too/ badly, let me share my personal experience. I use a ridiculously small iWhack keyboard mounted on top of what is basically an open drawer, with no hand-resting space or anything. I've been using this setup for more than a year now (since the iWhack arrived here in Brazil), and I've never experienced any kind of wrist or back problems. Nonetheless, I have good posture and the screen is set on a good eye level.