Daniel Hillerström
Daniel Hillerström
(this is a history clean version of @Orbion-J's PR #1150). This PR changes the syntax for handlers. Instead of ```ocaml handle (...) { case Op(params, resumption) -> ... case Return(x)...
Currently Links supports a few optimisations such as dead code elimination and inlining. However, the state of those optimisations is questionable as they have not be maintained for years (maybe...
Enabling - `effect_sugar=true` - `effect_sugar_policy="presence_omit,alias_omit,contract_operation_arrows,arrows_curried_hide_fresh"` causes the following code produces an internal error. ```links links> typename Id(a, e::Eff) = (a) { |e}-> a; Id = a,b::Eff.(a) -b-> a links> sig...
In patch #1015 we added tags to server side values in order to make it easy to deserialise them on the client side. Currently, client side values are passed as...
The task is to implement (user-definable) default handlers, a useful abstraction for modular programming. A default handler provides, as the name implies, a default interpretation of one or more given...
The implementation of event handlers in Links depends on the deprecated property `window.event` (c.f. https://developer.mozilla.org/en-US/docs/Web/API/Window/event). Links exposes this property via a built-in global variable called `event`. Ideally, we do not...
Patch #1087 refactors the JavaScript runtime. It is only an initial refactoring that compartmentalises and modularises code. The refactoring is particularly crude with regard to mailboxes, access points, and channels...
Currently, the server refuses to serialise alien values, meaning a program like the following fails to load at runtime ```links alien javascript "/ffi/impl.js" g : () ~> (); var ffi...
The JavaScript compiler should take advantage of the type information available to select native and efficient versions of equality, relational, and string operations whenever possible.
We used to have a direct-style JavaScript compiler. It would be good to have a direct-style JavaScript compiler again. It obviously wont be able to compile many features of Links...