OCaml
OCaml is a general purpose industrial-strength programming language with an emphasis on expressiveness and safety, It is supporting functional, imperative and object-oriented styles.
Here are 1,610 public repositories matching this topic...
-
Updated
Jul 3, 2020 - TeX
Well, we need to check all the projects and remove outdated ones.
We declare this in the readme:
However, keep in mind that we don't accept mammoth's shit. Only active and interesting projects with good documentation are added. Dead and abandoned projects will be removed.
But, sadly at this moment, this project looks like a mammoth shit itself.
We really need to fix it. I think
I cloned and built revery-quick-start and started looking through App.re to see how it all works. I noticed it opens Revery.UI but there didn't seem to be any documentation for things like Opacity and View on https://www.outrunlabs.com/revery/api/revery/. Poking around I managed to guess the URL and found them at https://www.outrunlabs.com/revery/api/revery/revery_ui/ and https://www.out
https://caml.inria.fr/pub/docs/manual-ocaml/manual042.html
We can do this for Belt.Map as well
Since we don't have an interactive tutorial, and our docs are sparse, we should at least be bundling the existing vim tutor.
- Include the
vimtutoras a runtime asset. - Add a command to open the
vimtutor - Set the
readonlyflag onvimtutor, so that it can't be saved.
Additional things to think about:
- We should hook up a Vim command as an entry point as well (ie,
:tutor, `:vim
Hey there,
just wanted to point out that on macOS opam install google-drive-ocamlfuse fails with:
∗ installed conf-gmp.1
[ERROR] The compilation of conf-gmp-powm-sec failed at "sh -exc cc -c $CFLAGS -I/usr/local/include test.c".
A workaround for this is to install gmp first like this:
env CFLAGS="-I/opt/local/include/" opam install conf-gmp-powm-sec.1
You
The documentation equates two kinds of attribute declarations:
explicit:
class Derp:
attribute: int = 1
@property
def property(self) -> int: ...and implicit:
class Derp:
def __init__(self):
self.attribute: int = 1Those two things are not about explicit v
https://caml.inria.fr/pub/docs/manual-ocaml/libref/index_exceptions.html
does not currently include exceptions like Not_found, etc.
Currently It's really cumbersome to discover how to tweak the KLISPE APP.
There are a couple of hotkeys and url parameters documented here: http://blog.klipse.tech/clojure/2016/03/27/klipse-manual.html
Here are a couple of ideas - given by @pesterhazy how to do that:
- Like github.com narrow top bar
- Like reddit.com tab-like rider
- Like this
-
Updated
May 12, 2020
With some help from @nikswamy , I am trying to write mutually recursive functions with decreases clauses.
Consider the following example: variable-arity trees with a label on each edge.
module L = FStar.List.Tot
noeq type tree =
| Leaf
| Node:
(labels: list nat) -> // I should probably add a `L.noRepeats` refinement here, but this is irrelevant here
(children: ((x: nat {x from #992:
The code in generate_manifest in the mirage tool should check that device names are unique and alphanumeric
from Solo5/solo5#372
NAME must be composed of alphanumeric characters only, and within 1..67 characters in length
In the documentation of Michelson, there is a SELF instruction to access the current contract. However, this instruction is not known by the interpreter, leading to an error when generated by Liquidity.
Is SELF going to be implemented or removed ?
We're currently manually mirroring the extended README example in examples/readme.ml, but the tests don't check that this is synchronised.
This could be achieved with the new MDX syntax for labels (currently unreleased).
add a doc builder
Our documentation site is always lagging behind as updating the docs is a non-trivial task that has to be automated. Setting up the Travis job for building wouldn't be trivial (we probably won't fit into the time constraints), but we can use GitHub actions and host a documentation builder on one of our servers. We shall update both bap documentation and Primus Lisp docs.
I'm a OCaml beginner. I'm used to tools like Hoogle or Yahoo. I'm looking for a function of some type t. I'm hoping merlin can help me. I'm using Emacs. I try the command merlin-search. It is undocumented. I try any string, the response is:
Not_found
Raised at file \"src/ocaml/typing/407/ident.ml\", line 171, characters 6-21
Called from file \"src/ocaml/typing/407/env.ml\", line 281,
Version: Dune 2.4.0
Issue: I am confused about how to generate documentation
Suggestion: Any of the following:
- Explain that
dune build @docbuilds documentation for packages - Explain what command
dune build @docis running in the docs. - Print the command
dune build @docis using with--verbose - Retool
dune init <option>such thatdune build @docworks immediately
Mirroring support
Currently it is impossible to make a local or regional mirror for both opam repository and source files in a batch, like some of the Linux distributions or package managers. It would be amazing and useful to setup a couple mirrors on a various regional CDNs, like some other languages/distributions did, And add the instruction on how to add them into the global mirror lists:
Currently, there are 2 VM instruction definition files in this repository:
- src/frontend/bytecomp/vminstdef.yaml
- tools/gencode/vminst.ml
This may confuse contributors who wants to add new primitives. According to the Makefile, the latter is generated by the former. So, I think it should be removed from this repository. I also think the name "vminstdef" should be like "primitivedef" because
-
Updated
Jun 12, 2017 - OCaml
-
Updated
Mar 31, 2015 - OCaml
if/when ocaml/ocaml#944 is merged
OpenBSD support
Just a thing to link commits to.
issues with example?
platform: windows 10
Dune: version 2.1.2
Cygwin: CYGWIN_NT-10.0 YSG4206 3.1.2(0.340/5/3) 2019-12-21 15:25 x86_64 Cygwin
$ git clone https://github.com/andreas/ocaml-graphql-server.git
$ cd ocaml-graphql-server
$ dune exec examples/server.exe
ocaml-crunch graphql-cohttp/src/assets.ml (exit 1)
(cd _build/default/graphql-cohttp/src && D:\cygwin64\home\ysg4206\.opam
\ocaml-variants.4.
Parallel minor GC currently promotes all the ephemerons to the major heap at the minor collection. They should be collected the same way stock and concurrent minor implementations do.
Given the below-mentioned code for client, how do we add a timeout. For eg . I want the request to timeout after 1 minute if the server doesn't respond.
(* client_example.ml *)
open Lwt
open Cohttp
open Cohttp_lwt_unix
let body =
Client.get (Uri.of_string "https://www.reddit.com/") >>= fun (resp, body) ->
let code = resp |> Response.status |> Code.code_of
Created by Xavier Leroy
Released 1996
Latest release 4 months ago
- Repository
- ocaml/ocaml
- Website
- ocaml.org
- Wikipedia
- Wikipedia



This is probably related to if not identical to #1687, but we at least need a better error message.
https://reasonml.github.io/try?reason=M4dwlgLgxgFgFARgNQIJQAIDeAod6A+6ATOgLwB86cqu6A9AFS0CGAJq+swHboCmAHhABOzdA3QQA9hJi90wCMyER0kgGYywwdFEkBbPby4QANPOmR0AI167D2hkzwM6tQgH0ylatgC+QA