platform independence....!!
-
Platform independence, What it actually means......?? Java is platform independent, but the word platform compromise what? Is it CPU only or is it CPU+OS? when you said java is PI, but then you have to install OS specific JDK OR JRE. Java has OS(linux, win etc) specific jre, then why cant C# have this? Now you say MONO is there, but that still under hit n try loop. Cant MS create an OS specific framework and release. it helps it to gain more users. In market people still prefers java over c#, after creating all these VS version, .net framework's, blah blah....(which only putting loads on cpu, ram etc, OS getting heavy and more heavy, every program consumption increasing) Even after all these MS OS & technologies are under heat and exploitation. Open source.....?? Is this is the new era? :confused::confused::confused::confused:
-
Platform independence, What it actually means......?? Java is platform independent, but the word platform compromise what? Is it CPU only or is it CPU+OS? when you said java is PI, but then you have to install OS specific JDK OR JRE. Java has OS(linux, win etc) specific jre, then why cant C# have this? Now you say MONO is there, but that still under hit n try loop. Cant MS create an OS specific framework and release. it helps it to gain more users. In market people still prefers java over c#, after creating all these VS version, .net framework's, blah blah....(which only putting loads on cpu, ram etc, OS getting heavy and more heavy, every program consumption increasing) Even after all these MS OS & technologies are under heat and exploitation. Open source.....?? Is this is the new era? :confused::confused::confused::confused:
Hum Dum wrote:
Java is platform independent, but the word platform compromise what?
The exact definition depends on the domain, but we generally refer to a combination of hardware, and software to operate that hardware as a platform. So, the parts of your computer that you can kick, plus Windows :) Pascal is also platform-independent, and even vendor-independent. It doesn't have a garbage-collector like the .NET Framework or Java, but it usually compiles to native and doesn't require a VM at all.
Hum Dum wrote:
Java has OS(linux, win etc) specific jre, then why cant C# have this?
There's not only Mono, there's also DotGNU[^] and Portable.NET[^] :)
Hum Dum wrote:
Now you say MONO is there, but that still under hit n try loop. Cant MS create an OS specific framework and release. it helps it to gain more users.
Why not simply ask them? I doubt that anyone here will know the motivations of the Microsoft-marketing team, what resources the development department can draw from, or what the priorities are. In other words, it might have been a very complicated decision, and it may not be based on whether or not it's possible or whether Linux-users would want to pay for VB.NET.
Hum Dum wrote:
Open source.....?? Is this is the new era?
What new era were you expecting?
I are Troll :)
-
Hum Dum wrote:
Java is platform independent, but the word platform compromise what?
The exact definition depends on the domain, but we generally refer to a combination of hardware, and software to operate that hardware as a platform. So, the parts of your computer that you can kick, plus Windows :) Pascal is also platform-independent, and even vendor-independent. It doesn't have a garbage-collector like the .NET Framework or Java, but it usually compiles to native and doesn't require a VM at all.
Hum Dum wrote:
Java has OS(linux, win etc) specific jre, then why cant C# have this?
There's not only Mono, there's also DotGNU[^] and Portable.NET[^] :)
Hum Dum wrote:
Now you say MONO is there, but that still under hit n try loop. Cant MS create an OS specific framework and release. it helps it to gain more users.
Why not simply ask them? I doubt that anyone here will know the motivations of the Microsoft-marketing team, what resources the development department can draw from, or what the priorities are. In other words, it might have been a very complicated decision, and it may not be based on whether or not it's possible or whether Linux-users would want to pay for VB.NET.
Hum Dum wrote:
Open source.....?? Is this is the new era?
What new era were you expecting?
I are Troll :)
Eddy Vluggen wrote:
Pascal is also platform-independent, and even vendor-independent. It doesn't have a garbage-collector like the .NET Framework or Java, but it usually compiles to native and doesn't require a VM at all.
That's not Platform Independence, because you still need the Pascal compiler. PI means that you can compile on one platform and run the executable on all the others. The reason Java needs the addition of its own VM is that most manufacturers have not built this into their OS and hardware, yet.
-
Hum Dum wrote:
Java is platform independent, but the word platform compromise what?
The exact definition depends on the domain, but we generally refer to a combination of hardware, and software to operate that hardware as a platform. So, the parts of your computer that you can kick, plus Windows :) Pascal is also platform-independent, and even vendor-independent. It doesn't have a garbage-collector like the .NET Framework or Java, but it usually compiles to native and doesn't require a VM at all.
Hum Dum wrote:
Java has OS(linux, win etc) specific jre, then why cant C# have this?
There's not only Mono, there's also DotGNU[^] and Portable.NET[^] :)
Hum Dum wrote:
Now you say MONO is there, but that still under hit n try loop. Cant MS create an OS specific framework and release. it helps it to gain more users.
Why not simply ask them? I doubt that anyone here will know the motivations of the Microsoft-marketing team, what resources the development department can draw from, or what the priorities are. In other words, it might have been a very complicated decision, and it may not be based on whether or not it's possible or whether Linux-users would want to pay for VB.NET.
Hum Dum wrote:
Open source.....?? Is this is the new era?
What new era were you expecting?
I are Troll :)
Eddy Vluggen wrote:
Why not simply ask them? I
i doubted i really will get an answer :-D
Eddy Vluggen wrote:
What new era were you expecting?
I mean more and more peoples getting used to open source software's, these products gaining popularity day by day.
Eddy Vluggen wrote:
whether Linux-users would want to pay for VB.NET.
VB Aah the full of crap s**t, which gives even word user to become a developer To all problems : MS answer, "Restart your Window" :) and keep updating (as new version we release only to crash your pc's X| ) C# (copied ) and named as "NEW PI MS TECH".
modified on Wednesday, September 23, 2009 7:29 AM
-
Eddy Vluggen wrote:
Pascal is also platform-independent, and even vendor-independent. It doesn't have a garbage-collector like the .NET Framework or Java, but it usually compiles to native and doesn't require a VM at all.
That's not Platform Independence, because you still need the Pascal compiler. PI means that you can compile on one platform and run the executable on all the others. The reason Java needs the addition of its own VM is that most manufacturers have not built this into their OS and hardware, yet.
Richard MacCutchan wrote:
That's not Platform Independence, because you still need the Pascal compiler.
A language is not confined to it's compiler. On top of that, not every language is compiled, there are implementations of interpreted languages on most common platforms.
Richard MacCutchan wrote:
PI means that you can compile on one platform and run the executable on all the others.
Aight, most executables on Windows use the Windows-API. Those aren't implemented Linux (WINE isn't a complete replacement), nor on OSX. Worse, you cannot even simply copy your executable to an AmigaDOS-based system. It would convert some of the bits to the encoding of it's own FileSystem, crippling the original executable. Now, Java-code can be compiled into native machine code[^], so it's not confined to a Virtual Machine. The resulting executable will not run on an Atari ST, because the machine code isn't native to the Atari ST platform.
Richard MacCutchan wrote:
The reason Java needs the addition of its own VM is that most manufacturers have not built this into their OS and hardware, yet.
It's not the responsibility of the hardware-manufacturer or the OS-developer to embed native support for any language. I'm still waiting for a chip that runs my old GWBASIC code natively.
I are Troll :)
-
Eddy Vluggen wrote:
Why not simply ask them? I
i doubted i really will get an answer :-D
Eddy Vluggen wrote:
What new era were you expecting?
I mean more and more peoples getting used to open source software's, these products gaining popularity day by day.
Eddy Vluggen wrote:
whether Linux-users would want to pay for VB.NET.
VB Aah the full of crap s**t, which gives even word user to become a developer To all problems : MS answer, "Restart your Window" :) and keep updating (as new version we release only to crash your pc's X| ) C# (copied ) and named as "NEW PI MS TECH".
modified on Wednesday, September 23, 2009 7:29 AM
Hum Dum wrote:
i doubted i really will get an answer
They won't go into a discussion, and they won't describe every argument that was part of the decision. Anyway, you might get a note back with some explanation and them thanking you for your feedback :)
Hum Dum wrote:
I mean more and more peoples getting used to open source software's, these products gaining popularity day by day.
That hype started some years ago. "Open Source" means that anyone who wants can view, alter, use and distribute the source-code. The average user would say that "Open Source" is "for free" and that it doesn't belong to a company. The hype is turning around again; there is no guarantee that an Open Source project won't be abandoned by it's developers. Nah, I think that Microsoft has more to fear from Google Docs (free, but closed source) than from OpenOffice.
Hum Dum wrote:
VB Aah the full of crap s**t, which gives even word user to become a developer
Agreed, they made programming too damn easy, down to the level where one can copy and paste code and have it corrected on a programming forum :laugh:
Hum Dum wrote:
To all problems : MS answer, "Restart your Window" and keep updating (as new version we release only to crash your pc's )
The first thing a ISP-helpdesk will shout is that you need to reset the modem and call back in half an hour. It's just a convenient way to restore the appliance into it's default position, and it's applicable to anything electric. Even the heater in my house has a reset-button. It gets hit whenever the water is cold, and that usually does the trick - the heater shuts down, one of the gas-valves goes back and the thing works again. That is, until it blows up my kitchen.. And yeah, I like them updates. I paid a lot for Windows, and it's cool that they keep improving it after I bought it. It's at least better then what I had to do when I still owned an Amiga: buy a new computer with a new ROM. That computer had it's "Windows" embedded in the hardware - if you wanted to move from 1.3 to 2.0, you'd (usually) have to buy an entirely new model.
I are Troll :)
-
Richard MacCutchan wrote:
That's not Platform Independence, because you still need the Pascal compiler.
A language is not confined to it's compiler. On top of that, not every language is compiled, there are implementations of interpreted languages on most common platforms.
Richard MacCutchan wrote:
PI means that you can compile on one platform and run the executable on all the others.
Aight, most executables on Windows use the Windows-API. Those aren't implemented Linux (WINE isn't a complete replacement), nor on OSX. Worse, you cannot even simply copy your executable to an AmigaDOS-based system. It would convert some of the bits to the encoding of it's own FileSystem, crippling the original executable. Now, Java-code can be compiled into native machine code[^], so it's not confined to a Virtual Machine. The resulting executable will not run on an Atari ST, because the machine code isn't native to the Atari ST platform.
Richard MacCutchan wrote:
The reason Java needs the addition of its own VM is that most manufacturers have not built this into their OS and hardware, yet.
It's not the responsibility of the hardware-manufacturer or the OS-developer to embed native support for any language. I'm still waiting for a chip that runs my old GWBASIC code natively.
I are Troll :)
Eddy Vluggen wrote:
A language is not confined to it's compiler.
I don't understand this statement; how can it not be?
Eddy Vluggen wrote:
not every language is compiled,
Well, if it isn't compiled it needs an interpreter; almost the same thing.
Eddy Vluggen wrote:
Worse, you cannot even simply copy your executable to an AmigaDOS-based system. It would convert some of the bits to the encoding of it's own FileSystem, crippling the original executable.
But the whole point of platform independence is that you can copy the object (executable) to any platform and run it as is. That's why the platform has to implement some form of VM, either through software or hardware.
Eddy Vluggen wrote:
It's not the responsibility of the hardware-manufacturer or the OS-developer to embed native support for any language.
No, it's not their responsibility, but if they want to offer the facilities required by the market then it's in their interests to do it.
-
Eddy Vluggen wrote:
A language is not confined to it's compiler.
I don't understand this statement; how can it not be?
Eddy Vluggen wrote:
not every language is compiled,
Well, if it isn't compiled it needs an interpreter; almost the same thing.
Eddy Vluggen wrote:
Worse, you cannot even simply copy your executable to an AmigaDOS-based system. It would convert some of the bits to the encoding of it's own FileSystem, crippling the original executable.
But the whole point of platform independence is that you can copy the object (executable) to any platform and run it as is. That's why the platform has to implement some form of VM, either through software or hardware.
Eddy Vluggen wrote:
It's not the responsibility of the hardware-manufacturer or the OS-developer to embed native support for any language.
No, it's not their responsibility, but if they want to offer the facilities required by the market then it's in their interests to do it.
Richard MacCutchan wrote:
Eddy Vluggen wrote: A language is not confined to it's compiler. I don't understand this statement; how can it not be?
The language is defined by its specification documents. Various compilers and interpreters can be made to conform to the specification, though not probably not 100% compliant, thus creating variations. BASIC has a defined set of specs, but you can find compilers and interpreters for it.
A guide to posting questions on CodeProject[^]
Dave Kreskowiak Microsoft MVP Visual Developer - Visual Basic
2006, 2007, 2008
But no longer in 2009... -
Richard MacCutchan wrote:
Eddy Vluggen wrote: A language is not confined to it's compiler. I don't understand this statement; how can it not be?
The language is defined by its specification documents. Various compilers and interpreters can be made to conform to the specification, though not probably not 100% compliant, thus creating variations. BASIC has a defined set of specs, but you can find compilers and interpreters for it.
A guide to posting questions on CodeProject[^]
Dave Kreskowiak Microsoft MVP Visual Developer - Visual Basic
2006, 2007, 2008
But no longer in 2009...Dave Kreskowiak wrote:
The language is defined by its specification documents.
Yes, I understand that. However, in the context of our discussion I was stating that while you can run a Pascal program on many different platforms, you will still require the compiler and libraries, in order to create the executable. True platform independence means that you can create an executable on one platform, but run it on any other, without the need of the language compiler or libraries. Java goes some way towards this but still requires the manufacturer to provide a Java VM. The ultimate goal is that all manufacturers will have built in support for Java runtime code (or similar) on their systems.
-
Eddy Vluggen wrote:
A language is not confined to it's compiler.
I don't understand this statement; how can it not be?
Eddy Vluggen wrote:
not every language is compiled,
Well, if it isn't compiled it needs an interpreter; almost the same thing.
Eddy Vluggen wrote:
Worse, you cannot even simply copy your executable to an AmigaDOS-based system. It would convert some of the bits to the encoding of it's own FileSystem, crippling the original executable.
But the whole point of platform independence is that you can copy the object (executable) to any platform and run it as is. That's why the platform has to implement some form of VM, either through software or hardware.
Eddy Vluggen wrote:
It's not the responsibility of the hardware-manufacturer or the OS-developer to embed native support for any language.
No, it's not their responsibility, but if they want to offer the facilities required by the market then it's in their interests to do it.
Richard MacCutchan wrote:
Well, if it isn't compiled it needs an interpreter; almost the same thing.
Woman and man are also almost the same thing, but I'd hate to make a mistake in discriminating between the two on the wrong occasion. A compiled executable is machinecode that's assembled for a specific architecture. You won't be able to run machinecode from the Intel platform on a Motorola machine, without doing any modifications. You might find a compiler that's able to compile the same language, but that means that you cannot use any native libraries. The second option is interpreted; you don't distribute machinecode, but sourcecode. Then the computer executes these instructions ad hoc. The third option would be to distribute something that resembles sourcecode, but is actually compiled and optimized for a generic environment. That's your VM.
Richard MacCutchan wrote:
But the whole point of platform independence is that you can copy the object (executable) to any platform and run it as is. That's why the platform has to implement some form of VM, either through software or hardware.
Words don't have goals, but meanings. You'll find that it means "not depending on the platform". A platform has no obligation whatsoever to provide various Virtual Machines.
Richard MacCutchan wrote:
The ultimate goal is that all manufacturers will have built in support for Java runtime code (or similar) on their systems.
Their goal is to make a profit, and they will serve the needs and demands of that market.
I are Troll :)
-
Dave Kreskowiak wrote:
The language is defined by its specification documents.
Yes, I understand that. However, in the context of our discussion I was stating that while you can run a Pascal program on many different platforms, you will still require the compiler and libraries, in order to create the executable. True platform independence means that you can create an executable on one platform, but run it on any other, without the need of the language compiler or libraries. Java goes some way towards this but still requires the manufacturer to provide a Java VM. The ultimate goal is that all manufacturers will have built in support for Java runtime code (or similar) on their systems.
Richard MacCutchan wrote:
Java goes some way towards this but still requires the manufacturer to provide a Java VM.
Thus making the runtime environment itself platform dependant, so, based on your view of the compilers for C/C++, is Java really platform independant? I don't think so. So far, the only "language" that I know of that is truely independant is Math. No computer language that I can think of can exist without a seperate implementation of something on each type of CPU to get the resulting code to run.
A guide to posting questions on CodeProject[^]
Dave Kreskowiak Microsoft MVP Visual Developer - Visual Basic
2006, 2007, 2008
But no longer in 2009... -
Richard MacCutchan wrote:
Java goes some way towards this but still requires the manufacturer to provide a Java VM.
Thus making the runtime environment itself platform dependant, so, based on your view of the compilers for C/C++, is Java really platform independant? I don't think so. So far, the only "language" that I know of that is truely independant is Math. No computer language that I can think of can exist without a seperate implementation of something on each type of CPU to get the resulting code to run.
A guide to posting questions on CodeProject[^]
Dave Kreskowiak Microsoft MVP Visual Developer - Visual Basic
2006, 2007, 2008
But no longer in 2009...Plain English. Write once. Run nowhere.
"WPF has many lovers. It's a veritable porn star!" - Josh Smith
As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
-
Richard MacCutchan wrote:
Well, if it isn't compiled it needs an interpreter; almost the same thing.
Woman and man are also almost the same thing, but I'd hate to make a mistake in discriminating between the two on the wrong occasion. A compiled executable is machinecode that's assembled for a specific architecture. You won't be able to run machinecode from the Intel platform on a Motorola machine, without doing any modifications. You might find a compiler that's able to compile the same language, but that means that you cannot use any native libraries. The second option is interpreted; you don't distribute machinecode, but sourcecode. Then the computer executes these instructions ad hoc. The third option would be to distribute something that resembles sourcecode, but is actually compiled and optimized for a generic environment. That's your VM.
Richard MacCutchan wrote:
But the whole point of platform independence is that you can copy the object (executable) to any platform and run it as is. That's why the platform has to implement some form of VM, either through software or hardware.
Words don't have goals, but meanings. You'll find that it means "not depending on the platform". A platform has no obligation whatsoever to provide various Virtual Machines.
Richard MacCutchan wrote:
The ultimate goal is that all manufacturers will have built in support for Java runtime code (or similar) on their systems.
Their goal is to make a profit, and they will serve the needs and demands of that market.
I are Troll :)
Eddy Vluggen wrote:
Woman and man are also almost the same thing
A trollism, which I will ignore.
Eddy Vluggen wrote:
A compiled executable is machinecode that's assembled for a specific architecture.
Not if it's Java, which produces an object like byte code which will run under a Java VM on any architecture. This is the whole philosophy behind the Java language. I used this extensively in the last commercial project that I worked on.
Eddy Vluggen wrote:
Their goal is to make a profit, and they will serve the needs and demands of that market.
I agree completely; and if the demands of the market are for platforms that support a Java-like implementation, then the manufacturers will fall over themselves to provide it.
-
Plain English. Write once. Run nowhere.
"WPF has many lovers. It's a veritable porn star!" - Josh Smith
As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
-
Richard MacCutchan wrote:
Java goes some way towards this but still requires the manufacturer to provide a Java VM.
Thus making the runtime environment itself platform dependant, so, based on your view of the compilers for C/C++, is Java really platform independant? I don't think so. So far, the only "language" that I know of that is truely independant is Math. No computer language that I can think of can exist without a seperate implementation of something on each type of CPU to get the resulting code to run.
A guide to posting questions on CodeProject[^]
Dave Kreskowiak Microsoft MVP Visual Developer - Visual Basic
2006, 2007, 2008
But no longer in 2009...Dave Kreskowiak wrote:
based on your view of the compilers for C/C++, is Java really platform independant?
Well I haven't stated what my view of C/C++ is! And yes I agree that Java is still not totally independent but it is closer than anything else at the moment. The key here is not what the source language looks like but whether the object code is truly portable to every platform.
Dave Kreskowiak wrote:
the only "language" that I know of that is truely independant is Math.
I don't know what that has to do with this subject.
Dave Kreskowiak wrote:
No computer language that I can think of can exist without a seperate implementation of something on each type of CPU to get the resulting code to run.
I have never disputed this. The point is that platform independence will only truly exist when the manufacturers provide a common implementation for some object code which any source language can be compiled to. At present we have Java and MSIL, both a small step towards this goal. Whether we ever get to true platform independence for all languages is anyone's guess.
-
Eddy Vluggen wrote:
Woman and man are also almost the same thing
A trollism, which I will ignore.
Eddy Vluggen wrote:
A compiled executable is machinecode that's assembled for a specific architecture.
Not if it's Java, which produces an object like byte code which will run under a Java VM on any architecture. This is the whole philosophy behind the Java language. I used this extensively in the last commercial project that I worked on.
Eddy Vluggen wrote:
Their goal is to make a profit, and they will serve the needs and demands of that market.
I agree completely; and if the demands of the market are for platforms that support a Java-like implementation, then the manufacturers will fall over themselves to provide it.
-
Richard MacCutchan wrote:
A trollism, which I will ignore.
Not a trollism, but an extreme example to show that details do mind. The devil is always is the details :)
-
Eddy Vluggen wrote:
A language is not confined to it's compiler.
I don't understand this statement; how can it not be?
Eddy Vluggen wrote:
not every language is compiled,
Well, if it isn't compiled it needs an interpreter; almost the same thing.
Eddy Vluggen wrote:
Worse, you cannot even simply copy your executable to an AmigaDOS-based system. It would convert some of the bits to the encoding of it's own FileSystem, crippling the original executable.
But the whole point of platform independence is that you can copy the object (executable) to any platform and run it as is. That's why the platform has to implement some form of VM, either through software or hardware.
Eddy Vluggen wrote:
It's not the responsibility of the hardware-manufacturer or the OS-developer to embed native support for any language.
No, it's not their responsibility, but if they want to offer the facilities required by the market then it's in their interests to do it.
Richard MacCutchan wrote:
But the whole point of platform independence is that you can copy the object (executable) to any platform and run it as is.
That may be just one narrow definition and I don't believe it's achievable. Unless I'm mistaken... The only platform Java runs on is the Java VM.
-
Platform independence, What it actually means......?? Java is platform independent, but the word platform compromise what? Is it CPU only or is it CPU+OS? when you said java is PI, but then you have to install OS specific JDK OR JRE. Java has OS(linux, win etc) specific jre, then why cant C# have this? Now you say MONO is there, but that still under hit n try loop. Cant MS create an OS specific framework and release. it helps it to gain more users. In market people still prefers java over c#, after creating all these VS version, .net framework's, blah blah....(which only putting loads on cpu, ram etc, OS getting heavy and more heavy, every program consumption increasing) Even after all these MS OS & technologies are under heat and exploitation. Open source.....?? Is this is the new era? :confused::confused::confused::confused:
Generally, "platform" refers to the computer hardware and any software (operating system) running on it. Each layer of the platform provides an abstraction of the platform that supports it. Application Framework (VM) Operating System BIOS Hardware
Hum Dum wrote:
Java is platform independent
Hum Dum wrote:
why cant C# have this?
All high-level languages are platform independent. You just need a way (compiler/interpreter) to translate the high-level language to machine code.
-
Richard MacCutchan wrote:
But the whole point of platform independence is that you can copy the object (executable) to any platform and run it as is.
That may be just one narrow definition and I don't believe it's achievable. Unless I'm mistaken... The only platform Java runs on is the Java VM.
PIEBALDconsult wrote:
That may be just one narrow definition and I don't believe it's achievable.
Only time will tell on that. But if you consider what's achievable today compared to ten years ago ...
PIEBALDconsult wrote:
Unless I'm mistaken... The only platform Java runs on is the Java VM.
Yes as far as I know you are right. The key being that you can take a Java executable and run it anywhere that has a Java VM - which actually means quite a lot of places. All the other "portable" languages still need to be compiled and linked on the native platform. If you have ever worked on developing an application which is supposed to run on any platform you will know what a lot of work this entails. Switch to Java and you only need to have one development system.