From: Francois Pottier <francois.pottier@inria.fr>
To: caml-list@inria.fr
Subject: Re: [Caml-list] Polymorphic Variants and Number Parameterized Types
Date: Mon, 29 Apr 2002 17:28:53 +0200 [thread overview]
Message-ID: <20020429172853.A6314@pauillac.inria.fr> (raw)
In-Reply-To: <3CCD55BD.6DB352F5@ps.uni-sb.de>; from rossberg@ps.uni-sb.de on Mon, Apr 29, 2002 at 04:16:29PM +0200
Hi,
> Note that Russo showed [1] that you can actually get rid of dependent
> typing and interpret ML modules (without nested signatures) as a lambda
> calculus with higher-order polymorphism (i.e., definitely not
> simply-typed). The basic idea is to view functors as functions
> polymorphic over their type arguments.
This interesting idea was also developed by Mark Jones:
@InProceedings{jones-96,
author = "Mark P. Jones",
title = "Using Parameterized Signatures to Express Modular
Structure",
booktitle = "Proceedings of the 23rd {ACM} Symposium on Principles
of Programming Languages",
publisher = "ACM Press",
month = jan,
year = "1996",
address = "St. Petersburg Beach, Florida",
note = "\url{http://www.cse.ogi.edu/~mpj/pubs/paramsig.html}",
}
as well as (in a couple of much more technical papers) by Zhong Shao.
> In this setting, adding abstract signatures would at least require adding
> polymorphic kinds, I believe.
What do you mean? In this encoding, modules are only records, so module types
are ordinary types, and there is no distinction between ordinary abstract
types (introduced by explicit polymorphic abstraction) and ``abstract
signatures''. There is, as far as I can tell, no need for kind polymorphism.
--
François Pottier
Francois.Pottier@inria.fr
http://pauillac.inria.fr/~fpottier/
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
next prev parent reply other threads:[~2002-04-29 15:28 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-04-29 13:35 [Caml-list] Polymorphic Variants and Number Parameterized Typ es Krishnaswami, Neel
2002-04-29 14:16 ` [Caml-list] Polymorphic Variants and Number Parameterized Types Andreas Rossberg
2002-04-29 15:28 ` Francois Pottier [this message]
2002-04-29 16:48 ` Andreas Rossberg
2002-04-30 7:07 ` Francois Pottier
2002-04-30 10:34 ` [Caml-list] Encoding "abstract" signatures Andreas Rossberg
2002-04-30 15:18 ` [Caml-list] " Francois Pottier
2002-05-01 13:19 ` Andreas Rossberg
2002-05-02 7:47 ` Francois Pottier
2002-05-02 9:32 ` Andreas Rossberg
2002-05-06 7:27 ` Francois Pottier
2002-05-07 9:14 ` Andreas Rossberg
2002-04-30 10:04 ` [Caml-list] Modules and typing John Max Skaller
2002-04-30 11:51 ` Francois Pottier
2002-04-30 23:24 ` John Max Skaller
2002-05-01 8:08 ` Noel Welsh
2002-05-02 6:52 ` Francois Pottier
-- strict thread matches above, loose matches on Subject: below --
2002-04-24 21:44 [Caml-list] Polymorphic Variants and Number Parameterized Types Nadji.Gauthier
2002-04-27 1:17 ` John Max Skaller
2002-04-27 22:44 ` Brian Rogoff
2002-04-28 4:41 ` John Max Skaller
2002-04-29 13:53 ` Nadji.Gauthier
2002-04-29 14:01 ` Brian Rogoff
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20020429172853.A6314@pauillac.inria.fr \
--to=francois.pottier@inria.fr \
--cc=caml-list@inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox