File: README

package info (click to toggle)
mlton 20210117%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 58,464 kB
  • sloc: ansic: 27,682; sh: 4,455; asm: 3,569; lisp: 2,879; makefile: 2,347; perl: 1,169; python: 191; pascal: 68; javascript: 7
file content (22 lines) | stat: -rw-r--r-- 965 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
C calls for MLRISC
Mike Rainey (mrainey@cs.uchicago.edu)

This library implements C calls for several architectures and operating systems. For calling
conventions, we depend on the Staged Allocation library. 

We support both fixed- and variable-arity C calling sequences. For the fixed-arity case, we
generate MLRISC instructions for the calling sequence. For the variable-arity case, we must 
use more elaborate techniques. The basic idea is to use an interpreter at runtime to carry 
out the calling sequence. Our ML Workshop paper contains the specifics.

 * Calling variadic functions from a strongly typed language - http://cs.uchicago.edu/~mrainey/ml-varargs.pdf

Layout:

 * archs - support for different architectures and operating systems
 * gen - architecture-independent code
 * test - testing infrastructure
 * varargs - variable arity C calls
   * gen - generates located-arguments and calls the runtime interpreter
   * interp - runtime interpreter