Talk:Bytecode

message: Some pretentious people making something of nothing. Bytecode is nonsense (just invented to make your dicks seem bigger).This article is total tosh and needs completely re-writing in terms of hex vs binary and interpreting for virtual machines. Better still, delete it all.  —Preceding unsigned comment added by 124.187.137.11 (talk) 12:39, 13 April 2009 (UTC)
replies: text: Page moved. Eugène van der Pijll 21:14, 24 June 2006 (UTC)
thread_title:  untitled 

message: I believe that this entire article is a misuse of the term bytecode.  I have worked near machine level in computer science for many years, and in my experience, bytecode applies specifically to the Java Virtual Machine, whose instruction set does indeed consist of one-byte opcodes.  For other programming languages, the correct term for what this article described is "intermediate language".  Visual Basic compiles to an intermediate language, as did Pascal, Smalltalk, and others.  These were NEVER to my knowledge called "bytecode."
I think this needs to be fixed, hopefully by the author of this article.
:I agree. / HenkeB (talk) 21:40, 13 January 2008 (UTC)
replies: text: Ok, is there a fundamental difference between "bytecode" and other intermediate representations then, as you see it? / HenkeB (talk) 14:47, 14 January 2008 (UTC)
replies: text: Yes an intermediary representation does not have to have it's tokens stored in a single byte per token. It's quite possible that a completely different scheme is used. A "bytecode" representation however, always uses a single byte for a single pseudo opcode token.Mahjongg (talk) 16:43, 14 January 2008 (UTC)

text: A quite superficial distinction then, if I understand you correctly? Sounds like, perhaps, this article should be renamed intermediate code with the word bytecode redirect here (instead of the other way round) - or better - create a separate one for intermediate code. However, I had the feeling this java-term had begun to mean just about any representation that is more similar (isomorph) to ordinary machine code than, say, tree-structured code, "quadruples", or stack code? / HenkeB (talk) 17:47, 14 January 2008 (UTC)
thread_title: incorrect use of term bytecode

message: I have to agree with the above comments about how the article needs to be easier to understand. I'm a part-time developer for various languages for the past 10 years. And I don't even understand what byte-code is, nor has this article helped. I'm not suggesting we compromise and make a 'for dummies' article, but just add a sentence here and there to help clarify.
I also agree with this.  Specifically, in the sentence, "Since it is processed by software, [bytecodes are] usually more abstract than machine code". In what sense is the word "abstract" being used?  When comparing it to "machine code", do you mean more abstract than binary code or more abstract than assembly language?  So, is bytecode higher level compared to one of these or lower level than one of these, or just different syntactically?  
The following sentence is also similarly confusing: "Compared to source code (intended to be human-readable), bytecodes are less abstract, more compact, and more computer-centric."
From what I understand, being "more abstract" usually means lower level.  So how could bytecode be more human readable (less abstract) but then more abstract than machine code???  From the current description, I interpret the former sentence to mean that Bytecode is lower level than assembly, or possibly, even lower level than binary, which isn't possible! I am also not familiar with how the word "computer-centric" is generally used when refering to levels of computer code, but I think this needs to be described more simply.
:In normal computer terminology, the more abstract the code the further it is removed from the physical implementation on the hardware. Usually more abstract code is therefore easier for a human to understand in everyday concepts instead of machine concepts. -- RTC 18:47, 7 February 2007 (UTC)
thread_title: Layman's terms

message: Could a textual language be considered bytecode? Obviously not, but this article lists CIL as an example of bytecode, and many other articles call it "bytecode". The article for CIL even calls it both "human-readable" and "bytecode". CIL example Herorev 21:22, 19 November 2006 (UTC)
replies: text: It seems CIL is not in itself bytecode, but can be assembled into bytecode. So CIL itself is not a form of bytecode. The only "human readable bytecode" I can think of is one which just uses each letter of the alphabet were each letter stands for the mnemonic of one opcode, for example the letter 'G' (47Hex) for 'Goto'. That would be "readable", and would use one byte for each instruction. Mahjongg (talk) 11:57, 14 January 2008 (UTC)
replies: text:  Another human-readable bytecode: the original wiki mentions "sed scripts don't need to be tokenized; they already are ... All sed commands are one byte long, not including arguments. ... More languages than just sed have this property or a similar one." -- WikiWikiWeb: LittleLanguage. --68.0.124.33 (talk) 01:43, 25 October 2008 (UTC)
thread_title:  binary requirement 

