From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id p2NMJVWN002078 for ; Wed, 23 Mar 2011 23:19:31 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AkwDACsPik1KfVK2kGdsb2JhbACYSoxzCBQBAQEBCQkNBxQEIahKilSCH4USL4hcAQEDBYVkBIxvg1JzhEE6 X-IronPort-AV: E=Sophos;i="4.63,233,1299452400"; d="scan'208";a="94728564" Received: from mail-wy0-f182.google.com ([74.125.82.182]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 23 Mar 2011 23:19:26 +0100 Received: by wyf23 with SMTP id 23so13350377wyf.27 for ; Wed, 23 Mar 2011 15:19:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:content-type:mime-version:subject:from :in-reply-to:date:content-transfer-encoding:message-id:references:to :x-mailer; bh=jr9bPBl/O3RcEUuQe+VBVxrsQ44eAK5bCH9jT5b/JzA=; b=expIDaLmUAjpPJaqO5LX2wnUcWNn1L+WeZCTyUWQDGj1+TVYs+zu5ZDFHrtIDlDEiw Mf8+SkLg6dRoNf6DAtgJMhylMFYw4XRz4QYgewTnSG3U77XGgNlhZYBM7FHE54tT3UKy xPGy7VA7XZ6ocYIobG2evmMEjppi8pxXj9L+I= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to:x-mailer; b=Rn+J4tVuTN39eLkwPbAVhMzvkTNBIZbSfmYLymFcNB6Hd+44XD3TIySFHV6arSzrsV 2cBAY5R8QuiKAcEYmY6Tk2xI3cljwHpqZvKnPXYZ6zzxN/kjWhJeOA5Ja3ZJKVhmZsse sUjMMWP2e8Tib+di9PoyY6iJU6Kz7XM/dEEq4= Received: by 10.216.245.131 with SMTP id o3mr6390801wer.97.1300918765518; Wed, 23 Mar 2011 15:19:25 -0700 (PDT) Received: from [192.168.0.195] ([95.60.213.7]) by mx.google.com with ESMTPS id r80sm3519628wei.15.2011.03.23.15.19.23 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 23 Mar 2011 15:19:24 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Apple Message framework v1082) From: Joel Reymont In-Reply-To: <07EE3576-E5F0-4187-AE8C-DEFEA5C92303@gmail.com> Date: Wed, 23 Mar 2011 22:19:21 +0000 Message-Id: <67C135E4-6D99-410A-A88A-C3AEF6275698@gmail.com> References: <07EE3576-E5F0-4187-AE8C-DEFEA5C92303@gmail.com> To: caml-list@inria.fr X-Mailer: Apple Mail (2.1082) Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by walapai.inria.fr id p2NMJVWN002078 Subject: [Caml-list] Re: fighting the type system One of the issues is that the full definition of Foo.mli is larger than I posted (below) and I'm using other methods apart from write, e.g. grab_page. My writable type really needs to include write -and- grab_page, for example. Thanks, Joel --- open Thrift class request : object ('a) method get_page : Doc_types.document option method grab_page : Doc_types.document method set_page : Doc_types.document -> unit method unset_page : unit method reset_page : unit method copy : 'a method write : Protocol.t -> unit end val read_request : Protocol.t -> request class response : object ('a) method get_page : Doc_types.document option method grab_page : Doc_types.document method set_page : Doc_types.document -> unit method unset_page : unit method reset_page : unit method get_sidebar_pages : Doc_types.document list option method grab_sidebar_pages : Doc_types.document list method set_sidebar_pages : Doc_types.document list -> unit method unset_sidebar_pages : unit method reset_sidebar_pages : unit method copy : 'a method write : Protocol.t -> unit end val read_response : Protocol.t -> response -------------------------------------------------------------------------- - for hire: mac osx device driver ninja, kernel extensions and usb drivers ---------------------+------------+--------------------------------------- http://wagerlabs.com | @wagerlabs | http://www.linkedin.com/in/joelreymont ---------------------+------------+---------------------------------------