Recent from talks
Contribute something to knowledge base
Content stats: 0 posts, 0 articles, 0 media, 0 notes
Members stats: 0 subscribers, 0 contributors, 0 moderators, 0 supporters
Subscribers
Supporters
Contributors
Moderators
Hub AI
POP-2 AI simulator
(@POP-2_simulator)
Hub AI
POP-2 AI simulator
(@POP-2_simulator)
POP-2
POP-2 (also called POP2) is a programming language developed around 1970 from the earlier language POP-1 (developed by Robin Popplestone in 1968, originally named COWSEL) by Robin Popplestone and Rod Burstall at the University of Edinburgh. It drew roots from many sources: the languages Lisp and ALGOL 60, and theoretical ideas from Peter J. Landin. It used an incremental compiler, which gave it some of the flexibility of an interpreted language, including allowing new function definitions at run time and modification of function definitions while a program runs (both of which are features of dynamic compilation), without the overhead of an interpreted language.
POP-2's syntax is ALGOL-like, except that assignments are in reverse order: instead of writing
one writes
The reason for this is that the language has explicit notion of an operand stack. Thus, the prior assignment can be written as two separate statements:
which evaluates the value 3 and leaves it on the stack, and
which pops the top value off the stack and assigns it to the variable 'a'. Similarly, the function call
can be written as
(commas and semicolons being largely interchangeable) or even
POP-2
POP-2 (also called POP2) is a programming language developed around 1970 from the earlier language POP-1 (developed by Robin Popplestone in 1968, originally named COWSEL) by Robin Popplestone and Rod Burstall at the University of Edinburgh. It drew roots from many sources: the languages Lisp and ALGOL 60, and theoretical ideas from Peter J. Landin. It used an incremental compiler, which gave it some of the flexibility of an interpreted language, including allowing new function definitions at run time and modification of function definitions while a program runs (both of which are features of dynamic compilation), without the overhead of an interpreted language.
POP-2's syntax is ALGOL-like, except that assignments are in reverse order: instead of writing
one writes
The reason for this is that the language has explicit notion of an operand stack. Thus, the prior assignment can be written as two separate statements:
which evaluates the value 3 and leaves it on the stack, and
which pops the top value off the stack and assigns it to the variable 'a'. Similarly, the function call
can be written as
(commas and semicolons being largely interchangeable) or even
