From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id D58427EF0D for ; Tue, 9 Feb 2016 04:07:45 +0100 (CET) IronPort-PHdr: 9a23:+N0LfBIfpNt19Wkq5NmcpTZWNBhigK39O0sv0rFitYgULfTxwZ3uMQTl6Ol3ixeRBMOAu60C0bud7fyocFdDyKjCmUhKSIZLWR4BhJdetC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TWM5DIfUi/yKRBybrysXNWC0ILthqvsp9X6WEZhunmUWftKNhK4rAHc5IE9oLBJDeIP8CbPuWZCYO9MxGlldhq5lhf44dqsrtY4q3wD89pozcNLUL37cqIkVvQYSW1+ayFmrPHs4D7oRA6Lrl8dSXlexhFBBgyA6BDhQr/wtDH7v6xzwn/JE9fxSOUYUCqj45BIQRvvkCodABs06pPWjM55j+oPrBH8/0FXyIfRJoiecud9KPCONegGTHZMC54CHxdKBZmxOs5WV7IM Authentication-Results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=unitedbiscuits@gmail.com; spf=Pass smtp.mailfrom=unitedbiscuits@gmail.com; spf=None smtp.helo=postmaster@mail-wm0-f54.google.com Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of unitedbiscuits@gmail.com) identity=pra; client-ip=74.125.82.54; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="unitedbiscuits@gmail.com"; x-sender="unitedbiscuits@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of unitedbiscuits@gmail.com designates 74.125.82.54 as permitted sender) identity=mailfrom; client-ip=74.125.82.54; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="unitedbiscuits@gmail.com"; x-sender="unitedbiscuits@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-wm0-f54.google.com) identity=helo; client-ip=74.125.82.54; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="unitedbiscuits@gmail.com"; x-sender="postmaster@mail-wm0-f54.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0C0BQBGV7lWkTZSfUpeg1g0bQaIVZ8pgVqIeIkphWsDgTIHPBABAQEBAQEBARABAQEBBwsLCR8wgi2CLREdATkDDQUQDwImAiQSAQUBIjWHZAMSnyiCB4ExPjGLNIRAhTcnDUSELwEFCgRtkQCBOgWWbQiFTIgEgiWMTAKHDoV0ER6BDTdggQ0BgiE8LohTAQEB X-IPAS-Result: A0C0BQBGV7lWkTZSfUpeg1g0bQaIVZ8pgVqIeIkphWsDgTIHPBABAQEBAQEBARABAQEBBwsLCR8wgi2CLREdATkDDQUQDwImAiQSAQUBIjWHZAMSnyiCB4ExPjGLNIRAhTcnDUSELwEFCgRtkQCBOgWWbQiFTIgEgiWMTAKHDoV0ER6BDTdggQ0BgiE8LohTAQEB X-IronPort-AV: E=Sophos;i="5.22,418,1449529200"; d="scan'208";a="163960555" Received: from mail-wm0-f54.google.com ([74.125.82.54]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 09 Feb 2016 04:07:45 +0100 Received: by mail-wm0-f54.google.com with SMTP id c200so42037292wme.0 for ; Mon, 08 Feb 2016 19:07:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:from:date:message-id:subject:to:content-type :content-transfer-encoding; bh=LuCQAyzLRDurAAdeBDyjPL2pVNDL6z3afqmDjkceS7s=; b=ZCkZnN19jnLOw3KnfM0NCusIELpzZrr8dtSHdbaM7fQnLAJASRmHsLyLyJnbPiyooH RaTygvqjGUoHEgczN0ntVaS89Qs9rbFeUttr5mXAa5JQyoFFY01BrHzgnXScNNQLU8H3 IEIOR1Pm9pb6384flp2VPAgRdUgxP1fPY5Xhn7nfBYhL1qLyB/v5/DeSWbcjdpdAq5SG xK+Pot7VeqGozLl3kq4VukT7oV2DHZLD7oNSojwSTjMX+eXL9xLAcLaGiD6+t+YFkTB9 /kaATbtXUfi/FTKH2Q4dtU6T1neVSJKLzzTA8nESUFYfTxjnqGNwiy/QYwT4iv9nVsc2 3HpA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:from:date:message-id:subject :to:content-type:content-transfer-encoding; bh=LuCQAyzLRDurAAdeBDyjPL2pVNDL6z3afqmDjkceS7s=; b=AuA0D2GyZg6P+7xjGzZXGx2BNJxtWU8CjH/FZ2mHmrZXjiEgLdIzJUMe1MouIYWAAA rjwlp7rTRiucovWPCvf5zQwIXIIWalxCulEUg/m6sm/GtTZPOBvc1SwFda+t6l2RS8m7 iaAaxkNk9t2XRpvnpRrytf3psBkBWSPVz9wcW8ZoDAUELmryZymfzdFgIWc3AWP+MLMd H9tPoFaqeKBFRORHi8d8uIzOrU+vJraBQfT28trNoF8kMI9Eu4STKrZ8W0lJz9lmcJFm agxI2FyFTsUr0swy80TQUH42e/EwKpTFhrX62eUbeFbobuwEsNVUA9uHx8SBjRSmk+fV Cbdw== X-Gm-Message-State: AG10YOSp2gftroKPf1api5PV1rzhQaviklcpCbRtHccfVxu8K32+KQbug5yRnGOrk2CDXMb+We5XryvTdFX1XQ== X-Received: by 10.28.55.76 with SMTP id e73mr2070183wma.53.1454987264583; Mon, 08 Feb 2016 19:07:44 -0800 (PST) MIME-Version: 1.0 Sender: unitedbiscuits@gmail.com Received: by 10.27.11.10 with HTTP; Mon, 8 Feb 2016 19:07:25 -0800 (PST) From: =?UTF-8?Q?David_Kaloper_Mer=C5=A1injak?= Date: Tue, 9 Feb 2016 03:07:25 +0000 X-Google-Sender-Auth: tAxE3O9GLeM54kCENaQhsywtpzE Message-ID: To: OCaml List Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Validation-by: dk505@cam.ac.uk Subject: [Caml-list] [ANN] Notty 0.1.0 Dear list, I'd like to announce the first release of Notty, a terminal library. The bl= urb: ``Notty is a declarative terminal library for OCaml structured around a notion of composable images. It tries to abstract away the basic terminal programming model, and provide one that is simpler and more expressive. The core layout engine and IO codecs are pure platform-independent OCaml. Distribution includes modules with input and output facilities for Unix, and Lwt on Unix. As an attempt to redefine terminal programming, Notty has to be "opinionated". It assumes Unicode throughout, does not have universal support for various terminals out there, and has a peculiar programming and rendering model.'' Feedback is welcome. Samples of unsupported input escapes are welcome too, and so are complaints about the rendering. Homepage: https://github.com/pqwy/notty Docs: http://pqwy.github.io/notty Many thanks to Daniel B=C3=BCnzli who helped discard an endless stream of bad ideas. Sadly, he's not omnipotent. Daniel's work is also what Notty's solid Unicode support builds upon. Best, David