You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
functors with mixed parameters and/or result needs decliate handling of names. After discussion with @vouillon , we can try the following scheme:
On the client side, just erase all the server stuff
On the server side, each mixed module will be given an extra field that is a fragment containing the value representing the first class module representing the client side version of the module
each server version of a functor that take or emit a mix module must obey the convention (by applyting the client side version of the functor inside a fragment).
for eliom module, we must be careful of adding the extra field, which means registering a new fragment containing all the client side stuff in the eliom file.
The text was updated successfully, but these errors were encountered:
Given a functor F(X:S) = M, the following property should hold : M_c should not depend on either M_s or X_s. This is analogous of using constant fragments.
For lifting this restriction, we could use a similar scheme than fragments, by extracting a functor parametrized by the holes.
Note: if we assume functor application are synchronous we can use a more general compilation scheme by just declaring new fragment cloture inside the functor and using a deterministic identifiers (ie. a counter) to number fragment clotures and injections.
Unfortunatly, synchronous functor application on both side means functor application is independent of control flow, which pretty much means only top level application (which is probably not the case for implicits).
functors with mixed parameters and/or result needs decliate handling of names. After discussion with @vouillon , we can try the following scheme:
The text was updated successfully, but these errors were encountered: