Toward a foundational typed assembly language

We present the design of a typed assembly language called TALT that supports heterogeneous tuples, disjoint sums, and a general account of addressing modes. TALT also implements the von Neumann model in which programs are stored in memory, and supports relative addressing. Type safety for execution and for garbage collection are shown by machine-checkable proofs. TALT is the first formalized typed assembly language to provide any of these features.

[1]  CraryKarl Toward a foundational typed assembly language , 2003 .

[2]  Bor-Yuh Evan Chang,et al.  Trustless Grid Computing in ConCert , 2002, GRID.

[3]  Zhong Shao,et al.  A Syntactic Approach to Foundational Proof-Carrying Code , 2002, Proceedings 17th Annual IEEE Symposium on Logic in Computer Science.

[4]  David Walker,et al.  Stack-based typed assembly language , 1998, Journal of Functional Programming.

[5]  Craig A. Lee Proceedings of the Second International Workshop on Grid Computing , 2001 .

[6]  Robert Harper,et al.  A dependently typed assembly language , 2001, ICFP '01.

[7]  George C. Necula,et al.  Oracle-based checking of untrusted software , 2001, POPL '01.

[8]  George C. Necula,et al.  A certifying compiler for Java , 2000, PLDI '00.

[9]  Suresh Jagannathan,et al.  Flow-Directed Closure Conversion for Typed Languages , 2000, ESOP.

[10]  David Walker,et al.  Alias Types , 2000, ESOP.

[11]  Andrew W. Appel,et al.  A semantic model of types and machine instructions for proof-carrying code , 2000, POPL '00.

[12]  Guillermo E. Herrera Automating the meta theory of deductive systems , 2000 .

[13]  Karl Crary,et al.  Type Structure for Low-Level Programming Languages , 1999, ICALP.

[14]  Frank Pfenning,et al.  System Description: Twelf - A Meta-Logical Framework for Deductive Systems , 1999, CADE.

[15]  Joe B. Wells,et al.  Typability and Type Checking in System F are Equivalent and Undecidable , 1999, Ann. Pure Appl. Log..

[16]  MorrisettGreg,et al.  From system F to typed assembly language , 1999 .

[17]  Dan Grossman,et al.  TALx86: A Realistic Typed Assembly Language∗ , 1999 .

[18]  Frank Pfenning,et al.  Twelf User's Guide Version 1.2., , 1998 .

[19]  Andrew P. Tolmach,et al.  From ML to Ada: Strongly-typed language interoperability via source translation , 1998, Journal of Functional Programming.

[20]  Frank Yellin,et al.  The Java Virtual Machine Specification , 1996 .

[21]  Hans-Juergen Boehm Simple garbage-collector-safety , 1996, PLDI '96.

[22]  Frank Pfenning,et al.  Mode and Termination Checking for Higher-Order Logic Programs , 1996, ESOP.

[23]  Furio Honsell,et al.  A framework for defining logics , 1993, JACM.

[24]  Frank Pfenning,et al.  Implementing the Meta-Theory of Deductive Systems , 1992, CADE.

[25]  F. Pfenning Logic programming in the LF logical framework , 1991 .

[26]  Hans-Juergen Boehm,et al.  Garbage collection in an uncooperative environment , 1988, Softw. Pract. Exp..