A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://docs.racket-lang.org/reference/performance-hint.html below:

3.25 Performance Hints: begin-encourage-inline

3.25 Performance Hints: begin-encourage-inline🔗ℹ

Attaches a

'compiler-hint:cross-module-inline syntax property

to each

form

, which is useful when a

form

is a function definition. See

define-values

.

The begin-encourage-inline form is also provided by the (submod racket/performance-hint begin-encourage-inline) module, which has fewer dependencies than racket/performance-hint.

Changed in version 6.2 of package base: Added the (submod racket/performance-hint begin-encourage-inline) submodule.

(define-inline id expr)

(define-inline (head args) body ...+)   head   =   id     |   (head args)           args   =   arg ...     |   arg ... . rest-id           arg   =   arg-id     |   [arg-id default-expr]     |   keyword arg-id     |   keyword [arg-id default-expr]

Like

define

, but ensures that the definition will be inlined at its call sites. Recursive calls are not inlined, to avoid infinite inlining. Higher-order uses are supported, but also not inlined. Misapplication (by supplying the wrong number of arguments or incorrect keyword arguments) is also not inlined and left as a run-time error.

The define-inline form may interfere with the Racket compiler’s own inlining heuristics, and should only be used when other inlining attempts (such as begin-encourage-inline) fail.

Changed in version 8.1.0.5 of package base: Changed to treat misapplication as a run-time error.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4