CAT(ID:7621/)





Related languages
CAT => M2001   Incorporated some features of

References:
  • Prather, R.E. "Proposal for a Categorical Programming Language" view details DOI Extract: Introduction
    Introduction

    In the development of the traditional programming language, we more often find that the applications, the machine model of the computing environment, and the habits and attitudes of the common programmer, in some combination, serve to determine the design philosophy and the overall characteristics of the resulting language. Usually these considerations are mutually competitive and we then obtain something of a compromise in design philosophy and in language features . When, at a later stage, we undertake a study of the semantic interpretation of such languages, it is then small wonder that all mathematical machinery adequate to the task is found to be cumbersome, unwieldy and largely unsatisfactory. We are here proposing an undertaking that will put " the horse before the cart, " so to speak, almost having the effect that the semantic interpretation and the language design philosophy might be thought to coincide.
    We believe that the problem is largely a question of "domains," and of the necessary "exception handling" when these computational domains are not well chosen . In pure Lisp we have an unusually simple domain structure, all computational objects are of one type, and accordingly, the semantic interpretation of Lisp is quite straightforward . On the other hand, not everyone is completely happy with such an elementary programming environment, however elegant the foundation may be.
    It is our hope to propose an equally simple mathematical foundation here, drawn from the theory of categories, yet having the consequence that more conventional programming structures and techniques might result. If we are to use the categorical apparatus as a cornerstone to our development, it seems most likely that we will need to operate within the category of sets, or in an appropriate sub-category thereof . Our first task is then to decide what form this subcategory might take, and then to convince the reader, through a preliminary investigation of its properties and its programming language interpretation, that we have chosen wisely.
          in [SIGPLAN] SIGPLAN Notices 25(04) April 1990 view details
  • Prather, R.E., A Categorical Expression Language, submitted to Mathematical Structures in Computer Science, 1991 view details
          in [SIGPLAN] SIGPLAN Notices 25(04) April 1990 view details
  • Myers, J. Paul Jr. and Prather, Ronald E. "The Type Structure of CAT" Constructivity in Computer Science, Summer Symposium 1992 pp218 - 227 Springer-Verlag London, view details
          in [SIGPLAN] SIGPLAN Notices 25(04) April 1990 view details
  • Prather, Ronald E. "The semantics of CAT" pp54-63 view details DOI Extract: Introduction
    Introduction
    A new programming language, CAT, has been proposed, based in the mathematical theory of categories. Among its many novel features, the language offers an exact arithmetic, a blend of applicative and imperative programming methodologies, strong and consistent typing, a functorial semantics, a proof technique, functions as "first class" objects, and recursive structures without pointers. A constructive notion of "provable recursiveness" forms the basis for the CAT language development, leading ultimately to a new programming philosophy, where the semantic interpretation can be rendered in a cartesian closed categorical framework.
          in SIGPLAN Notices 27(06) June 1992 view details