From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by c5ff346549e7 (Postfix) with ESMTPS id 4A74C5D4 for ; Tue, 9 Jun 2020 19:17:14 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.73,493,1583190000"; d="scan'208";a="453864560" Received: from prod-listesu18.inria.fr (HELO sympa.inria.fr) ([128.93.162.160]) by mail2-relais-roc.national.inria.fr with ESMTP; 09 Jun 2020 21:17:12 +0200 Received: by sympa.inria.fr (Postfix, from userid 20132) id 9A1D9E1F24; Tue, 9 Jun 2020 21:17:12 +0200 (CEST) Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 7A748E1EA0 for ; Tue, 9 Jun 2020 21:17:06 +0200 (CEST) X-IronPort-AV: E=Sophos;i="5.73,493,1583190000"; d="scan'208";a="453864548" Received: from bou78-2-82-240-46-163.fbx.proxad.net (HELO MP-41019.local) ([82.240.46.163]) by mail2-relais-roc.national.inria.fr with ESMTP/TLS/AES256-SHA; 09 Jun 2020 21:17:06 +0200 To: caml users From: =?UTF-8?Q?Fran=c3=a7ois_Pottier?= Message-ID: <27eaaba8-1303-2265-fa39-f1ea5bccc74d@inria.fr> Date: Tue, 9 Jun 2020 21:17:06 +0200 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:60.0) Gecko/20100101 Thunderbird/60.9.1 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Subject: [Caml-list] [ANN] First release of Monolith Reply-To: =?UTF-8?Q?Fran=c3=a7ois_Pottier?= X-Loop: caml-list@inria.fr X-Sequence: 18167 Errors-To: caml-list-owner@inria.fr Precedence: list Precedence: bulk Sender: caml-list-request@inria.fr X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: Archived-At: Dear OCaml users, It is my pleasure to announce the first release of Monolith. Monolith offers facilities for testing an OCaml library (for instance, a data structure implementation) by comparing it against a reference implementation. It uses a form of black-box testing, and relies on afl-fuzz for efficiency. The user must describe what types and operations the library provides. Under the best circumstances, this requires 2-3 lines of code per type or operation. The user must also provide a reference implementation of the library. Then, like a monkey typing on a keyboard, Monolith attempts to exercise the library in every possible way, in the hope of discovering a scenario where the library behaves incorrectly. If such a scenario is discovered, it is printed in the form of an OCaml program, so as to help the user reproduce the problem. At this time, a tutorial is not yet available. There is however an API documentation and a number of demos. Repository: https://gitlab.inria.fr/fpottier/monolith API Documentation: http://cambium.inria.fr/~fpottier/monolith/doc/monolith/Monolith/index.html Installation: opam update opam install monolith Happy testing, -- François Pottier francois.pottier@inria.fr http://cambium.inria.fr/~fpottier/