@MISC{Kc_java:semantics, author = {Gaurav S. Kc}, title = {Java: Semantics and Type Soundness}, year = {} }
Share
OpenURL
Abstract
Java is a programming language that has promised so much. Yet, those who are cautious are not very willing to use it for all sorts of programming applications. The main problem with Java is that it has borrowed so many features from so many languages and made itself very complicated in the process. This makes it very hard to believe that Java is a very reliable language. And its immense complexity makes study about the language a hard task indeed. The main approach towards reasoning about a language is by studying its operational semantics, i.e. the meaning of programs written in the language. Drs Drossopoulou and Eisenbach have been heading the research group SLURP at Department of Computing, Imperial College for the past few years and they have been deeply involved in research on Java. So far, they have defined an operational semantics for the language, and this semantics also reasons about the type-checking phase of a Java compiler and run-time checking as well- which makes Java as safe as it actually is. This paper is the report on the research that I have done, and it is based on Drossopoulou and Eisenbach's work. I have extended the definition of their semantics for Java and have made it possible to reason about Java programs having modifiers, constructors, etc.