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 12AA37FC41 for ; Mon, 28 Sep 2015 15:45:02 +0200 (CEST) IronPort-PHdr: 9a23:H6PTSBZCUG1IHAm6hTBhL2T/LSx+4OfEezUN459isYplN5qZpcu6bnLW6fgltlLVR4KTs6sC0LqK9f29EjJeqb+681k8M7V0HycfjssXmwFySOWkMmbcaMDQUiohAc5ZX0Vk9XzoeWJcGcL5ekGA6ibqtW1aJBzzOEJPK/jvHcaK1oLsh7z0psCYPVsArQH+SI0xBS3+lR/WuMgSjNkqAYcK4TyNnEF1ff9Lz3hjP1OZkkW0zM6x+Jl+73YY4Kp5pIZoGJ/3dKUgTLFeEC9ucyVsvJWq5lH/Sl6s63ofVS0wmxlBHwGNuBL3X5T2tCjmnuV40Siee8bxSOZndy6l6vJXUhb2iTxPYyIj+X/WkYp6lqtXsTquohV+x8jfZ4TDZ6k2Rb/UYd5PHTkJZc1WTSEUR9rkN4Y= Authentication-Results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=travis.brady@gmail.com; spf=Pass smtp.mailfrom=travis.brady@gmail.com; spf=None smtp.helo=postmaster@mail-qg0-f45.google.com Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of travis.brady@gmail.com) identity=pra; client-ip=209.85.192.45; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="travis.brady@gmail.com"; x-sender="travis.brady@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of travis.brady@gmail.com designates 209.85.192.45 as permitted sender) identity=mailfrom; client-ip=209.85.192.45; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="travis.brady@gmail.com"; x-sender="travis.brady@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-qg0-f45.google.com) identity=helo; client-ip=209.85.192.45; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="travis.brady@gmail.com"; x-sender="postmaster@mail-qg0-f45.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0AqAQAKQwlWmy3AVdFeg3haDwa/PYV9AoE7BzsRAQEBAQEBAQEQAQEBAQEGCwsJIS6CHYIHAQEBAwESER0BGx0BAwELBgUEBw0qAgIhAQERAQUBHAYTIod2AQMKCA2oe4EwPjGLR4FsgnmJcwoZJw1WhDYBAQEBAQEBAwEBAQEBAQEBFAEBBA6LYoJQgjkEB4JpgUMFjXSHfIFQg0WGCoFwgU+BOZBxg1mCIRIjgRc3gjCCGyAziSEBAQE X-IPAS-Result: A0AqAQAKQwlWmy3AVdFeg3haDwa/PYV9AoE7BzsRAQEBAQEBAQEQAQEBAQEGCwsJIS6CHYIHAQEBAwESER0BGx0BAwELBgUEBw0qAgIhAQERAQUBHAYTIod2AQMKCA2oe4EwPjGLR4FsgnmJcwoZJw1WhDYBAQEBAQEBAwEBAQEBAQEBFAEBBA6LYoJQgjkEB4JpgUMFjXSHfIFQg0WGCoFwgU+BOZBxg1mCIRIjgRc3gjCCGyAziSEBAQE X-IronPort-AV: E=Sophos;i="5.17,602,1437429600"; d="scan'208";a="179764324" Received: from mail-qg0-f45.google.com ([209.85.192.45]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 28 Sep 2015 15:45:00 +0200 Received: by qgez77 with SMTP id z77so120957438qge.1 for ; Mon, 28 Sep 2015 06:44:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=01NwzK4HTn+O/C1rwDAXEdIPipF9UmzksYXHv3Em9Hg=; b=hWTUNAntYaQjmTPG+1AQt5WICt9X2fMpTgu2sDFa/Sj/cWMUeeGkWusQYxIwFS5tLB 4g5/5KNC+gS5Sa/oCfoVVP+JxV9GzzupT5XIf89ceMerpYxJksOE2GYUR7E1gmOQqKJX 5fctWHcSDBry6qTVqpH1otJydIj3GkXcz1WGkQ1j0+qmCUcuI0/fOvVCwb3zsylYetfQ dlY2TwF/y8v4R6Q/osbTGYQfrE/Zm+3Pdlpv2695St4lmv/LXpIhbNPm6rM1pBvw1Hnz w1ztNY/BiiVyU4icPjT0Cp49ZNWILmgsOe1Awt+qLcwhqCzMWrU5k2EWdURhHWOlQQrU OPWw== MIME-Version: 1.0 X-Received: by 10.140.145.75 with SMTP id 72mr23666623qhr.81.1443447899473; Mon, 28 Sep 2015 06:44:59 -0700 (PDT) Received: by 10.55.168.84 with HTTP; Mon, 28 Sep 2015 06:44:59 -0700 (PDT) In-Reply-To: References: <270D5C05-462B-43B7-918D-6135D41B0BD6@mpi-sws.org> Date: Mon, 28 Sep 2015 08:44:59 -0500 Message-ID: From: Travis To: Keiko Nakata Cc: Andreas Rossberg , O Caml Content-Type: multipart/alternative; boundary=001a113560824ccb320520cee7a2 Subject: Re: [Caml-list] unsigned 64-bit integers --001a113560824ccb320520cee7a2 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable It may also be worth having a look at this library https://github.com/andrenth/ocaml-uint On Mon, Sep 28, 2015 at 2:40 AM, Keiko Nakata wrote: > On Andreas Rossberg wrote: > >> On Keiko Nakata wrote: >> > Why do you not make your unsigned int64 an abstract type (to make sure >> singed and unsigned int64 won't be mixed up)? >> >> Well, because that wouldn=E2=80=99t match the design being implemented t= here. For >> an assembly-like language, you don=E2=80=99t want to factor that way. Fo= r other >> purposes a separate ADT would make a lot of sense, of course. In any cas= e, >> I was only pointing to this for the implementation of individual operato= rs, >> not necessarily for the module as a whole. >> > > Sure, I was just curious. > > I'll play around with your library. I am porting some low level C++ code > to OCaml. Thanks! > > > Best regards, > Keiko > --001a113560824ccb320520cee7a2 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
It may also be worth having a look at this library=C2=A0https://github.com/andrent= h/ocaml-uint

On Mon, Sep 28, 2015 at 2:40 AM, Keiko Nakata <keikonkt@gmail.com> wrote:
On A= ndreas Rossberg <rossberg@mpi-sws.org> wrote:
On Keiko Nakata <keikonkt@gmail.com> wrote:
> Why do you not make your unsigned int64 an abstract type (to make sure= singed and unsigned int64 won't be mixed up)?

Well, because that wouldn=E2=80=99t match the design being implement= ed there. For an assembly-like language, you don=E2=80=99t want to factor t= hat way. For other purposes a separate ADT would make a lot of sense, of co= urse. In any case, I was only pointing to this for the implementation of in= dividual operators, not necessarily for the module as a whole.

Sure, I was just curious.

I'll play around with your library. I am porting some low level C++ co= de to OCaml. Thanks!


Best regards,
Keik= o

--001a113560824ccb320520cee7a2--