Language:
Free Online Dictionary|3Dict

multipop68

Source : Free On-Line Dictionary of Computing

Multipop-68
     
         An early {time-sharing} {operating system}
        developed in Edinburgh by Robin Popplestone and others.  It
        was inspired by {MIT}' {Project MAC}, via a "MiniMac" project
        which was aborted when it became obvious that {Elliot
        Brothers} Ltd. could not supply the necessary disk storage.
        Multipop was highly efficient in its use of machine resources
        to support {symbolic programming}, and effective - e.g. in
        supporting the development of the {Boyer-Moore theorem prover}
        and of Burstall and Darlington's transformation work.
     
        It was not good at supporting the user programs which were
        then the standard fare of computing, e.g. matrix inversion.
        This arose from the fact that while the {POP-2} compiler
        generated good code for function call (which is a lot of what
        layered systems like operating systems do) it did not generate
        efficient code for arithmetic or store access, because there
        was no way to police the generation of illegal objects
        statically.  ({Hindley-Milner type} checking did not exist).
        Indeed, since many OS features like file-access were performed
        by function-call (of a {closure}) rather than an OS call
        requiring a {context switch}, POP-2 actually gained
        performance.
     
        Multipop68 was efficient primarily because the one language,
        POP-2 served all purposes: it was the command language for the
        operating system as well as being the only available
        programming language.  Thus there was no need to swap in
        compilers etc.  All store management was accomplished
        uniformly by the {garbage collector}, as opposed to having
        store management for the OS and store management for each
        application.
     
        There was a substantial amount of {assembly language} in
        Multipop68.  This was primarily for interrupt handling, and it
        is difficult to handle this without a {real-time}
        garbage-collector.
     
        [Edited from a posting by Robin Popplestone].
     
        (1995-03-15)
Sort by alphabet : A B C D E F G H I J K L M N O P Q R S T U V W X Y Z