Patent
1994-12-30
1998-05-05
Oberley, Alvin E.
395705, 395701, G06F 9445, G06F 945
Patent
active
057489661
ABSTRACT:
A system and method for a run-time type error in a program prior to running the program whose source code is written in a programming language with imperative constructs and polymorphic procedures is disclosed. To accomplish the above type error checking, the source code is translated into intermediate form representations by an intermediate form translator. In addition to the intermediate form representations, type representations which include predetermined types such as a locking type constructor and an unlocking type constructor are utilized in detecting the run-time type error. When both intermediate form representations and the type representations are used and the source code is determined to have no run-time type error prior to running the program according to the current invention, it is guaranteed that the program will run without any run-time type error.
REFERENCES:
patent: 4325120 (1982-04-01), Colley et al.
patent: 5488727 (1996-01-01), Agrawal et al.
patent: 5500881 (1996-03-01), Levin et al.
Hoang et al., "Standard ML-NJ Weak Polymorphism and Imperative Constructs," Dept. of Comp. Sci., Stanford Univ., CA, Proceedings of Eighth Annual IEEE Symposium on Logic in Computer Science, IEEE Computer Society Press, pp. 15-25, Jun. 19, 1993.
Plauger, Dave, "Making C + + Safe for Threads," C Users Journal, v11, n21, pp. 58-62, Feb. 1993.
Najork et al., "Enhancing Show-and-Tell with a Polymorphic Type System and Higher-Order Functions," Dept. of Comp. Sci., Illinois Univ., Urbana, IL, Proceedings of the 1990 IEEE Workshop on Visual Languages, IEEE Comp. Soc., pp. 215-220, Oct. 4, 1990.
Graves et al., "Common Intermediate Design Language," Software Tech. Center, Lockheed Palo Alto Res. Labs, Proceedings of the 25th Hawaii Int. Conf. on System Sciences, pp. 497-506, Jan. 7, 1992.
Aho et al., "Compilers Principles, Techniques, and Tools," Addison-Wesley Publishing, Reading, MA, 1986, Ch. 6 Type Checking, pp. 343-380.
A.W. Appel and D.B. MacQueen, "A Standard ML Compiler," In Proceedings of the Conference on Fuctional Programming and Computer Architecture, pp. 1-24, Springer-Verlag LNCS, 1987.
A.W. Appel and D.B. MacQueen, "A Standard ML of New Jersey," In M. Wirsing, editor, Symposium on Programming Language Implementation and Logic Programming, pp. 1-13, Springer-Verlag, 1991.
A. W. Appel, Compiling with Continuations, "Chapter Two: Continuation-Passing Style", pp. 11-22, Cambridge University Press, 1992.
H. Barendregt, "Lambda Calculi With Types," In S. Abramsky, D.M. Gabbay, and T.S.E. Maibaum, editors, Handbook of Logic in Theoretical Computer Science, vol. 2 Background: Computational Structures, pp.148-160, Oxford University Press, 1992.
L. Damas and R. Milner, "Principal Type-Schemes For Functional Programs," In Principles of Programming Languages, pp. 207-212, ACM, 1982.
C.A. Gunter, "Semantics of Programming Languages: Structures and Techniques," Foundations of Computing, Chapter 11: Parametric Polymorphism, The MIT Press, 1992.
M. Hoang, J.C. Mitchell, and R. Viswanathan; "Standard ML-NJ Weak Polymorphism and Imperative Constructs," In Proceedings of the Eighth Annual IEEE Symposium on Logic in Computer Sciences, pp. 15-25, IEEE Computer Society, 1993.
X. Leroy; "Polymorphism By Name for References and Continuations," In S.L. Graham, editor, Conference Record of the Twentieth Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 220-231, ACM, 1993.
X. Leroy and P., Weis, "Polymorphic Type Inference and Assignment," In Conference Record of the Eighteenth Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 291-302, ACM, 1991.
R. Milner and M. Tofte, "Commentary on Standard ML," Chapter 4: Static Semantics for the Core, The MIT Press, 1991, pp. 40-46.
R. Milner, M. Tofte, and R. Harper, "The Definition of Standard ML," Chapter 2: Syntax of the Core, The MIT Press, 1990, pp. 3-30.
R. Milner; "A Theory of Type Polymorphism in Programming," Journal of Computer and System Sciences, 17:348-375; 1978.
J.C. Mitchell, "Types Systems for Programming Languages," In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, pp. 444-453, North-Holland, 1990.
David Schmidt, "Denotational Semantics: A Methodology for Language Development," Chapter 8: Abstraction, Correspondence, and Qualification, Allyn and Bacon, 1986, pp. 174-185.
David Schmidt; "The Structure of Typed Programming Languages," Foundations of Computing, Chapter 7: Functional Programming Languages, pp. 203-233, The MIT Press, 1994.
J. E. Stoy, "Denotational Semantics: The Scott-Strachey Approach to Programming Language Semantics," Chapter 5: The .lambda.-Calculus, pp. 52-77, The MIT Press, 1977.
J.P. Talpin, and P. Jouvelot, "The Type and Effect of Discipline," In Proceedings of the Seventh Annual IEEE Symposium on Logic in Computer Science, pp. 162-173, IEEE Computer Society, 1992.
Mads Tofte; "Operational Semantics and Polymorphic Type Interference," Ph.D. thesis, University of Edinburgh, Edinburgh, Scotland, 1987.
Mads Tofte, "Type Inference For Polymorphic References," Information and Computation, 89:1-34, 1990.
Glynn Winskel, "The Formal Semantics of Programming Languages," Foundations of Computing, Chapter 11: Languages with higher types, pp. 183-201, The MIT Press, 1993.
A.K. Wright and M. Felleisen; "A Syntactic Approach to Type Soundness," Technical Report COMP TR91-160, Department of Computer, Rice University, 1991.
A.K. Wright, "Polymorphism for Imperative Languages Without Imperative Types," Technical Report COMP TR93-200, Department of Computer, Rice University, 1993.
Yoshikazu Sato, "A Theory of Type Polymorphism in Imperative Programming," Master thesis, University of Pennsylvania, Philadelphia, Pennsylvania, 1994.
Plauger, Dave, "Making ++ Safe for Threads," C User's Journal, Feb. 1993.
Najork et al., "Enhancing Show-and-Tell with a Polymorphic Type System and Higher-Order Functions," IEEE Computer Society Press, Dept. of Comp. Sci., Illinois Univ., Ubana, IL, Oct. 4, 1990, pp. 215-220.
Graves et al., "Common Intermediate Design Language," IEEE Proceedings of the 25th Hawii Int. Conf. on System Sciences, Software Tech. Center, Lockheed Palo Alto Research Labs, Jan. 7, 1992, pp. 497-506.
Corcoran, III Peter J.
Oberley Alvin E.
The Trustees of the University of Pennsylvania
LandOfFree
Type error checker for type-free or polymorphic computer languag does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Type error checker for type-free or polymorphic computer languag, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Type error checker for type-free or polymorphic computer languag will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-69795