I dunno. They probably think you sound just as stupid when you say that the Athlon FX is great because it has an integrated DDR memory bus, or that its ISA has been extended to support 64-bit operations via a REX prefix...
If you don't know what the jargon means, than it sounds stupid to you.
Hmm, that's not entirely a fair characterization. The iPod is high quality. There is stuff that's cheaper, but it feels cheap (plasticky) and looks cheap (plasticky). Even today, the iPod is still the smallest, sleekest, and nicest looking MP3 player you can buy. It also has great audio quality, which makes it the complete package. The has great audio quality, but is a lot larger. The new Sonicblue is small (though not smaller in terms of total volume) but looks and feels cheap. Overall, the iPod makes you feel good. Its something you don't get tired of touching and looking at, like an expensive watch.
There are hard-to-measure factors that come into play simply because we are humans, and not completely rational beings. Life isn't just about price/performance ratio.
Actually, its a sign of elegance. If something as seemingly basic as a vector can easily be defined on top of existing primtives, then its not so basic, and doesn't belong in the language proper.
I think dylan's solution to this is ideal. In Dylan, get()/set() routines are automatically generated. This isn't a one-off hack, but a consequence of the object model. In Dylan, everything is a function call, so the only way to allow access to object attributes is through get()/set() methods.
g++ has a long way to go. It was never great, though when the 3.x series first arrived it was better than many. It's a relatively long way off the pace of the serious players now, though, both in standards compliance and in performance. I guess that's the price you pay for keeping the back-end code so widely portable. >>>>>>>> Whoa. What tests have you been reading? Your analysis is years out of date. GCC's complience is absolutely competitive with VS.NET, and in the most recent benchmarks (see CoyoteGulch's) show it to be very competitive with Intel C++.
I was talking about the performance since the 3.x series started, when its primary competition was VC++ 6.x and VS.NET 2002. Intel's compiler wasn't as good as the 3.x series until around 7.0 or 7.1. This assesment is from personal experience using all of these compilers. Note, that my primary experience with GCC and ICC are on Linux, while my experience with VS is (of course) on Windows. Lastly, I'm using both VS.NET 2003 and GCC on a C++ project (written in "modern" style with Boost and STL) and I haven't encountered problems with either.
Um, there are an entire catagory of languages called "object-functional" that have (surprise!) functional control flow with object-oriented data representation. The two concepts are completely orthogonal. A summary of the major ones:
Actually, for awhile, G++ was leading the way in standards compliance. Even today, there is only one EDG-based compiler that can beat it (Comeau) and VS.NET 2003 is just about equal to it.
How long has it been since you installed XP and Linux? Couple of points:
1) The Windows install boots up to a very unfriendly text-based initial setup. You have to do your partitioning with a curses-style UI rather than a proper GUI. RedHat boots right up to a GUI, full of pretty pictures of flowers and puppies.
2) Windows' install is harder. Its got more choices, and less explanation. The RedHat install is very wizard-like, with helpful sidebars explaining what each step does. The windows install just drops up in front of a clock-config applet or a network-config applet and expects you to figure it out.
3) Linux comes with all drivers by default. My friend installed RedHat 9 on his vanilla Dell Dimension desktop, and the system configured every piece of hardware and just booted up. All he had to say was that the system should auto-configure the network, and that was that. He installed XP pro on the same machine a few months before and had to install all sorts of drivers. The only drivers we had to install on the RedHat box were the binary NVIDIA drivers, and we had to do that on the Windows box as well.
I can do a RedHat install in about 45 minutes on a fast machine, including basic configuration and installing apt4rpm. A XP install takes me at least an hour and a half. Of course, all of these pale in comparison to Gentoo. Just configure the partitions and start the compile. Then, come back in about 12 hours (or 40 minutes if you install the binary reference platform), edit some files in/etc, and reboot. My personal time investment in a Gentoo install is just over 10 minutes.
You've got a very good point. First, Mozilla takes about an hour to download over a 56k modem. That's an immediate turn-off for any user trying to get at it. Second, how many users are even aware that the browser is a seperate component that they have a choice in? I mean half the population thinks that AOL is the internet. Even more knowledgable users might not be aware that Internet Explorer is just one of many browsers, just as they may not be aware that you can replace Explorer with something like Litestep.
First of all, there are about 5 different releases of KDE 3.1. 3.1.0 through 3.1.4. Second, different distros change the defaults. RedHat's KDE 3.1.x is rather different from Gentoo's.
a) The only reason that most people can setup a Windows box is because it comes set up already. Configuration is a non-issue these days. When RedHat 8 came out, it was easy enough for computer nephytes to do anything they could in Windows. Intermediate users will still have problems (because intermediate users have problems that RedHat doesn't have nice GUI solutions for) but that's a seperate issue.
b) Windows nerds are just as rude as Linux nerds. By and large, nerds (unfortunately) have poor social skills. Windows nerds are just as rude as Linux nerds.
Not trying to nitpick, but how many truly positive monumental advances in the human condition were made by a government entity? Mass production? The Industrial Revolution? The cure for Polio? >>>>>>>>>>>> If you consider the Industrial Revolution to be truely positive, then I'd say lots advances have been made by government entities. Read up on how Napoleon, by bringing in beuraucrats (and other people we love to hate) turned France into a world power. More recently, there was the space program, advances in military technology with commercial applications, as well as many of the advances in physics. Particularly in science, we have gotten to the point where conducting experiments is too expensive for individual scientists, and often doesn't have enough of an immediate payoff for large corporations. Thus, if we care about these forms of research, then we have no choice but to have the government do it.
--- This discussions always bring up an interesting misconceptions about capitalism. Capitalism doesn't result in the world continually becoming better. In theory, it merely ensures that entities will make the most efficient possible use of resources. This usually corrolates to making the world better, but even most economists agree that there are many cases that require government intervention.
You dont build for the current apps, you build for future apps.I think HW rendering makes plenty of sense for rendering the entire UI because future UIs can be made more complex. >>>>>>>>> The problem is that its is improbable that future UIs will be complex enough to warrent rendering *everything* via hardware. Software vector graphics (Anti-Grain) is fast enough to render the famous "Tiger" SVG at high resolution in real time on a Duron 700. You can spin it around, resize it, and generally abuse it at full speed. Even super futureistic UIs like xeofreestyle.com run fast enough in software. It just doesn't seem worth it to bother with it, and there are a lot of negative points to rendering in hardware.
I can still see a big difference between SVG and traditional rendered themes. >>>>>>>> In what way?
Thats what rasterman think's and hes right for now, but this is X we are talking about here, if there will ever be hardware support for these things it MUST be through X, and therefore through cairographics. >>>>>>>>> Eventually, KSVG should go through Cairo, yes. But there is no point in moving everything over to Cairo.
Actually Carl Worth and Keith Packard specifically state that we will be able to do alpha channelling once they finish with cairographics, cairographics will use Xrender and Xrender uses the hardware. >>>>>>> Where did they say that? Cairo really has nothing to do with alpha channel. I think you're misunderstanding whatever you read.
There is a big difference between a web browser and an interface. My games which run in software run slow, >>>>>>>> Games are totally different from UIs. They throw tons of elements at the screen at the same time. In comparison, UIs (even complicated ones) throw little bits of data at the screen at a time (I'm ignoring canvases, the views inside apps that can be quite complex).
The Apple Cinema displays are not high resolution in the way we're talking about. The 23" Cinema display is only 98 dpi, which isn't that much higher than your average display. If OS X's UI elements are designed for your average monitor (say, a 1024x768 17" monitor --- 75 dpi), something that is supposed to be 1" high will only be a little over half and inch high on a high-res 133 dpi laptop LCD. On the Cinema display, they'd be 3/4s of an inch high, which is much more bearable.
how big is libart? >>>>>>> About 10,000 lines last time I checked (a few years ago). But its some rather excellent and sharply written code. Rewriting it to its current level of quality would be non-trivial.
I dunno. They probably think you sound just as stupid when you say that the Athlon FX is great because it has an integrated DDR memory bus, or that its ISA has been extended to support 64-bit operations via a REX prefix...
If you don't know what the jargon means, than it sounds stupid to you.
Hmm, that's not entirely a fair characterization. The iPod is high quality. There is stuff that's cheaper, but it feels cheap (plasticky) and looks cheap (plasticky). Even today, the iPod is still the smallest, sleekest, and nicest looking MP3 player you can buy. It also has great audio quality, which makes it the complete package. The has great audio quality, but is a lot larger. The new Sonicblue is small (though not smaller in terms of total volume) but looks and feels cheap. Overall, the iPod makes you feel good. Its something you don't get tired of touching and looking at, like an expensive watch.
There are hard-to-measure factors that come into play simply because we are humans, and not completely rational beings. Life isn't just about price/performance ratio.
Actually, they didn't. The Dell cluster was cheaper, 3m vs 5.2m. The article was corrected.
Well, you also have to factor in the cost of Mellanox and the coolng setup, which can easily run into the thousands per node.
Actually, its a sign of elegance. If something as seemingly basic as a vector can easily be defined on top of existing primtives, then its not so basic, and doesn't belong in the language proper.
I think dylan's solution to this is ideal. In Dylan, get()/set() routines are automatically generated. This isn't a one-off hack, but a consequence of the object model. In Dylan, everything is a function call, so the only way to allow access to object attributes is through get()/set() methods.
Interesting. I've had the following ATA HDDs:
210MB western digital
1GB western digital
6.4GB Maxtor
8.4GB IBM
(2) 20GB Maxtor
40GB IBM
30GB Toshiba
I've never had a single one of them fail. Even the 210MB (over 10 years old) was still running when I tried it a few months ago.
Jesus. I remember the first time I tried to upgrade my HDD (to a monsterous 1GB) prices were like $0.50 per MB!
g++ has a long way to go. It was never great, though when the 3.x series first arrived it was better than many. It's a relatively long way off the pace of the serious players now, though, both in standards compliance and in performance. I guess that's the price you pay for keeping the back-end code so widely portable.
>>>>>>>>
Whoa. What tests have you been reading? Your analysis is years out of date. GCC's complience is absolutely competitive with VS.NET, and in the most recent benchmarks (see CoyoteGulch's) show it to be very competitive with Intel C++.
I was talking about the performance since the 3.x series started, when its primary competition was VC++ 6.x and VS.NET 2002. Intel's compiler wasn't as good as the 3.x series until around 7.0 or 7.1. This assesment is from personal experience using all of these compilers. Note, that my primary experience with GCC and ICC are on Linux, while my experience with VS is (of course) on Windows. Lastly, I'm using both VS.NET 2003 and GCC on a C++ project (written in "modern" style with Boost and STL) and I haven't encountered problems with either.
Um, there are an entire catagory of languages called "object-functional" that have (surprise!) functional control flow with object-oriented data representation. The two concepts are completely orthogonal. A summary of the major ones:
Ocaml
O'Haskell
Dylan
Common Lisp (CLOS)
Scheme (TinyCLOS, GLOS, Bigloo)
Goo
And probably a bunch of others I forgot.
As of 7.x, anyway, ICC does use the EDG front-end. I can verify this because I've got it sitting on my harddrive :)
Actually, for awhile, G++ was leading the way in standards compliance. Even today, there is only one EDG-based compiler that can beat it (Comeau) and VS.NET 2003 is just about equal to it.
How long has it been since you installed XP and Linux? Couple of points:
/etc, and reboot. My personal time investment in a Gentoo install is just over 10 minutes.
1) The Windows install boots up to a very unfriendly text-based initial setup. You have to do your partitioning with a curses-style UI rather than a proper GUI. RedHat boots right up to a GUI, full of pretty pictures of flowers and puppies.
2) Windows' install is harder. Its got more choices, and less explanation. The RedHat install is very wizard-like, with helpful sidebars explaining what each step does. The windows install just drops up in front of a clock-config applet or a network-config applet and expects you to figure it out.
3) Linux comes with all drivers by default. My friend installed RedHat 9 on his vanilla Dell Dimension desktop, and the system configured every piece of hardware and just booted up. All he had to say was that the system should auto-configure the network, and that was that. He installed XP pro on the same machine a few months before and had to install all sorts of drivers. The only drivers we had to install on the RedHat box were the binary NVIDIA drivers, and we had to do that on the Windows box as well.
I can do a RedHat install in about 45 minutes on a fast machine, including basic configuration and installing apt4rpm. A XP install takes me at least an hour and a half. Of course, all of these pale in comparison to Gentoo. Just configure the partitions and start the compile. Then, come back in about 12 hours (or 40 minutes if you install the binary reference platform), edit some files in
You've got a very good point. First, Mozilla takes about an hour to download over a 56k modem. That's an immediate turn-off for any user trying to get at it. Second, how many users are even aware that the browser is a seperate component that they have a choice in? I mean half the population thinks that AOL is the internet. Even more knowledgable users might not be aware that Internet Explorer is just one of many browsers, just as they may not be aware that you can replace Explorer with something like Litestep.
First of all, there are about 5 different releases of KDE 3.1. 3.1.0 through 3.1.4. Second, different distros change the defaults. RedHat's KDE 3.1.x is rather different from Gentoo's.
a) The only reason that most people can setup a Windows box is because it comes set up already. Configuration is a non-issue these days. When RedHat 8 came out, it was easy enough for computer nephytes to do anything they could in Windows. Intermediate users will still have problems (because intermediate users have problems that RedHat doesn't have nice GUI solutions for) but that's a seperate issue.
b) Windows nerds are just as rude as Linux nerds. By and large, nerds (unfortunately) have poor social skills. Windows nerds are just as rude as Linux nerds.
Um, what KDE are you using? 3.1 ships by default with startup notification enabled. 3.2 has a cool little bouncing cursor as well.
See. This was the "misunderstanding" of capitalism I mentioned earlier :)
Not trying to nitpick, but how many truly positive monumental advances in the human condition were made by a government entity? Mass production? The Industrial Revolution? The cure for Polio?
>>>>>>>>>>>>
If you consider the Industrial Revolution to be truely positive, then I'd say lots advances have been made by government entities. Read up on how Napoleon, by bringing in beuraucrats (and other people we love to hate) turned France into a world power. More recently, there was the space program, advances in military technology with commercial applications, as well as many of the advances in physics. Particularly in science, we have gotten to the point where conducting experiments is too expensive for individual scientists, and often doesn't have enough of an immediate payoff for large corporations. Thus, if we care about these forms of research, then we have no choice but to have the government do it.
--- This discussions always bring up an interesting misconceptions about capitalism. Capitalism doesn't result in the world continually becoming better. In theory, it merely ensures that entities will make the most efficient possible use of resources. This usually corrolates to making the world better, but even most economists agree that there are many cases that require government intervention.
You dont build for the current apps, you build for future apps.I think HW rendering makes plenty of sense for rendering the entire UI because future UIs can be made more complex.
>>>>>>>>>
The problem is that its is improbable that future UIs will be complex enough to warrent rendering *everything* via hardware. Software vector graphics (Anti-Grain) is fast enough to render the famous "Tiger" SVG at high resolution in real time on a Duron 700. You can spin it around, resize it, and generally abuse it at full speed. Even super futureistic UIs like xeofreestyle.com run fast enough in software. It just doesn't seem worth it to bother with it, and there are a lot of negative points to rendering in hardware.
I can still see a big difference between SVG and traditional rendered themes.
>>>>>>>>
In what way?
Thats what rasterman think's and hes right for now, but this is X we are talking about here, if there will ever be hardware support for these things it MUST be through X, and therefore through cairographics.
>>>>>>>>>
Eventually, KSVG should go through Cairo, yes. But there is no point in moving everything over to Cairo.
Actually Carl Worth and Keith Packard specifically state that we will be able to do alpha channelling once they finish with cairographics, cairographics will use Xrender and Xrender uses the hardware.
>>>>>>>
Where did they say that? Cairo really has nothing to do with alpha channel. I think you're misunderstanding whatever you read.
There is a big difference between a web browser and an interface. My games which run in software run slow,
>>>>>>>>
Games are totally different from UIs. They throw tons of elements at the screen at the same time. In comparison, UIs (even complicated ones) throw little bits of data at the screen at a time (I'm ignoring canvases, the views inside apps that can be quite complex).
The Apple Cinema displays are not high resolution in the way we're talking about. The 23" Cinema display is only 98 dpi, which isn't that much higher than your average display. If OS X's UI elements are designed for your average monitor (say, a 1024x768 17" monitor --- 75 dpi), something that is supposed to be 1" high will only be a little over half and inch high on a high-res 133 dpi laptop LCD. On the Cinema display, they'd be 3/4s of an inch high, which is much more bearable.
You mean scalable don't you? Because 'scalar' and 'vector' are opposite concepts, which would make SVG an oxymoron.
That's what these icon engines do.
how big is libart?
>>>>>>>
About 10,000 lines last time I checked (a few years ago). But its some rather excellent and sharply written code. Rewriting it to its current level of quality would be non-trivial.