Matches in SemOpenAlex for { <https://semopenalex.org/work/W125811839> ?p ?o ?g. }
Showing items 1 to 59 of
59
with 100 items per page.
- W125811839 abstract "Programming languages have traditionally been specified in two different forms: by informal (and often imprecise) descriptions in reference manuals, and by implementations of compilers. While the latter are necessarily quite formal (as they must to be executed by computers), they do not serve as a good means to communicate programming language semantics, or as a good basis for reasoning about programs.Since the introduction of Denotational Semantics to describe programming language semantics, significant progress has been made in being able to automatically derive compilers from Denotational Semantic specifications of programming languages. These specifications can be used both for communication between designers and users, and for automatic translation from the languages they specify into executable machine code.The compilers produced by such semantics-directed compiler generators have not been as powerful as conventional compilers, in two ways. Some automatically-generated compilers produce semantic structures which must be interpreted many orders of magnitude slower than the equivalent machine code produced by a conventional compiler. Others produce efficient machine code but only handle a small subset of a typical programming language's semantics.Both of these problems are a consequence of an inability to do enough compile-time evaluation. For example, in a language like Pascal, all of the type checking and representation selection can and should be done at compile time.By choosing a set of combinators which intuitively correspond to register-transfer operations (the atomic operations of von Neumann machines) the process of compilation can be treated as the reduction of a (large) (lamda)-expression to a normal form in these combinators. Compile-time evaluation during the reduction to normal form includes the allocation of static storage, the selection of data-type representations, type checking and coercion, and constant folding.An algorithm is given for generating code from the normal form. Thus, a true compiler, not just an interpreter, is specified by giving a Denotational Semantics for the language. The compiler-generator has been fully implemented; it has been used to specify working compilers for Pascal and C. The automatically-generated compilers are slow. However, the machine code they produce is comparable in efficiency to what is produced by conventional hand-built compilers." @default.
- W125811839 created "2016-06-24" @default.
- W125811839 creator A5004766305 @default.
- W125811839 date "1985-01-01" @default.
- W125811839 modified "2023-09-24" @default.
- W125811839 title "Compile-time evaluation and code generation for semantics-directed compilers (denotational)" @default.
- W125811839 hasPublicationYear "1985" @default.
- W125811839 type Work @default.
- W125811839 sameAs 125811839 @default.
- W125811839 citedByCount "0" @default.
- W125811839 crossrefType "journal-article" @default.
- W125811839 hasAuthorship W125811839A5004766305 @default.
- W125811839 hasConcept C150607116 @default.
- W125811839 hasConcept C156325763 @default.
- W125811839 hasConcept C160145156 @default.
- W125811839 hasConcept C169590947 @default.
- W125811839 hasConcept C184337299 @default.
- W125811839 hasConcept C199360897 @default.
- W125811839 hasConcept C200833197 @default.
- W125811839 hasConcept C207648694 @default.
- W125811839 hasConcept C41008148 @default.
- W125811839 hasConcept C9957790 @default.
- W125811839 hasConceptScore W125811839C150607116 @default.
- W125811839 hasConceptScore W125811839C156325763 @default.
- W125811839 hasConceptScore W125811839C160145156 @default.
- W125811839 hasConceptScore W125811839C169590947 @default.
- W125811839 hasConceptScore W125811839C184337299 @default.
- W125811839 hasConceptScore W125811839C199360897 @default.
- W125811839 hasConceptScore W125811839C200833197 @default.
- W125811839 hasConceptScore W125811839C207648694 @default.
- W125811839 hasConceptScore W125811839C41008148 @default.
- W125811839 hasConceptScore W125811839C9957790 @default.
- W125811839 hasLocation W1258118391 @default.
- W125811839 hasOpenAccess W125811839 @default.
- W125811839 hasPrimaryLocation W1258118391 @default.
- W125811839 hasRelatedWork W111025925 @default.
- W125811839 hasRelatedWork W1570392568 @default.
- W125811839 hasRelatedWork W1949136631 @default.
- W125811839 hasRelatedWork W1965802586 @default.
- W125811839 hasRelatedWork W2012567572 @default.
- W125811839 hasRelatedWork W2074630311 @default.
- W125811839 hasRelatedWork W2114272403 @default.
- W125811839 hasRelatedWork W2118567331 @default.
- W125811839 hasRelatedWork W2126126443 @default.
- W125811839 hasRelatedWork W2143759648 @default.
- W125811839 hasRelatedWork W2152318180 @default.
- W125811839 hasRelatedWork W2267987975 @default.
- W125811839 hasRelatedWork W238947054 @default.
- W125811839 hasRelatedWork W2496320422 @default.
- W125811839 hasRelatedWork W2615030471 @default.
- W125811839 hasRelatedWork W2796440538 @default.
- W125811839 hasRelatedWork W60185894 @default.
- W125811839 hasRelatedWork W75415634 @default.
- W125811839 hasRelatedWork W299239964 @default.
- W125811839 hasRelatedWork W3009342024 @default.
- W125811839 isParatext "false" @default.
- W125811839 isRetracted "false" @default.
- W125811839 magId "125811839" @default.
- W125811839 workType "article" @default.