#
Chapter 10
`cml.ss`: Concurrent ML Compatibility

To load: `(require (lib "cml.ss"))`

This library defines a number of procedures that wrap MzScheme concurrency procedures. The wrapper procedures have names and interfaces that more closely match those of Concurrent ML.

`(spawn``` `thunk``)` PROCEDURE

Equivalent to `(thread/suspend-to-kill `thunk`)` (see section 7.1 in PLT MzScheme: Language Manual).

`(channel``)`

procedure

Equivalent to `(make-channel)` (see section 7.5 in PLT MzScheme: Language Manual).

`(channel-recv-evt``` `channel``)` PROCEDURE

Equivalent to `channel`.

`(channel-send-evt``` `channel v``)` PROCEDURE

Equivalent to `(channel-put-evt `channel` `v`)` (see section 7.5 in PLT MzScheme: Language Manual).

`(thread-done-evt``` `thread``)` PROCEDURE

Equivalent to `(thread-dead-waitable `thread`)` (see section 7.2 in PLT MzScheme: Language Manual).

`(current-time``)` PROCEDURE

Equivalent to `(current-inexact-milliseconds)` (see section 15.1 in PLT MzScheme: Language Manual).

`(time-evt``` `x``)` PROCEDURE

Equivalent to `(alarm-evt `x`)` (see section 7.6 in PLT MzScheme: Language Manual).