Lina?frank wrote:Unless of course you have figured out how to make C/C++ programs so portable that you can compile them on linux and run them on windows and vice versa.
Dex is leaving, this forum
-
- Posts: 23
- Joined: Sun Dec 03, 2006 5:29 pm
Any interpreted language has overheads. But the fact that it's so portable across processor architectures and operating system API's neutralizes this argument.Brynet-Inc wrote:I could go on for hours trying to explain why I hate Java, but instead I'll just label Java for what it is... It's bloatware!
The shear memory usage and size of Java applications compared to ones written in C/C++ or Assembly is a good example of this..
I don't know, the unices are getting pretty good at that.Brynet-Inc wrote: Nothing should "need" such a large dependency, That being the "Java VM".
Slow: yes. Ugly: how so? It's comparable in syntax to the C-family. And irrelevant? To systems programming I'll concede. But to applications programming, the one that the users give a damn about, it's highly relevant.Brynet-Inc wrote: I'll sum it up for you: "It's slow, ugly and entirely irrelevant!"..
I'll agree. But the amount of time to build such a program of equivalent functionality across architectures would be far greater than that of Java. It's not a language for every situation and programmer, as you should know, you use the right tool for the right problem.Brynet-Inc wrote:So I rest my case, Any "half way decent" programmer could write an application in C/C++ that is portable, small and a heck of a lot more efficient then one written in "Java".
And just to goad you on a little more: what was the trial on?
That's absolute bull. That's like saying we should all use .NET because in theory it might kinda be somewhat possible to run it on other OS'. In fact that is more like saying a War that kills twice as many people as necessary is ok if you win, even though we could have won without killing that extra 20 million people. One advantage does not outway the other's, especailly an advantage that nobody who understands it wants. Java could have easily been far more efficient if Brendan had written it, and it is need of a good replacement that weighs not only the Concept but realistic Speeds.Solidus117 wrote:Any interpreted language has overheads. But the fact that it's so portable across processor architectures and operating system API's neutralizes this argument.
in a sense interpret languages are not always bad. consider .NET for instance. Though it is an iterpreter language the also build a just in time compiler. This compiler will recompile portions of the code when needed.
The main advantage is that the red line or the so called flow of the program is recompiled close to gether in memory. giving a better cache usage. I have seem implementation in c++ and in C# which both run at the same speed (more or less). where the C# code also ran with mono.
The main advantage is that the red line or the so called flow of the program is recompiled close to gether in memory. giving a better cache usage. I have seem implementation in c++ and in C# which both run at the same speed (more or less). where the C# code also ran with mono.
Author of COBOS
- Colonel Kernel
- Member
- Posts: 1437
- Joined: Tue Oct 17, 2006 6:06 pm
- Location: Vancouver, BC, Canada
- Contact:
C# is not interpreted. It is either JIT-compiled, or compiled directly to native code (via ngen usually). Most .NET languages work the same way.os64dev wrote:in a sense interpret languages are not always bad. consider .NET for instance.
Java can be either interpreted or JIT-compiled, but is normally JIT-compiled these days.
Just the facts, ma'am.
Top three reasons why my OS project died:
- Too much overtime at work
- Got married
- My brain got stuck in an infinite loop while trying to design the memory manager
- Colonel Kernel
- Member
- Posts: 1437
- Joined: Tue Oct 17, 2006 6:06 pm
- Location: Vancouver, BC, Canada
- Contact:
Did I not just say... it's not interpreted??hckr83 wrote:What the hell is the point of .NET? I know, bneing interpreted(technically) makes it possible to be very portable, but it's not portable! Microsoft would refuse to make it so...
so exactly, why use .NET??
Not that it answers your question. The answer is: use .NET if you want to develop non-portable software that will only run on Windows, because writing portable software that will run on Windows is very painful (especially if there is a GUI involved), and because writing non-portable code using the Win32 API is equally painful.
Top three reasons why my OS project died:
- Too much overtime at work
- Got married
- My brain got stuck in an infinite loop while trying to design the memory manager
It is a matter of opinion.. If its either JIT-compiled or compiled natively what does that tell you about the state before. It is byte code just like Java and everybody say Java is interpreted so that means .NET is also interpreted. Nonetheless the fact that .NET is either converted to native or JIT-compiled makes is a better approach then Java.Colonel Kernel wrote:C# is not interpreted. It is either JIT-compiled, or compiled directly to native code (via ngen usually). Most .NET languages work the same way.os64dev wrote:in a sense interpret languages are not always bad. consider .NET for instance.
Java can be either interpreted or JIT-compiled, but is normally JIT-compiled these days.
Just the facts, ma'am.
If you fail to write protable code it means that it is poorly designed. GUI stuff should be obscured by a bridge design pattern and functionality always be done outside the GUI thread.Not that it answers your question. The answer is: use .NET if you want to develop non-portable software that will only run on Windows, because writing portable software that will run on Windows is very painful (especially if there is a GUI involved), and because writing non-portable code using the Win32 API is equally painful.
Author of COBOS
Opinion doesn't come in to it. If you compile natively, the code is no longer interpreted. JIT compiling is perhaps close to interpretation, in that the file loaded from disk is in MSIL and is not an executable binary - it is compiled...well...just-in-time!os64dev wrote: It is a matter of opinion.. If its either JIT-compiled or compiled natively what does that tell you about the state before.
[rant]os64dev wrote: If you fail to write protable code it means that it is poorly designed. GUI stuff should be obscured by a bridge design pattern and functionality always be done outside the GUI thread.
Supposing I write something for my company to use. I know my company uses MS operating systems and always will (and no, I don't think thats going too far - I know we will never use alternative OS's for at least as long as my software is still used and probably a long way after that...).
I don't think that writing that software in an MS-only language is poor design. In fact, I have specifically chosen to use a language which works nicely with the intended target audience - a trait of good design. I know that for the foreseeable, my code can be JIT compiled for all new OS's MS bring out. I daresay that writing my own bridging code using the win API would speed up my software a little, but if you have Core 2 Duo processors with 2GB of RAM and plenty of hard disk space, who cares? Certainly we don't use the computers for anything time-critical and all operations are finished before the operators are ready to continue anyway.
[/rant]
Adam
agree, but that you take the discision not to be portable, while what i mentions was when you take the discision to be portable. Those are different starting points.
as for the JIT stuff. if you also have the ngen en JIT for linux(mono) then its also ok but makes your code portable. Thats the beauty of the approach.
as for the JIT stuff. if you also have the ngen en JIT for linux(mono) then its also ok but makes your code portable. Thats the beauty of the approach.
Author of COBOS
Re: Dex is leaving, this forum
Cool, but then why leave here? Isn't this "I will leave and make lots of cash" a little bit of selfish?Dex wrote:I am leaving this forum, I see the desktop OS as DEAD and my true Web OS views are not welcome. I will go away and make lots of money, instead of helping fallow OS dev's.
So i will turn DexOS into the best true web OS there is, you still all have time, to see the light, do not be sheep.
Even M$ is dead: http://www.paulgraham.com/microsoft.html
PS: Dex has left the building.
On this board are hobby OS developers too, which might actually make a professional (desktop or web or whatever) OS, I hope they'll get farther than you. But of course, they won't. You're the best (sarcasm)
Make that web OS, get lots of money and become a philanthropist please.
I did not leave because i did not want to help fellow OS Dev's anymore, or i thought i was better than anyone on the forum, there a lots of talented programmers and lots of great OS in the making.
I still help in many other forums, but when you have helped 100 of people, and them the very same people, do not support you or write sarcastic s**t like that, months after i left.
At the same time your are offered lots of money, to code stuff for this or that Co, what would you do with your time ?.
I still help in many other forums, but when you have helped 100 of people, and them the very same people, do not support you or write sarcastic s**t like that, months after i left.
At the same time your are offered lots of money, to code stuff for this or that Co, what would you do with your time ?.