Except for how it doesn't really at all..NET is really more of a fat runtime than a VM, despite claims to the contrary. The code is compiled to native either in a separate step with NGen or during program start up (and then cached for later startups). The managed stack is the same as the real stack. You can have unmanaged frames on that stack without problems. There is a separate heap for managed objects, but what's the difference between that and, say, a memory pool implemented in C++?.NET also doesn't really care much for abstracting away the underlying OS APIs. WinForms is a thin (and crappy) wrapper around Win32 (which you can call directly from.NET if you want to). So since there is no interpreted code, no isolation, no emulation...what, exactly makes.NET a VM?
It was mentioned above, but the using() statement in C# (and Using in VB) plus the IDisposable pattern make it nearly trivial. You don't have to write special code for each code path. You use ONE using() statement and everything else is taken care of.
I find it funny that there is so much ire towards GC. Yes, it has performance problems and can definitely be made better. With more help from the compiler and better rules about when allocation and deallocation happens, it could probably be made deterministic without requiring explicit allocation and freeing from the programmer. But aside from that, I find the accusations of laziness to be, well, baseless and nearly luddite. Isn't the whole *point* of computers to be lazy? If you really want to, you can calculate all this stuff by hand, but we built these machines to do it for us and faster. The same thing with using assembly mnemonics instead of raw machine code. Same thing with compilers. And so on. If you are spending a lot of time managing memory, something that a computer should be good at, by the way, that's time you aren't spending doing other things, like fixing bugs and adding needed features. Why do the computer's job? If the computer can handle memory management, let it handle memory management. Let the programmer focus on things the computer can't do, like come up with ideas for programs, or translate contradictory customer requests into sane and orthogonal requirements, and so on.
The.NET languages are probably the best for native integration (certainly better than Perl, shudder). Sure, there are warts (just look at this Mono description of the problem: http://www.mono-project.com/Interop_with_Native_Libraries), but a lot of the problems are on the part of the platform developers, not the end developers. If you are calling C functions from C#, it's really quite trivial. You write your C function like usual and then you put a "public static extern void foo(int x);" declaration in some C# class with a DllImport attribute and you are pretty much done. You can call it in C# like a normal C# function and in C it acts like a normal C function. It's only weird if you want to be able to use managed types in C, in which case you have to jump through some hoops.
I dunno, I kind of like having an exception-handing system that works properly and built-in object and type metadata, among other things. GC is meh for me, but I know it's a big deal for some other people.
I usually have this problem more on Windows than on Linux. I'd says 95% of the time it's not really high CPU-usage, but disk or other device activity that grinds everything to a halt.
That's a different meaning of "object". In that case, "object" means "target" (as in, the object produced by the compiler). It has nothing to do with OOP....unless you were making a joke, in which case, carry on.
No, I didn't selectively scan the Wikipedia article. I read the entire damn thing and Googled for usage rules for sic and could not find a single page that said anything other than that "[sic]" in brackets means the previous word in a quote, though incorrect, is retained from the original source and that "(sic)" could be used after a longer piece indicating that there are a number of errors, but they are either obvious or too numerous to be represented with a single "[sic]". Certainly, if your definition of "(sic)" (and I must reiterate, I'm not entirely sure/what/ you were trying to indicate by including "(sic)" after your own sentence) were correct and common, I'd have been able to find some page, some guide somewhere that would have mentioned that. You could easily point me to a source on the internet that explains your supposed usage. But you can't. You just keep making cryptic responses and dismissing all sources that disagree with you. I'm not really sure what to do here.
How about every source on the internet I could find? I checked Wikipedia, the free dictionaries, various grammar sites, Chicago Manual of Style, Oxford Dictionary of American Usage and Style and so forth. I couldn't find a single reference, nor have I ever seen one, that has "sic" meaning, well, whatever the hell you intended it to mean (it's not at all clear).
I'm guessing you haven't used any languages other than C++. Aside from having a lot of libraries (not all of them good, mind you), the benefit of time (to understand all of the inane quirks of the language and make compilers that are almost halfway decent) and its performance (which other languages are catching up to), it's not a pretty language, it's not elegant, it's not easy, it's not orthogonal. It has a lot of warts and misfeatures. If it weren't for the fact that you can write fast code in C++, I doubt it'd be used nearly as much as it is.
I think it is ungrammatical. "To see" is a separate result clause, whereas "to identify" is a clause that completes the verb "probed" (as part of a purpose construct). I'm not even sure that "to identify" and "to see" even have the same subject. They obviously shouldn't be governed by the same "to".
Which group is this? Aside from the far out there leftists, the mainstream view is some tax increases and a lot of spending cuts will help. Even Obama was aiming for 1/4 revenue increase and 3/4 cuts (from a supposedly tax-and-spend Democrat).
If you want large portions of the lower and middle classes to be paying significantly more in taxes, then there needs to be a compensatory increase in government services, since those people will no longer have the extra money to pay for things like healthcare and education (especially with the skyrocketing costs in those sectors).
The social justice aspect can't be done away with just because you don't like it. The fact of the matter is, it is the government's job to promote the common good and limit the excesses of certain sectors of society (crime among the criminals, excessive wealth among the rich, poverty among the poor, undue power of one class or race over another). This does not mean to eliminate the excesses, but simply limit them to curb damage to the common good and the ability of the system to function well. That's a modern government. Social justice is part of the package. Having the rich pay for the system that allowed them to become and remain wealthy is part of that as well.
Then there's the fact that if the conservatives keep telling us that we all have to make sacrifices to fix this budget problem, but that the rich shouldn't have any tax increases and should have regulations removed so they can pollute and fuck over the working class. I don't know about you, but that seems a little bit unfair. Why should the people who are most able to weather the storm on their own, but who are also most able to contribute to fixing the problem, asked to do basically nothing, while it's the lower and middle classes, who already will have relevant services and programs cut and jobs lost (never to return), that are asked to pony up because they supposedly need to sacrifice even more to fix a problem they didn't create. You think that's fair? You may say that you dislike bringing social justice into it, but too bad. That fundamental mismatch between expectations between the two main segments of this country IS a matter of social justice. If it's not fair, as I imagine you think it is, for us to rob the rich to pay the poor (and indeed, to simply do a pure wealth transfer and to simply destroy the rich as a communist might prefer, is a dumb idea and has been shown not to work and is certainly not fair either), then why is it fair to rob the poor to pay the rich? Or to just rob the poor to pay down the debt? Just because we have a debt problem does not mean that social justice can just be thrown out the window. We cannot sacrifice principles to solve this problem. Yes, that may make the solution a bit harder, but we'll be better off in the long run not throwing the lower and middle classes under the bus to fix a problem created by the politicians and the elite.
I keep seeing these arguments and they keep pissing me off. We all KNOW that raising taxes alone won't solve the problem. So why do you people keep writing up these long-winded posts about how taxing the rich is a waste of time? You are tilting at a strawman.
Another set of problems in your post: 1) You say that states can take over services, yet states are often doing a lot worse than the feds and unlike the feds, they are frequently required by their constitutions to have a balanced budget, so they can't even do short term deficit spending until the economy improves. In my home state of North Carolina, they basically gutted public education, among other things, to solve the budget gap. You want NC to now have to cover the burden that the feds used to cover? Fat chance. 2) If you really want the economy to grind to a halt, a federal sales tax is a good way to do it. How will taxing/penalizing economic transactions help people make more economic transactions? 3) The top 1% pay most of the tax burden because they have by far most of the wealth in this country and benefit the most, directly or indirectly, from government services. Why do so many right-wingers act as though these people are being unfairly burdened with having to pay for the country that allowed them to become and remain wealthy? I don't think we ought to soak the rich, but as part of a multi-faceted plan to fix the budget, they ought to pay, you know, just a little bit more. Not just the top 1% either, of course.
Ehh, most modern languages let you extend language constructs. JavaScript is not particularly special in that regard (in fact, its syntax is particularly rigid). I don't care whether the creator called it FP or not. It doesn't really behave like one any more than any other imperative language does.
Do you think apps will communicate with Wayland with magic? They use the same mechanism of sockets that X uses, or shared memory/GL contexts/whatever for sending large data.
The thing about those extra protocol bits is that having them around doesn't really cause any problems. If you don't need to use them, don't. Use the faster parts instead. Most X development is focused on making the modern parts fast and forgetting about the old stuff, or maintaining it only to the degree that it still works. The existing implementation is a sunk cost to the X server.
My understanding is that a lot of that is because of inefficiencies in the toolkit. Granted, there's no reason the protocol couldn't be a little bit cleaner, of course.
It's already effectively network transparent because it still uses a client-server architecture. The fact that it doesn't specify the details in the core implementation makes it more flexible with network transparency, not less.
No, the parent is right. All wayland cares about is that it gets pixmaps for window contents. It doesn't matter where they come from. It's underspecified, and therefore open to be implemented in a wide variety of ways. The same is not true for your jeep.
What's bloated and slow about X11? Aside from crappy drivers (for some people), most of the slow issues have been fixed. Bloat is commonly levelled at X11, but it's not really substantiated.
People keep saying JS is "functional programming", yet aside from closures (hardly a functional-only feature), it doesn't seem to have anything that looks like functional programming to me. So what is it about JS that's functional again?
Except for how it doesn't really at all. .NET is really more of a fat runtime than a VM, despite claims to the contrary. The code is compiled to native either in a separate step with NGen or during program start up (and then cached for later startups). The managed stack is the same as the real stack. You can have unmanaged frames on that stack without problems. There is a separate heap for managed objects, but what's the difference between that and, say, a memory pool implemented in C++? .NET also doesn't really care much for abstracting away the underlying OS APIs. WinForms is a thin (and crappy) wrapper around Win32 (which you can call directly from .NET if you want to). So since there is no interpreted code, no isolation, no emulation...what, exactly makes .NET a VM?
It was mentioned above, but the using() statement in C# (and Using in VB) plus the IDisposable pattern make it nearly trivial. You don't have to write special code for each code path. You use ONE using() statement and everything else is taken care of.
I find it funny that there is so much ire towards GC. Yes, it has performance problems and can definitely be made better. With more help from the compiler and better rules about when allocation and deallocation happens, it could probably be made deterministic without requiring explicit allocation and freeing from the programmer. But aside from that, I find the accusations of laziness to be, well, baseless and nearly luddite. Isn't the whole *point* of computers to be lazy? If you really want to, you can calculate all this stuff by hand, but we built these machines to do it for us and faster. The same thing with using assembly mnemonics instead of raw machine code. Same thing with compilers. And so on. If you are spending a lot of time managing memory, something that a computer should be good at, by the way, that's time you aren't spending doing other things, like fixing bugs and adding needed features. Why do the computer's job? If the computer can handle memory management, let it handle memory management. Let the programmer focus on things the computer can't do, like come up with ideas for programs, or translate contradictory customer requests into sane and orthogonal requirements, and so on.
The .NET languages are probably the best for native integration (certainly better than Perl, shudder). Sure, there are warts (just look at this Mono description of the problem: http://www.mono-project.com/Interop_with_Native_Libraries), but a lot of the problems are on the part of the platform developers, not the end developers. If you are calling C functions from C#, it's really quite trivial. You write your C function like usual and then you put a "public static extern void foo(int x);" declaration in some C# class with a DllImport attribute and you are pretty much done. You can call it in C# like a normal C# function and in C it acts like a normal C function. It's only weird if you want to be able to use managed types in C, in which case you have to jump through some hoops.
I dunno, I kind of like having an exception-handing system that works properly and built-in object and type metadata, among other things. GC is meh for me, but I know it's a big deal for some other people.
I usually have this problem more on Windows than on Linux. I'd says 95% of the time it's not really high CPU-usage, but disk or other device activity that grinds everything to a halt.
Holy stranded preposition, Batman! I didn't even think you could a noun out from two clauses deep, but there it is.
That's a different meaning of "object". In that case, "object" means "target" (as in, the object produced by the compiler). It has nothing to do with OOP. ...unless you were making a joke, in which case, carry on.
No, I didn't selectively scan the Wikipedia article. I read the entire damn thing and Googled for usage rules for sic and could not find a single page that said anything other than that "[sic]" in brackets means the previous word in a quote, though incorrect, is retained from the original source and that "(sic)" could be used after a longer piece indicating that there are a number of errors, but they are either obvious or too numerous to be represented with a single "[sic]". Certainly, if your definition of "(sic)" (and I must reiterate, I'm not entirely sure /what/ you were trying to indicate by including "(sic)" after your own sentence) were correct and common, I'd have been able to find some page, some guide somewhere that would have mentioned that. You could easily point me to a source on the internet that explains your supposed usage. But you can't. You just keep making cryptic responses and dismissing all sources that disagree with you. I'm not really sure what to do here.
How about every source on the internet I could find? I checked Wikipedia, the free dictionaries, various grammar sites, Chicago Manual of Style, Oxford Dictionary of American Usage and Style and so forth. I couldn't find a single reference, nor have I ever seen one, that has "sic" meaning, well, whatever the hell you intended it to mean (it's not at all clear).
Using parentheses (or "round brackets" as you call them) does not change the fact that you used "sic" incorrectly.
I'm guessing you haven't used any languages other than C++. Aside from having a lot of libraries (not all of them good, mind you), the benefit of time (to understand all of the inane quirks of the language and make compilers that are almost halfway decent) and its performance (which other languages are catching up to), it's not a pretty language, it's not elegant, it's not easy, it's not orthogonal. It has a lot of warts and misfeatures. If it weren't for the fact that you can write fast code in C++, I doubt it'd be used nearly as much as it is.
Maybe they would want to kill and dissect us?
I think it is ungrammatical. "To see" is a separate result clause, whereas "to identify" is a clause that completes the verb "probed" (as part of a purpose construct). I'm not even sure that "to identify" and "to see" even have the same subject. They obviously shouldn't be governed by the same "to".
Which group is this? Aside from the far out there leftists, the mainstream view is some tax increases and a lot of spending cuts will help. Even Obama was aiming for 1/4 revenue increase and 3/4 cuts (from a supposedly tax-and-spend Democrat).
If you want large portions of the lower and middle classes to be paying significantly more in taxes, then there needs to be a compensatory increase in government services, since those people will no longer have the extra money to pay for things like healthcare and education (especially with the skyrocketing costs in those sectors).
The social justice aspect can't be done away with just because you don't like it. The fact of the matter is, it is the government's job to promote the common good and limit the excesses of certain sectors of society (crime among the criminals, excessive wealth among the rich, poverty among the poor, undue power of one class or race over another). This does not mean to eliminate the excesses, but simply limit them to curb damage to the common good and the ability of the system to function well. That's a modern government. Social justice is part of the package. Having the rich pay for the system that allowed them to become and remain wealthy is part of that as well.
Then there's the fact that if the conservatives keep telling us that we all have to make sacrifices to fix this budget problem, but that the rich shouldn't have any tax increases and should have regulations removed so they can pollute and fuck over the working class. I don't know about you, but that seems a little bit unfair. Why should the people who are most able to weather the storm on their own, but who are also most able to contribute to fixing the problem, asked to do basically nothing, while it's the lower and middle classes, who already will have relevant services and programs cut and jobs lost (never to return), that are asked to pony up because they supposedly need to sacrifice even more to fix a problem they didn't create. You think that's fair? You may say that you dislike bringing social justice into it, but too bad. That fundamental mismatch between expectations between the two main segments of this country IS a matter of social justice. If it's not fair, as I imagine you think it is, for us to rob the rich to pay the poor (and indeed, to simply do a pure wealth transfer and to simply destroy the rich as a communist might prefer, is a dumb idea and has been shown not to work and is certainly not fair either), then why is it fair to rob the poor to pay the rich? Or to just rob the poor to pay down the debt? Just because we have a debt problem does not mean that social justice can just be thrown out the window. We cannot sacrifice principles to solve this problem. Yes, that may make the solution a bit harder, but we'll be better off in the long run not throwing the lower and middle classes under the bus to fix a problem created by the politicians and the elite.
I keep seeing these arguments and they keep pissing me off. We all KNOW that raising taxes alone won't solve the problem. So why do you people keep writing up these long-winded posts about how taxing the rich is a waste of time? You are tilting at a strawman.
Another set of problems in your post:
1) You say that states can take over services, yet states are often doing a lot worse than the feds and unlike the feds, they are frequently required by their constitutions to have a balanced budget, so they can't even do short term deficit spending until the economy improves. In my home state of North Carolina, they basically gutted public education, among other things, to solve the budget gap. You want NC to now have to cover the burden that the feds used to cover? Fat chance.
2) If you really want the economy to grind to a halt, a federal sales tax is a good way to do it. How will taxing/penalizing economic transactions help people make more economic transactions?
3) The top 1% pay most of the tax burden because they have by far most of the wealth in this country and benefit the most, directly or indirectly, from government services. Why do so many right-wingers act as though these people are being unfairly burdened with having to pay for the country that allowed them to become and remain wealthy? I don't think we ought to soak the rich, but as part of a multi-faceted plan to fix the budget, they ought to pay, you know, just a little bit more. Not just the top 1% either, of course.
Based on watching the commits that roll in to the X server, they aren't spending very much time on it at all.
Ehh, most modern languages let you extend language constructs. JavaScript is not particularly special in that regard (in fact, its syntax is particularly rigid). I don't care whether the creator called it FP or not. It doesn't really behave like one any more than any other imperative language does.
Do you think apps will communicate with Wayland with magic? They use the same mechanism of sockets that X uses, or shared memory/GL contexts/whatever for sending large data.
The thing about those extra protocol bits is that having them around doesn't really cause any problems. If you don't need to use them, don't. Use the faster parts instead. Most X development is focused on making the modern parts fast and forgetting about the old stuff, or maintaining it only to the degree that it still works. The existing implementation is a sunk cost to the X server.
My understanding is that a lot of that is because of inefficiencies in the toolkit. Granted, there's no reason the protocol couldn't be a little bit cleaner, of course.
It's already effectively network transparent because it still uses a client-server architecture. The fact that it doesn't specify the details in the core implementation makes it more flexible with network transparency, not less.
No, the parent is right. All wayland cares about is that it gets pixmaps for window contents. It doesn't matter where they come from. It's underspecified, and therefore open to be implemented in a wide variety of ways. The same is not true for your jeep.
What's bloated and slow about X11? Aside from crappy drivers (for some people), most of the slow issues have been fixed. Bloat is commonly levelled at X11, but it's not really substantiated.
People keep saying JS is "functional programming", yet aside from closures (hardly a functional-only feature), it doesn't seem to have anything that looks like functional programming to me. So what is it about JS that's functional again?
Have you used Linux any time in the last, say, 3 years?