ThesaHelp: references p-r
ThesaHelp: ACM references m-z
Group: code generation
Topic: intermediate representation of code
Topic: memory management by garbage collection
Topic: abstraction in programming
Topic: machine independent programming
Topic: function call
Topic: function results
Topic: return from procedure
Topic: case statement
Topic: separate a module's interface specification from its implementation
Topic: interrupt handler
Topic: register allocation
Topic: machine code and assembly language
Topic: reusable programming
| |
Reference
Jones, S.P., Ramsey, N., Reig, F.,
"C--: a portable assembly language that supports garbage collection", pp. 1-28, in Nadathur, G. (ed.),
Principles and Practice of Declarative Programming, International Conference PPDP'99, Paris, France, September-October 1999, Springer, LNCS 1702.
Google
Other Reference
QuoteRef: ramsN6_2000
Quotations
2 ;;Quote: co-design the front end, back end, and run-time system of a programming language; garbage collection, exception handling, debugging, profiling, and concurrency
| 2+;;Quote: C-- is a portable assembly language; e.g., language-independent specification of garbage collection
| 5 ;;Quote: C-- is an abstraction of computation (expressions), control flow (if), memory (addressing), registers (variables), and procedures; an intermediate language
| 5 ;;Quote: C-- procedure names are expressions of native code-pointer type; multiple results, tail call, and fixed argument list
| 9 ;;Quote: C-- includes an efficient switch statement; e.g., jump table of procedure addresses for a tail call
| 11 ;;Quote: C-- separates policy from mechanism; enough hooks to allow a front-end system to implement a high-level run-time service; e.g., garbage collection
| 11 ;;Quote: high-level run-time services need to inspect and modify the state of a suspended program; e.g., garbage collector and live pointers, exception handler and call stack
| 11+;;Quote: high-level run-time services combine information that only the front end has (variables on the heap, which exception handlers in scope), with information that only the back end has (live variables, program-counter values, how to unwind stacks)
| 23 ;;Quote: C-- defines safepoints that yield to an asynchronous pre-emption; every loop is cut by a safe point
| 23 ;;Quote: with garbage collection and debugging, a call can modify live local variables; C-- can mark parameters and variables as invariant across calls
| 26 ;;Quote: C-- replaces C as a portable assembly language; includes a low-level, reusable run-time system that hides calling conventions and stack allocation; permits register allocation, liveness analysis, and garbage collection
|
Related Topics
ThesaHelp: references p-r (245 items)
ThesaHelp: ACM references m-z (280 items)
Group: code generation (30 topics, 593 quotes)
Topic: intermediate representation of code (31 items)
Topic: memory management by garbage collection (116 items)
Topic: abstraction in programming (67 items)
Topic: machine independent programming (13 items)
Topic: function call (28 items)
Topic: function results (7 items)
Topic: return from procedure (9 items)
Topic: case statement (25 items)
Topic: separate a module's interface specification from its implementation (86 items)
Topic: interrupt handler (20 items)
Topic: register allocation (28 items)
Topic: machine code and assembly language (49 items)
Topic: reusable programming (77 items)
|