Write once, run anywhere
Write once, run anywhere (WORA), or sometimes Write once, run everywhere (WORE), was a 1995[1] slogan created by Sun Microsystems to illustrate the cross-platform benefits of the Java language.[2][3] Ideally, this meant that a Java program could be developed on any device, compiled into standard bytecode, and be expected to run on any device equipped with a Java virtual machine (JVM). The installation of a JVM or Java interpreter on chips, devices, or software packages became an industry standard practice.
A programmer could develop code on a PC and expect it to run on Java-enabled mobile phones, as well as on routers and mainframes equipped with Java, without any adjustments. This was intended to save software developers the effort of writing a different version of their software for each platform or operating system they intend to deploy on.
This idea originated no later than the 1960s, with the IBM M44/44X, and in the late 1970s the UCSD Pascal system was developed to produce and interpret p-code. UCSD Pascal (along with the Smalltalk virtual machine) was a key influence on the design of the JVM, as is cited by James Gosling.[citation needed]
The catch is that since there are multiple JVM implementations, on top of a wide variety of different operating systems, there could be subtle differences in how a program executes on each JVM/OS combination, possibly requiring an application to be tested on each target platform. This gave rise to a joke among Java developers: Write Once, Debug Everywhere.[4]
In comparison, the Squeak Smalltalk programming language and environment boasts of being truly write once run anywhere,[5] because it runs bit-identical images across its wide portability base.[6]
Like Squeak, MicroEJ provides a virtual execution environment that guarantees one unique Java thread policy across all implementations, ensuring a true WORA semantic across millions of devices.
See also
- Criticisms of cross-platform development and this slogan
- Software portability
- Write once, compile anywhere
- Parrot virtual machine
- Criticism of Java
- Write once, run forever
- Universal Windows Platform
References
- ↑ "Write once, run anywhere?" (in en). https://www.computerweekly.com/feature/Write-once-run-anywhere.
- ↑ "JavaSoft ships Java 1.0". Sun Microsystems. 1996-01-23. http://www.sun.com/smi/Press/sunflash/1996-01/sunflash.960123.10561.xml. "Java's write-once-run-everywhere capability along with its easy accessibility have propelled the software and Internet communities to embrace it as the de facto standard for writing applications for complex networks"
- ↑ "Write once, run anywhere?". Computer Weekly. 2002-05-02. http://www.computerweekly.com/Articles/2002/05/02/186793/write-once-run-anywhere.htm. Retrieved 2009-07-27.
- ↑ Wong, William (2002-05-27). "Write Once, Debug Everywhere". electronicdesign.com. http://electronicdesign.com/embedded/write-once-debug-everywhere. Retrieved 2013-02-04. "So far, the "Write-once, run-everywhere" promise of Java hasn't come true. The bulk of a Java application will migrate between most Java implementations, but taking advantage of a VM-specific feature causes porting problems."
- ↑ "Welcome To Squeak". http://www.squeak.org. Retrieved 5 May 2015.
- ↑ "Back to the Future The Story of Squeak, A Practical Smalltalk Written in Itself". Dan Ingalls Ted Kaehler John Maloney Scott Wallace Alan Kay. http://ftp.squeak.org/docs/OOPSLA.Squeak.html. Retrieved 5 May 2015.
Original source: https://en.wikipedia.org/wiki/Write once, run anywhere.
Read more |