<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE message PUBLIC
  "-//MLarc//DTD MLarc output files//EN"
  "../../mlarc.dtd"[
  <!ATTLIST message
    listname CDATA #REQUIRED
    title CDATA #REQUIRED
  >
]>

  <?xml-stylesheet href="../../mlarc.xsl" type="text/xsl"?>


<message 
  url="2003/07/566ce50e8a50d43803c753eee1449a3c"
  from="brogoff@s..."
  author="brogoff@s..."
  date="2003-07-24T15:16:16"
  subject="Re: [Caml-list] Functor implementation"
  prev="2003/07/7641ec02def276cf16d1a0b8ad7516ee"
  next="2003/07/21b30d51ac7b7eb8664b299a9cdf73e8"
  prev-in-thread="2003/07/43df2b95e7a15bf9dc8313265ae49889"
  prev-thread="2003/07/7347ef3d79f516ef8692babe85c8791a"
  next-thread="2003/07/97b33d8e4a056a0adde1f92c7edafae0"
  root="../../"
  period="month"
  listname="caml-list"
  title="Archives of the Caml mailing list">

<thread subject="[Caml-list] Functor implementation">
<msg 
  url="2003/07/29d3d4246f320c31566fbe65671742e3"
  from="Chris Clearwater &lt;chris@s...&gt;"
  author="Chris Clearwater"
  date="2003-07-23T11:56:50"
  subject="[Caml-list] Functor implementation">
<msg 
  url="2003/07/6a3ad155513fe4dcb441ceaecc207515"
  from="Xavier Leroy &lt;xavier.leroy@i...&gt;"
  author="Xavier Leroy"
  date="2003-07-23T13:01:40"
  subject="Re: [Caml-list] Functor implementation">
<msg 
  url="2003/07/43df2b95e7a15bf9dc8313265ae49889"
  from="Chris Clearwater &lt;chris@s...&gt;"
  author="Chris Clearwater"
  date="2003-07-23T22:41:24"
  subject="Re: [Caml-list] Functor implementation">
<msg 
  url="2003/07/566ce50e8a50d43803c753eee1449a3c"
  from="brogoff@s..."
  author="brogoff@s..."
  date="2003-07-24T15:16:16"
  subject="Re: [Caml-list] Functor implementation">
</msg>
</msg>
</msg>
</msg>
</thread>

<contents>
On Wed, 23 Jul 2003, Chris Clearwater wrote:
&gt; Ahh, thanks, functors now fit nicely in my head. And yeah that cmp
&gt; function was kind of braindead. I dont know why I didnt simply write it
&gt; as : let cmp x y = if x &gt; y then GT else if x &lt; y then LT else EQ. But
&gt; it would still be nice if the built in comparison function returned a
&gt; sum type. 

I agree. I think I made a petty complaint about this some time ago. And 
I'd make another (even more petty) complaint about your choice of constructor 
names now, as I'd prefer Equal, LessThan, GreaterThan or Eq, Lt, Gt, so that 
all caps names could be reserved by convention for module types and "view" 
constructor names. By view constructors, I'm referring to the technique 
described by Wang and Murphy for simulating views in ML; that technique is 
even better in OCaml with private types, though I suspect that we'd pay more 
for the indirections than would MLton users. 

&gt; Maybe "ordering" is a more appropriate name. Also, true and false appear
&gt; to be a sum type: type bool = True | False, except you can't have lower
&gt; case constructor names. Does this signal the fact that there is some
&gt; kind of limitation with having primitive sum types?

Nope, probably hysterical raisins again. Note that Revised fixes this. 

-- Brian


-------------------
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

</contents>

</message>

