From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr 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 585F97F168 for ; Fri, 28 Aug 2015 01:10:28 +0200 (CEST) IronPort-PHdr: 9a23:4MKC3he3qaNtq8d3g2kSVeZTlGMj4u6mDksu8pMizoh2WeGdxc+6Yh7h7PlgxGXEQZ/co6odzbGG6Oa+BCdaut6oizMrTt9lb1c9k8IYnggtUoauKHbQC7rUVRE8B9lIT1R//nu2YgB/Ecf6YEDO8DXptWZBUiv2OQc9HOnpAIma153xjLDpvcOOKF8TzBOGIppMbzyO5T3LsccXhYYwYo0Q8TDu5kVyRuJN2GlzLkiSlRuvru25/Zpk7jgC86l5r50IeezAcq85Vb1VCig9eyBwvZWz9EqLcQza3HwZW2QQ2jBBGQTC8VmuRJD0uyr88OB0wiWdIOX3S6o1UHKs9fEvABThjSNCMz8i7EnWjNZxheRVukGPvRt6lqvdep2UMrJcd6bXetVSEW9IRNpQUWpDC4a2aI0nAuwaeOJJqI+7oEEB+0jtTTKwDf/in2cbzkT92rc3hqF4SVnL Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=mjambon@gmail.com; spf=Pass smtp.mailfrom=mjambon@gmail.com; spf=None smtp.helo=postmaster@mail-pa0-f54.google.com Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of mjambon@gmail.com) identity=pra; client-ip=209.85.220.54; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="mjambon@gmail.com"; x-sender="mjambon@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of mjambon@gmail.com designates 209.85.220.54 as permitted sender) identity=mailfrom; client-ip=209.85.220.54; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="mjambon@gmail.com"; x-sender="mjambon@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-pa0-f54.google.com) identity=helo; client-ip=209.85.220.54; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="mjambon@gmail.com"; x-sender="postmaster@mail-pa0-f54.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0CVAQCVmN9VlDbcVdFegm+Bacc3PBABAQEBAQEBARABAQEBBwsLCR8wgh2CBgEBAQMBEhEVCAE3AgMBCwEFBRgCAgUWCwICCQMCAQIBIgEFARwGAQwIAQEeh3cDCggBBKNlgS8+MYtAhGWKPCcNhUMBBQ6BFIo/h3uBQwEEjWGERIMYlVuQLTWBFxdJg2VRgk0BAQE X-IPAS-Result: A0CVAQCVmN9VlDbcVdFegm+Bacc3PBABAQEBAQEBARABAQEBBwsLCR8wgh2CBgEBAQMBEhEVCAE3AgMBCwEFBRgCAgUWCwICCQMCAQIBIgEFARwGAQwIAQEeh3cDCggBBKNlgS8+MYtAhGWKPCcNhUMBBQ6BFIo/h3uBQwEEjWGERIMYlVuQLTWBFxdJg2VRgk0BAQE X-IronPort-AV: E=Sophos;i="5.17,423,1437429600"; d="scan'208";a="175118372" Received: from mail-pa0-f54.google.com ([209.85.220.54]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 28 Aug 2015 01:10:27 +0200 Received: by pacdd16 with SMTP id dd16so40318744pac.2; Thu, 27 Aug 2015 16:10:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:message-id:date:from:user-agent:mime-version:to:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=ty48nBng60R2e1sfsRWBQczX5AHohOh/QU3UAkmRbwY=; b=lDzvlS7Focmcxd3UsNzjEaBGLL+L5fEfcmn44krDMpaS+/v2ntxXuvTuMwYRQiWWwD 1/lzWacNXwgvS/GKdDV8FUHFDQnfDoy1M7/eeF138U5CVXOCU1FT9xkzB+ul8FtaNw5w yhAgk8ob3iZxWIJhqjU6San4L78VAym6H+pYFV8Nk3lpA7hjT2v+8w9/dFwlDEvtu0B3 64LjuBt9G/rXI5Mq6lv297B1tXqP04l9SrYAWZjh8bkr9xiy4w4ADC4qfd0hS674Km1u c0rBg6DN5BEAIRwRw1ti5jwJBs30aRRpJVbL8uxgHco+T4maF5PC37cvuYDiLUJ114AF HkGg== X-Received: by 10.68.239.69 with SMTP id vq5mr10127883pbc.111.1440717025478; Thu, 27 Aug 2015 16:10:25 -0700 (PDT) Received: from ?IPv6:2601:646:c201:9a00:c7c:5186:6edc:78e? ([2601:646:c201:9a00:c7c:5186:6edc:78e]) by smtp.googlemail.com with ESMTPSA id r6sm3568300pdj.39.2015.08.27.16.10.24 (version=TLSv1/SSLv3 cipher=OTHER); Thu, 27 Aug 2015 16:10:25 -0700 (PDT) Sender: Martin Jambon Message-ID: <55DF98E0.7090801@ens-lyon.org> Date: Thu, 27 Aug 2015 16:10:24 -0700 From: Martin Jambon User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Romain Bardou , caml-list@inria.fr References: <1C02B1E2-D17D-4008-998E-B17048C62DFA@gmail.com> <55DEE7E5.1020104@inria.fr> In-Reply-To: <55DEE7E5.1020104@inria.fr> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Caml-list] We need a rich standard library distributed with OCaml, really On 08/27/2015 03:35 AM, Romain Bardou wrote: > I agree about smaller, independent packages. This is a very general API > design principle: avoid coupling (the fact that using a module implies > using another). This may be the main reason I avoid external libraries. > For instance, Martin Jambon's Yojson depends on biniou, cppo and > easy-format. I believe Martin is an awesome programmer but this > particular point just baffles me as there is absolutely no need for > *any* external dependency to solve such a simple problem (JSON parsing, > pretty-printing and AST constructors). Thanks for the praise! The reason why there are several packages is that they offer different functionality. Not all of them are needed everywhere. Not all of them can be built on every platform. > I understand that Martin wants to > reuse its own code and be able to integrate Yojson easily with other > libraries of his, and that is great. For him and users of his other > libraries. Not for those who just want a JSON parser and have had to > install all dependencies manually on Windows. Yojson is just the runtime for atdgen, but some people find it useful to use it as is. I'm sure atdgen runs on Windows, but if it didn't and it came with all its dependencies and the dependencies weren't available anywhere else, you wouldn't have any Yojson at all. I was under the impression that the opam package manager was available for Windows. It takes care of the dependencies for the user, as package managers do. Martin