next up previous contents
Next: A brief history Up: PREFACE TO THE Previous: Pop-11 as a

Disadvantages of Pop-11

Arguments about the relative merits of different languages can get very heated and are often extremely subjective. However, just as there are some objectively testable advantages to Pop-11 there are also some disadvantages:

(a) It is not available on PCs, except on PCs running the Linux operating system (a version of Unix). A version of Poplog which runs under Windows NT/95/98 is available at the Free Poplog site, but it does not include support for the graphical facilities with are available in Unix Poplog using the X window system. (I believe there is an X emulation package for Windows, but it is very expensive.) The Mac implementation of Pop-11, known as Alphapop, previously available from Cognitive Applications Ltd, does not run under recent versions of the Mac operating system.

(b) Because of its size and the supported machine types, Pop-11 is not recommended for small embedded systems. However, it can be used to implement cross compilers for embedded systems.

(c) The complex, user-extendable, syntax makes it extremely difficult to automate the analysis of Pop-11 programs. For applications where mathematical analysis of software is a requirement, e.g. flight control systems, Pop-11, would not be suitable, though it could be used for rapidly developing prototypes prior to final implementation, and it could support expert-systems acting alongside the critical software, e.g. to analyse data or make heuristic suggestions that would not be adopted unless checked by a more rigorous system, or a person.

(d) Because of the long history of its development and our inability in the early days (e.g. 1970s and early 1980s) to anticipate some of the extensions that would be required several years later, there were some unfortunate choices of identifer names that are hard to repair without annoying existing users, and several aspects of the syntax of Pop-11 that are messy. Up to Poplog version 15, the default for procedure formal parameters and output variables was, unfortunately, to declare them as "vars" not "lvars" (lexical variables). This has now been remedied, though a special compile_mode is available to restore earlier semantics.

(e) The undisciplined use of the open stack in Pop-11 can lead to obscure run-time errors, even though it is often very useful.

(f) Some users find the redundant syntax of Pop-11 too verbose, especially users with a strong mathematical bent, many of whom prefer the elegance and economy of Lisp, supported by a powerful editor.

(g) The language is not very widely used, though there are pockets of enthusiasm in various countries, both among academics and among commercial users. The main Poplog distributor during the 1990s, Integral Solutions Ltd, managed to continue growing despite the very severe recession in the early 90s. Later, after they had been taken over by SPSS, they decided that there was no market for AI languages, and it became available free of charge, though they condinued to develop and sell Clementine, a data-mining system used world wide, mainly implemented in Pop-11.

(h) Like Common Lisp, Pop-11 is a very rich and complex language. Becoming fluent in the use of all of its capabilities can take a long time (e.g. a year or more), though many of its users have found the learning well worth while.

(i) Because Pop-11 has so many features it is possible for beginners inadvertently to trip over more advanced features and then be mystified and discouraged. This can be a disadvantage, though in a good teaching environment it is also a source of important new learning.

(j) Because Pop-11 is compiled (for speed) rather than interpreted, it is not possible to produce such sophisticated run-time debugging tools as for those versions of Lisp that have an interpreter. However, this disadvantage has recently been reduced considerably by the development of new source-level debugging tools, by Simon Nichols and Robert Duncan, documented in the online HELP DEBUGGER file.



next up previous contents
Next: A brief history Up: PREFACE TO THE Previous: Pop-11 as a



Aaron Sloman
25 Oct 1999