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 webring send a patch to ~whereiseveryone/toys@lists.sr.ht adding your channel as an entry in channels.scm.
CamlPDF is an OCaml library that provides functionality for reading, writing, and modifying PDF files. It serves as the foundation for the cpdf command-line tool and various API bindings.
Eio_linux provides a Linux io-uring backend for Ocaml Eio APIs, plus a low-level API that can be used directly (in non-portable code).
This package provides helpers with various constructions that involve memoization and recursion.
Markup.ml provides an HTML parser and an XML parser. The parsers are wrapped in a simple interface: they are functions that transform byte streams to parsing signal streams. Streams can be manipulated in various ways, such as processing by fold, filter, and map, assembly into DOM tree structures, or serialization back to HTML or XML.
Both parsers are based on their respective standards. The HTML parser, in particular, is based on the state machines defined in HTML5.
The parsers are error-recovering by default, and accept fragments. This makes it very easy to get a best-effort parse of some input. The parsers can, however, be easily configured to be strict, and to accept only full documents.
Apart from this, the parsers are streaming (do not build up a document in memory), non-blocking (can be used with threading libraries), lazy (do not consume input unless the signal stream is being read), and process the input in a single pass. They automatically detect the character encoding of the input stream, and convert everything to UTF-8.
Bindings providing OCaml support for the seminal Fast Fourier Transform library FFTW.
Small implementation of a simple argv parser.
A ppx rewriter for monadic and applicative let bindings, match expressions, and if expressions.
Cstruct is a library and syntax extension to make it easier to access C-like structures directly from OCaml. It supports both reading and writing to these structures, and they are accessed via the Bigarray module.
This package provides two union-find data structure implementations for OCaml. Both implementations are based on disjoint sets forests, with path compression and linking-by-rank, so as to guarantee good asymptotic complexity: every operation requires a quasi-constant number of accesses to the store.
Repository contents:
client library, a merge of the Mirage and XCP ones
server library
server instance which runs under Unix with libxc
server instance which runs on mirage.
The client and the server libraries have sets of unit-tests.
Tsdl is an OCaml library providing thin bindings to the cross-platform SDL C library.
Ezjsonm provides more convenient (but far less flexible) input and output functions that go to and from [string] values than jsonm. This avoids the need to write signal code, which is useful for quick scripts that manipulate JSON.
Monolith offers facilities for testing an OCaml library (for instance, a data structure implementation) by comparing it against a reference implementation. It can be used to perform either random testing or fuzz testing by using the afl-fuzz tool.
Library operating system that constructs unikernels for secure, high-performance network applications across a variety of cloud computing and mobile platforms. Code can be developed on a normal OS and then compiled into a fully-standalone, specialised unikernel.
Octavius is a library to parse the `ocamldoc` comment syntax.
This library provides minimal support for Canonical S-expressions. Canonical S-expressions are a binary encoding of S-expressions that is super simple and well suited for communication between programs.
This library only provides a few helpers for simple applications. If you need more advanced support, such as parsing from more fancy input sources, you should consider copying the code of this library given how simple parsing S-expressions in canonical form is.
To avoid a dependency on a particular S-expression library, the only module of this library is parameterised by the type of S-expressions.
The "findlib" library provides a scheme to manage reusable software components (packages), and includes tools that support this scheme. Packages are collections of OCaml modules for which metainformation can be stored. The packages are kept in the file system hierarchy, but with strict directory structure. The library contains functions to look the directory up that stores a package, to query metainformation about a package, and to retrieve dependency information about multiple packages. There is also a tool that allows the user to enter queries on the command-line. In order to simplify compilation and linkage, there are new frontends of the various OCaml compilers that can directly deal with packages.
Syntax extension to define first class values representing record fields, to get and set record fields, iterate and fold over all fields of a record and create new record values.
Xml-Light provides functions to parse an XML document into an OCaml data structure, work with it, and print it back to an XML document. It also supports DTD parsing and checking, and is entirely written in OCaml, hence it does not require additional C libraries.
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.
ANSITerminal is a module allowing to use the colors and cursor movements on ANSI terminals.
Js_of_ocaml is a compiler from OCaml bytecode to JavaScript. It makes it possible to run pure OCaml programs in JavaScript environment like browsers and Node.js.
This package contains an syntax extension to indicate that the code is on the cold path and should be kept out of the way to avoid polluting the instruction cache on the hot path. See also https://github.com/ocaml/ocaml/issues/8563.
This package provides the MirageOS `OS` library for Unix targets, which handles the main loop and timers.