message: For old page history that used to be at this title, see Talk:Bytecode/old. Graham87 08:33, 5 February 2009 (UTC)
thread_title:  Old page history 

message: So far as I can tell, “bytecode” appears to be nothing but an euphemism for a slightly lower level Interpreted language. 72.235.213.232 (talk) 03:43, 19 June 2010 (UTC)
thread_title:  Merge neologisms 

message: Since Chrome 66, now V8 does partitally utilize bytecode.  — Preceding unsigned comment added by 119.145.72.152 (talk) 04:17, 20 April 2019 (UTC)
thread_title:  Bytecode v8 

message: It seems to me like the list of examples will grow indefinitely, as most interpreters use bytecode as an intermediate representation for interpretation, including many of those which can also optionally produce native code or compile to another language (i.e. to C or LLVM).  I can myself immediately think of various examples which are missing from the list, but am not sure it would be wise to add them... 76.10.128.192 (talk) 15:13, 5 July 2013 (UTC)
thread_title:  List of examples 

message: The article and DAB page for P code treat bytecode and P-codeas synonymous. However, I have never seen the term P-code  used in the literature for anything but the code generated by UCSD Pascal. Shmuel (Seymour J.) Metz Username:Chatul (talk) 06:39, 31 May 2021 (UTC)
replies: text: The UCSD people inherited the term from the the Zurich Pascal (or Pascal P) compiler, that was distributed to interested parties.  The P4 version was released in 1976 or 1977.  I don't have Barron's book around (Pascal: The language and its implementation), but I think P-code was discussed in it as well. The Pascal-S subset (1975 or so) had a combined compiler/interpreter, based on a P code.Athulin (talk) 18:16, 6 November 2021 (UTC)

text: The term P-code is certainly confusing to me. It sounds very much like Pseudocode. I sure do not know what the P in P-code would be. The term P-code used in this context seems to be from a beginner that does not understand what they mean. Sam Tomato (talk) 11:41, 6 May 2022 (UTC)

text: It would be very understandable if a term such as pseudo-assembly code were used but I do not know how common that is. Sam Tomato (talk) 11:44, 6 May 2022 (UTC)
thread_title:  Bytecode versus P-code 

message: Bytecode. Came here looking for "history of". Is always a good lead in to understanding anything. Wanted to know who was first to implement it (or name 'bytecode'), subsequent implementations. Aspidistra9812 (talk) 03:57, 27 July 2021 (UTC)
replies: text: I only have a suggestion: look for material coming out of the compilers / interpreters designed for portability starting in the 1960s, and usually based on the ideas of solving the M*N compiler problem (languages*architectures), which some researchers proposed to solve by defining a universal intermediate language between the M languages and the N computer architectures, making it into a M+N problem. When I hear the term I think of Algol 60 (Randall & Russell: Algol 60 implementation, (1964)), Smalltalk-80 and Pascal, and certainly the Amsterdam Compiler Kit (Andrew Tanenbaum). Tanenbaum's paper on the design of the EM-1 byte code ("DESCRIPTION OF A MACHINE ARCHITECTURE FOR USE WITH BLOCK STRUCTURED LANGUAGE", Informatica Report IR-81) is worth reading. It doesn't use the term 'byte code', but the instruction format is heavily byte-oriented for processing efficiency, and anyone knowing EM-1 would almost certainly interpret the term as a synonym for intermediate code based on the same design principles.  At a stretch, Griswold's book on portable SNOBOL4 implementation might be relevant, perhaps also Lisp Machine stuff, and I vaguely remember another author who wrote a lot about portable code (Winter?). Barron's and Pemberton's books on Pascal implementation may also provides clues. Athulin (talk) 09:27, 20 October 2022 (UTC)
replies: text: ... and interestingly enough I come on the https://en.wikipedia.org/wiki/Virtual_machine#History where the term 'O-Code' is used for one such intermediate language. It is possible, that the term P code is a reference back to O code: they seem to have been used in much the same way. Athulin (talk) 18:02, 29 November 2022 (UTC)
thread_title:  History of?