Actually, there is little relationship between epistemic issues in wikipedia and appeal to authority fallacy. That fallacy requires inference from "Authority X says Y" to "Y is true." However, it is not fallacious to put higher degrees of belief into a genuine authority's claim than just any old person you find on the street. Sure, but what does this "genuine authority" mean other than yet another degree of
authorization of an authority? Does this not imply already that the mere claim to authority
is just not enough, even when confronted with any person from the street?
The problem is that on wikipedia, anyone with access to a computer in supposed to be in an equally good position to judge the veracity of claims or validity of arguments. So, is this then kind of thing that "genuine authority" is trying to suppress?
(While I'd love for people to buy my book on physics (well, if I wrote one), I think they should, if they are in the market for a physics book, buy Hawking's instead.) But also, you could write the book instead. I mean, Hawking also talks about philosophers and their
writings, but that does not imply that his books provide top-notch philosophical expertise on the issues of quantum gravity. Similar, in the opposite direction, happens with wikipedia: exactly because not every person from the street and with the computer sits down to write or edit an article for wikipedia, these wikipedians are becoming experts, of non-genuine kind...
But it is does seem to be a methodological error to throw away the idea of expertise and the relevant sort of authority that comes with it. ...and, thus, my question to you is: is there a methodological error involved with wikipedia?
Apparently, dudes have some applications on their mind, as they say it in the paper, inconspicuously titled On-Chip Evolution Using a Soft Processor Core Applied to Image Recognition. From the abstract,
A suitable hardware architecture for image recognition
has been proposed, and it is applied to a face recognition
task. Maybe hooking this up with security cameras to check those faces there?
One example of an adapting application could be a camera with an
integrated chip, assigned to detect a certain person. Over
time the system could receive new images of the person, or
images of other persons which should not be detected, to be
added to the training set.
... is here: http://critticall.com/underconstruction.html And please, don't bother to comment, before you test it. Apparently, they've tested it somewhat on this web site already: while it seems to be faster than QuickSort, sometimes very little, sometimes a lot (the table at the bottom of the page), they haven't checked its
performance against merge-sort, but they've written "As this algorithm somehow managed to escaped every human to spot it for the past forty years, it's quite conceivable, it's not the end of the story, yet."
I never made any comment on the issue of hardware vs software. Dude, you need to work on your reading comprehension;P Well, you did comment on the issue of hardware vs software by invoking the Bekenstein bound.
Excuse me? We're talking string manipulation. There are only so many things you can do with a string. Please name a fundamental string operation that isn't widely implemented in standard libraries.
You're talking in circles. My whole point is that you should either assume your library is "doing the right thing" or you should be using another library.
There are only so many things you can do with strings: about an infinite number of them.
Example: strcmp. It's widely implemented, and it still does not do exactly what
some people expect or find useful, thus strncmp, which is the same but different.
As fundamental as the comparison of two strings may be, it is no less difficult to define:
You can thing of it as a comparison of two continuous blocks of memory terminated
by 0, or defined by their lengths, but also as a character-by-character comparison
of two texts, and then there are all sorts of useful routines that
are not there: comparison of two strings independently of the case in which letters
are written, or the number of spaces between words, or all kinds of reductions to normal forms,
or pattern matchings for which a full-blown optimally programmed regular-expression
routines are just taking too much time to execute and/or are too long.
If you're doing exotic stuff, then yes, you probably need to implement your own library. (Though probably not in assembler -- your compiler is probably a better assmbler coder than you are.) But for common use cases, like string manipulation, there are already plenty of solid libraries out there you would be hard put to improve upon. I don't know whether examples above qualify as "exotic" or not.
In any case, if it happens now that somebody's program spend 50% of time spinning
string routines, being as fundamental as they are, well, getting them 20% faster is
still 10% of overall gain. Then, the more one compute with the computer, the more
these 10% mean, etc.
In short, I'm not arguing with you that there are no good string libraries around, just that
even with those there are things that sometimes can benefit from assembly...
Like most netidiots, you place an excessive value on getting in the last word. You should bear in mind that in order to get in the last word, you have to actually say something. Would not saying something be the reason to have a dialog rather than "to get in the last word"? But then, this question aside, and, to be in accord as much as possible with what you wrote, the last word is yours. I promise I won't reply to your reply unless, of course, you say something.
You should read up about concept albums. Typically, the bands that produced concept albums were better overall. I think that this is likely because making a concept album requires much more thought and care for each and every song. A hit or singles album typically is a mere collection of songs, each of which has the sole goal of getting you to listen to it more than once. Concept albums are art. Singles albums are entertainment. Have you been reading up wikipedia?
(This is a generalization which does not always hold true, but is a decent rule of thumb.) but then, there is also raw material... raw material... (you know, echo effect, like that TG stuff)
This is why there has been a trend in the last 10 years towards music tracks getting longer. In 1990 a track that lasted 5 minutes was daring, and one that lasted 10 minutes would be unheard-of -- except on the revered EP, of course. Nowadays 10 minute tracks are nothing out of the ordinary, and 20 minute tracks are often seen. And people like them, and buy them. Obviously that's going to change the shape of albums too.
I don't see this as the demise of the album, I see it as the demise of the 1980s-style album that the parent describes. There's still plenty of room for albums that are coherent works of art (even if it does feel like a return to the days of Pink Floyd, as others here have noticed). People still write hour-long symphonies for classical orchestras -- and that's an area of the music industry that is booming at the moment. Indeed, and in the 70's TG's made, well, "24 hours of TG" which lasted, um, 24 hours...
The man sounds like a gravel truck in need of maintenance, his lyrics are about as sophisticated as nursery rhymes, and the backing sounds aren't worthy of any note whatsoever All that comes to my mind from Tom Waits right now is: "all I've got are pockets full/of flowers on my grave/oh summer is gone/I remember it best/back in the good old world" (or something like that).
Do you have something to say, or are you just talking to yourself? When you said:
If the library is any good, it will have been carefully planned and implemented by computer scientists who have thought through every possible efficiency and reliability issue. you were on the right track to assembly, just going in the wrong direction: it is exactly because
there is no such library that the assembly is interesting. Even if we hypothetically assume the existence of
such a library where "every possible efficiency and reliability issue" was taken into account, there will still remain the question of the efficient implementation of inlined functions from the library. Even if your hypothetical computer scientists programed everything optimally in assembly, there will still be some functions needed that are not in the library, or are in the library but not doing exactly the right thing (e.g doing too many things) and so on.
...The problem is these provide a barrier to genuine human interaction where our 5 senses come into play.[...]The most polite, 'together' and successful people I know[...]use voice telephone calls and face to face meetings. What is then the genuine human interaction? "face to face meetings" and "voice telephone calls"?
like the third one best because it actually implies something useful to people about Linux: it has what you want on PCs and Macs (even games via Wine and Cedega, but they don't mention that). I dunno, for me by far the best part was the hammer action in the second part.
It conveys in a subtle manner a rather simple solution of the Windows vs Linux debate.
Asking why study Assembler is a little like asking "why study Latin." It's important to have an understanding of the low level programming because it will help you understand what's going on when using something higher level like malloc(), which will in turn help you write better programs. No, not really: people don't write in Latin anymore, but they do in assembler. Assembler is alive and well.
Actually, many compilers are written in C. When you think of it, you will find out that it's perfectly possible. Only the first compiler for a platform needs to be written in assembly. This is true only if you are talking about generic compilers, but, you know, nowadays most compilers must be optimizing compilers exactly in order to be competitive with assembler, and you can't write an optimizing compiler without understanding CPU architecture etc.
Sure, you want to know how a computer works inside. But frankly, I don't think studying assembler is a very good way to do it. Sure, you would like to program your computer from the outside, but using which programming language exactly?
If you hadn't been wasting so much time obsessing over pointers, you'd have heard Tony Hoare's famous quote: "We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil". Is using C then a premature optimization?
Nowadays, a serious programmer uses a standard string library, and doesn't worry about its precise implementation. If the library is any good, it will have been carefully planned and implemented by computer scientists who have thought through every possible efficiency and reliability issue. Do you actually believe this or you are just joking?
Moreover, there is absolutely no need to use assembly language either to understand this or to write it.
Indeed, I wrote my own version of stpcpy (actually, the wide character version wcpcpy) in just a minute recently for portability to non-GNU environments, in C. Maybe nowadays there is no absolute need for assembler, but even in your example,
if a program is to use strcpy a lot, assembler implementation might be beneficial to gain an
extra speed. Portability is a great thing, but there just might be that one architecture for which
assembler implementation is preferred to the compiler's.
This is especially true for small routines doing low-level tasks.
In the current Standings for Al Zimmerman's programming contest, you see a lot of entries that have many submissions, but aren't even close to the optimal result. Do you mean "the current best result" instead of "the optimal result"? Are optimal results known at all for these problems?
And yet, there's a person who has effectivly maxed-out their score, with a significant lead in the third category compared to the many other submissions. While he has at least one non-top submission, it's not something obtainable just by throwing as much computer power as possible. This also might depend on the available computer power: if two contestants have algorithms A and B, and A is say 5 times faster in improving results than B, but B has 6 times more computing power, either because of the used hardware or software optimizations (that might even include assembler), B would win. Of course, with programming of heuristic searches, having a good high-level programming language for algorithm development combined with the coding of the current best algorithm in the low-level language seems to be the winning strategy.
There are a lot of missing features in C which require assembly nowadays :
- bit rotations => have to be coded by ORing bit shifts and masks
- bit counting (FFS/FLS) => have to be cleverly coded to avoid iterations Interestingly, FORTRAN 90 comes with ISHIFTC intrinsic function for
bit rotations, but the bit counting is still not there as far as I know.
If there is existence, doesn't that imply that there is some thing, anything, which exists? Can there be existence without anything actually existing? If there can be existence without anything existing, then what is the difference between nothingness and existence? If we take for granted or prove that some things exist, then there cannot be existence without
anything actually existing, and the question then is not whether there is existence, but whether there is nothingness.
If we take for granted or prove nothingness, that would be nihilism I suppose, this means
that nothing is. Which also means that existence is not.
If 'existence' means that something exists, and if nothing is the opposite of existence, then doesn't that imply that nothing then is simply the absence of some-thing? Yes indeed, I would agree with you, but existence then is not the same as Being.
When talking about what "opposite" means, well, we might as well define it as the relation between Being and Nothing, because the latter two would be more fundamental concept than "opposite". In this scheme we would be able to derive also what "relation between" as such is, by referring to Being and Nothing: they are in relation as such.
This kind of shows why in metaphysics one cannot just start with "something is" without ever questioning whether nothing is.
well said.
... is here: http://critticall.com/underconstruction.html And please, don't bother to comment, before you test it. Apparently, they've tested it somewhat on this web site already: while it seems to be faster than QuickSort, sometimes very little, sometimes a lot (the table at the bottom of the page), they haven't checked its performance against merge-sort, but they've written "As this algorithm somehow managed to escaped every human to spot it for the past forty years, it's quite conceivable, it's not the end of the story, yet."There are only so many things you can do with strings: about an infinite number of them. Example: strcmp. It's widely implemented, and it still does not do exactly what some people expect or find useful, thus strncmp, which is the same but different.
As fundamental as the comparison of two strings may be, it is no less difficult to define: You can thing of it as a comparison of two continuous blocks of memory terminated by 0, or defined by their lengths, but also as a character-by-character comparison of two texts, and then there are all sorts of useful routines that are not there: comparison of two strings independently of the case in which letters are written, or the number of spaces between words, or all kinds of reductions to normal forms, or pattern matchings for which a full-blown optimally programmed regular-expression routines are just taking too much time to execute and/or are too long. If you're doing exotic stuff, then yes, you probably need to implement your own library. (Though probably not in assembler -- your compiler is probably a better assmbler coder than you are.) But for common use cases, like string manipulation, there are already plenty of solid libraries out there you would be hard put to improve upon. I don't know whether examples above qualify as "exotic" or not. In any case, if it happens now that somebody's program spend 50% of time spinning string routines, being as fundamental as they are, well, getting them 20% faster is still 10% of overall gain. Then, the more one compute with the computer, the more these 10% mean, etc.
In short, I'm not arguing with you that there are no good string libraries around, just that even with those there are things that sometimes can benefit from assembly...
...just prematurely optimized...
...The problem is these provide a barrier to genuine human interaction where our 5 senses come into play.[...]The most polite, 'together' and successful people I know[...]use voice telephone calls and face to face meetings. What is then the genuine human interaction? "face to face meetings" and "voice telephone calls"?- bit rotations => have to be coded by ORing bit shifts and masks
- bit counting (FFS/FLS) => have to be cleverly coded to avoid iterations Interestingly, FORTRAN 90 comes with ISHIFTC intrinsic function for bit rotations, but the bit counting is still not there as far as I know.
When talking about what "opposite" means, well, we might as well define it as the relation between Being and Nothing, because the latter two would be more fundamental concept than "opposite". In this scheme we would be able to derive also what "relation between" as such is, by referring to Being and Nothing: they are in relation as such.
This kind of shows why in metaphysics one cannot just start with "something is" without ever questioning whether nothing is.
well said...