Enter the query into the form above. You can look for specific version of a package by using @ symbol like this: gcc@10.
API method:
GET /api/packages?search=hello&page=1&limit=20
where search is your query, page is a page number and limit is a number of items on a single page. Pagination information (such as a number of pages and etc) is returned
in response headers.
If you'd like to join our channel search send a patch to ~whereiseveryone/toys@lists.sr.ht adding your channel as an entry in channels.scm.
Crowbar is a library for testing code, combining QuickCheck-style property-based testing and the magical bug-finding powers of afl-fuzz.
ppx_bap is the set of blessed ppx rewriters used in BAP projects. It fills the same role as ppx_base or ppx_jane (from which it is derived), but doesn't impose any style requirements and has only the minimal necessary set of rewriters.
This package simply repackages the OCaml compiler libraries so they don't expose everything at toplevel. For instance, Ast_helper is now Ocaml_common.Ast_helper.
Timed references for imperative state. This module provides an alternative type for references (or mutable cells) supporting undo/redo operations. In particular, an abstract notion of time is used to capture the state of the references at any given point, so that it can be restored. Note that usual reference operations only have a constant time / memory overhead (compared to those of the standard library).
Moreover, we provide an alternative implementation based on the references of the standard library (Pervasives module). However, it is less efficient than the first one.
This package allows one to access information about how the executable was built, such as the version of the project at which it was built or the list of statically linked libraries with their versions. It supports reporting the version from the version control system during development to get an precise reference of when the executable was built.
Bindlib is a library allowing the manipulation of data structures with bound variables. It is particularly useful when writing ASTs for programming languages, but also for manipulating terms of the λ-calculus or quantified formulas.
Down is an unintrusive user experience upgrade for the ocaml toplevel (REPL).
Simply load the zero dependency down library in the ocaml toplevel and you get line edition, history, session support and identifier completion and documentation with ocp-index.
Add this to your ~/.ocamlinit:
#use "down.top"
You may also need to add this to your ~/.ocamlinit and declare the environment variable OCAML_TOPLEVEL_PATH:
let () = try Topdirs.dir_directory (Sys.getenv "OCAML_TOPLEVEL_PATH") with Not_found -> ()
OR
let () = String.split_on_char ':' (Sys.getenv "OCAMLPATH")
|> List.filter (fun x -> Filename.check_suffix x "/site-lib")
|> List.map (fun x -> x ^ "/toplevel")
(* remove the line below if you don't want to see the text
every time you start the toplevel *)
|> List.map (fun x -> Printf.printf "adding directory %s\n" x; x)
|> List.iter Topdirs.dir_directory;;Merlin is an editor service that provides modern IDE features for OCaml. Emacs and Vim support is provided out-of-the-box. External contributors added support for Visual Studio Code, Sublime Text and Atom.
This module provides an abstract engine for text edition. It can be used to write text editors, edition widgets, readlines, and more. The module Zed uses Camomile to fully support the Unicode specification, and implements an UTF-8 encoded string type with validation, and a rope datastructure to achieve efficient operations on large Unicode buffers. Zed also features a regular expression search on ropes. To support efficient text edition capabilities, Zed provides macro recording and cursor management facilities.
ocaml-mdx executes code blocks inside markdown files. There are (currently) two sub-commands, corresponding to two modes of operations: pre-processing (ocaml-mdx pp) and tests (ocaml-mdx test]).
The pre-processor mode allows mixing documentation and code, and to practice literate programming using markdown and OCaml.
The test mode ensures that shell scripts and OCaml fragments in the documentation always stays up-to-date.
ocaml-mdx is released as two binaries called ocaml-mdx and mdx which are the same, mdx being the deprecated name, kept for now for compatibility.
Library to perform parallel fold or map taking advantage of multiple core architectures for OCaml programs. Drop-in replacement for these List operations are provided:
List.map->parmapList.map->parfoldList.mapfold->parmapfold
Also it allows specifying the number of cores to use with the optional parameter ncores.
This library provides generic parsers for parsing S-expressions from strings or other medium.
The library is focused on performances but still provide full generic parsers that can be used with strings, bigstrings, lexing buffers, character streams or any other sources effortlessly.
It provides three different class of parsers:
the normal parsers, producing [Sexp.t] or [Sexp.t list] values
the parsers with positions, building compact position sequences so that one can recover original positions in order to report properly located errors at little cost
the Concrete Syntax Tree parsers, produce values of type
Parsexp.Cst.twhich record the concrete layout of the s-expression syntax, including comments
This library is portable and doesn't provide IO functions. To read s-expressions from files or other external sources, you should use parsexp_io.
Luv is a binding to libuv, the cross-platform C library that does asynchronous I/O in Node.js and runs its main loop. Besides asynchronous I/O, libuv also supports multiprocessing and multithreading. Multiple event loops can be run in different threads. libuv also exposes a lot of other functionality, amounting to a full OS API, and an alternative to the standard module Unix.
This library implements structured concurrency for ocaml. It offers no backwards compatibility guarantees.
Mccs (Multi Criteria CUDF Solver) is a CUDF problem solver. Mccs take as input a CUDF problem and computes the best solution according to a set of criteria. It relies on a Integer Programming solver or a Pseudo Boolean solver to achieve its task. Mccs can use a wide set of underlying solvers like Cplex, Gurobi, Lpsolver, Glpk, CbC, SCIP or WBO.
This library is a compatibility module for the Either module defined in OCaml 4.12.0.
Define a standard set of libraries which may be expected on every compliant installation of OCaml and organize these libraries into a hierarchy of modules.
ppx-sexp-value is a ppx rewriter that simplifies building s-expressions from ocaml values.
This package provides a splittable PRNG functions like a PRNG that can be used as a stream of random values; it can also be split to produce a second, independent stream of random values.
This library implements a splittable pseudo-random number generator that sacrifices cryptographic-quality randomness in favor of performance.
Provides easy access to compressed files in ZIP, GZIP and JAR format. It provides functions for reading from and writing to compressed files in these formats.
IP address types with serialization, supporting a wide range of RFCs.
Extensions to printf-style format-strings for user-defined string conversion.
This package provides a GLR parser generator for OCaml. It is able to generate self-extensible parsers (also called adaptive parsers) as well as extensible lexers for the parsers it produces.
Compatibility module for OCaml standard library allowing programs to use some recent additions to the standard library while preserving the ability to be compiled on former versions of OCaml.