JIT in Scheme

From MemCP
Revision as of 08:15, 27 August 2026 by Carli (talk | contribs) (Created page with "= JIT Compilation = Our scheme dialect allows to JIT-compile SCM code into real machine code. ← Back to Full SCM API documentation == jit == compiles a lambda to optimized native code when this build enables JIT '''Allowed number of parameters:''' 1–1 <span id="parameters"></span> === Parameters === * '''fn''' (<code>any</code>): the function to compile <span id="returns"></span> === Returns === <code>any</code> <span id="jit-1"></span> == jit? == tel...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

JIT Compilation

Our scheme dialect allows to JIT-compile SCM code into real machine code.


← Back to Full SCM API documentation

jit

compiles a lambda to optimized native code when this build enables JIT

Allowed number of parameters: 1–1

Parameters

  • fn (any): the function to compile

Returns

any

jit?

tells whether a value is a JIT-compiled function descriptor

Allowed number of parameters: 1–1

Parameters

  • value (any): value to inspect

Returns

bool

jit-warn-if-fallback

prints a diagnostic warning when an enabled JIT build kept a procedure interpreted and returns the procedure unchanged

Allowed number of parameters: 1–2

Parameters

  • procedure (any): procedure expected to be a native compilation candidate
  • label (string): optional diagnostic label (optional)

Returns

any

jit-enabled?

tells whether this binary was built with the patched Go JIT runtime

Allowed number of parameters: 0–0

Parameters

This function has no parameters.

Returns

bool