Skip to content

Files

Latest commit

cca4b89 · Oct 30, 2019

History

History

jscomp

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Jun 24, 2019
Oct 23, 2019
Oct 2, 2019
Oct 5, 2016
Sep 4, 2019
Nov 29, 2017
Oct 22, 2019
Oct 30, 2019
Sep 6, 2019
Oct 22, 2019
Oct 28, 2019
Oct 16, 2019
Oct 19, 2018
Aug 15, 2019
Aug 7, 2019
Oct 25, 2019
Oct 23, 2019
Oct 30, 2019
Dec 28, 2018
Aug 7, 2019
Oct 18, 2019
Oct 30, 2019
Mar 7, 2018
Feb 21, 2019
Jul 2, 2016
Oct 11, 2019
Jul 9, 2017
Aug 22, 2016
Oct 30, 2018
Mar 25, 2019
Jan 14, 2019
Jul 25, 2019
Nov 17, 2018
Sep 21, 2016
Jun 3, 2018
Jun 3, 2018
Nov 4, 2017
Jan 14, 2019
Mar 6, 2018
Feb 3, 2017
Feb 3, 2017
Jun 24, 2019
Nov 13, 2018

Hello! This is the main directory for BuckleScript. jscomp is just a name that mirrors OCaml's own bytecomp and asmcomp (bytecode compilation and native compilation logic respectively). For building it, please see CONTRIBUTING.md.

Extra info:

Rebuilding the browser-based playground

For best results, you probably want to complete the full Setup before following the below guidelines.

Get js_of_ocaml from the normal switch

opam switch 4.02.3
eval `opam config env`
opam install js_of_ocaml
which js_of_ocaml # symlink this into your $PATH, maybe /usr/local/bin or something

Do everything else from the bucklescript switch

You need to have bucklescript-playground cloned next to the Bucklescript directory for the following to work.

opam switch 4.02.3+buckle-master
eval `opam config env`
opam install camlp4 ocp-ocamlres
(node scripts/buildocaml.js)
(cd jscomp && BS_RELEASE_BUILD=true BS_PLAYGROUND=../../bucklescript-playground node repl.js)

Sub directories

A copy of standard library from OCaml distribution(4.02) for fast development, so that we don't need bootstrap compiler, everytime we deliver a new feature.

  • Files copied
    • sources
    • Makefile.shared Compflags .depend Makefile
  • Patches Most in Makefile.shared

The directory containing unit-test files, some unit tests are copied from OCaml distribution(4.02)

compiler sourcetree

- ext (portable)
- common (portable)
- bsb 
- depends (portable)
- core 
- bspp
- outcome_printer
- stubs  
- super_errors  
- syntax 

tools (deprecatd code)

xwatcher (dev tools)

runtime

build_tests

bin

cmd_tests

ounit

ounit_tests

others (belt/stdlib/node bindings)

bspack

ocamlopt.opt -I +compiler-libs unix.cmxa ./stubs/ext_basic_hash_stubs.c stubs/bs_hash_stubs.cmx ocamlcommon.cmxa ext.cmxa common.cmxa depends.cmxa core/bspack_main.cmx -o bspack.dev