Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
P-code machine
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Implementations of P-code== In the early 1980s, at least two [[operating system]]s achieved [[machine independence]] through extensive use of P-code {{Citation needed|date=October 2024}}. The [[Business Operating System (software)|Business Operating System]] (BOS) was a cross-platform [[operating system]] designed to run P-code programs exclusively. The [[UCSD p-System]], developed at The University of California, San Diego, was a self-compiling and [[Self-hosting (compilers)|self-hosting]] operating system based on P-code optimized for generation by the [[Pascal (programming language)|Pascal]] language. In the 1990s, translation into p-code became a popular strategy for implementations of languages such as [[Python (programming language)|Python]], [[Microsoft P-Code]] in [[Visual Basic]] and [[Java bytecode]] in [[Java (programming language)|Java]]. The language [[Go (programming language)|Go]] uses a generic, portable assembly as a form of p-code, implemented by [[Ken Thompson]] as an extension of the work on [[Plan 9 from Bell Labs]]. Unlike [[Common Language Runtime]] (CLR) bytecode or JVM bytecode, there is no stable specification and the Go build tools do not emit a bytecode format to be used at a later time. The Go assembler uses the generic assembly language as an [[intermediate representation]] and the Go executables are machine-specific [[statically linked]] binaries.<ref name="Pike_2016"/>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)