Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.javascript > #123298

Re: ANN: Dogelog Player 1.1.5 (HTTP Server)

From Mild Shock <janburse@fastmail.fm>
Newsgroups comp.lang.javascript
Subject Re: ANN: Dogelog Player 1.1.5 (HTTP Server)
Date 2024-02-21 13:37 +0100
Message-ID <ur4qqu$dq1q$1@solani.org> (permalink)
References (2 earlier) <uoqmjs$t68e$3@solani.org> <upiggd$18ave$3@solani.org> <uq6nnt$1jfbj$2@solani.org> <ur2ish$ci33$2@solani.org> <ur2v8l$2lhr7$3@dont-email.me>

Show all headers | View raw


Thanks for asking. I made the Prolog system
source code docu a little bit clearer now:

 From the JavaScript file "machine.mjs":

/**
  * Run a callback once, i.e. no choice point or trailing left
  * behind. Callbacks are run with auto-yield disabled and
  * promises are not accepted, i.e. run "stackless" on top of the
  * given main stack or side stack. "stackless" because completion,
  * i.e. return or exception by the callback, is the only context switch.
  */
export function launch(form, buf, params);

/**
  * Run a task once, i.e. no choice point or trailing left
  * behind. Tasks are run with auto-yield enabled and promises are
  * accepted, i.e. run "stackfull" on top of the given main stack
  * or side stack. "stackfull" because not only completion, i.e.
  * return or exception by the task, cause a context switch, but
  * also await of an auto-yield or promise.
  */
export async function launch_async(form, buf, params);

You find this in the Dogelog Player GIT.

Lawrence D'Oliveiro schrieb:
> On Tue, 20 Feb 2024 17:09:53 +0100, Mild Shock wrote:
> 
>> The idea is that threads use a bouncer semaphore to get a permission to
>> execute and thus become “coroutines”.
> 
> But they are still stackful coroutines, not stackless.
> 

Back to comp.lang.javascript | Previous | Next | Find similar


Thread

Re: ANN: Dogelog Player 1.1.5 (HTTP Server) Mild Shock <janburse@fastmail.fm> - 2024-02-21 13:37 +0100

csiph-web