echo 'true : package(landmarks.ppx,landmarks)' >> _tags
export OCAML_LANDMARK=auto
topkg build
topkg run exe
(*--------------------------------------------------------------------------- | |
Copyright (c) 2022 The brr programmers. All rights reserved. | |
Distributed under the ISC license, see terms at the end of the file. | |
---------------------------------------------------------------------------*) | |
open Brr | |
open Brr_webworkers | |
open Brr_io | |
module type WORK = sig |
(* Simple Buffer.add_json function. *) | |
type json = | |
[ `Null | `Bool of bool | `Float of float | `String of string | |
| `Array of json list | `Object of (string * json) list ] | |
let rec buffer_add_json b = function | |
| `Null -> Buffer.add_string b "null" | |
| `Bool bool -> Buffer.add_string b (if bool then "true" else "false") | |
| `Float f -> Buffer.add_string b (Printf.sprintf "%.16g" f) |
(* OCaml Port of fig. 5-6 of https://trojansource.codes/trojan-source.pdf *) | |
let access_level = "user" | |
let main () = | |
if access_level <> "user (* Check if admin *)" then | |
Printf.printf "You are an admin.\n" | |
let () = main () |
(*--------------------------------------------------------------------------- | |
Copyright (c) 2015 The uunf programmers. All rights reserved. | |
Distributed under the ISC license, see terms at the end of the file. | |
---------------------------------------------------------------------------*) | |
(* WARNING do not edit. This file was automatically generated. *) | |
open Uunf_tmapbool;; | |
let v000 = snil |
> opam switch create 4.06.0 --debug-level=3 | |
00:00.003 GSTATE LOAD-GLOBAL-STATE @ /Users/dbuenzli/.opam | |
00:00.004 SYSTEM LOCK /Users/dbuenzli/.opam/lock (none => read) | |
00:00.004 SYSTEM LOCK /Users/dbuenzli/.opam/config.lock (none => write) | |
00:00.004 FILE(config) Read ~/.opam/config in 0.000s | |
00:00.005 RSTATE LOAD-REPOSITORY-STATE @ /Users/dbuenzli/.opam | |
00:00.008 FILE(repos-config) Read ~/.opam/repo/repos-config in 0.003s | |
00:00.008 SYSTEM LOCK /Users/dbuenzli/.opam/repo/state.cache (none => read) | |
00:00.108 RSTATE Loaded /Users/dbuenzli/.opam/repo/state.cache in 0.099s | |
00:00.264 SYSTEM LOCK /Users/dbuenzli/.opam/repo/state.cache (read => none) |
echo 'true : package(landmarks.ppx,landmarks)' >> _tags
export OCAML_LANDMARK=auto
topkg build
topkg run exe
In order to deprecate a feature from the OCaml system the following steps are taken:
(* | |
ocamlfind ocamlopt -o readmeta -linkpkg \ | |
-package dynlink,compiler-libs.optcomp,compiler-libs.bytecomp readmeta.ml | |
*) | |
let read_cma ic = | |
let lib = | |
let toc_pos = input_binary_int ic in | |
seek_in ic toc_pos; | |
(input_value ic : Cmo_format.library) |
Install the following opam packages:
opam install caml-mode merlin ocp-indent
Tweak your .emacs
file with some or all of the following:
; shift tab to complete
(global-set-key (kbd "S-<tab>") 'company-complete)