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
The bundle size for our toplevel is pretty huge - clocking in at 7MB. This means initial load of the playground is very slow. Much of this is due to the compiled CMI files (which describe the interface of modules - used by the toplevel typechecker).
We package a pretty huge amount of these - for the OCaml stdlib, for Revery, and for Revery's dependencies. Ideally, we could load them 'on-demand' so we don't need to download a giant bundle.
A way to do this would be:
Use the jsoo_mkcmis tool to create a JS CMI
Hook into toplevel module load code to dowload these dynamically, instead of referring to the bundled CMI
The text was updated successfully, but these errors were encountered:
let backupLoad = Env.Persistent_signature.load^;
let myLoad = (name) => {
switch (backupLoad(name)) {
| Some(a) => a
| None => // Executing the external function to load the JS cmis script, and try again
}
}
Env.Persistent_signature.load := myLoad
The bundle size for our toplevel is pretty huge - clocking in at 7MB. This means initial load of the playground is very slow. Much of this is due to the compiled
CMI
files (which describe the interface of modules - used by the toplevel typechecker).We package a pretty huge amount of these - for the OCaml stdlib, for Revery, and for Revery's dependencies. Ideally, we could load them 'on-demand' so we don't need to download a giant bundle.
A way to do this would be:
jsoo_mkcmis
tool to create a JS CMIThe text was updated successfully, but these errors were encountered: