It's an implementation detail. The containers hold pointers, the typesafe layer can make it look like you're holding an object, though. There is a memory waste, of course. Some STL implementations have the same problem. Can't have everything.
The STL is a cleaner, more powerful solution, I won't argue that - the wxWindows macro-based solution pre-dates the existence of the STL, never mind working compiler support - but it does have a downside that lots and lots of almost-identical code is generated.
Ignoring the whole "Allocation is initializion" thing is a good way to mess up when you're dealing with exceptions = C++ lacks finally blocks for a reason, after all.
You can just rely on the GC to clean up other system resources as well as memory, but most of them are alot finickier than memory - if you open a file, you want to close it when you're done, not when GC runs.
It all depends on whats going on. If it's just random messing around and automated scans and whatnot, of course it won't matter that much. But if you're in charge of something important, and someone is specifically targetting you, then you have to be aware of indirect attacks as well as direct ones. Maybe you're locked down as much as you can and you've got your hosts.allow set up correctly, but who knows if your immediate upstream router has unpatched Cisco firmware?
wxWindows (since it pre-dates templates) has a macro-based typesafe container system where the macro generates a trivial, inlined, typesafe wrapper around a generic storage object that works on void *'s. You could probably use a similiar approach with an STL implementation - most of the code wouldn't be duplicated that way.
There's a number of abstraction layers for non-graphical ones as well. Just for your sockets, theres ACE, Common C++, and gsocket, and thats just the ones I've used recently. As you said, there's alot of ifdefs in the code - it's good code reuse to let someone else bother with that have it all abstracted into a library.
The only even remotely tricky part about this is getting Windows to read an ext2 partition. Everything else is easy. It's even easier if you use an app framework (read: abstraction layer). You may not be afraid of ifdefs, but why do it when someone else already has?
The patent specifically limits itself to web browsers, not any old application - I believe there are other patents that cover all general purpose plugin architectures. Just one of the reasons why this is a fucking ridiculous patent. One of the others is that there's no concrete implementation at all - someone skilled in the field is supposed to be able to read a patent and use the information to re-create the invention. This one has no such usefull information.
The patent actually specifically restricts itself to webbrowsers, general purpose apps with a plugin architecture wouldn't be affected. It's a braindead patent anyway, and a classic example of whats wrong with the patent system today.
In fairness to Clinton, at the time, H1B Visas made sense - there was a massive demand for workers and not enough Americans to fill them. We all remember the boom, right? The problem is that after that fell apart, the H1B program wasn't scaled down or cancelled.
Simple lists of facts are not copyrightable. If you're reproducing the pages themeselves, then you're in violation. If you're data mining product numbers & prices, then you aren't. That's what this whole argument is about, of course.
They can say whatever they want on the flier, of course - reproduction certainly is legal in certain circumstances, regardless of whether its copyrighted or not.
Of course not. But DRM goes the other direction - just the most obvious limitation is that it doesn't respect the passing of works into the public domain. Everyone agrees that iTunes is about as unrestrictive as the content providers are likely to allow, and the DRM on iTunes songs goes far beyond the rights granted by copyright law.
Translation: They dropped the ball with regards to technology making thier distribution model obselete. Just let the music industry die. If it's socially worthwhile, we'll evolve it back in a new form. No, I don't know what that form is.
Software can die too, while I'm at it. Fuck DRM. It's a slap in the face to everything that copyright is for.
The real reason I didn't provide a list is that I'm just too lazy to go and find one,not any sort of intellectual dishonesty. I knew it was more than half a dozen which seemed enough for me.
Well, it's less a racist issue than a class issue, but the point is actually valid. Poor people don't have the clout or the attorneys to do things like plea down.
As for filling out a form - I don't see any reason for it whatsoever. If you can go to a voting booth, then you're obviously not in jail. Your link is actually an excellent example - it's an arbitrarily complicated procedure, and made such for no good reason.
You'd have a hell of a time enforcing such an informal verbal agreement. I'd just nod at the sales clerk and re-sell the book anyway. Your "telling everyone about it" doesn't amount to a hill of beans in a legal sense.
Knowing results ahead of time could be very usefull, however. Heck, maybe this is just some employee slipping in a backdoor in an attempt to make some money gambling.
You know this is the basis of making money in any industry, right? Buy low, sell high. Etc.
I think it's pretty obvious that any company that spent more than it's revenue on supporting Linux isn't going to be profitable (duh).
Most of the boxes have fine print them already that says "1 megabyte is 1 million bytes" or something similar. At least the ones that I've seen.
The intel C++ compiler can do this too. Yay for forward looking technology!
The STL is a cleaner, more powerful solution, I won't argue that - the wxWindows macro-based solution pre-dates the existence of the STL, never mind working compiler support - but it does have a downside that lots and lots of almost-identical code is generated.
It's inlined, so it's as fast as using the generic containers directly. The macros just create typesafety. All the work is done at compile time.
You can just rely on the GC to clean up other system resources as well as memory, but most of them are alot finickier than memory - if you open a file, you want to close it when you're done, not when GC runs.
It all depends on whats going on. If it's just random messing around and automated scans and whatnot, of course it won't matter that much. But if you're in charge of something important, and someone is specifically targetting you, then you have to be aware of indirect attacks as well as direct ones. Maybe you're locked down as much as you can and you've got your hosts.allow set up correctly, but who knows if your immediate upstream router has unpatched Cisco firmware?
Only true as long as you don't control a router upstream from the target. You can do that without neccesarily controlling the ISP.
wxWindows (since it pre-dates templates) has a macro-based typesafe container system where the macro generates a trivial, inlined, typesafe wrapper around a generic storage object that works on void *'s. You could probably use a similiar approach with an STL implementation - most of the code wouldn't be duplicated that way.
There's a number of abstraction layers for non-graphical ones as well. Just for your sockets, theres ACE, Common C++, and gsocket, and thats just the ones I've used recently. As you said, there's alot of ifdefs in the code - it's good code reuse to let someone else bother with that have it all abstracted into a library.
Bringing this back on topic, the C++ GUI framework referred to in the press release is - tada! wxWindows! (check the screenshots in the demo).
The only even remotely tricky part about this is getting Windows to read an ext2 partition. Everything else is easy. It's even easier if you use an app framework (read: abstraction layer). You may not be afraid of ifdefs, but why do it when someone else already has?
The patent specifically limits itself to web browsers, not any old application - I believe there are other patents that cover all general purpose plugin architectures. Just one of the reasons why this is a fucking ridiculous patent. One of the others is that there's no concrete implementation at all - someone skilled in the field is supposed to be able to read a patent and use the information to re-create the invention. This one has no such usefull information.
The patent actually specifically restricts itself to webbrowsers, general purpose apps with a plugin architecture wouldn't be affected. It's a braindead patent anyway, and a classic example of whats wrong with the patent system today.
In fairness to Clinton, at the time, H1B Visas made sense - there was a massive demand for workers and not enough Americans to fill them. We all remember the boom, right? The problem is that after that fell apart, the H1B program wasn't scaled down or cancelled.
They can say whatever they want on the flier, of course - reproduction certainly is legal in certain circumstances, regardless of whether its copyrighted or not.
It seems blindingly obvious to me that numbering pages would fail the creativity test for copyright protection. Has this ever been seriously tested?
The simple answer: it wasn't copyrighted. You could have done it without permission.
Of course not. But DRM goes the other direction - just the most obvious limitation is that it doesn't respect the passing of works into the public domain. Everyone agrees that iTunes is about as unrestrictive as the content providers are likely to allow, and the DRM on iTunes songs goes far beyond the rights granted by copyright law.
No, it's a way to extend your copyrights beyond the limits granted by law. Kinda like using a gun to take over your neighbors lawn.
Software can die too, while I'm at it. Fuck DRM. It's a slap in the face to everything that copyright is for.
The real reason I didn't provide a list is that I'm just too lazy to go and find one,not any sort of intellectual dishonesty. I knew it was more than half a dozen which seemed enough for me.
As for filling out a form - I don't see any reason for it whatsoever. If you can go to a voting booth, then you're obviously not in jail. Your link is actually an excellent example - it's an arbitrarily complicated procedure, and made such for no good reason.
You'd have a hell of a time enforcing such an informal verbal agreement. I'd just nod at the sales clerk and re-sell the book anyway. Your "telling everyone about it" doesn't amount to a hill of beans in a legal sense.
Knowing results ahead of time could be very usefull, however. Heck, maybe this is just some employee slipping in a backdoor in an attempt to make some money gambling.