How would it help if there was a format for ELF when so many languages don't use ELF? Like, nearly all of them.
I would expect current C++ compilers to be incompatible with this system, because they don't allow enough runtime introspection. I wouldn't expect C to work at all, except in a manner that involves lots and lots of function calls for everything (the if-you-must-use-C-you-will-suffer style, which isn't that uncommon -- the GTK object system feels a little like that).
Maybe this is getting me to understand why the CLR is being used. If you can subclass objects from other languages, you then will have some of the methods implemented in one language and portions in another. This is easy if they all are actually a common set of bytecodes. Easy to GC too. This is hard if there's multiple interpreters/binaries/etc. being invoked, and near impossible to GC.
I think the real key is data interaction -- that data structures created in one language are uniformly available to all languages. I don't think this really relates to ELF. But then, it doesn't really apply to the runtime either.
The problem as I see it: CORBA tried to apease people who used crappy languages (like C), and that made everything 10x harder (or more?)..NET makes a new runtime for all the various languages, and it doesn't have to deal with the semantics of unfriendly languages. Some dynamic languages are fairly easy to port -- I think Perl and Python are both available without a huge amount of effort (?) -- and other languages have to be reinvented (C#).
Then they put the whole thing on a VM, which seems unnecessary. Most of the dynamic languages already run on a VM anyway (their respective byte-code interpreters), so maybe it's not a big deal. But it's conflating two different ideas -- sharing data and execution in different environments. This makes for less confusion of non-related ideas than exists in Java, but it's still unfortunate.
But then again, the alternative is for them to make all the different pieces anyway, and give each one an acronym of its own.
Mr. Zimmerman obviously knows his way around the media, and seems to want to resolve the inaccuracies without alienating anyone at the Post. I'm sure he'll deal with this best on his own, and if you have an opinion directed at the Post you should give it entirely on your own (which is fine -- the Post was manipulative and irresponsible in its editing, but don't imply that Philip Zimmerman told you to say so).
The performance I've seen has suggested that the problem isn't Java, but simply poor programming. The searches are essentially full-text searches of a lot of rather small texts. Limewire starts taking up significant CPU time with text on the range of a very small website, like 3000 words. I suspect it doesn't have any optimizations of the search algorithm, but just walks through the words checking one-by-one for a match.
Admittedly, maybe you could get by with this in C/C++. But the blame still doesn't lie with Java.
I find there's something qualitatively different between time spent not doing work and a real break. Most particularly -- on a break you have no obligation to be doing something, you aren't skipping out on work or being lazy. Of course, most employers don't have a problem with socializing and aren't critical of it (at least in reason). But I still find that a real break feels very different.
I believe it's federal law that every employee is supposed to get 15 minutes off for every four hours (not counting lunch). Of course, hardly anyone really does this, and no employer I've ever known of has made this public to their employees. It's as though not working is stealing time from your employer, and you are supposed to feel guilty about it. Which, if you spend your entire day messing around, it may very well be. But it's a shame people (and employers) don't expect that a certain amount of break is your right (by law), and simply should be considered standard working practices (law or no law), not just "fun".
Usually you only get those breaks if you smoke. It's a good reason to take up smoking -- take a break, reduce stress, no one is forcing you to inhale after all, might be good for you. A ping pong table is much better, though.
The only intellectually pure stance is Agnosticism
Agnosticism isn't intellectually pure, it's intellectually weak. It's someone who doesn't think God exists, but isn't willing to say so out loud. Or even worse, they aren't willing to say so to themselves -- an even deeper form of cowardice.
Well, maybe it's okay as long as you are just showing pornography. This isn't promotion, after all. So "Come See Barely Legal Chicks" sites would be banned, but just no-frill hardcore porn pages would be A-OK.
Similarly, maybe this means it's okay to make a site saying "I hate, I am racist, and here's a picture of me naked", as long as you aren't saying that other people should feel the same.
Someone buys this product (for example) for the
sole purpose to let other people know what a complete and total idiotic racist that they are,
and then they find that the EULA that they did not see until after they installed the
product prohibited it. They can't return it -- (open box software), and they cant use...
I've wondered about going through the entire purchase-refuse-EULA-get-return-denied process, and then go ahead and find something interesting in the EULA that I can then break (since they haven't held up their end of the contract, I thus wouldn't be bound).
Maybe I should purchase a copy of FrontPage, try to return it, fail, and then make a particularly offensive page with it, with a big "made with FrontPage" logo on it.
The other way would be civil disobedience -- buy this sort of software on a credit card, and when you can't return it get the credit card company to stop payment. I've never done that sort of thing with a credit card, so I don't konw how hard it is. Admittedly you wouldn't be going into the transaction in good faith either. I'd be curious if someone else has tried such a thing.
I can't actually claim to know anything about contract law, and EULAs seem not to have much validity anyway so maybe none of this matters.
However, if EULA are already on shaky ground, putting something like this in is even shakier. This clause has far-reaching implications for the user -- where other such clauses are directly attached to the product, such as not allowing benchmarks, this relates to content which is probably not created by the same people (or even companies) that chose and installed the software. While such a clause might be enforceable in another situation, I can't imagine the legal system is so fucked up that it would be enforcable because someone clicked "I agree".
Of course, legal enforcement is probably not on the minds of the MS lawyers anyway. This clause gives them an opportunity to harrass.
I think (at least to some degree) that Redhat can do better in a recession than many of its (non-OSS) competitors. Some things do better in a recession, because they represent efforts to save money. Car mechanics, for instance.
It might take a while to kick in, but Redhat potentially can do well because OSS software is so much cheaper than much of the commercial software. There may be arguments that it takes more manpower to deploy, and it's not turn-key so it takes longer to bring to market -- many of these arguments might be valid (at least some of the time). But the value of cash vs. the value of time might be shifting -- cash has become more valuable. Leaner endevours would be well served to use OSS.
OTOH, if you really want to save money, why pay money for the support and the box? Linux is pretty much free. Still, even if I don't particularly care for Redhat (the distribution), I wish them well and am optimistic about their fate.
I don't lock my file cabinets. That would be damned annoying. How many keys can a person keep? How many passwords can they remember?
I think the better way to help security is to make it less necessary. If the systems, on a low level, don't allow destruction then the hacker will only be able to fiddle. Better, more wide-spread version control would be good, for instance. That protects against not just maliciousness, but unintentional mistakes as well (which are more common).
Of course, better security is always better. But more locks are a pain, and every lock needs a key (or probably twenty of them). Every key is a potential hole. We need less boats and more intertubes.
I imagine he was able to pose as a copy editor or some other priviledged user. So, of course, the articles matched the "copy editor's" -- or, at least what the system believed was the copy editor.
A distributed system like that is harder to secure. So you have a PGP signature... do you give every priviledged person the private key? No, that doesn't work at all, since people come and go, and probably don't keep good personal security anyway.
So now Yahoo needs it's own certification -- not just a key chain, since a person who's priviledged at one point may not be in the future. Now it's a matter of breaking into the certification and adding your certificate. Maybe harder, but when you consider how much extra work Yahoo would have to do to even get to that place...
And then, who's really going to check those keys? People? No one would bother. The system? Well, hack the checking system.
Security is a system. Signatures are no silver bullet, and they are a PITA to manage and use.
OTOH, sending notification to original editors/authors when the article is modified is not only useful for security, but generally useful. Keeping good version information would be good too. So that might work well (though of course you could always hack the notifying system).
One other point, I have never
gotten myself into a performance hole with PHP, Java I have.
I have a feeling this has to do with levels of abstraction and layers of code. PHP, with a rather weak object system and a tendency to use so many global variables, tends not to encourage many levels of abstraction. You write in terms of the primitives of the language -- of which there are a lot. That's fast, you're running lots of stuff that's implemented in C.
You won't be getting that with Java. Not only is nothing in C, but there's so many, many layers of Java that you are working with. The plus side is that you are working with a well-abstracted framework.
I personally am
still waiting for a viable alternative to Zope as Python is my language of choice
Check out Webware, which has a lot of similarities to Java Servlets, only in a nice, compact language:) I've never programmed Java Servlets, but the Hello World examples I've seen look absolutely painful. Anyway, I like Webware a lot. A slightly more recent arrival with a less Java feel is Skunkweb. I haven't used it, but the developers seem like competent and friendly people.
Like Tomcat, you're unlikely to get either of these working in shared host situations.
Well, sh is more insecure than C, IMHO. Or, rather, it's a different class of insecurities relating to quoting and multiple passes of the parser.
More languages should make it easier to execute external programs without invoking sh. This affects quite a lot of CGI scripts. OTOH, none of these CGI scripts are ever likely to gain a significant portion of the market ('cause there's just so damn many of them), so attacks would be much more limited.
They might not care where you go, and they probably don't care where I go either. But it isn't just terrorists they care about.
Martin Luther King, Jr., was under significant surveillance because he was a suspected foreign operative and communist. Of course, those suspicions were baseless -- he was spied on because he was in conflict with the power-that-be.
There are people here and now who will be marked as disidents and put under surveillance. They already are -- but these responses to terrorism will only make the surveilance harder to detect ("national security concerns" will allow the FBI to hide more), easier to attain, and more expansive.
Many of the people targetted will be unrelated to terrorist activities. Anti-globalization activists and environmentalists, in particular.
The FBI has always been a corrupt agency, used improperly to suppress and sabotage native disidents. There is a tremendous amount of documentation supporting past crimes of the FBI. There has never been any reform. There is no conceivable reason that they will not abuse any and every power given to them.
I don't know if this would be helpful, but it would certainly be interesting. And +1, 0, -1 seems less artibrary than a normal base-3 number system. It's intrinsically signed, too, since, for instance, ZZA=-11.
Now I'm my own boss -- and I'm all for telecommuting!
I'm my own boss too, but I've never thought about telecommuting... hmmmm...
Me: I don't feel like going in to work today, I want to stay home.
Me: But Ian, if you don't go work, that means you have to stay in your bedroom.
Me: Damn. Maybe I can just telecommute? I could always teleconference.
Me: But you won't be able to receive the call if you are calling your own phone. Anyway, there's nothing that can replace talking to yourself in person.
Me: I suppose so. But I can still email myself.
Me: But your only computer is in your office, right outside of your bedroom.
Me: Grumblegrumblestupidbossgrumblegrumble
Introspection and runtime typing are built in, so funky code generators like QT's
moc and MFC's crap are unnecessary.
They are also unnecessary when you use templates. Templates have largely rendered
macros (both C preprocessor macros and alternatives like MOC) unneccessary.
I don't think templates can make up for introspection. Introspection allows for easy serialization and cross-network communication -- transparent distributed objects are an oft-touted feature. (admittedly, I haven't used Objective C seriously)
Also, in my programming, collections are typically heterogeneous. With templates you'd have to have a common base class with virtual methods, and you'd no longer have much of an advantage over Objective C, while having none of the convenience.
I think the dynamically-typed languages are more true to OO, because objects are defined only by their interfaces. Any object that implements a sufficient interface can be used in that context. You can do great things with that.
Others might feel that message-passing is a more appropriate term for the type of OO in Objective C. However you say it, there's something there that Objective C does that C++ doesn't -- even if it might be possible under C++, people just don't.
ObjC programs are almost always smaller (no
templates to instantiate), and as fast as C++ programs.
Are you kidding? Obj-C is notorious for being slow. As far as program size goes, I don't
think you can compare the two. For one, there are few Obj-C applications of any
appreciable size.
Well, there are Objective C applications of appreciable size. There were lots of applications for NextStep -- web browsers, 3D rendering, etc. Not all of these applications are dead. They should provide significant fodder for comparison, should someone choose to do so.
From a reductivist point of view, Objective C can be as efficient as C++ or C. With clever programming you can use dynamic typing to your advantage, because the method lookup can take the place of logic statements. I know this is very common in Smalltalk. But unlike Smalltalk (or Java), you can write Objective C with the inner loops (where performance matters) in C.
I thought NextStep ran fairly well on the m68k workstations I used. It wasn't blindingly fast, but like I said, it was a m68k processor.
Large systems can potentially be significantly faster in Objective C, because of the generality of the object model and the richness of the foundation library.
"Greenspun's Tenth Rule of Programming: any sufficiently
complicated C or Fortran program contains an ad hoc
informally-specified bug-ridden slow implementation of half of
Common Lisp."
I think Objective C has a relation to Common Lisp there (if not quite as complete -- thankfully!), and C++ is still stuck with C or Fortran -- good base libraries have been very slow in coming (though they do appear to be coming along)
Well, Objective C is closely tied to OpenStep. It's OO in a way C++ isn't, and fast in a way Java isn't.
It really has decent enough support. GCC supports it (from an early win for the GPL), and I imagine GCC covers more than 99% of all environments.
If you mean developer knowledge, well... I think there's been some work to get Objective C to work well with C++ or Java in GCC (much more work in MacOS X), but I have a feeling that's more about integration, not alternate GNUStep development languages.
Anyway, C++ people have just in the last few years found STL -- the sort of abstraction Objective C and Smalltalk has had since the very beginning. C++ just isn't doing all that good a job of catching up, probably because they aren't going to the same place. And if that's the case, well... I don't know how much of a help that would be anyway.
Objective C isn't hard to learn, either. Easier than Java or C++.
It's too bad the Open
Source community has a "{XWindows|Display Ghostscript | | etc} sucks, but it's good
enough, so why try to build a replacement" mentality. Fortunately, there are people like
Adam who say "Fuck that, I don;t want to wallow in mediocracy".
Please, expand. I remember seeing some mention of a native X rendering, but it was presented like it was just a stopgap until DGS was ready. Is Adam working on improving DGS, or somehow replacing it?
Not really. OpenStep/NextStep is pretty old school. Early nineties kind of thing, and I believe Objective C was designed at around the same time as C++ (early 80s?). All of these, in turn, have a very close relation to Smalltalk, which was designed in the 70s and hasn't changed dramatically since Smalltalk-80.
My God, you are a self-admitted racist warmonger, and you would deam to judge me?!?
You talk about killing the children and friends of the terrorists, and you would tell me that I am not willing to stand up and fight against the slaughter of helpless innocents?!? You propose genocide, and yet you bring up Hitler?!?
I am willing to stand up against the slaughter of helpless innocents. And right now it's people like you that are the greatest threat to innocents. Unlike you I am not a racist. Unlike you I value human life equally. Unlike you I do not condemn innocent people based on their associations or geographical location.
I am not preaching peace, but I am preaching justice. There is no time when justice is not called for. There is no exception to its virtue.
I am an American, and the reactionary, violent sentiments I have seen here have only increased my resolve that I must fight to keep people like you from winning. I fear for the nation's soul, for you would surely take us to hell.
I am sad to say that the time has come to finally stoop to their level. We need to respond
swiftly and brutally and the response needs to be so unbelievably brutal and horrifying that
no one will ever again consider attacking us for fear that everything and everyone they
know and love will be utterly destroyed in response.
I fear that many people feel like you do, in which case there will be neither peace nor justice for a long time.
Israel has tried this against the Palestinians -- quick, unbalanced retaliation. It has not brought them any peace or freedom from terrorism. I can see no way they will achieve that unless they annilhilate the entire Palestinian people, though blinded by their desire for vengence many Israelis seem to think that the next bit of violence will resolve something.
That is not a path I would wish the US to follow. Justice does not mean pacifism, but anything brutal, disgusting, and horrible -- as you phrase it -- is not justice. If we value domination over justice, then we will eventually reap our rewards. Perhaps we already have.
If and when we determine that it was, in fact, Osama bin Laden I fervently hope we
eradicate the bastards and any country which has given him and his followers any form of
aid and comfort. If said eradication were to include the use of nuclear weapons I, for one,
would not be in the least upset by this.
That's disgusting. The United States has done many, many bad things. It has been the source of millions of deaths over the years. Does this justify an attack on the citizens of the US? I would think not. It is unfair to blame the many individuals in the nation collectively for the actions of its government and elite.
However, you seem to believe that the actions of those in another country condemn the innocent citizens of that country.
I certainly hope you are simply speaking irrationally and out of reaction to your anger. For your words here are morally reprehensible. The actions you propose are exactly analogous to the actions of the terrorists.
I would expect current C++ compilers to be incompatible with this system, because they don't allow enough runtime introspection. I wouldn't expect C to work at all, except in a manner that involves lots and lots of function calls for everything (the if-you-must-use-C-you-will-suffer style, which isn't that uncommon -- the GTK object system feels a little like that).
Maybe this is getting me to understand why the CLR is being used. If you can subclass objects from other languages, you then will have some of the methods implemented in one language and portions in another. This is easy if they all are actually a common set of bytecodes. Easy to GC too. This is hard if there's multiple interpreters/binaries/etc. being invoked, and near impossible to GC.
The problem as I see it: CORBA tried to apease people who used crappy languages (like C), and that made everything 10x harder (or more?). .NET makes a new runtime for all the various languages, and it doesn't have to deal with the semantics of unfriendly languages. Some dynamic languages are fairly easy to port -- I think Perl and Python are both available without a huge amount of effort (?) -- and other languages have to be reinvented (C#).
Then they put the whole thing on a VM, which seems unnecessary. Most of the dynamic languages already run on a VM anyway (their respective byte-code interpreters), so maybe it's not a big deal. But it's conflating two different ideas -- sharing data and execution in different environments. This makes for less confusion of non-related ideas than exists in Java, but it's still unfortunate.
But then again, the alternative is for them to make all the different pieces anyway, and give each one an acronym of its own.
Mr. Zimmerman obviously knows his way around the media, and seems to want to resolve the inaccuracies without alienating anyone at the Post. I'm sure he'll deal with this best on his own, and if you have an opinion directed at the Post you should give it entirely on your own (which is fine -- the Post was manipulative and irresponsible in its editing, but don't imply that Philip Zimmerman told you to say so).
Admittedly, maybe you could get by with this in C/C++. But the blame still doesn't lie with Java.
Quite informative -- someone mod the parent up.
I find there's something qualitatively different between time spent not doing work and a real break. Most particularly -- on a break you have no obligation to be doing something, you aren't skipping out on work or being lazy. Of course, most employers don't have a problem with socializing and aren't critical of it (at least in reason). But I still find that a real break feels very different.
Usually you only get those breaks if you smoke. It's a good reason to take up smoking -- take a break, reduce stress, no one is forcing you to inhale after all, might be good for you. A ping pong table is much better, though.
Well, maybe it's okay as long as you are just showing pornography. This isn't promotion, after all. So "Come See Barely Legal Chicks" sites would be banned, but just no-frill hardcore porn pages would be A-OK.
Similarly, maybe this means it's okay to make a site saying "I hate, I am racist, and here's a picture of me naked", as long as you aren't saying that other people should feel the same.
I've wondered about going through the entire purchase-refuse-EULA-get-return-denied process, and then go ahead and find something interesting in the EULA that I can then break (since they haven't held up their end of the contract, I thus wouldn't be bound).Maybe I should purchase a copy of FrontPage, try to return it, fail, and then make a particularly offensive page with it, with a big "made with FrontPage" logo on it.
The other way would be civil disobedience -- buy this sort of software on a credit card, and when you can't return it get the credit card company to stop payment. I've never done that sort of thing with a credit card, so I don't konw how hard it is. Admittedly you wouldn't be going into the transaction in good faith either. I'd be curious if someone else has tried such a thing.
However, if EULA are already on shaky ground, putting something like this in is even shakier. This clause has far-reaching implications for the user -- where other such clauses are directly attached to the product, such as not allowing benchmarks, this relates to content which is probably not created by the same people (or even companies) that chose and installed the software. While such a clause might be enforceable in another situation, I can't imagine the legal system is so fucked up that it would be enforcable because someone clicked "I agree".
Of course, legal enforcement is probably not on the minds of the MS lawyers anyway. This clause gives them an opportunity to harrass.
It might take a while to kick in, but Redhat potentially can do well because OSS software is so much cheaper than much of the commercial software. There may be arguments that it takes more manpower to deploy, and it's not turn-key so it takes longer to bring to market -- many of these arguments might be valid (at least some of the time). But the value of cash vs. the value of time might be shifting -- cash has become more valuable. Leaner endevours would be well served to use OSS.
OTOH, if you really want to save money, why pay money for the support and the box? Linux is pretty much free. Still, even if I don't particularly care for Redhat (the distribution), I wish them well and am optimistic about their fate.
I think the better way to help security is to make it less necessary. If the systems, on a low level, don't allow destruction then the hacker will only be able to fiddle. Better, more wide-spread version control would be good, for instance. That protects against not just maliciousness, but unintentional mistakes as well (which are more common).
Of course, better security is always better. But more locks are a pain, and every lock needs a key (or probably twenty of them). Every key is a potential hole. We need less boats and more intertubes.
A distributed system like that is harder to secure. So you have a PGP signature... do you give every priviledged person the private key? No, that doesn't work at all, since people come and go, and probably don't keep good personal security anyway.
So now Yahoo needs it's own certification -- not just a key chain, since a person who's priviledged at one point may not be in the future. Now it's a matter of breaking into the certification and adding your certificate. Maybe harder, but when you consider how much extra work Yahoo would have to do to even get to that place...
And then, who's really going to check those keys? People? No one would bother. The system? Well, hack the checking system.
Security is a system. Signatures are no silver bullet, and they are a PITA to manage and use.
OTOH, sending notification to original editors/authors when the article is modified is not only useful for security, but generally useful. Keeping good version information would be good too. So that might work well (though of course you could always hack the notifying system).
You won't be getting that with Java. Not only is nothing in C, but there's so many, many layers of Java that you are working with. The plus side is that you are working with a well-abstracted framework.
Check out Webware, which has a lot of similarities to Java Servlets, only in a nice, compact languageLike Tomcat, you're unlikely to get either of these working in shared host situations.
More languages should make it easier to execute external programs without invoking sh. This affects quite a lot of CGI scripts. OTOH, none of these CGI scripts are ever likely to gain a significant portion of the market ('cause there's just so damn many of them), so attacks would be much more limited.
Martin Luther King, Jr., was under significant surveillance because he was a suspected foreign operative and communist. Of course, those suspicions were baseless -- he was spied on because he was in conflict with the power-that-be.
There are people here and now who will be marked as disidents and put under surveillance. They already are -- but these responses to terrorism will only make the surveilance harder to detect ("national security concerns" will allow the FBI to hide more), easier to attain, and more expansive.
Many of the people targetted will be unrelated to terrorist activities. Anti-globalization activists and environmentalists, in particular.
The FBI has always been a corrupt agency, used improperly to suppress and sabotage native disidents. There is a tremendous amount of documentation supporting past crimes of the FBI. There has never been any reform. There is no conceivable reason that they will not abuse any and every power given to them.
1=A (1)
2=AZ (3+-1)
3=A0 (3+0)
4=AA (3+1)
5=AZZ (9+-3+-1)
6=AZ0 (9+-3+0)
7=AZA (9+-3+1)
8=A0Z (9+0+-1)
9=A00 (9+0+0)
I don't know if this would be helpful, but it would certainly be interesting. And +1, 0, -1 seems less artibrary than a normal base-3 number system. It's intrinsically signed, too, since, for instance, ZZA=-11.
Me: I don't feel like going in to work today, I want to stay home.
Me: But Ian, if you don't go work, that means you have to stay in your bedroom.
Me: Damn. Maybe I can just telecommute? I could always teleconference.
Me: But you won't be able to receive the call if you are calling your own phone. Anyway, there's nothing that can replace talking to yourself in person.
Me: I suppose so. But I can still email myself.
Me: But your only computer is in your office, right outside of your bedroom.
Me: Grumblegrumblestupidbossgrumblegrumble
Also, in my programming, collections are typically heterogeneous. With templates you'd have to have a common base class with virtual methods, and you'd no longer have much of an advantage over Objective C, while having none of the convenience.
I think the dynamically-typed languages are more true to OO, because objects are defined only by their interfaces. Any object that implements a sufficient interface can be used in that context. You can do great things with that.
Others might feel that message-passing is a more appropriate term for the type of OO in Objective C. However you say it, there's something there that Objective C does that C++ doesn't -- even if it might be possible under C++, people just don't.
Well, there are Objective C applications of appreciable size. There were lots of applications for NextStep -- web browsers, 3D rendering, etc. Not all of these applications are dead. They should provide significant fodder for comparison, should someone choose to do so.From a reductivist point of view, Objective C can be as efficient as C++ or C. With clever programming you can use dynamic typing to your advantage, because the method lookup can take the place of logic statements. I know this is very common in Smalltalk. But unlike Smalltalk (or Java), you can write Objective C with the inner loops (where performance matters) in C.
I thought NextStep ran fairly well on the m68k workstations I used. It wasn't blindingly fast, but like I said, it was a m68k processor.
Large systems can potentially be significantly faster in Objective C, because of the generality of the object model and the richness of the foundation library.
"Greenspun's Tenth Rule of Programming: any sufficiently complicated C or Fortran program contains an ad hoc informally-specified bug-ridden slow implementation of half of Common Lisp."
I think Objective C has a relation to Common Lisp there (if not quite as complete -- thankfully!), and C++ is still stuck with C or Fortran -- good base libraries have been very slow in coming (though they do appear to be coming along)
It really has decent enough support. GCC supports it (from an early win for the GPL), and I imagine GCC covers more than 99% of all environments.
If you mean developer knowledge, well... I think there's been some work to get Objective C to work well with C++ or Java in GCC (much more work in MacOS X), but I have a feeling that's more about integration, not alternate GNUStep development languages.
Anyway, C++ people have just in the last few years found STL -- the sort of abstraction Objective C and Smalltalk has had since the very beginning. C++ just isn't doing all that good a job of catching up, probably because they aren't going to the same place. And if that's the case, well... I don't know how much of a help that would be anyway.
Objective C isn't hard to learn, either. Easier than Java or C++.
Of course, that doesn't mean it's not good stuff.
You talk about killing the children and friends of the terrorists, and you would tell me that I am not willing to stand up and fight against the slaughter of helpless innocents?!? You propose genocide, and yet you bring up Hitler?!?
I am willing to stand up against the slaughter of helpless innocents. And right now it's people like you that are the greatest threat to innocents. Unlike you I am not a racist. Unlike you I value human life equally. Unlike you I do not condemn innocent people based on their associations or geographical location.
I am not preaching peace, but I am preaching justice. There is no time when justice is not called for. There is no exception to its virtue.
I am an American, and the reactionary, violent sentiments I have seen here have only increased my resolve that I must fight to keep people like you from winning. I fear for the nation's soul, for you would surely take us to hell.
Israel has tried this against the Palestinians -- quick, unbalanced retaliation. It has not brought them any peace or freedom from terrorism. I can see no way they will achieve that unless they annilhilate the entire Palestinian people, though blinded by their desire for vengence many Israelis seem to think that the next bit of violence will resolve something.
That is not a path I would wish the US to follow. Justice does not mean pacifism, but anything brutal, disgusting, and horrible -- as you phrase it -- is not justice. If we value domination over justice, then we will eventually reap our rewards. Perhaps we already have.
God help us.
However, you seem to believe that the actions of those in another country condemn the innocent citizens of that country.
I certainly hope you are simply speaking irrationally and out of reaction to your anger. For your words here are morally reprehensible. The actions you propose are exactly analogous to the actions of the terrorists.