is a strict superset of JAVA that incorporates three ideas from functional programming: 1)Parametric polymorphism, 2) Higher-order functions, 3)Algebraic data types. PIZZA is defined by translation into JAVA and compiles into the JVM, requirements which strongly constrains the design space. Thus PIZZA programs interface easily with JAVA libraries, and programs developed in PIZZA may be automatically converted to JAVA for ease of maintenance. The compiler is itself written in PIZZA, and may be used as a replacement for Sun's JAVA compiler. (Except that the Pizza compiler runs faster) Designed by Martin Odersky and Phillip Wadler, and implemented by Odersky.
in [ACM SIGACT-SIGPLAN] 24th Annual SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL '97), Paris, France view details