js_of_ocaml
E554874
js_of_ocaml is a compiler and toolchain that translates OCaml bytecode into JavaScript, enabling OCaml programs to run in web browsers and other JavaScript environments.
Statements (47)
| Predicate | Object |
|---|---|
| instanceOf |
OCaml-to-JavaScript compiler
ⓘ
software toolchain ⓘ |
| advantage |
high-level functional programming for front-end code
ⓘ
reuse of existing OCaml code in the browser ⓘ type-safe web development via OCaml type system ⓘ |
| buildIntegration |
dune
ⓘ
ocamlbuild ⓘ |
| category |
JavaScript compilation tool
ⓘ
cross-compiler ⓘ web development tool ⓘ |
| compatibleWith | OCaml compiler toolchain ⓘ |
| compilationStrategy | bytecode-to-JavaScript ⓘ |
| distribution | OPAM package ⓘ |
| domain |
front-end development
ⓘ
functional programming on the web ⓘ web programming ⓘ |
| ecosystem | OCaml ecosystem ⓘ |
| enables |
running OCaml programs in JavaScript environments
ⓘ
running OCaml programs in web browsers ⓘ |
| feature |
DOM bindings via OCaml libraries
ⓘ
JavaScript code optimization ⓘ dead code elimination ⓘ integration with OCaml build tools ⓘ source maps generation ⓘ |
| goal | allow OCaml code to run where only JavaScript is available ⓘ |
| inputFormat | OCaml bytecode ⓘ |
| license | open-source license ⓘ |
| outputFormat | JavaScript code ⓘ |
| programmingLanguage | OCaml NERFINISHED ⓘ |
| supports |
OCaml exceptions
ⓘ
OCaml functors ⓘ OCaml garbage-collected semantics ⓘ OCaml modules ⓘ OCaml objects ⓘ OCaml pattern matching ⓘ calling JavaScript from OCaml via bindings ⓘ calling OCaml-compiled functions from JavaScript ⓘ interop with existing JavaScript code ⓘ most of the OCaml standard library ⓘ |
| supportsEnvironment |
JavaScript runtime
ⓘ
Node.js NERFINISHED ⓘ web browser ⓘ |
| targetLanguage | JavaScript NERFINISHED ⓘ |
| typicalWorkflow | compile OCaml to bytecode then translate bytecode to JavaScript ⓘ |
| useCase |
client-side web applications in OCaml
ⓘ
sharing code between server-side OCaml and browser ⓘ single-page applications in OCaml ⓘ |
Referenced by (1)
Full triples — surface form annotated when it differs from this entity's canonical label.