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 D2F2A7FA83 for ; Sun, 9 Apr 2017 19:15:13 +0200 (CEST) Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=vkni@yandex.ru; spf=Pass smtp.mailfrom=vkni@yandex.ru; spf=None smtp.helo=postmaster@forward16j.cmail.yandex.net Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of vkni@yandex.ru) identity=pra; client-ip=5.255.227.235; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="vkni@yandex.ru"; x-sender="vkni@yandex.ru"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of vkni@yandex.ru designates 5.255.227.235 as permitted sender) identity=mailfrom; client-ip=5.255.227.235; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="vkni@yandex.ru"; x-sender="vkni@yandex.ru"; 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@forward16j.cmail.yandex.net) identity=helo; client-ip=5.255.227.235; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="vkni@yandex.ru"; x-sender="postmaster@forward16j.cmail.yandex.net"; x-conformance=sidf_compatible IronPort-PHdr: =?us-ascii?q?9a23=3AjozZOhBba1wKwu16ZWA7UyQJP3N1i/DPJgcQr6Af?= =?us-ascii?q?oPdwSPT9oMbcNUDSrc9gkEXOFd2CrakV16yO6+jJYi8p2d65qncMcZhBBVcuqP?= =?us-ascii?q?49uEgeOvODElDxN/XwbiY3T4xoXV5h+GynYwAOQJ6tL1LdrWev4jEMBx7xKRR6?= =?us-ascii?q?JvjvGo7Vks+7y/2+94fdbghMizexe69+IAmrpgjNq8cahpdvJLwswRXTuHtIfO?= =?us-ascii?q?pWxWJsJV2Nmhv3+9m98p1+/SlOovwt78FPX7n0cKQ+VrxYES8pM3sp683xtBnM?= =?us-ascii?q?VhWA630BWWgLiBVIAgzF7BbnXpfttybxq+Rw1DWGMcDwULs5Qiqp4bt1RxD0iS?= =?us-ascii?q?cHLz85/3/Risxsl6JQvRatqwViz4LIfI2ZMfxzdb7fc9wHX2pMRsZfWTJcDIyz?= =?us-ascii?q?bIUBCOQPM+lEoITmu1sDrweyCRW2Ce/zyDJFgGL9060g0+QmFAHLxBAtH9IWsX?= =?us-ascii?q?TMstr0LLoZXP2rw6nQ1TTDaulZ2Tfg44XPbBAhoveMXbNrfMvR00YvER7KgUuf?= =?us-ascii?q?qID/JTOVy/0Avm6G5ORuUuKvjnQoqwB3ojW3yccsi5XJhoIIyl/f7yl23IE1Jd?= =?us-ascii?q?i+RUVmYtCkCINduiGAO4doQs4vQ3tktDgkxrAEo5K3YiYHxZQ/yxPba/GLaZWE?= =?us-ascii?q?7g7gWeqLPzt1hGxpdKihixqv80WtzPD3WNOu31ZQtCVFl8HBtnAT2BzX7ciKUv?= =?us-ascii?q?V9/kC72TeBzQ/T8PxLLV01mKrZMZIu3rswmYASsUTHBCP3mF/5jKmLeUo69emk?= =?us-ascii?q?8eLnbav6ppOENo90jB/xMrg2l8G/G+g0LAgDUmiB9eiiyrHu/1f1TKtEg/A2iq?= =?us-ascii?q?XZtYrVJcUfpq63GQ9V1YMj5g6hDzel1tQYnGIKLVJfdxKBkofmJV7PLOriDfei?= =?us-ascii?q?m1isiitkx+jaPr39BZXANmTMn63kfbZ58kJczAszzctD559PEbEAIPfzWlfru9?= =?us-ascii?q?DCDx85NRa0w+f9B9ln2IMeQ3qFArWFP6PKrV+I+uUvLvGDZY8Rpjn9Mf8l5v71?= =?us-ascii?q?gH44mF8deLKm3YENZ3yiH/RmJV+ZYXv2jdsbH2cKpFl2cOu/uFScUDNJL1K/Ra?= =?us-ascii?q?UtrmUrAZynAJ2FQo23h62p3SGhH5QQaHoQWX6WFnK9XoVtQ/rlIAifOiZkmzxM?= =?us-ascii?q?AaaiTY4JxBiouALqjaB6eLmHshYEvI7ugYAmr9bYkgs/oHktV5yQ?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0BxAABJa+pYh+vj/wVdHQEFAQsBGAEFA?= =?us-ascii?q?QsBgmRBZIELnzmXZi6DDIJqg2BDFAEBAQEBAQEBAQEBEgEBAQoLCQgoL4IzIgG?= =?us-ascii?q?CQQRBAQE3AQQWgQ8BEy6JWwEDDQkDCqg/gw6DCAEBBYNJAUoDgzcBCgEBARwDB?= =?us-ascii?q?YRBhXZZMIJ2gT04BIIzDIMNiSqHQowUgx+DYYtZgX+JCIY6iGOLHTaBJmoGQYR?= =?us-ascii?q?MDxAMgWZyhweCPAEBAQ?= X-IPAS-Result: =?us-ascii?q?A0BxAABJa+pYh+vj/wVdHQEFAQsBGAEFAQsBgmRBZIELnzm?= =?us-ascii?q?XZi6DDIJqg2BDFAEBAQEBAQEBAQEBEgEBAQoLCQgoL4IzIgGCQQRBAQE3AQQWg?= =?us-ascii?q?Q8BEy6JWwEDDQkDCqg/gw6DCAEBBYNJAUoDgzcBCgEBARwDBYRBhXZZMIJ2gT0?= =?us-ascii?q?4BIIzDIMNiSqHQowUgx+DYYtZgX+JCIY6iGOLHTaBJmoGQYRMDxAMgWZyhweCP?= =?us-ascii?q?AEBAQ?= X-IronPort-AV: E=Sophos;i="5.37,178,1488841200"; d="scan'208";a="268378085" Received: from forward16j.cmail.yandex.net ([5.255.227.235]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 09 Apr 2017 19:15:12 +0200 Received: from mxback6h.mail.yandex.net (mxback6h.mail.yandex.net [IPv6:2a02:6b8:0:f05::10f]) by forward16j.cmail.yandex.net (Yandex) with ESMTP id 77FE520FA5; Sun, 9 Apr 2017 20:15:11 +0300 (MSK) Received: from web47g.yandex.ru (web47g.yandex.ru [95.108.252.217]) by mxback6h.mail.yandex.net (nwsmtp/Yandex) with ESMTP id quKoa0wHD0-FAouNxrI; Sun, 09 Apr 2017 20:15:10 +0300 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1491758111; bh=MI6fdT1gqPZ05tN7xKaos92Nj0d2wLHxKAH86xiY72A=; h=From:To:Cc:Subject:Message-Id:Date; b=E/Jumg0fMtN2bLXC9Remlk/wXIf6CVT3nfUz5B+p8b0iD5nOWkidza02YgrsC6YHa z3dD+Un7VNmjpBMJP5osi6+t84irXUUpC/UR4ekMK0sVd6mPJ2/5NNxdd5VQFNV6GH 2HvBz6ktoEhQiN2Pz38TOwwN82cco0f1J1Mh5g2I= Received: by web47g.yandex.ru with HTTP; Sun, 09 Apr 2017 20:15:10 +0300 From: =?utf-8?B?0JDQvdC00YDQtdC5INCR0LXRgNCz0LzQsNC9?= To: Xavier Leroy Cc: caml-list@inria.fr MIME-Version: 1.0 Message-Id: <7298321491758110@web47g.yandex.ru> X-Mailer: Yamail [ http://yandex.ru ] 5.0 Date: Sun, 09 Apr 2017 20:15:10 +0300 Content-Transfer-Encoding: 7bit Content-Type: text/plain X-Validation-by: vkni@yandex.ru Subject: Re: [Caml-list] error messages in multiple languages ? > and at the i18n engine itself, which was just a wrapper around "printf" that > used the english format message as an index into the translations: > > https://github.com/camllight/camllight/blob/master/sources/src/compiler/interntl.ml > > This implementation was pretty short and sweet, if I may say so myself, and > possibly easier to use than gettext because by construction the english > message was always available, even if translations were missing by mistake. Why not to forward port it? The only problems I foresee - are: 1. Keeping translations up to date. It is actually quite minor - can be done by Linux distribution maintainers and professors like Tao Stein, who know correct terminology. All you have to provide is nice and detailed instructions (in english) on how to make/update a translation and submit a patch to upstream. This is common - many projects have README.i18n and similar files or have instructions on-line. See, for instance https://github.com/doxygen/doxygen/blob/master/LANGUAGE.HOWTO 2. Support in different OSes, especially Windows, of languages with non-Latin codepages. I.e. the initial testing and/or contribution would be best done by people from Asian countries. ;-) For russian this problem is quite complicated. There are 5 still used different codepages (cp866, cp1251, koi8-r, UTF8, UTF16). For Linux it is more-less possible to limit ourselves to UTF8). In Windows, which is very unfortunately, we still have to use almost all of them. For instance, default console codepage is cp866. But if you redirect the output to file and open it with notepad, it will read it using cp1251 codepage. And you'll get garbage. I expect similar problems for other asian languages. So, it is doable for Linux, but for Windows the only reliably working solution is to use English as output messages. OSX, if I remember right, uses UTF8. --------------------------- On the other hand I recently read about project on translation of Harris & Harris book. The motivation was to reduce the complexity of the subject (CPU pipeline + foreign language) for better understanding by students. Experiments proved that translation did really help.