<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:old.nabble.com,2006:forum-14016</id>
	<title>Nabble - Caml Discuss2</title>
	<updated>2009-11-25T17:40:43Z</updated>
	<link rel="self" type="application/atom+xml" href="http://old.nabble.com/Caml-Discuss2-f14016.xml" />
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Caml-Discuss2-f14016.html" />
	<subtitle type="html"></subtitle>
	
<entry>
	<id>tag:old.nabble.com,2006:post-26523242</id>
	<title>Re: iPhone development</title>
	<published>2009-11-25T17:40:43Z</published>
	<updated>2009-11-25T17:40:43Z</updated>
	<author>
		<name>Jeffrey Scofield</name>
	</author>
	<content type="html">Yitzhak Mandelbaum &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26523242&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;yitzhakm@...&lt;/a&gt;&amp;gt; writes:
&lt;br&gt;&lt;br&gt;&amp;gt; Back in May there was a brief discussion about developing for the
&lt;br&gt;&amp;gt; iPhone in OCaml. &amp;nbsp; Does anyone from that discussion, or anyone else,
&lt;br&gt;&amp;gt; have any updates on the process/experience?
&lt;br&gt;&lt;br&gt;Greetings.
&lt;br&gt;&lt;br&gt;We're nearing completion of our first OCaml iPhone app. &amp;nbsp;It's been
&lt;br&gt;fantastic coding the app in OCaml. &amp;nbsp;But on the other hand, there's a
&lt;br&gt;lot of work to make that possible. &amp;nbsp;In the long term, however, I
&lt;br&gt;expect it will turn out to have been a great decision.
&lt;br&gt;&lt;br&gt;With Apple's release of iPhoneOS 3.0 we found that our previous
&lt;br&gt;(somewhat hackish) patches were no longer working. &amp;nbsp;We have a new set of
&lt;br&gt;patches to OCaml 3.10.2 that adopt the OCaml 3.12 register assignments
&lt;br&gt;for ARM, and are a little more properly integrated with the OCaml code
&lt;br&gt;generator. &amp;nbsp;In particular, the register assignments (as in OCaml 3.12)
&lt;br&gt;avoid use of registers reserved to the OS. &amp;nbsp;We can report that this
&lt;br&gt;works perfectly under both iPhoneOS 2.2.1 and iPhoneOS 3.0. &amp;nbsp;So things
&lt;br&gt;are looking good for the OCaml 3.12 release as a basis for cross
&lt;br&gt;compilation to the iPhone.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;nbsp;Some specific questions:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 1. Does anyone know of any open-source code that helps to interface
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; OCaml with Cocoa?
&lt;br&gt;&lt;br&gt;No, sorry. &amp;nbsp;We wrote our own code to do this.
&lt;br&gt;&lt;br&gt;&amp;gt; 2. In May, Jeff Scofield posted a patch to 3.10.2 for cross compiling
&lt;br&gt;&amp;gt; to the arm processor. What about 3.11.x?
&lt;br&gt;&lt;br&gt;Since the ARM code generator is completely revamped for OCaml 3.12 we
&lt;br&gt;are currently planning to skip the 3.11 release.
&lt;br&gt;&lt;br&gt;Regards,
&lt;br&gt;&lt;br&gt;Jeff Scofield
&lt;br&gt;Seattle
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/iPhone-development-tp26496120p26523242.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26522402</id>
	<title>Re: New: cppo, C preprocessor for OCaml</title>
	<published>2009-11-25T15:54:27Z</published>
	<updated>2009-11-25T15:54:27Z</updated>
	<author>
		<name>yoann padioleau</name>
	</author>
	<content type="html">&lt;br&gt;On Nov 18, 2009, at 5:38 AM, Richard Jones wrote:
&lt;br&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Wed, Nov 18, 2009 at 01:54:18AM +0100, Martin Jambon wrote:
&lt;br&gt;&amp;gt;&amp;gt; It is my pleasure to announce the first release of cppo, an OCaml- 
&lt;br&gt;&amp;gt;&amp;gt; friendly
&lt;br&gt;&amp;gt;&amp;gt; equivalent of the C preprocessor (cpp).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; All I need now is a camlp4-powerful macro preprocessor for my C &amp;nbsp;
&lt;br&gt;&amp;gt; code ...
&lt;br&gt;&lt;br&gt;Try coccinelle:
&lt;br&gt;&lt;a href=&quot;http://coccinelle.lip6.fr/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://coccinelle.lip6.fr/&lt;/a&gt;&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Rich.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; -- 
&lt;br&gt;&amp;gt; Richard Jones
&lt;br&gt;&amp;gt; Red Hat
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; _______________________________________________
&lt;br&gt;&amp;gt; Caml-list mailing list. Subscription management:
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;&amp;gt; Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;&amp;gt; Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;&amp;gt; Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/New%3A-cppo%2C-C-preprocessor-for-OCaml-tp26400654p26522402.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26511838</id>
	<title>Re: Looking for information regarding use of OCaml in  scientific computing and simulation</title>
	<published>2009-11-25T04:32:01Z</published>
	<updated>2009-11-25T04:32:01Z</updated>
	<author>
		<name>blue storm</name>
	</author>
	<content type="html">On Wed, Nov 25, 2009 at 12:05 PM, David MENTRE &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26511838&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dmentre@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;  - My colleagues are working a lot with Mathlab, is there any synergy
&lt;br&gt;&amp;gt; there (bindings, ways to integrate Mathlab within OCaml code or vice
&lt;br&gt;&amp;gt; versa, ...)?
&lt;br&gt;&lt;br&gt;See OcamlMex : &lt;a href=&quot;http://ocamlmex.gforge.inria.fr/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://ocamlmex.gforge.inria.fr/&lt;/a&gt;&lt;br&gt;&lt;br&gt;When working with scientific software libraries, you may need to
&lt;br&gt;communicate with Fortran Code. The standard Bigarray library is very
&lt;br&gt;useful for communicating numeric data sets in a layout directly
&lt;br&gt;compatible with C or Fortran arrays :
&lt;br&gt;&lt;a href=&quot;http://caml.inria.fr/pub/docs/manual-ocaml/manual043.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/pub/docs/manual-ocaml/manual043.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Looking-for-information-regarding-use-of-OCaml-in-scientific-computing-and-simulation-tp26510892p26511838.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26511511</id>
	<title>Re: Looking for information regarding use of OCaml in scientific computing and simulation</title>
	<published>2009-11-25T03:59:21Z</published>
	<updated>2009-11-25T03:59:21Z</updated>
	<author>
		<name>Sylvain Le Gall-2</name>
	</author>
	<content type="html">Hello,
&lt;br&gt;&lt;br&gt;On 25-11-2009, David MENTRE &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26511511&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dmentre@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hello,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I'm considering doing a short presentation of OCaml to my colleagues
&lt;br&gt;&amp;gt; in my research lab. They are working in the telecommunication and
&lt;br&gt;&amp;gt; power electronic sectors, mainly doing signal processing and
&lt;br&gt;&amp;gt; simulations. I know OCaml[1] but not specifically those domains.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Therefore, I'm looking for reusable material for a presentation:
&lt;br&gt;&amp;gt; &amp;nbsp;- Slides on the use of OCaml in the signal processing and simulation domains;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;Maybe you can have a look at 
&lt;br&gt;&lt;a href=&quot;https://forge.ocamlcore.org/docman/view.php/77/34/VSYML-ocaml-meeting-2009.pdf&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://forge.ocamlcore.org/docman/view.php/77/34/VSYML-ocaml-meeting-2009.pdf&lt;/a&gt;&lt;br&gt;&lt;br&gt;This is the slide of last year OCaml Meeting talk about VHDL simulation,
&lt;br&gt;using OCaml. Maybe Florent Ouchet, the author, can give you more hint.
&lt;br&gt;&lt;br&gt;(I think VSYML is doing thing at symbolic level, so maybe it is the kind
&lt;br&gt;of simulation you are looking for).
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;nbsp;- Code snippets of OCaml used in scientific computing or simulation,
&lt;br&gt;&amp;gt; typically for advocacy like &amp;quot;it takes 10 lines in OCaml to do this,
&lt;br&gt;&amp;gt; you would use 50 lines in C++ to do the same thing&amp;quot;;
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;br&gt;Maybe &amp;quot;OCaml for Scientist&amp;quot; from Jon Harrop can be a good start. There
&lt;br&gt;some examples at the end that can help you (with code).
&lt;br&gt;&lt;br&gt;Regards,
&lt;br&gt;Sylvain Le Gall
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Looking-for-information-regarding-use-of-OCaml-in-scientific-computing-and-simulation-tp26510892p26511511.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26510892</id>
	<title>Looking for information regarding use of OCaml in scientific computing and simulation</title>
	<published>2009-11-25T03:05:14Z</published>
	<updated>2009-11-25T03:05:14Z</updated>
	<author>
		<name>David MENTRE-2</name>
	</author>
	<content type="html">Hello,
&lt;br&gt;&lt;br&gt;I'm considering doing a short presentation of OCaml to my colleagues
&lt;br&gt;in my research lab. They are working in the telecommunication and
&lt;br&gt;power electronic sectors, mainly doing signal processing and
&lt;br&gt;simulations. I know OCaml[1] but not specifically those domains.
&lt;br&gt;&lt;br&gt;Therefore, I'm looking for reusable material for a presentation:
&lt;br&gt;&amp;nbsp;- Slides on the use of OCaml in the signal processing and simulation domains;
&lt;br&gt;&lt;br&gt;&amp;nbsp;- Code snippets of OCaml used in scientific computing or simulation,
&lt;br&gt;typically for advocacy like &amp;quot;it takes 10 lines in OCaml to do this,
&lt;br&gt;you would use 50 lines in C++ to do the same thing&amp;quot;;
&lt;br&gt;&lt;br&gt;&amp;nbsp;- Evidence of *actual use* of OCaml for scientific computing or
&lt;br&gt;simulation, especially regarding usable libraries, bindings, etc.
&lt;br&gt;&lt;br&gt;&amp;nbsp;- Evidence of people having switched from C/C++ simulators to OCaml
&lt;br&gt;ones : good and bad points, issues, things to look at, etc.
&lt;br&gt;&lt;br&gt;&amp;nbsp;- My colleagues are working a lot with Mathlab, is there any synergy
&lt;br&gt;there (bindings, ways to integrate Mathlab within OCaml code or vice
&lt;br&gt;versa, ...)?
&lt;br&gt;&lt;br&gt;You can reply to me on this list or off list. In case of personal
&lt;br&gt;reply, let me know if I can reuse your name and affiliation.
&lt;br&gt;&lt;br&gt;If this presentation is done, I'll make the slides available under a
&lt;br&gt;free license.
&lt;br&gt;&lt;br&gt;Many thanks in advance for any pointer,
&lt;br&gt;Best regards,
&lt;br&gt;david
&lt;br&gt;&lt;br&gt;[1] For both OCaml's strong (typing, GC, efficiency, ...) and bad
&lt;br&gt;(strange syntax, ...) points.
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Looking-for-information-regarding-use-of-OCaml-in-scientific-computing-and-simulation-tp26510892p26510892.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26498806</id>
	<title>SERA2010: 2nd Call for Papers, Specical Sessions, Workshops and Sponsorships</title>
	<published>2009-11-24T08:14:50Z</published>
	<updated>2009-11-24T08:14:50Z</updated>
	<author>
		<name>Joey Paquet</name>
	</author>
	<content type="html">Dear colleagues,
&lt;br&gt;&lt;br&gt;[ Apologies for the crossposting or if you get multiple copies of this email ]
&lt;br&gt;&lt;br&gt;We would like to invite you to submit a paper and / or a special session /
&lt;br&gt;workshop proposal to the 8th IEEE/ACIS International Conference on Software
&lt;br&gt;Engineering Research, Management and Applications (SERA2010) on
&lt;br&gt;May 24 - 26, 2010. The event will take place at Concordia University, Montreal,
&lt;br&gt;Canada.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://users.encs.concordia.ca/~sera2010/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://users.encs.concordia.ca/~sera2010/&lt;/a&gt;&lt;br&gt;&lt;br&gt;Please take notice of the attached Call for Papers, Call for Workshop Proposals
&lt;br&gt;and Call for Sponsorship for further information.
&lt;br&gt;&lt;br&gt;The deadline for submission of either papers or the workshop/special session
&lt;br&gt;proposals is December 15, 2009.
&lt;br&gt;&lt;br&gt;We kindly ask you to distribute this announcement among the colleagues in your
&lt;br&gt;institution and post it on research mailing lists you have access to that you
&lt;br&gt;may think this is relevant.
&lt;br&gt;&lt;br&gt;&lt;br&gt;Important dates:
&lt;br&gt;================
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Paper and Proposals Submission: December 15, 2009
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Acceptance Notification: January 25, 2010
&lt;br&gt;Camera-ready Paper &amp; Pre-Registration: February 20, 2010
&lt;br&gt;&lt;br&gt;&lt;br&gt;Topics:
&lt;br&gt;=======
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://users.encs.concordia.ca/~sera2010/files/First_CFP_SERA2010.pdf&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://users.encs.concordia.ca/~sera2010/files/First_CFP_SERA2010.pdf&lt;/a&gt;&lt;br&gt;&lt;br&gt;- New theoretical foundations in Software Engineering Modeling
&lt;br&gt;- Business Process &amp; Enterprise Integration Engineering
&lt;br&gt;- Communication Systems and Networks
&lt;br&gt;- Computer Game Development, &amp;nbsp;User Modeling and Management
&lt;br&gt;- Cost Modeling and Analysis
&lt;br&gt;- Data Mining and Knowledge Recovery
&lt;br&gt;- Distributed Intelligent Systems
&lt;br&gt;- Formal Methods and Tools
&lt;br&gt;- Healthcare Engineering
&lt;br&gt;- Human Computer Interaction
&lt;br&gt;- Parallel and Distributed Computing Telecommunications
&lt;br&gt;- Service Oriented Computing
&lt;br&gt;- Mobile/Wireless Computing
&lt;br&gt;- Requirements Modeling and Management
&lt;br&gt;- Process Management &amp; Improvement
&lt;br&gt;- Reengineering, Reverse Engineering
&lt;br&gt;- Autonomic Computing
&lt;br&gt;- Requirements Engineering
&lt;br&gt;- Safety and Security Critical Software
&lt;br&gt;- Software Agent Technology
&lt;br&gt;- Web Engineering, Web-Based Applications
&lt;br&gt;- Virtual Reality and Computer Graphics
&lt;br&gt;&lt;br&gt;&lt;br&gt;Call for Sponsorship:
&lt;br&gt;=====================
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://users.encs.concordia.ca/~sera2010/files/SERA2010-CallForSponsorship-last.pdf&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://users.encs.concordia.ca/~sera2010/files/SERA2010-CallForSponsorship-last.pdf&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Submission:
&lt;br&gt;===========
&lt;br&gt;&lt;br&gt;We solicit research and experience papers as well as research-in-progress and
&lt;br&gt;practitioner reports in any of the technical areas listed under Scope &amp; Topics.
&lt;br&gt;Submit your paper via the web-based conference management system following
&lt;br&gt;the instructions below:
&lt;br&gt;&lt;br&gt;&amp;nbsp;* First, please review the IEEE PDF specifications.
&lt;br&gt;&amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://www.ieee.org/portal/cms_docs/pubs/confstandards/pdfs/IEEE-PDF-SpecV401.pdf&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ieee.org/portal/cms_docs/pubs/confstandards/pdfs/IEEE-PDF-SpecV401.pdf&lt;/a&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp;* Go to the Conference Management System and follow the instructions on the
&lt;br&gt;&amp;nbsp; &amp;nbsp;&amp;quot;Electronic Submission Page&amp;quot; that it takes you to.
&lt;br&gt;&amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://acis.cps.cmich.edu:8080/SERA2010/submit.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://acis.cps.cmich.edu:8080/SERA2010/submit.html&lt;/a&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp;* The file that you submit should include the paper title, abstract, keywords,
&lt;br&gt;&amp;nbsp; &amp;nbsp;and introduction followed by the body of your paper. The authorâs name and
&lt;br&gt;&amp;nbsp; &amp;nbsp;address MUST NOT appear in this file. This is to facilitate a blind review.
&lt;br&gt;&amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp;* Upload your full paper in two column format (not to exceed 10 single-spaced
&lt;br&gt;&amp;nbsp; &amp;nbsp;pages) via the web-based conference management system in PDF format, or you
&lt;br&gt;&amp;nbsp; &amp;nbsp;can submit your paper in the final manuscript format.
&lt;br&gt;&amp;nbsp; &amp;nbsp;
&lt;br&gt;&amp;nbsp;* The format of the final manuscript should be in a two-column format and 8 pages
&lt;br&gt;&amp;nbsp; &amp;nbsp;in length. Up to an extra 2 pages (total of 8) can be purchased at registration
&lt;br&gt;&amp;nbsp; &amp;nbsp;time (see registration form for pricing).
&lt;br&gt;&lt;br&gt;&amp;nbsp;* Please select at least two keywords from the drop-down menu and check boxes.
&lt;br&gt;&amp;nbsp; &amp;nbsp;If you cannot find the right category in the drop-down menu then please enter
&lt;br&gt;&amp;nbsp; &amp;nbsp;a category for your paper in the summary. We need this information when
&lt;br&gt;&amp;nbsp; &amp;nbsp;determining reviewers for your paper.
&lt;br&gt;&lt;br&gt;Submissions, refereeing, and all correspondence will be conducted by e-mail.
&lt;br&gt;All papers must be submitted through our Conference Management System.
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://acis.cps.cmich.edu:8080/SERA2010/submit.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://acis.cps.cmich.edu:8080/SERA2010/submit.html&lt;/a&gt;&lt;br&gt;&amp;nbsp;
&lt;br&gt;The program committee will review each submission and judge it with respect
&lt;br&gt;to its originality, significance, and relevance. 
&lt;br&gt;&lt;br&gt;&lt;br&gt;Publication:
&lt;br&gt;============
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://users.encs.concordia.ca/~sera2010/Publication.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://users.encs.concordia.ca/~sera2010/Publication.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;Accepted papers will be published in the IEEE Computer Society. 
&lt;br&gt;&lt;br&gt;Conference organizers will select approximately 20 outstanding papers from
&lt;br&gt;SERA 2010 to be published in Springer's Studies in Computational
&lt;br&gt;Intelligence (SCI). The book series will be distributed at the conference
&lt;br&gt;site.
&lt;br&gt;&lt;br&gt;&lt;br&gt;Workshops and Special Sessions:
&lt;br&gt;==============================
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://users.encs.concordia.ca/~sera2010/files/SERA2010-2d-Call%20for%20Workshop%20Proposals.pdf&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://users.encs.concordia.ca/~sera2010/files/SERA2010-2d-Call%20for%20Workshop%20Proposals.pdf&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Committees:
&lt;br&gt;===========
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://users.encs.concordia.ca/~sera2010/People.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://users.encs.concordia.ca/~sera2010/People.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;For further inquires about SERA2010 conference and event planning, please
&lt;br&gt;e-mail to:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26498806&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;sera2010-priv@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;You may obtain further information on the conference at its web site
&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://users.encs.concordia.ca/~sera2010/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://users.encs.concordia.ca/~sera2010/&lt;/a&gt;&lt;br&gt;&lt;br&gt;Sincerely yours,
&lt;br&gt;&lt;br&gt;SERA2010 organizers
&lt;br&gt;===============================================================================
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/SERA2010%3A-2nd-Call-for-Papers%2C-Specical-Sessions%2C-Workshops-and-Sponsorships-tp26498806p26498806.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26496393</id>
	<title>Re: CamlJava - patch to *build* w/ recent JDK</title>
	<published>2009-11-24T06:00:35Z</published>
	<updated>2009-11-24T06:00:35Z</updated>
	<author>
		<name>Stefano Zacchiroli-3</name>
	</author>
	<content type="html">On Mon, Nov 23, 2009 at 04:55:37PM +0100, Stefano Zacchiroli wrote:
&lt;br&gt;&amp;gt; Has anyone successfully built/used CamlJava [1] with recent OCaml and
&lt;br&gt;&amp;gt; the open sourced Sun's JVM (OpenJDK)? &amp;nbsp;I've tried for a while, but I'm
&lt;br&gt;&amp;gt; stuck at the basics, i.e. making the example shipped with CamlJava work.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; First of all there is some needed gymnastic to build: apparently there
&lt;br&gt;&amp;gt; is no longer _a_ legacy libjvm.so, but several one depending on which
&lt;br&gt;&amp;gt; JRE you choose (at least: &amp;quot;Cacao&amp;quot; and &amp;quot;headless&amp;quot;). Of course they're in
&lt;br&gt;&amp;gt; different dirs and I'm not sure about which is the right way (or even
&lt;br&gt;&amp;gt; criteria) to choose one.
&lt;br&gt;&lt;br&gt;About this, here is a patch for the build system which makes CamlJava
&lt;br&gt;build against both last Sun's JDK 6 (closed source) and last Open JDK.
&lt;br&gt;It mainly account for libjvm.so having been moved around and some
&lt;br&gt;upstream lib/ directory reorganization.
&lt;br&gt;&lt;br&gt;&amp;gt; After having passed through that (with a dirty symlink to one of the two
&lt;br&gt;&amp;gt; libjvm.so), the shipped example fails with an exception while
&lt;br&gt;&amp;gt; initializing the JVM:
&lt;br&gt;&lt;br&gt;This, unfortunately, is still standing :-(
&lt;br&gt;&lt;br&gt;Cheers.
&lt;br&gt;&lt;br&gt;&lt;br&gt;PS I hope I'm not bothering with list + author's Cc, AFAIK there is no
&lt;br&gt;&amp;nbsp; &amp;nbsp;BTS for CamlJava, so this is my best attempt for both being sure the
&lt;br&gt;&amp;nbsp; &amp;nbsp;author gets the patch and that the patch is public for consumptions
&lt;br&gt;&amp;nbsp; &amp;nbsp;by others
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Stefano Zacchiroli -o- PhD in Computer Science \ PostDoc @ Univ. Paris 7
&lt;br&gt;zack@{upsilon.cc,pps.jussieu.fr,debian.org} -&amp;lt;&amp;gt;- &lt;a href=&quot;http://upsilon.cc/zack/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://upsilon.cc/zack/&lt;/a&gt;&lt;br&gt;Dietro un grande uomo c'è ..| &amp;nbsp;. &amp;nbsp;|. Et ne m'en veux pas si je te tutoie
&lt;br&gt;sempre uno zaino ...........| ..: |.... Je dis tu à tous ceux que j'aime
&lt;br&gt;&lt;br /&gt;&lt;hr align=&quot;left&quot; width=&quot;300&quot; /&gt;&lt;tt&gt;diff -Naur camljava-0.3.orig/lib/Makefile camljava-0.3/lib/Makefile
&lt;br&gt;--- camljava-0.3.orig/lib/Makefile	2009-11-24 14:43:18.555035491 +0100
&lt;br&gt;+++ camljava-0.3/lib/Makefile	2009-11-24 14:42:07.943485242 +0100
&lt;br&gt;@@ -46,7 +46,7 @@
&lt;br&gt;&amp;nbsp;	rm -f fr/inria/caml/camljava/*.class
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;clean::
&lt;br&gt;-	rm -f *.cm? *.[oa]
&lt;br&gt;+	rm -f *.cm? *.[oa] *.cmxa
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;.SUFFIXES: .ml .mli .cmo .cmi .cmx
&lt;br&gt;&amp;nbsp;
&lt;br&gt;diff -Naur camljava-0.3.orig/Makefile.config camljava-0.3/Makefile.config
&lt;br&gt;--- camljava-0.3.orig/Makefile.config	2004-07-08 16:02:53.000000000 +0200
&lt;br&gt;+++ camljava-0.3/Makefile.config	2009-11-24 14:52:27.474829525 +0100
&lt;br&gt;@@ -17,7 +17,7 @@
&lt;br&gt;&amp;nbsp;## For other platforms, adjust as required and tell us about it.
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;# Home location for the JDK. &amp;nbsp;Only used for setting other variables below. 
&lt;br&gt;-JDKHOME=/usr/local/java_1.4.2
&lt;br&gt;+JDKHOME=/usr/lib/jvm/java-6-sun
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;# Where to find the JNI include files (for compiling the OCaml-JNI C stubs)
&lt;br&gt;&amp;nbsp;JNIINCLUDES=-I$(JDKHOME)/include -I$(JDKHOME)/include/linux
&lt;br&gt;@@ -25,11 +25,18 @@
&lt;br&gt;&amp;nbsp;# The library to link with to get the JNI
&lt;br&gt;&amp;nbsp;JNILIBS=-ljava
&lt;br&gt;&amp;nbsp;
&lt;br&gt;+# Current architecture identification string, as intended by the JDK.
&lt;br&gt;+# Common values for x86 architectures are &amp;quot;i386&amp;quot; or &amp;quot;amd64&amp;quot;. You can find it
&lt;br&gt;+# out by looking for the &amp;quot;*&amp;quot; patch component in the following pattern:
&lt;br&gt;+# $(JDKHOME)/jre/lib/*/libjava.so
&lt;br&gt;+ARCH=amd64
&lt;br&gt;+
&lt;br&gt;&amp;nbsp;# Additional link-time options to pass to $(CC) when linking with $(JNILIBS)
&lt;br&gt;-JNILIBOPTS=-L$(JDKHOME)/jre/lib/i386/ \
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-Wl,-rpath,$(JDKHOME)/jre/lib/i386/ \
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-Wl,-rpath,$(JDKHOME)/jre/lib/i386/client \
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-Wl,-rpath,$(JDKHOME)/jre/lib/i386/native_threads
&lt;br&gt;+JNILIBOPTS=-L$(JDKHOME)/jre/lib/$(ARCH)/ \
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-L$(JDKHOME)/jre/lib/$(ARCH)/server \
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-Wl,-rpath,$(JDKHOME)/jre/lib/$(ARCH)/ \
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-Wl,-rpath,$(JDKHOME)/jre/lib/$(ARCH)/server \
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-Wl,-rpath,$(JDKHOME)/jre/lib/$(ARCH)/native_threads
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;# Additional options when compiling the OCaml-JNI C stubs.
&lt;br&gt;&amp;nbsp;# -DJDK122_LINUX_HACK works around a nasty thread-related bug of
&lt;br&gt;diff -Naur camljava-0.3.orig/test/jnitest.ml camljava-0.3/test/jnitest.ml
&lt;br&gt;--- camljava-0.3.orig/test/jnitest.ml	2001-06-05 16:01:23.000000000 +0200
&lt;br&gt;+++ camljava-0.3/test/jnitest.ml	2009-11-24 14:37:41.602405336 +0100
&lt;br&gt;@@ -68,4 +68,6 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp;print_newline()
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;let _ =
&lt;br&gt;- &amp;nbsp;test()
&lt;br&gt;+ &amp;nbsp;try
&lt;br&gt;+ &amp;nbsp; &amp;nbsp;test()
&lt;br&gt;+ &amp;nbsp;with exn -&amp;gt; prerr_endline (Printexc.to_string exn)
&lt;br&gt;diff -Naur camljava-0.3.orig/test/Makefile camljava-0.3/test/Makefile
&lt;br&gt;--- camljava-0.3.orig/test/Makefile	2001-06-05 16:01:15.000000000 +0200
&lt;br&gt;+++ camljava-0.3/test/Makefile	2009-11-24 14:44:01.335369289 +0100
&lt;br&gt;@@ -18,3 +18,4 @@
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;clean::
&lt;br&gt;&amp;nbsp;	rm -f *.cm?
&lt;br&gt;+	rm -f *.class
&lt;br&gt;&lt;/tt&gt;&lt;hr align=&quot;left&quot; width=&quot;300&quot; /&gt;&lt;br /&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CamlJava-w--recent-OCaml-%283.11.1%29-and-Sun%27s-JVM-%28OpenJDK%29-tp26480707p26496393.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26496120</id>
	<title>iPhone development</title>
	<published>2009-11-24T05:45:22Z</published>
	<updated>2009-11-24T05:45:22Z</updated>
	<author>
		<name>Yitzhak Mandelbaum</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;Back in May there was a brief discussion about developing for the &amp;nbsp;
&lt;br&gt;iPhone in OCaml. &amp;nbsp;Does anyone from that discussion, or anyone else, &amp;nbsp;
&lt;br&gt;have any updates on the process/experience? &amp;nbsp;Some specific questions:
&lt;br&gt;&lt;br&gt;1. Does anyone know of any open-source code that helps to interface &amp;nbsp;
&lt;br&gt;OCaml with Cocoa?
&lt;br&gt;2. In May, Jeff Scofield posted a patch to 3.10.2 for cross compiling &amp;nbsp;
&lt;br&gt;to the arm processor. What about 3.11.x?
&lt;br&gt;&lt;br&gt;Thanks in advance,
&lt;br&gt;&lt;br&gt;Yitzhak
&lt;br&gt;&lt;br&gt;-----------------------------
&lt;br&gt;Yitzhak Mandelbaum
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/iPhone-development-tp26496120p26496120.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26495865</id>
	<title>Call for Participation: TLDI'10</title>
	<published>2009-11-24T05:29:03Z</published>
	<updated>2009-11-24T05:29:03Z</updated>
	<author>
		<name>Andrew Kennedy</name>
	</author>
	<content type="html">********************************************************************* 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;CALL FOR PARTICIPATION 
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;TLDI 2010 
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ACM SIGPLAN Workshop on 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Types in Language Design and Implementation 
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 23 January 2010 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Madrid, Spain
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;To be held in conjunction with POPL 2010
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://research.microsoft.com/~akenn/tldi2010/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://research.microsoft.com/~akenn/tldi2010/&lt;/a&gt;&lt;br&gt;********************************************************************* 
&lt;br&gt;&lt;br&gt;IMPORTANT DATES 
&lt;br&gt;&lt;br&gt;Hotel reservation deadline: December 28, 2009 (Monday)
&lt;br&gt;&lt;br&gt;&lt;br&gt;VENUE 
&lt;br&gt;&lt;br&gt;TLDI'10 and all POPL'10 affiliated events will take place at the 
&lt;br&gt;Melia Castilla Hotel, Madrid.
&lt;br&gt;&lt;br&gt;&lt;br&gt;REGISTRATION
&lt;br&gt;&lt;br&gt;To register for TLDI'10, follow the link from the POPL 2010 page, at
&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://www.cse.psu.edu/popl/10/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.cse.psu.edu/popl/10/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;SCOPE 
&lt;br&gt;&lt;br&gt;The role of types and proofs in all aspects of language design,
&lt;br&gt;compiler construction, and software development has expanded greatly
&lt;br&gt;in recent years. Type systems, type-based analyses and type-theoretic
&lt;br&gt;deductive systems have been central to advances in compilation
&lt;br&gt;techniques for modern programming languages, verification of safety
&lt;br&gt;and security properties of programs, program transformation and
&lt;br&gt;optimization, and many other areas. The ACM SIGPLAN Workshop on Types
&lt;br&gt;in Language Design and Implementation brings researchers together to
&lt;br&gt;share new ideas and results concerning all aspects of types and
&lt;br&gt;programming, and is now an annual event.
&lt;br&gt;&lt;br&gt;&lt;br&gt;INVITED SPEAKER
&lt;br&gt;&lt;br&gt;Matthias Felleisen, Northeastern University, Boston
&lt;br&gt;&lt;br&gt;&lt;br&gt;PRELIMINARY PROGRAM 
&lt;br&gt;&lt;br&gt;---------------------- 
&lt;br&gt;Opening remarks: 9:20-9:30 
&lt;br&gt;&lt;br&gt;Invited talk &amp;nbsp;9:30-10:30 
&lt;br&gt;&lt;br&gt;*** Adding Types to Untyped Languages
&lt;br&gt;&amp;nbsp; &amp;nbsp;Matthias Felleisen, Northeastern University, Boston
&lt;br&gt;&lt;br&gt;---------------------- 
&lt;br&gt;** Session I &amp;nbsp; 11:00-12:30
&lt;br&gt;&lt;br&gt;*** Effects for Cooperable and Serializable Threads
&lt;br&gt;&amp;nbsp; &amp;nbsp;Jaeheon Yi and Cormac Flanagan
&lt;br&gt;&lt;br&gt;*** Race-free and Memory-safe Multithreading: Design and Implementation in Cyclone
&lt;br&gt;&amp;nbsp; &amp;nbsp;Prodromos Gerakios, Nikolaos Papaspyrou and Konstantinos Sagonas
&lt;br&gt;&lt;br&gt;*** Distributed programming with distributed authorization
&lt;br&gt;&amp;nbsp; &amp;nbsp;Kumar Avijit, Anupam Datta and Robert Harper 
&lt;br&gt;&lt;br&gt;---------------------- 
&lt;br&gt;** Session II &amp;nbsp; 2:30-4:00 
&lt;br&gt;&lt;br&gt;*** let should not be generalized
&lt;br&gt;&amp;nbsp; &amp;nbsp;Dimitrios Vytiniotis, Simon Peyton Jones and Tom Schrijvers 
&lt;br&gt;&lt;br&gt;*** Pointwise Generalized Algebraic Data Types
&lt;br&gt;&amp;nbsp; &amp;nbsp;Chuan-kai Lin and Tim Sheard
&lt;br&gt;&lt;br&gt;*** Verifying Event-Driven Programs using Ramified Frame Properties
&lt;br&gt;&amp;nbsp; &amp;nbsp;Neelakantan Krishnaswami, Lars Birkedal and Jonathan Aldrich 
&lt;br&gt;&lt;br&gt;---------------------- 
&lt;br&gt;** Session III &amp;nbsp; 4:30-5:30 
&lt;br&gt;&lt;br&gt;*** Lightweight Linear Types in System F^o
&lt;br&gt;&amp;nbsp; &amp;nbsp;Karl Mazurak, Jianzhou Zhao and Steve Zdancewic 
&lt;br&gt;&lt;br&gt;*** F-ing Modules
&lt;br&gt;&amp;nbsp; &amp;nbsp;Andreas Rossberg, Claudio Russo and Derek Dreyer
&lt;br&gt;&lt;br&gt;---------------------- 
&lt;br&gt;&lt;br&gt;&lt;br&gt;GENERAL CHAIR 
&lt;br&gt;&lt;br&gt;&amp;nbsp; Andrew Kennedy, Microsoft Research, Cambridge 
&lt;br&gt;&lt;br&gt;&lt;br&gt;PROGRAM CHAIR 
&lt;br&gt;&lt;br&gt;&amp;nbsp; Nick Benton, Microsoft Research, Cambridge
&lt;br&gt;&lt;br&gt;&lt;br&gt;PROGRAM COMMITTEE 
&lt;br&gt;&lt;br&gt;&amp;nbsp; Gilles Barthe, IMDEA Software, Spain
&lt;br&gt;&amp;nbsp; Viviana Bono, University of Torino, Italy
&lt;br&gt;&amp;nbsp; Giorgio Ghelli, University of Pisa, Italy
&lt;br&gt;&amp;nbsp; Dan Grossman, University of Washington, USA
&lt;br&gt;&amp;nbsp; Atsushi Igarashi, Kyoto University, Japan
&lt;br&gt;&amp;nbsp; Conor McBride, University of Strathclyde, UK
&lt;br&gt;&amp;nbsp; Jeremy Siek, University of Colorado at Boulder, USA
&lt;br&gt;&amp;nbsp; Zhong Shao, Yale University, USA
&lt;br&gt;&amp;nbsp; Matthieu Sozeau, Harvard University, USA
&lt;br&gt;&amp;nbsp; Chris Stone, Harvey Mudd College, USA
&lt;br&gt;&amp;nbsp; Kristian Støvring, ITU Copenhagen, Denmark
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Call-for-Participation%3A-TLDI%2710-tp26495865p26495865.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26480707</id>
	<title>CamlJava w/ recent OCaml (3.11.1) and Sun's JVM (OpenJDK)</title>
	<published>2009-11-23T07:55:37Z</published>
	<updated>2009-11-23T07:55:37Z</updated>
	<author>
		<name>Stefano Zacchiroli-3</name>
	</author>
	<content type="html">Has anyone successfully built/used CamlJava [1] with recent OCaml and
&lt;br&gt;the open sourced Sun's JVM (OpenJDK)? &amp;nbsp;I've tried for a while, but I'm
&lt;br&gt;stuck at the basics, i.e. making the example shipped with CamlJava work.
&lt;br&gt;&lt;br&gt;First of all there is some needed gymnastic to build: apparently there
&lt;br&gt;is no longer _a_ legacy libjvm.so, but several one depending on which
&lt;br&gt;JRE you choose (at least: &amp;quot;Cacao&amp;quot; and &amp;quot;headless&amp;quot;). Of course they're in
&lt;br&gt;different dirs and I'm not sure about which is the right way (or even
&lt;br&gt;criteria) to choose one.
&lt;br&gt;&lt;br&gt;After having passed through that (with a dirty symlink to one of the two
&lt;br&gt;libjvm.so), the shipped example fails with an exception while
&lt;br&gt;initializing the JVM:
&lt;br&gt;&lt;br&gt;&amp;nbsp; LOG: [0x00002b9a57f73c80] exception thrown while VM is initializing: 
&lt;br&gt;&amp;nbsp; LOG: [0x00002b9a57f73c80] NULL: java.lang.Object
&lt;br&gt;&amp;nbsp; LOG: [0x00002b9a57f73c80] Aborting...
&lt;br&gt;&lt;br&gt;(this is with Cacao, with headless an exception its OCaml, but
&lt;br&gt;apparently it is devoid of any inspectable content.)
&lt;br&gt;&lt;br&gt;Has any one here a success story to share?
&lt;br&gt;Is there a planned future release of CamlJava?
&lt;br&gt;&lt;br&gt;Many thanks in advance,
&lt;br&gt;Cheers.
&lt;br&gt;&lt;br&gt;[1] &lt;a href=&quot;http://pauillac.inria.fr/~xleroy/software.html#camljava&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://pauillac.inria.fr/~xleroy/software.html#camljava&lt;/a&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Stefano Zacchiroli -o- PhD in Computer Science \ PostDoc @ Univ. Paris 7
&lt;br&gt;zack@{upsilon.cc,pps.jussieu.fr,debian.org} -&amp;lt;&amp;gt;- &lt;a href=&quot;http://upsilon.cc/zack/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://upsilon.cc/zack/&lt;/a&gt;&lt;br&gt;Dietro un grande uomo c'è ..| &amp;nbsp;. &amp;nbsp;|. Et ne m'en veux pas si je te tutoie
&lt;br&gt;sempre uno zaino ...........| ..: |.... Je dis tu à tous ceux que j'aime
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CamlJava-w--recent-OCaml-%283.11.1%29-and-Sun%27s-JVM-%28OpenJDK%29-tp26480707p26480707.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26474608</id>
	<title>ANN: Gaussian processes in OCaml</title>
	<published>2009-11-23T01:04:29Z</published>
	<updated>2009-11-23T01:04:29Z</updated>
	<author>
		<name>Markus Mottl</name>
	</author>
	<content type="html">It is my pleasure to announce the availability of OCaml GPR, a machine
&lt;br&gt;learning library for dealing with Gaussian process regression in
&lt;br&gt;OCaml. &amp;nbsp;Gaussian processes are the hot thing du jour in machine
&lt;br&gt;learning research, and this library implements a number of the most
&lt;br&gt;recent advances in this field.
&lt;br&gt;&lt;br&gt;The library and manual can be downloaded from here:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://www.ocaml.info/home/ocaml_sources.html#gpr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ocaml.info/home/ocaml_sources.html#gpr&lt;/a&gt;&lt;br&gt;&lt;br&gt;A Godi package (gpr) is already available, too.
&lt;br&gt;&lt;br&gt;Enjoy!
&lt;br&gt;&lt;br&gt;Best regards,
&lt;br&gt;Markus
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Markus Mottl &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://www.ocaml.info&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.ocaml.info&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26474608&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;markus.mottl@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/ANN%3A-Gaussian-processes-in-OCaml-tp26474608p26474608.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26464305</id>
	<title>WGT 2010 Submission Deadline Extension and Final Call for Papers</title>
	<published>2009-11-22T03:06:21Z</published>
	<updated>2009-11-22T03:06:21Z</updated>
	<author>
		<name>Workshop on Generative Technologies</name>
	</author>
	<content type="html">&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;[ Apologies for multiple copies of this announcement ]
&lt;br&gt;&lt;br&gt;****************************************************************
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; FINAL CALL FOR PAPERS
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Second Workshop on Generative Technologies
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; WGT 2010
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://wgt2010.elte.hu/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://wgt2010.elte.hu/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; a satellite event of the
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;13th European Joint Conferences on
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Theory and Practice of Software
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; (ETAPS 2010)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Paphos - Cyprus
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;March 27, 2010
&lt;br&gt;&lt;br&gt;****************************************************************
&lt;br&gt;&lt;br&gt;&lt;br&gt;IMPORTANT DATES
&lt;br&gt;&lt;br&gt;- Submission of full paper: November 30, 2009
&lt;br&gt;- Submission of tool demo paper: November 30, 2009
&lt;br&gt;- Author notification: January 11, 2010
&lt;br&gt;- Final version due: January 25, 2010
&lt;br&gt;&lt;br&gt;****************************************************************
&lt;br&gt;&lt;br&gt;SCOPE
&lt;br&gt;&lt;br&gt;Generative programming is an emerging paradigm aimed
&lt;br&gt;at automating important tasks in software development,
&lt;br&gt;compile-time and run-time code transformation, and the creation of
&lt;br&gt;domain-specific languages and flexible libraries. The purpose of the
&lt;br&gt;workshop is to provide a forum for researchers and practitioners working in
&lt;br&gt;this area to discuss
&lt;br&gt;state-of-the-art generative technologies and tools, and
&lt;br&gt;exchange ideas about the future of generative programming.
&lt;br&gt;Papers describing practical applications of generative styles,
&lt;br&gt;and new research directions are expected. Suggested areas of
&lt;br&gt;interest in the workshop include, but are not limited to:
&lt;br&gt;&lt;br&gt;- Generative programming, metaprogramming
&lt;br&gt;- Separation of concerns
&lt;br&gt;- Intentional programming
&lt;br&gt;- Domain engineering and domain analysis
&lt;br&gt;- Product-line architectures
&lt;br&gt;- Feature-based techniques
&lt;br&gt;- Compile-time and run-time code transformation
&lt;br&gt;- Multi-stage languages
&lt;br&gt;- Generic and Active library-development
&lt;br&gt;- Analysis of language support for generative programming
&lt;br&gt;- Semantics, type-systems of generative programs
&lt;br&gt;- Case Studies and Demonstration Cases
&lt;br&gt;&lt;br&gt;****************************************************************
&lt;br&gt;&lt;br&gt;PAPER SUBMISSION
&lt;br&gt;&lt;br&gt;RESEARCH PAPERS &amp;nbsp;(full papers, 8-10 pages) as well as TOOL DEMO PAPERS (up
&lt;br&gt;to 2 pages) should be submitted to the WGT 2010 organizers in ENTCS format 
&lt;br&gt;(&lt;a href=&quot;http://www.entcs.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.entcs.org&lt;/a&gt;). Submissions should be sent by e-mail to 
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26464305&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wgt@...&lt;/a&gt;.
&lt;br&gt;&lt;br&gt;Accepted workshop papers are published in the local proceedings. After 
&lt;br&gt;the workshop the participants are invited for submission to journal ENTCS 
&lt;br&gt;(only research papers). The workshop organizers have intention to set the 
&lt;br&gt;deadline of this second submission being later then the notification on 
&lt;br&gt;GPCE papers. Hence authors have opportunity to send their paper to GPCE 
&lt;br&gt;and if rejected, send to ENTCS without violating usual resubmission policy.
&lt;br&gt;&lt;br&gt;Further information will be available at the WGT 2010 home page.
&lt;br&gt;At least one author of each accepted submission must register
&lt;br&gt;and present the paper at the workshop.
&lt;br&gt;&lt;br&gt;****************************************************************
&lt;br&gt;&lt;br&gt;PROCEEDINGS
&lt;br&gt;&lt;br&gt;After revision, final copies of the accepted papers will be
&lt;br&gt;published in Electronic Notes in Theoretical Computer Science
&lt;br&gt;(ENTCS), Elsevier Science (&lt;a href=&quot;http://www.entcs.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.entcs.org&lt;/a&gt;).
&lt;br&gt;&lt;br&gt;****************************************************************
&lt;br&gt;&lt;br&gt;PROGRAM COMMITTEE
&lt;br&gt;&lt;br&gt;- Don Batory &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; University of Texas at Austin (USA)
&lt;br&gt;- Jaakko Järvi &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Texas A&amp;M University (USA)
&lt;br&gt;- Julia Lawall &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; University of Copenhagen (DK)
&lt;br&gt;- Hanspeter Mössenböck &amp;nbsp; Johannes Kepler University Linz (AT)
&lt;br&gt;- Zoltán Porkoláb &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Eotvos Lorand University (HUN)
&lt;br&gt;- Awais Rashid &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Lancaster University (UK)
&lt;br&gt;- Joao Saraiva &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; University of Minho (POR)
&lt;br&gt;- Bran Selic &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Malina Software Corp (CAN)
&lt;br&gt;- Yannis Smaragdakis &amp;nbsp; &amp;nbsp; University of Massachusetts, Amherst (USA)
&lt;br&gt;&lt;br&gt;****************************************************************
&lt;br&gt;&lt;br&gt;ORGANIZING COMMITTEE
&lt;br&gt;&lt;br&gt;- Zoltan Porkolab &amp;nbsp; &amp;nbsp; &amp;nbsp; Eotvos Lorand University (HUN)
&lt;br&gt;- Norbert Pataki &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Eotvos Lorand University (HUN)
&lt;br&gt;- Zalan Szugyi &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Eotvos Lorand University (HUN)
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;e-mail: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26464305&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;wgt@...&lt;/a&gt;
&lt;br&gt;&lt;br&gt;****************************************************************&lt;br /&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/WGT-2010-Submission-Deadline-Extension-and-Final-Call-for-Papers-tp26464305p26464305.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26457811</id>
	<title>RE: Same name fields</title>
	<published>2009-11-21T07:55:32Z</published>
	<updated>2009-11-21T07:55:32Z</updated>
	<author>
		<name>David Allsopp</name>
	</author>
	<content type="html">Mykola Stryebkov wrote:
&lt;br&gt;&amp;gt; I'm trying to declare to record types with fields having the same name
&lt;br&gt;&amp;gt; but different types.
&lt;br&gt;&lt;br&gt;This is not possible with record types (at the same module scope) - when you
&lt;br&gt;declare the second type you obscure the previous type.
&lt;br&gt;&lt;br&gt;&amp;lt;snip&amp;gt;
&lt;br&gt;&lt;br&gt;&amp;gt; If I declare type ta second - everything works fine.
&lt;br&gt;&amp;gt; Is it a bug?
&lt;br&gt;&lt;br&gt;No :o)
&lt;br&gt;&lt;br&gt;&amp;gt; If not, what is an appropriate workaround here?
&lt;br&gt;&lt;br&gt;Either put types ta and tb in separate modules (then you can use qualified
&lt;br&gt;field names) or use different field names. The Unix module in the Standard
&lt;br&gt;Library is a good example of how to do all this in practice - the record
&lt;br&gt;types there all have standard prefixes on the field names.
&lt;br&gt;&lt;br&gt;The other alternative is to use objects but this is heavier in terms of
&lt;br&gt;memory and field access and the type errors messages are more confusing than
&lt;br&gt;with records (but neither of these reasons are necessarily bars to using
&lt;br&gt;them!!).
&lt;br&gt;&lt;br&gt;&lt;br&gt;David
&lt;br&gt;&lt;br&gt;&lt;br&gt;PS Not that it I think it generally offends people on this list, but this
&lt;br&gt;question would have been more appropriate for the Beginners' List -
&lt;br&gt;&lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Same-name-fields-tp26457646p26457811.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26457780</id>
	<title>Re: Same name fields</title>
	<published>2009-11-21T07:51:28Z</published>
	<updated>2009-11-21T07:51:28Z</updated>
	<author>
		<name>Goswin von Brederlow-2</name>
	</author>
	<content type="html">Mykola Stryebkov &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26457780&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;nick@...&lt;/a&gt;&amp;gt; writes:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I'm trying to declare to record types with fields having the same name
&lt;br&gt;&amp;gt; but different types.
&lt;br&gt;&amp;gt; Something like this:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ========================================================================
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; type ta = { a : int; b : string }
&lt;br&gt;&amp;gt; type tb = { a : float; b : string list }
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; let f v = Printf.printf &amp;quot;%d\n&amp;quot; v.a
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; ========================================================================
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Compiler says I have an error in the line with Printf:
&lt;br&gt;&amp;gt; This expression has type float but is here used with type int
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; If I declare type ta second - everything works fine.
&lt;br&gt;&amp;gt; Is it a bug? If not, what is an appropriate workaround here?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks in advance.
&lt;/div&gt;&lt;br&gt;No, that is a feature. Just like
&lt;br&gt;&lt;br&gt;let x = 1 in
&lt;br&gt;let x = 2 in
&lt;br&gt;let x = 3 in
&lt;br&gt;&amp;nbsp; Printf.printf &amp;quot;x = %d\n&amp;quot; x
&lt;br&gt;&lt;br&gt;&lt;br&gt;As a workaround you can always put ta and tb into modules. Or you
&lt;br&gt;create wrapper functions (with different names) to create and access
&lt;br&gt;the records before overshadowing tb with ta like this:
&lt;br&gt;&lt;br&gt;type ta = { a : int; b : string }
&lt;br&gt;let ta_make a b = { a = a; b = b; }
&lt;br&gt;let ta_get_a ta = ta.a
&lt;br&gt;let ta_get_b ta = ta.b
&lt;br&gt;&lt;br&gt;type tb = { a : float; b : string list }
&lt;br&gt;let tb_make a b = { a = a; b = b; }
&lt;br&gt;let tb_get_a tb = tb.a
&lt;br&gt;let tb_get_b tb = tb.b
&lt;br&gt;&lt;br&gt;let f v = Printf.printf &amp;quot;%d\n&amp;quot; (ta_get_a v)
&lt;br&gt;&lt;br&gt;The drawback of the wrappers is that you can not match ta with { a =
&lt;br&gt;a; b = b } -&amp;gt; .... So (sub)modules is really the best option if you
&lt;br&gt;want the record fields to keep the same names.
&lt;br&gt;&lt;br&gt;MfG
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Goswin
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Same-name-fields-tp26457646p26457780.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26457646</id>
	<title>Same name fields</title>
	<published>2009-11-21T07:32:58Z</published>
	<updated>2009-11-21T07:32:58Z</updated>
	<author>
		<name>Mykola Stryebkov</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;I'm trying to declare to record types with fields having the same name &amp;nbsp;
&lt;br&gt;but different types.
&lt;br&gt;Something like this:
&lt;br&gt;&lt;br&gt;========================================================================
&lt;br&gt;&lt;br&gt;type ta = { a : int; b : string }
&lt;br&gt;type tb = { a : float; b : string list }
&lt;br&gt;&lt;br&gt;let f v = Printf.printf &amp;quot;%d\n&amp;quot; v.a
&lt;br&gt;&lt;br&gt;========================================================================
&lt;br&gt;&lt;br&gt;Compiler says I have an error in the line with Printf:
&lt;br&gt;This expression has type float but is here used with type int
&lt;br&gt;&lt;br&gt;If I declare type ta second - everything works fine.
&lt;br&gt;Is it a bug? If not, what is an appropriate workaround here?
&lt;br&gt;&lt;br&gt;Thanks in advance.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Mykola Stryebkov
&lt;br&gt;Blog: &lt;a href=&quot;http://mykola.org/blog/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mykola.org/blog/&lt;/a&gt;&lt;br&gt;Public key: &lt;a href=&quot;http://mykola.org/pubkey.txt&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mykola.org/pubkey.txt&lt;/a&gt;&lt;br&gt;fpr: 0226 54EE C1FF 8636 36EF &amp;nbsp;2AC9 BCE9 CFC7 9CF4 6747
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Same-name-fields-tp26457646p26457646.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26412359</id>
	<title>Call for Participation - PEPM'10 (co-located with POPL'10)</title>
	<published>2009-11-18T09:42:56Z</published>
	<updated>2009-11-18T09:42:56Z</updated>
	<author>
		<name>Janis Voigtlaender-2</name>
	</author>
	<content type="html">===============================================================
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; CALL FOR PARTICIPATION
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ACM SIGPLAN 2010 Workshop on
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; Partial Evaluation and Program Manipulation (PEPM'10)
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Madrid, January 18-19, 2010
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; (Affiliated with POPL'10)
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://www.program-transformation.org/PEPM10&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.program-transformation.org/PEPM10&lt;/a&gt;&lt;br&gt;===============================================================
&lt;br&gt;&lt;br&gt;Abstracts of all papers and presentations are available from the
&lt;br&gt;above web site.
&lt;br&gt;&lt;br&gt;&lt;br&gt;INVITED TALKS:
&lt;br&gt;&lt;br&gt;* Lennart Augustsson (Standard Chartered Bank, UK)
&lt;br&gt;&amp;nbsp; &amp;nbsp;Title: O, Partial Evaluator, Where Art Thou?
&lt;br&gt;&lt;br&gt;* Jeremy Siek (University of Colorado at Boulder, USA)
&lt;br&gt;&amp;nbsp; &amp;nbsp;Title: General Purpose Languages Should be Metalanguages.
&lt;br&gt;&lt;br&gt;&lt;br&gt;CONTRIBUTED TALKS:
&lt;br&gt;&lt;br&gt;* Nabil el Boustani and Jurriaan Hage.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Corrective Hints for Type Incorrect Generic Java Programs.
&lt;br&gt;&lt;br&gt;* Johannes Rudolph and Peter Thiemann.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Mnemonics: Type-safe Bytecode Generation at Run Time.
&lt;br&gt;&lt;br&gt;* Elvira Albert, Miguel Gomez-Zamalloa and German Puebla.
&lt;br&gt;&amp;nbsp; &amp;nbsp;PET: A Partial Evaluation-based Test Case Generation Tool for Java 
&lt;br&gt;Bytecode.
&lt;br&gt;&lt;br&gt;* Martin Hofmann.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Igor2 - an Analytical Inductive Functional Programming System.
&lt;br&gt;&lt;br&gt;* José Pedro Magalhães, Stefan Holdermans, Johan Jeuring and Andres Löh.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Optimizing Generics Is Easy!
&lt;br&gt;&lt;br&gt;* Michele Baggi, María Alpuente, Demis Ballis and Moreno Falaschi.
&lt;br&gt;&amp;nbsp; &amp;nbsp;A Fold/Unfold Transformation Framework for Rewrite Theories extended 
&lt;br&gt;to CCT.
&lt;br&gt;&lt;br&gt;* Hugh Anderson and Siau-Cheng KHOO.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Regular Approximation and Bounded Domains for Size-Change Termination.
&lt;br&gt;&lt;br&gt;* Évelyne Contejean, Pierre Courtieu, Julien Forest, Andrei Paskevich, 
&lt;br&gt;Olivier Pons and Xavier Urbain.
&lt;br&gt;&amp;nbsp; &amp;nbsp;A3PAT, an Approach for Certified Automated Termination Proofs.
&lt;br&gt;&lt;br&gt;* Fritz Henglein.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Optimizing Relational Algebra Operations Using Generic Equivalence 
&lt;br&gt;Discriminators and Lazy Products.
&lt;br&gt;&lt;br&gt;* Adrian Riesco and Juan Rodriguez-Hortala.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Programming with Singular and Plural Non-deterministic Functions.
&lt;br&gt;&lt;br&gt;* Martin Hofmann and Emanuel Kitzelmann.
&lt;br&gt;&amp;nbsp; &amp;nbsp;I/O Guided Detection of List Catamorphisms.
&lt;br&gt;&lt;br&gt;* Andrew Moss and Dan Page.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Bridging the Gap Between Symbolic and Efficient AES Implementations.
&lt;br&gt;&lt;br&gt;* Christopher Brown and Simon Thompson.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Clone Detection and Elimination for Haskell.
&lt;br&gt;&lt;br&gt;* Stefan Holdermans and Jurriaan Hage.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Making Stricterness More Relevant.
&lt;br&gt;&lt;br&gt;* Arun Lakhotia, Davidson Boccardo, Anshuman Singh and Aleardo Manacero 
&lt;br&gt;Júnior.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Context-Sensitive Analysis of Obfuscated x86 Executables.
&lt;br&gt;&lt;br&gt;* Xin Li and Mizuhito Ogawa.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Conditional Weighted Pushdown Systems and Applications.
&lt;br&gt;&lt;br&gt;* Ivan Lazar Miljenovic.
&lt;br&gt;&amp;nbsp; &amp;nbsp;The SourceGraph Program.
&lt;br&gt;&lt;br&gt;* Florian Haftmann.
&lt;br&gt;&amp;nbsp; &amp;nbsp;From Higher-Order Logic to Haskell: There and Back Again.
&lt;br&gt;&lt;br&gt;&lt;br&gt;SPECIAL FEATURE:
&lt;br&gt;&lt;br&gt;* Andy Gill, Garrin Kimmell and Kevin Matlage.
&lt;br&gt;&amp;nbsp; &amp;nbsp;Capturing Functions and Catching Satellites.
&lt;br&gt;&lt;br&gt;&lt;br&gt;IMPORTANT DATES:
&lt;br&gt;&lt;br&gt;* Early registration deadline: December 22, 2009
&lt;br&gt;* Hotel registration deadline: December 28, 2009
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Call-for-Participation---PEPM%2710-%28co-located-with-POPL%2710%29-tp26412359p26412359.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26411560</id>
	<title>Re: Polymorphic function in reference cell</title>
	<published>2009-11-18T08:59:55Z</published>
	<updated>2009-11-18T08:59:55Z</updated>
	<author>
		<name>Hans Ole Rafaelsen</name>
	</author>
	<content type="html">Thanks Marc,
&lt;br&gt;&lt;br&gt;I have been experimenting some with modules as well. But I think it 
&lt;br&gt;boils down to the same problem. I want to define a polymorphic function 
&lt;br&gt;outside the module that uses it (at the top of my module hierarchy). So 
&lt;br&gt;if the module UseFoo could be created using the function defined in the 
&lt;br&gt;top module (Top.f_fun) for the f function, then I think I would be able 
&lt;br&gt;to solve my problem.
&lt;br&gt;&lt;br&gt;module Bar = struct
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;let f_full a b =
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Printf.printf &amp;quot;%s&amp;quot; a; b
&lt;br&gt;end
&lt;br&gt;&lt;br&gt;module Foo (M : sig val f : 'a -&amp;gt; 'a end) =
&lt;br&gt;&amp;nbsp; &amp;nbsp;struct
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;let use_f1 () = M.f 1
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;let use_f2 () = M.f 1.0
&lt;br&gt;&amp;nbsp; &amp;nbsp;end
&lt;br&gt;&lt;br&gt;let f_fun b =
&lt;br&gt;&amp;nbsp; Bar.f_full &amp;quot;dummy&amp;quot; b
&lt;br&gt;&lt;br&gt;module UseFoo =
&lt;br&gt;&amp;nbsp; Foo(struct
&lt;br&gt;&amp;nbsp; &amp;nbsp; let f b = f_fun b
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; end)
&lt;br&gt;&lt;br&gt;&lt;br&gt;module Top =
&lt;br&gt;struct
&lt;br&gt;&lt;br&gt;&amp;nbsp; (* This is the function we want to be &amp;quot;f_fun&amp;quot; in UseFoo *)
&lt;br&gt;&amp;nbsp; let f_fun b =
&lt;br&gt;&amp;nbsp; &amp;nbsp; Bar.f_full &amp;quot;bar&amp;quot; b
&lt;br&gt;&lt;br&gt;&amp;nbsp; let a = UseFoo.use_f1 ()
&lt;br&gt;&lt;br&gt;&amp;nbsp; let b = UseFoo.use_f2 ()
&lt;br&gt;end
&lt;br&gt;&lt;br&gt;&lt;br&gt;Marc de Falco wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I might have misunderstood your problem, and I do not have a solution 
&lt;br&gt;&amp;gt; pertaining to your exact question,
&lt;br&gt;&amp;gt; but hiding the function and its type inside a module argument for a 
&lt;br&gt;&amp;gt; functor does the trick, no ?
&lt;br&gt;&amp;gt; For example, if you define
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; module Foo (M : sig type t val f : t -&amp;gt; t end) =
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;struct let use_f x = M.f x end
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; You can define too modules Foo1 and Foo2 using your different functions.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Marc
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; 2009/11/18 Hans Ole Rafaelsen &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26411560&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;hans@...&lt;/a&gt; &amp;lt;mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26411560&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;hans@...&lt;/a&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; Hi,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; I have a module that have several functions that take a
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; polymorphic function as part of their arguments (Foo.f1 and Foo.f2
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; in the example).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; module Foo &amp;nbsp;= struct
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;let f1 f =
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; f 1
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;let f2 f =
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; f 1.0
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;let f1_ref = (ref (fun _ -&amp;gt; raise (Failure &amp;quot;undefined&amp;quot;) : ('a -&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; 'a) ))
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;let set_f1_ref f =
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; f1_ref := f
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;let f2_ref = (ref (fun _ -&amp;gt; raise (Failure &amp;quot;undefined&amp;quot;) : ('a -&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; 'a) ))
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;let set_f2_ref f =
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; f2_ref := f
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;let use_f1 () =
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; !f1_ref 1
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;let use_f2 () =
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; !f2_ref 1.0
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;let internal_f v =
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; v
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;let internal_f1 () =
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; internal_f 1
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;let internal_f2 () =
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; internal_f 1.0
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; end
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; let f v =
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;v
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; let a = Foo.f1 f
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; let b = Foo.f2 f
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; let () = Foo.set_f1_ref f
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; let () = Foo.set_f2_ref f
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; let c = Foo.use_f1 ()
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; let d = Foo.use_f2 ()
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; In my code I don't want to pass this function around to to all
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; functions where Foo.f1 is called. For this reason I would like to
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; store this function that Foo.f1 needs within Foo. (The function is
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; created outside the module and bound with values generated outside
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; the module.) However you can not store polymorphic functions in
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; references. So I have to make one reference for each concrete type
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; it is used for. What I really would like is use it as if it was
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; defined within Foo, like internal_f and used like the internal_f1
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; and internal_f2.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; Is it possible to only store one reference to this kind of
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; function within a module, or do I really have to write a reference
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; for each usage of the function? If I have to create a reference
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; for each case, do anyone have some trick to avoid code repetition?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; Regards,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; Hans Ole
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; _______________________________________________
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; Caml-list mailing list. Subscription management:
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Polymorphic-function-in-reference-cell-tp26408946p26411560.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26409401</id>
	<title>Re: Polymorphic function in reference cell</title>
	<published>2009-11-18T06:58:09Z</published>
	<updated>2009-11-18T06:58:09Z</updated>
	<author>
		<name>Marc de Falco-2</name>
	</author>
	<content type="html">I might have misunderstood your problem, and I do not have a solution pertaining to your exact question, &lt;br&gt;but hiding the function and its type inside a module argument for a functor does the trick, no ?&lt;br&gt;For example, if you define&lt;br&gt;
&lt;br&gt;module Foo (M : sig type t val f : t -&amp;gt; t end) = &lt;br&gt;   struct let use_f x = M.f x end&lt;br&gt;&lt;br&gt;You can define too modules Foo1 and Foo2 using your different functions.&lt;br&gt;&lt;br&gt;Marc&lt;br&gt;&lt;br&gt;&lt;div class=&quot;gmail_quote&quot;&gt;2009/11/18 Hans Ole Rafaelsen &lt;span dir=&quot;ltr&quot;&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26409401&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;hans@...&lt;/a&gt;&amp;gt;&lt;/span&gt;&lt;br&gt;
&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;Hi,&lt;br&gt;
&lt;br&gt;
I have a module that have several functions that take a polymorphic function as part of their arguments (Foo.f1 and Foo.f2 in the example).&lt;br&gt;
&lt;br&gt;
module Foo  = struct&lt;br&gt;
&lt;br&gt;
 let f1 f =&lt;br&gt;
   f 1&lt;br&gt;
&lt;br&gt;
 let f2 f =&lt;br&gt;
   f 1.0&lt;br&gt;
&lt;br&gt;
 let f1_ref = (ref (fun _ -&amp;gt; raise (Failure &amp;quot;undefined&amp;quot;) : (&amp;#39;a -&amp;gt; &amp;#39;a) ))&lt;br&gt;
 let set_f1_ref f =&lt;br&gt;
   f1_ref := f&lt;br&gt;
&lt;br&gt;
 let f2_ref = (ref (fun _ -&amp;gt; raise (Failure &amp;quot;undefined&amp;quot;) : (&amp;#39;a -&amp;gt; &amp;#39;a) ))&lt;br&gt;
 let set_f2_ref f =&lt;br&gt;
   f2_ref := f&lt;br&gt;
&lt;br&gt;
 let use_f1 () =&lt;br&gt;
   !f1_ref 1&lt;br&gt;
&lt;br&gt;
 let use_f2 () =&lt;br&gt;
   !f2_ref 1.0&lt;br&gt;
&lt;br&gt;
 let internal_f v =&lt;br&gt;
   v&lt;br&gt;
&lt;br&gt;
 let internal_f1 () =&lt;br&gt;
   internal_f 1&lt;br&gt;
&lt;br&gt;
 let internal_f2 () =&lt;br&gt;
   internal_f 1.0&lt;br&gt;
&lt;br&gt;
end&lt;br&gt;
&lt;br&gt;
let f v =&lt;br&gt;
 v&lt;br&gt;
&lt;br&gt;
let a = Foo.f1 f&lt;br&gt;
let b = Foo.f2 f&lt;br&gt;
let () = Foo.set_f1_ref f&lt;br&gt;
let () = Foo.set_f2_ref f&lt;br&gt;
let c = Foo.use_f1 ()&lt;br&gt;
let d = Foo.use_f2 ()&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
In my code I don&amp;#39;t want to pass this function around to to all functions where Foo.f1 is called. For this reason I would like to store this function that Foo.f1 needs within Foo. (The function is created outside the module and bound with values generated outside the module.) However you can not store polymorphic functions in references. So I have to make one reference for each concrete type it is used for. What I really would like is use it as if it was defined within Foo, like internal_f and used like the internal_f1 and internal_f2.&lt;br&gt;

&lt;br&gt;
Is it possible to only store one reference to this kind of function within a module, or do I really have to write a reference for each usage of the function? If I have to create a reference for each case, do anyone have some trick to avoid code repetition?&lt;br&gt;

&lt;br&gt;
Regards,&lt;br&gt;
&lt;br&gt;
Hans Ole&lt;br&gt;
&lt;br&gt;
_______________________________________________&lt;br&gt;
Caml-list mailing list. Subscription management:&lt;br&gt;
&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;
Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;
Beginner&amp;#39;s list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;
Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_blank&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;
&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;
&lt;br /&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Polymorphic-function-in-reference-cell-tp26408946p26409401.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26408946</id>
	<title>Polymorphic function in reference cell</title>
	<published>2009-11-18T06:33:46Z</published>
	<updated>2009-11-18T06:33:46Z</updated>
	<author>
		<name>Hans Ole Rafaelsen</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;I have a module that have several functions that take a polymorphic 
&lt;br&gt;function as part of their arguments (Foo.f1 and Foo.f2 in the example).
&lt;br&gt;&lt;br&gt;module Foo &amp;nbsp;= struct
&lt;br&gt;&lt;br&gt;&amp;nbsp; let f1 f =
&lt;br&gt;&amp;nbsp; &amp;nbsp; f 1
&lt;br&gt;&lt;br&gt;&amp;nbsp; let f2 f =
&lt;br&gt;&amp;nbsp; &amp;nbsp; f 1.0
&lt;br&gt;&lt;br&gt;&amp;nbsp; let f1_ref = (ref (fun _ -&amp;gt; raise (Failure &amp;quot;undefined&amp;quot;) : ('a -&amp;gt; 'a) ))
&lt;br&gt;&amp;nbsp; let set_f1_ref f =
&lt;br&gt;&amp;nbsp; &amp;nbsp; f1_ref := f
&lt;br&gt;&lt;br&gt;&amp;nbsp; let f2_ref = (ref (fun _ -&amp;gt; raise (Failure &amp;quot;undefined&amp;quot;) : ('a -&amp;gt; 'a) ))
&lt;br&gt;&amp;nbsp; let set_f2_ref f =
&lt;br&gt;&amp;nbsp; &amp;nbsp; f2_ref := f
&lt;br&gt;&lt;br&gt;&amp;nbsp; let use_f1 () =
&lt;br&gt;&amp;nbsp; &amp;nbsp; !f1_ref 1
&lt;br&gt;&lt;br&gt;&amp;nbsp; let use_f2 () =
&lt;br&gt;&amp;nbsp; &amp;nbsp; !f2_ref 1.0
&lt;br&gt;&lt;br&gt;&amp;nbsp; let internal_f v =
&lt;br&gt;&amp;nbsp; &amp;nbsp; v
&lt;br&gt;&lt;br&gt;&amp;nbsp; let internal_f1 () =
&lt;br&gt;&amp;nbsp; &amp;nbsp; internal_f 1
&lt;br&gt;&lt;br&gt;&amp;nbsp; let internal_f2 () =
&lt;br&gt;&amp;nbsp; &amp;nbsp; internal_f 1.0
&lt;br&gt;&lt;br&gt;end
&lt;br&gt;&lt;br&gt;let f v =
&lt;br&gt;&amp;nbsp; v
&lt;br&gt;&lt;br&gt;let a = Foo.f1 f
&lt;br&gt;let b = Foo.f2 f
&lt;br&gt;let () = Foo.set_f1_ref f
&lt;br&gt;let () = Foo.set_f2_ref f
&lt;br&gt;let c = Foo.use_f1 ()
&lt;br&gt;let d = Foo.use_f2 ()
&lt;br&gt;&lt;br&gt;&lt;br&gt;In my code I don't want to pass this function around to to all functions 
&lt;br&gt;where Foo.f1 is called. For this reason I would like to store this 
&lt;br&gt;function that Foo.f1 needs within Foo. (The function is created outside 
&lt;br&gt;the module and bound with values generated outside the module.) However 
&lt;br&gt;you can not store polymorphic functions in references. So I have to make 
&lt;br&gt;one reference for each concrete type it is used for. What I really would 
&lt;br&gt;like is use it as if it was defined within Foo, like internal_f and used 
&lt;br&gt;like the internal_f1 and internal_f2.
&lt;br&gt;&lt;br&gt;Is it possible to only store one reference to this kind of function 
&lt;br&gt;within a module, or do I really have to write a reference for each usage 
&lt;br&gt;of the function? If I have to create a reference for each case, do 
&lt;br&gt;anyone have some trick to avoid code repetition?
&lt;br&gt;&lt;br&gt;Regards,
&lt;br&gt;&lt;br&gt;Hans Ole
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Polymorphic-function-in-reference-cell-tp26408946p26408946.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26407898</id>
	<title>Re: New: cppo, C preprocessor for OCaml</title>
	<published>2009-11-18T05:38:12Z</published>
	<updated>2009-11-18T05:38:12Z</updated>
	<author>
		<name>Richard Jones-4</name>
	</author>
	<content type="html">On Wed, Nov 18, 2009 at 01:54:18AM +0100, Martin Jambon wrote:
&lt;br&gt;&amp;gt; It is my pleasure to announce the first release of cppo, an OCaml-friendly
&lt;br&gt;&amp;gt; equivalent of the C preprocessor (cpp).
&lt;br&gt;&lt;br&gt;All I need now is a camlp4-powerful macro preprocessor for my C code ...
&lt;br&gt;&lt;br&gt;Rich.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Richard Jones
&lt;br&gt;Red Hat
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/New%3A-cppo%2C-C-preprocessor-for-OCaml-tp26400654p26407898.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26406299</id>
	<title>Re: New: cppo, C preprocessor for OCaml</title>
	<published>2009-11-18T03:33:16Z</published>
	<updated>2009-11-18T03:33:16Z</updated>
	<author>
		<name>Martin Jambon-6</name>
	</author>
	<content type="html">Goswin von Brederlow wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Martin Jambon &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26406299&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;martin.jambon@...&lt;/a&gt;&amp;gt; writes:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; Dear list,
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; It is my pleasure to announce the first release of cppo, an OCaml-friendly
&lt;br&gt;&amp;gt;&amp;gt; equivalent of the C preprocessor (cpp).
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Cppo provides the classic #include, #define and conditionals (#ifdef, ...)
&lt;br&gt;&amp;gt;&amp;gt; which are occasionally useful. &amp;nbsp;Cppo can be used on OCaml files and variants
&lt;br&gt;&amp;gt;&amp;gt; of OCaml that use the same lexer, such as ocamllex.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; The implementation of cppo was tested with ocaml 3.09 to 3.11 and is based on
&lt;br&gt;&amp;gt;&amp;gt; ocamllex/ocamlyacc (works also with menhir which I used during the development).
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; The documentation and the source tarballs are at:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &lt;a href=&quot;http://martin.jambon.free.fr/cppo.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://martin.jambon.free.fr/cppo.html&lt;/a&gt;&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; The package is also available from GODI (apps-cppo).
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Enjoy.
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Martin
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Without looking at it, is is camlp4 based and can I combine that with
&lt;br&gt;&amp;gt; other camlp4 modules or do I need to seperately preprocess the
&lt;br&gt;&amp;gt; source?
&lt;/div&gt;&lt;br&gt;No, cppo is a standalone executable and is independent from camlp4 or camlp5.
&lt;br&gt;&lt;br&gt;Note that the camlp4 world has optcomp:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://forge.ocamlcore.org/projects/optcomp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://forge.ocamlcore.org/projects/optcomp/&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Martin
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;&lt;a href=&quot;http://mjambon.com/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mjambon.com/&lt;/a&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/New%3A-cppo%2C-C-preprocessor-for-OCaml-tp26400654p26406299.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26406031</id>
	<title>ICFP '10: Second call for workshop proposals</title>
	<published>2009-11-18T03:13:20Z</published>
	<updated>2009-11-18T03:13:20Z</updated>
	<author>
		<name>Wouter Swierstra-2</name>
	</author>
	<content type="html">&amp;nbsp; &amp;nbsp; &amp;nbsp; CALL FOR WORKSHOP AND CO-LOCATED EVENT PROPOSALS
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ICFP 2010
&lt;br&gt;&amp;nbsp;15th ACM SIGPLAN International Conference on Functional Programming
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; September 27 - 29, 2010
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Baltimore, Maryland
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://www.icfpconference.org/icfp2010&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.icfpconference.org/icfp2010&lt;/a&gt;&lt;br&gt;&lt;br&gt;The 15th ACM SIGPLAN International Conference on Functional
&lt;br&gt;Programming will be held in Baltimore, Maryland on September 27-29,
&lt;br&gt;2010. &amp;nbsp;ICFP provides a forum for researchers and developers to hear
&lt;br&gt;about the latest work on the design, implementations, principles, and
&lt;br&gt;uses of functional programming.
&lt;br&gt;&lt;br&gt;Proposals are invited for workshops (and other co-located events, such
&lt;br&gt;as tutorials) to be affiliated with ICFP 2010 and sponsored by
&lt;br&gt;SIGPLAN. &amp;nbsp;These events should be more informal and focused than ICFP
&lt;br&gt;itself, include sessions that enable interaction among the attendees,
&lt;br&gt;and be fairly low-cost. &amp;nbsp;The preference is for one-day events, but
&lt;br&gt;other schedules can also be considered.
&lt;br&gt;&lt;br&gt;----------------------------------------------------------------------
&lt;br&gt;&lt;br&gt;Submission details
&lt;br&gt;&amp;nbsp;Deadline for submission: &amp;nbsp; &amp;nbsp; November 20, 2009
&lt;br&gt;&amp;nbsp;Notification of acceptance: &amp;nbsp;December 18, 2009
&lt;br&gt;&lt;br&gt;Prospective organizers of workshops or other co-located events are
&lt;br&gt;invited to submit a completed workshop proposal form in plain text
&lt;br&gt;format to the ICFP 2010 workshop co-chairs (Derek Dreyer and Chris
&lt;br&gt;Stone), via email to icfp10-workshops at mpi-sws.org by November 20,
&lt;br&gt;2009. &amp;nbsp;(For proposals of co-located events other than workshops,
&lt;br&gt;please fill in the workshop proposal form and just leave blank any
&lt;br&gt;sections that do not apply.) &amp;nbsp;Please note that this is a firm
&lt;br&gt;deadline.
&lt;br&gt;&lt;br&gt;Organizers will be notified if their event proposal is accepted by
&lt;br&gt;December 18, 2009, and if successful, depending on the event, they
&lt;br&gt;will be asked to produce a final report after the event has taken
&lt;br&gt;place that is suitable for publication in SIGPLAN Notices.
&lt;br&gt;&lt;br&gt;The proposal form is available at:
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://www.icfpconference.org/icfp2010/icfp10-workshops-form.txt&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.icfpconference.org/icfp2010/icfp10-workshops-form.txt&lt;/a&gt;&lt;br&gt;&lt;br&gt;Further information about SIGPLAN sponsorship is available at:
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://acm.org/sigplan/sigplan_workshop_proposal.htm&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://acm.org/sigplan/sigplan_workshop_proposal.htm&lt;/a&gt;&lt;br&gt;&lt;br&gt;----------------------------------------------------------------------
&lt;br&gt;&lt;br&gt;Selection committee
&lt;br&gt;&lt;br&gt;The proposals will be evaluated by a committee comprising the
&lt;br&gt;following members of the ICFP 2010 organizing committee, together with
&lt;br&gt;the members of the SIGPLAN executive committee.
&lt;br&gt;&lt;br&gt;&amp;nbsp;Workshop Co-Chair: Derek Dreyer (MPI-SWS)
&lt;br&gt;&amp;nbsp;Workshop Co-Chair: Chris Stone (Harvey Mudd College)
&lt;br&gt;&amp;nbsp;General Chair: &amp;nbsp; &amp;nbsp; Paul Hudak (Yale University)
&lt;br&gt;&amp;nbsp;Program Chair: &amp;nbsp; &amp;nbsp; Stephanie Weirich (University of Pennsylvania)
&lt;br&gt;&lt;br&gt;----------------------------------------------------------------------
&lt;br&gt;&lt;br&gt;Further information
&lt;br&gt;&lt;br&gt;Any queries should be addressed to the workshop co-chairs (Derek
&lt;br&gt;Dreyer and Chris Stone), via email to icfp10-workshops at mpi-sws.org.
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/ICFP-%2710%3A-Second-call-for-workshop-proposals-tp26406031p26406031.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26405880</id>
	<title>Random questions</title>
	<published>2009-11-18T02:59:08Z</published>
	<updated>2009-11-18T02:59:08Z</updated>
	<author>
		<name>Daniel Bünzli-2</name>
	</author>
	<content type="html">I know little about PRGN and unfortunately in a lot of cases the
&lt;br&gt;functions in the Random module don't provide me the right
&lt;br&gt;interface. Could anybody tell me if the following functions preserve
&lt;br&gt;the quality of the underlying PRGN and/or if there's a better way to
&lt;br&gt;achieve that :
&lt;br&gt;&lt;br&gt;1) Generate an arbitrary int
&lt;br&gt;&lt;br&gt;let rint () = Random.bits () lor ((Random.bits () land 1) lsl 30)
&lt;br&gt;&lt;br&gt;&lt;br&gt;2) Generate an arbitrary int in [0;max] (bounds included)
&lt;br&gt;&lt;br&gt;let random_uint ?(max = max_int) =
&lt;br&gt;&amp;nbsp; if max &amp;lt; 0 then invalid_arg &amp;quot;negative max&amp;quot; else
&lt;br&gt;&amp;nbsp; if max = max_int then Random.bits else
&lt;br&gt;&amp;nbsp; let bound = max + 1 in
&lt;br&gt;&amp;nbsp; fun () -&amp;gt; Random.int bound
&lt;br&gt;&lt;br&gt;&lt;br&gt;3) Generate an arbitrary int in [-max;max] (bounds included)
&lt;br&gt;&lt;br&gt;let random_int ?(max = max_int) =
&lt;br&gt;&amp;nbsp; if max &amp;lt; 0 then invalid_arg &amp;quot;negative max&amp;quot; else
&lt;br&gt;&amp;nbsp; if max = max_int then
&lt;br&gt;&amp;nbsp; &amp;nbsp; let rec aux () =
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; let v = rint () in if v = min_int then aux () else v in
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; aux
&lt;br&gt;&amp;nbsp; else
&lt;br&gt;&amp;nbsp; &amp;nbsp; let bound = (2 * max) + 1 in
&lt;br&gt;&amp;nbsp; &amp;nbsp; if 0 &amp;lt; bound &amp;&amp; bound &amp;lt; max_int then
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; fun () -&amp;gt; -max + Random.int bound
&lt;br&gt;&amp;nbsp; &amp;nbsp; else
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; let bound = Int32.add (Int32.mul 2l (Int32.of_int max)) 1l in
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; let min = Int32.of_int (-max) in
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; fun () -&amp;gt; Int32.to_int (Int32.add min (Random.int32 bound))
&lt;br&gt;&lt;br&gt;&lt;br&gt;5) Generate an arbitrary float in [0;max] (bounds included)
&lt;br&gt;&lt;br&gt;let after_one = 1. +. epsilon_float
&lt;br&gt;let random_ufloat ?(max = max_float) =
&lt;br&gt;&amp;nbsp; if max &amp;lt; 0. then invalid_arg &amp;quot;negative max&amp;quot; else
&lt;br&gt;&amp;nbsp; fun () -&amp;gt; (Random.float after_one) *. max
&lt;br&gt;&lt;br&gt;&lt;br&gt;6) Generate an arbitrary float in [-max;max] (bounds included)
&lt;br&gt;&lt;br&gt;let after_one = 1. +. epsilon_float
&lt;br&gt;let random_float ?(max = max_float) =
&lt;br&gt;&amp;nbsp; if max &amp;lt; 0. then invalid_arg &amp;quot;negative max&amp;quot; else
&lt;br&gt;&amp;nbsp; fun () -&amp;gt; (-1. +. (Random.float after_one) *. 2.) *. max
&lt;br&gt;&lt;br&gt;&lt;br&gt;Thanks for your answers,
&lt;br&gt;&lt;br&gt;Daniel
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Random-questions-tp26405880p26405880.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26401080</id>
	<title>Re: New: cppo, C preprocessor for OCaml</title>
	<published>2009-11-17T17:41:48Z</published>
	<updated>2009-11-17T17:41:48Z</updated>
	<author>
		<name>Goswin von Brederlow-2</name>
	</author>
	<content type="html">Martin Jambon &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26401080&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;martin.jambon@...&lt;/a&gt;&amp;gt; writes:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Dear list,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; It is my pleasure to announce the first release of cppo, an OCaml-friendly
&lt;br&gt;&amp;gt; equivalent of the C preprocessor (cpp).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Cppo provides the classic #include, #define and conditionals (#ifdef, ...)
&lt;br&gt;&amp;gt; which are occasionally useful. &amp;nbsp;Cppo can be used on OCaml files and variants
&lt;br&gt;&amp;gt; of OCaml that use the same lexer, such as ocamllex.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The implementation of cppo was tested with ocaml 3.09 to 3.11 and is based on
&lt;br&gt;&amp;gt; ocamllex/ocamlyacc (works also with menhir which I used during the development).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The documentation and the source tarballs are at:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &lt;a href=&quot;http://martin.jambon.free.fr/cppo.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://martin.jambon.free.fr/cppo.html&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; The package is also available from GODI (apps-cppo).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Enjoy.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Martin
&lt;/div&gt;&lt;br&gt;Without looking at it, is is camlp4 based and can I combine that with
&lt;br&gt;other camlp4 modules or do I need to seperately preprocess the
&lt;br&gt;source?
&lt;br&gt;&lt;br&gt;MfG
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Goswin
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/New%3A-cppo%2C-C-preprocessor-for-OCaml-tp26400654p26401080.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26400654</id>
	<title>New: cppo, C preprocessor for OCaml</title>
	<published>2009-11-17T16:54:18Z</published>
	<updated>2009-11-17T16:54:18Z</updated>
	<author>
		<name>Martin Jambon-6</name>
	</author>
	<content type="html">Dear list,
&lt;br&gt;&lt;br&gt;It is my pleasure to announce the first release of cppo, an OCaml-friendly
&lt;br&gt;equivalent of the C preprocessor (cpp).
&lt;br&gt;&lt;br&gt;Cppo provides the classic #include, #define and conditionals (#ifdef, ...)
&lt;br&gt;which are occasionally useful. &amp;nbsp;Cppo can be used on OCaml files and variants
&lt;br&gt;of OCaml that use the same lexer, such as ocamllex.
&lt;br&gt;&lt;br&gt;The implementation of cppo was tested with ocaml 3.09 to 3.11 and is based on
&lt;br&gt;ocamllex/ocamlyacc (works also with menhir which I used during the development).
&lt;br&gt;&lt;br&gt;&lt;br&gt;The documentation and the source tarballs are at:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://martin.jambon.free.fr/cppo.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://martin.jambon.free.fr/cppo.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;The package is also available from GODI (apps-cppo).
&lt;br&gt;&lt;br&gt;&lt;br&gt;Enjoy.
&lt;br&gt;&lt;br&gt;&lt;br&gt;Martin
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;&lt;a href=&quot;http://mjambon.com/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mjambon.com/&lt;/a&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/New%3A-cppo%2C-C-preprocessor-for-OCaml-tp26400654p26400654.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26396403</id>
	<title>Fwd: Super plan</title>
	<published>2009-11-17T11:52:59Z</published>
	<updated>2009-11-17T11:52:59Z</updated>
	<author>
		<name>Thomas-264</name>
	</author>
	<content type="html">&lt;p&gt;Index&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Salut &lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
C'est dingue, mon pote vient de gagner 1 an de loyer en appelant le O8 92 69 46 92. J'ai appelé aussi dès que j'ai appris la nouvelle et j'ai moi aussi gagné.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Thomas&lt;br /&gt;
&lt;br /&gt;
----- Message Original -----&lt;br /&gt;
&lt;br /&gt;
De: &quot; Julien &quot; &lt;br /&gt;
&lt;br /&gt;
à: Thomas&lt;br /&gt;
&lt;br /&gt;
Date: 16 Novembre 2009 22:55&lt;br /&gt;
&lt;br /&gt;
Objet: Fwd: Super Plan&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Salut Thomas,&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Tu ne vas jamais croire ce qu'il vient de m'arriver. Un pote m'a parlé de ce numéro  O8 92 69 46 92 pour gagner 1 an de loyer. J'ai donc appelé et j'ai aussi gagné.&lt;br /&gt;
&lt;br /&gt;
C'est dingue, appelle vite et dis moi.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Julien&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
----- Message Original -----&lt;br /&gt;
&lt;br /&gt;
De: &quot; Pierre &quot; &lt;br /&gt;
&lt;br /&gt;
à: Julien&lt;br /&gt;
&lt;br /&gt;
Date: Dimanche 14 Novembre 2009 15 :09&lt;br /&gt;
&lt;br /&gt;
Objet : Super Plan&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Salut,&lt;br /&gt;
&lt;br /&gt;
Voici comme promis le numéro de téléphone du jeu dont je t’avais parlé et grâce à qui j'ai gagné 1 an de loyer gratuit, O8 92 69 46 92, tu ne seras pas déçu.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
@+&lt;br /&gt;
&lt;br /&gt;
Pierre&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Coût de l’appel 1,35€+0,34 centimes la minute&lt;br /&gt;
&lt;br /&gt;
 &lt;/p&gt;

&lt;br /&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Fwd%3A-Super-plan-tp26396403p26396403.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26391853</id>
	<title>DiScoTec 2010: Call for Workshop Proposals</title>
	<published>2009-11-17T07:28:14Z</published>
	<updated>2009-11-17T07:28:14Z</updated>
	<author>
		<name>Gianluigi Zavattaro</name>
	</author>
	<content type="html">[We apologize for multiple copies]
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; DisCoTec 2010
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 5th International Federated Conferences on 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Distributed Computing Techniques
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Amsterdam, Netherlands, 7-9 June 2010
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Call for Workshop Proposals
&lt;br&gt;&lt;br&gt;&lt;br&gt;A workshop is intended to provide a forum for members of a focused research 
&lt;br&gt;community to present preliminary research results and discuss position-style
&lt;br&gt;papers. Workshops are alternative forums for presenting full research 
&lt;br&gt;papers. As such, organizers are encouraged to adopt an format that fosters 
&lt;br&gt;interaction and discussion, devoting less focus to individual, formal 
&lt;br&gt;presentations.
&lt;br&gt;&lt;br&gt;DisCoTec 2010 invites proposals for one day workshops to be held in 
&lt;br&gt;conjunction with the main events. Prospective workshop organizers are 
&lt;br&gt;requested to follow the guidelines below and are encouraged to contact the 
&lt;br&gt;workshop chair should any questions arise.
&lt;br&gt;&lt;br&gt;&lt;br&gt;Important Dates
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;Workshop proposal deadline: December 17, 2009
&lt;br&gt;&amp;nbsp; &amp;nbsp;Workshop proposal notification: December 23, 2009
&lt;br&gt;&amp;nbsp; &amp;nbsp;Workshop: June 10, 2010
&lt;br&gt;&lt;br&gt;Submission and notification deadlines of the workshops are at the discretion 
&lt;br&gt;of the individual workshop organizers, however notification must be no later 
&lt;br&gt;than the early registration deadline for the main conference.
&lt;br&gt;&lt;br&gt;&lt;br&gt;Proposal Submission Guidelines
&lt;br&gt;&lt;br&gt;Workshop proposals must be written in English, not exceed 5 pages with a 
&lt;br&gt;reasonable font and margin, and be submitted in PDF format via email to 
&lt;br&gt;Marcello Bonsangue (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26391853&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;marcello@...&lt;/a&gt;).
&lt;br&gt;&lt;br&gt;Proposals should include the following information:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; * The title, theme, and goals of the workshop.
&lt;br&gt;&amp;nbsp; &amp;nbsp; * The targeted audience and the expected minimum and maximum number of 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; participants. We prefer that workshops remain open to participation 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; from any members of the community, but by-invitation-only workshops 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; will also be considered. Please explicitly state your preference.
&lt;br&gt;&amp;nbsp; &amp;nbsp; * The publicity strategy that will be used by the workshop organizers 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; to promote the workshop.
&lt;br&gt;&amp;nbsp; &amp;nbsp; * The participant solicitation and selection process.
&lt;br&gt;&amp;nbsp; &amp;nbsp; * Publication plan. Each workshop is responsible for managing its own 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; publication (e.g., pre- or post- proceedings), if any is desired.
&lt;br&gt;&amp;nbsp; &amp;nbsp; * Approximate budget proposal (see section Budget below for details).
&lt;br&gt;&amp;nbsp; &amp;nbsp; * A preliminary version of the call for papers. This CFP must include 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; important dates including submission, notification, and camera-ready 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; deadlines.
&lt;br&gt;&amp;nbsp; &amp;nbsp; * The equipment and any other resource necessary for the organization 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; of the workshop.
&lt;br&gt;&amp;nbsp; &amp;nbsp; * A brief description of the organizer's background, including relevant 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; past experience on organizing workshops and contact information. 
&lt;br&gt;&lt;br&gt;Review Process
&lt;br&gt;&lt;br&gt;Workshop proposals will be reviewed by the following committee:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; * Frank S. de Boer, CWI, NL (DiScoTec 2010 General Chair)
&lt;br&gt;&amp;nbsp; &amp;nbsp; * Marcello M. Bonsangue, University of Leiden, NL (Workshops Chair)
&lt;br&gt;&amp;nbsp; &amp;nbsp; * Immo Grabe, CWI, NL 
&lt;br&gt;&amp;nbsp; &amp;nbsp; * Stephanie Kemper, CWI, NL 
&lt;br&gt;&amp;nbsp; &amp;nbsp; * Alexandra Silva, CWI, NL 
&lt;br&gt;&lt;br&gt;Acceptance is based on an &amp;nbsp;evaluation of the workshop's potential for 
&lt;br&gt;generating useful results, the timeliness and expected interest in the 
&lt;br&gt;topic, the organizer's ability to lead a successful workshop, and 
&lt;br&gt;potential for attracting sufficient number of participants.
&lt;br&gt;&lt;br&gt;Workshop Publicity
&lt;br&gt;&lt;br&gt;Workshop publicity is responsability of the organizers. In particular they 
&lt;br&gt;are responsible for the following items:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;1. A workshop description (200 words) for inclusion on the DisCoTec site.
&lt;br&gt;&amp;nbsp; &amp;nbsp;2. Hosting and maintaining web pages to be linked from the DisCoTec site. 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; Workshop coordinators can integrate their pages into the wiki-page of
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; DisCoTec 2010.
&lt;br&gt;&amp;nbsp; &amp;nbsp;3. Workshop proceedings, if any. If there is enough interest, the 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; organizer of DiScoTec 2010 may contact Elevier for having a common 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; volume of the Electronic Proceedings in Theoretical Computer Science 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; (&lt;a href=&quot;http://info.eptcs.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://info.eptcs.org/&lt;/a&gt;) dedicated to the workshops of DiScoTec 2010.
&lt;br&gt;&amp;nbsp; &amp;nbsp;4. Publicising the event. 
&lt;br&gt;&lt;br&gt;Budget
&lt;br&gt;&lt;br&gt;DisCoTec will provide registration and organizational support for the 
&lt;br&gt;workshops. Registration fees must be paid for all participants, including 
&lt;br&gt;organizers and invited guests.
&lt;br&gt;&lt;br&gt;To cover lunches, coffee breaks and basic organizational expenses, all 
&lt;br&gt;workshops will be required to charge a minimum participation fee (the 
&lt;br&gt;precise amount is still to be determined). Each workshop may increase this 
&lt;br&gt;fee to cover additional expenses such as publication charges, student 
&lt;br&gt;scholarships, registration for invited speakers, etc. All fees will be 
&lt;br&gt;collected by the DisCoTec organizers as part of the registration, then 
&lt;br&gt;additional funds will be redistributed to the individual workshop 
&lt;br&gt;organizers.
&lt;br&gt;&lt;br&gt;&lt;br&gt;Contact Information
&lt;br&gt;&lt;br&gt;Marcello Bonsangue (&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26391853&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;marcello@...&lt;/a&gt;) 
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/DiScoTec-2010%3A-Call-for-Workshop-Proposals-tp26391853p26391853.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26387449</id>
	<title>New 3.0.2 release of the Caml Images library</title>
	<published>2009-11-17T02:23:10Z</published>
	<updated>2009-11-17T02:23:10Z</updated>
	<author>
		<name>Pierre Weis-2</name>
	</author>
	<content type="html">Hi,
&lt;br&gt;&lt;br&gt;I'm glad to announce the availability of the 3.0.2 version of the
&lt;br&gt;CamlImages library, by Jun Furuse, François Pessaux, and Pierre Weis.
&lt;br&gt;&lt;br&gt;This is a bug fix release.
&lt;br&gt;&lt;br&gt;The software home page is:
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://cristal.inria.fr/camlimages/eng.htm&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cristal.inria.fr/camlimages/eng.htm&lt;/a&gt;&lt;br&gt;&lt;br&gt;Sources and documentation are available from:
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://cristal.inria.fr/camlimages/camlimages-3.0.2.tgz&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cristal.inria.fr/camlimages/camlimages-3.0.2.tgz&lt;/a&gt;&lt;br&gt;ftp://ftp.inria.fr/INRIA/Projects/cristal/caml-light/bazar-ocaml/camlimages-3.0.2.tgz
&lt;br&gt;&lt;br&gt;Contributions and comments are welcome.
&lt;br&gt;&lt;br&gt;Pierre Weis &amp; June Furuse
&lt;br&gt;&lt;br&gt;CamlImages is an image processing library, which provides to the
&lt;br&gt;objective Caml programmer a lot of image processing functionality.
&lt;br&gt;&lt;br&gt;CamlImages provides to the objective Caml programmer:
&lt;br&gt;&lt;br&gt;&amp;nbsp; ** basic functions for image processing and loading/saving various image
&lt;br&gt;&amp;nbsp; file formats (hence providing a translation facility from format to format),
&lt;br&gt;&lt;br&gt;&amp;nbsp; ** an interface with the Caml graphics library allows to display
&lt;br&gt;&amp;nbsp; images in the Graphics module screen and to mix them with Caml
&lt;br&gt;&amp;nbsp; drawings,
&lt;br&gt;&lt;br&gt;&amp;nbsp; ** a freetype interface, integrated into the library:
&lt;br&gt;&amp;nbsp; you can draw texts into images using any truetype fonts,
&lt;br&gt;&lt;br&gt;&amp;nbsp; ** a set of example programs, including gif animation, slide show,
&lt;br&gt;&amp;nbsp; and a postscript converter to print images.
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/New-3.0.2-release-of-the-Caml-Images-library-tp26387449p26387449.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26386574</id>
	<title>New release of the Caml Examples collection</title>
	<published>2009-11-17T01:14:12Z</published>
	<updated>2009-11-17T01:14:12Z</updated>
	<author>
		<name>Pierre Weis</name>
	</author>
	<content type="html">[Version française ci-dessous]
&lt;br&gt;&lt;br&gt;The Caml Examples package is a large set of Caml example programs.
&lt;br&gt;Most of the programs are provided both in Objective Caml and in Caml Light.
&lt;br&gt;&lt;br&gt;This new enhanced version of the Caml Examples package contains the complete
&lt;br&gt;set of examples from the book ``Le langage Caml'' in Objective Caml (and
&lt;br&gt;obviously also in Caml Light).
&lt;br&gt;&lt;br&gt;You will also find numerous examples of GUI programs, in addition to a
&lt;br&gt;collection of games such as ``Le solitaire'', ``Sudoku'', ``Hanoi'',
&lt;br&gt;``Showsort'', ``KB'' ...
&lt;br&gt;&lt;br&gt;The package home page is at &lt;a href=&quot;http://cristal.inria.fr/caml_examples/eng.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cristal.inria.fr/caml_examples/eng.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;The tar balls are available here:
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://cristal.inria.fr/caml_examples/ocaml-examples-3.11.tar.gz&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cristal.inria.fr/caml_examples/ocaml-examples-3.11.tar.gz&lt;/a&gt;&lt;br&gt;&lt;a href=&quot;http://cristal.inria.fr/caml_examples/camllight-examples-0.82.tar.gz&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cristal.inria.fr/caml_examples/camllight-examples-0.82.tar.gz&lt;/a&gt;&lt;br&gt;&lt;br&gt;All constructive criticisms and propositions are warmly welcomed.
&lt;br&gt;&lt;br&gt;Enjoy.
&lt;br&gt;&lt;br&gt;Pierre Weis.
&lt;br&gt;&lt;br&gt;PS: Listing ``KB'' in the game category can be a bit biased, since many
&lt;br&gt;consider that the average Caml hacker may suffer some truly hard time to
&lt;br&gt;understand this program! More than one brave soul has given up, terminating
&lt;br&gt;the ``KB'' journey by qualifying it as a funny game ... for masochists!
&lt;br&gt;&lt;br&gt;[Version française]
&lt;br&gt;&lt;br&gt;La collection des ``Caml Examples'' est un gros ensemble d'exemples de
&lt;br&gt;programmes Caml. La plupart des exemples sont fournis à la fois en Objective
&lt;br&gt;Caml et en Caml Light.
&lt;br&gt;&lt;br&gt;Cette nouvelle version revue et augmentée comporte tous les exemples du livre
&lt;br&gt;``Le langage Caml'' en Objective Caml (et bien sûr en Caml Light).
&lt;br&gt;&lt;br&gt;Vous y trouverez aussi de nombreux exemples d'interfaces graphiques en plus
&lt;br&gt;d'une collection de jeux comme ``Le solitaire'', ``Sudoku'', ``Hanoi'',
&lt;br&gt;``Showsort'', ``KB'' ...
&lt;br&gt;&lt;br&gt;Le site du recueil d'exemples est &lt;a href=&quot;http://cristal.inria.fr/caml_examples/fra.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cristal.inria.fr/caml_examples/fra.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;Les archives compressées sont disponibles aux adresses:
&lt;br&gt;&lt;br&gt;&lt;a href=&quot;http://cristal.inria.fr/caml_examples/ocaml-examples-3.11.tar.gz&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cristal.inria.fr/caml_examples/ocaml-examples-3.11.tar.gz&lt;/a&gt;&lt;br&gt;&lt;a href=&quot;http://cristal.inria.fr/caml_examples/camllight-examples-0.82.tar.gz&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cristal.inria.fr/caml_examples/camllight-examples-0.82.tar.gz&lt;/a&gt;&lt;br&gt;&lt;br&gt;Toutes les critiques et propositions constructives seront accueillies avec
&lt;br&gt;joie et reconnaissance. Pas les autres!
&lt;br&gt;&lt;br&gt;Amusez-vous bien avec ces exemples :)
&lt;br&gt;&lt;br&gt;Pierre Weis.
&lt;br&gt;&lt;br&gt;PS: Classer ``KB'' dans la catégorie des jeux est un biais un peu bizarre,
&lt;br&gt;parce que beaucoup considèrent que le programmeur Caml moyen peut souffrir
&lt;br&gt;un bon moment pour comprendre ce programme! Plus d'un courageux a fini par
&lt;br&gt;abandonner, et a terminé son exploration de ``KB'' en le traitant en effet de
&lt;br&gt;jeu amusant ... pour masochistes!
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/New-release-of-the-Caml-Examples-collection-tp26386574p26386574.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26368148</id>
	<title>Re: Polymorphic functors / modules and OCaml-R</title>
	<published>2009-11-16T00:11:19Z</published>
	<updated>2009-11-16T00:11:19Z</updated>
	<author>
		<name>Goswin von Brederlow-2</name>
	</author>
	<content type="html">Guillaume Yziquel &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26368148&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;guillaume.yziquel@...&lt;/a&gt;&amp;gt; writes:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hello.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I've been trying stuff like these:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; # module type 'a A = sig
&lt;br&gt;&amp;gt;&amp;gt; Error: Parse error: [a_UIDENT] expected after &amp;quot;type&amp;quot; (in [str_item])
&lt;br&gt;&amp;gt;&amp;gt; # module type ['a] A = sig
&lt;br&gt;&amp;gt;&amp;gt; Error: Parse error: [a_UIDENT] expected after &amp;quot;type&amp;quot; (in [str_item])
&lt;br&gt;&amp;gt;&amp;gt; # module type A = sig module type B end
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; ;;
&lt;br&gt;&amp;gt;&amp;gt; Error: Failure: &amp;quot;abstract/nil module type not allowed here&amp;quot;
&lt;br&gt;&amp;gt;&amp;gt; #
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Is there a way, somehow, of introducing such polymorphism in modules /
&lt;br&gt;&amp;gt; functors?
&lt;/div&gt;&lt;br&gt;Isn't that exactly what a functor is? You just need to wrape the 'a type
&lt;br&gt;in a module.
&lt;br&gt;&lt;br&gt;MfG
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Goswin
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Polymorphic-functors---modules-and-OCaml-R-tp26367806p26368148.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26367806</id>
	<title>Polymorphic functors / modules and OCaml-R</title>
	<published>2009-11-15T23:34:11Z</published>
	<updated>2009-11-15T23:34:11Z</updated>
	<author>
		<name>Guillaume Yziquel-4</name>
	</author>
	<content type="html">Hello.
&lt;br&gt;&lt;br&gt;I've been trying stuff like these:
&lt;br&gt;&lt;br&gt;&amp;gt; # module type 'a A = sig
&lt;br&gt;&amp;gt; Error: Parse error: [a_UIDENT] expected after &amp;quot;type&amp;quot; (in [str_item])
&lt;br&gt;&amp;gt; # module type ['a] A = sig
&lt;br&gt;&amp;gt; Error: Parse error: [a_UIDENT] expected after &amp;quot;type&amp;quot; (in [str_item])
&lt;br&gt;&amp;gt; # module type A = sig module type B end
&lt;br&gt;&amp;gt; &amp;nbsp; ;;
&lt;br&gt;&amp;gt; Error: Failure: &amp;quot;abstract/nil module type not allowed here&amp;quot;
&lt;br&gt;&amp;gt; # 
&lt;br&gt;&lt;br&gt;Is there a way, somehow, of introducing such polymorphism in modules / 
&lt;br&gt;functors?
&lt;br&gt;&lt;br&gt;That would help me a lot. I'm currently try to write bindings for R 
&lt;br&gt;code, with OCaml-R, and I can come up with stuff like this:
&lt;br&gt;&lt;br&gt;&amp;gt; module Description : R.LibraryDescription = struct
&lt;br&gt;&amp;gt; &amp;nbsp; let name = &amp;quot;xts&amp;quot;
&lt;br&gt;&amp;gt; &amp;nbsp; let symbols = [&amp;quot;xts&amp;quot;]
&lt;br&gt;&amp;gt; end
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; module Library : R.Library = OCamlR.Require (Description)
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; let [xts] = Library.root
&lt;br&gt;&lt;br&gt;What would be nice would be Description to be polymorphic in some sense 
&lt;br&gt;or another, so that I could describe the various R symbols that are made 
&lt;br&gt;available by the xts library.
&lt;br&gt;&lt;br&gt;The other, rather unrelated solution I see would be to replace stuff 
&lt;br&gt;above by something like:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; module Description : R.LibraryDescription = struct
&lt;br&gt;&amp;gt; &amp;nbsp; let name = &amp;quot;xts&amp;quot;
&lt;br&gt;&amp;gt; &amp;nbsp; let symbols = [&amp;quot;xts&amp;quot;; &amp;quot;print_xts&amp;quot;]
&lt;br&gt;&amp;gt; end
&lt;br&gt;&amp;gt; module Library : R.Library = OCamlR.Require (Description)
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; type t
&lt;br&gt;&amp;gt; external list_to_tuple : 'a list -&amp;gt; 'b = &amp;quot;list_to_tuple&amp;quot;
&lt;br&gt;&amp;gt; let ( (xts : unit -&amp;gt; t),
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; (print_xts : t -&amp;gt; unit)
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; ) = list_to_tuple Library.root
&lt;/div&gt;&lt;br&gt;where list_to_tuple would be a function constructing the tuple (no fixed 
&lt;br&gt;size) representing a given list. This is rather unsafe...
&lt;br&gt;&lt;br&gt;A polymorphic module, with argument a module type, would be something 
&lt;br&gt;very useful to describe a R library...
&lt;br&gt;&lt;br&gt;All the best,
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; Guillaume Yziquel
&lt;br&gt;&lt;a href=&quot;http://yziquel.homelinux.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yziquel.homelinux.org/&lt;/a&gt;&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Polymorphic-functors---modules-and-OCaml-R-tp26367806p26367806.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26360055</id>
	<title>Re: calling OCaml from C on non-Mac platforms?</title>
	<published>2009-11-15T07:22:36Z</published>
	<updated>2009-11-15T07:22:36Z</updated>
	<author>
		<name>John Nowak</name>
	</author>
	<content type="html">&lt;br&gt;On Nov 15, 2009, at 9:55 AM, Eric Cooper wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; On Sun, Nov 15, 2009 at 08:27:49AM -0500, John Nowak wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I'm trying to call OCaml from C.
&lt;br&gt;&amp;gt;&amp;gt; [...]
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; ocamlopt -output-obj hello.cmx -o hello.o
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; This is the main problem. &amp;nbsp;You're clobbering the hello.o that OCaml
&lt;br&gt;&amp;gt; produced when compiling hello.ml into native code.
&lt;br&gt;&lt;br&gt;Works well now, thanks. Perhaps the documentation could be amended to &amp;nbsp;
&lt;br&gt;make this more clear. Although, in retrospect, I should've realized &amp;nbsp;
&lt;br&gt;what was happening.
&lt;br&gt;&lt;br&gt;- John
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/calling-OCaml-from-C-on-non-Mac-platforms--tp26359098p26360055.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26359792</id>
	<title>Re: calling OCaml from C on non-Mac platforms?</title>
	<published>2009-11-15T06:55:52Z</published>
	<updated>2009-11-15T06:55:52Z</updated>
	<author>
		<name>Eric Cooper</name>
	</author>
	<content type="html">On Sun, Nov 15, 2009 at 08:27:49AM -0500, John Nowak wrote:
&lt;br&gt;&amp;gt; I'm trying to call OCaml from C.
&lt;br&gt;&amp;gt; [...] 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;ocamlopt -output-obj hello.cmx -o hello.o
&lt;br&gt;&lt;br&gt;This is the main problem. &amp;nbsp;You're clobbering the hello.o that OCaml
&lt;br&gt;produced when compiling hello.ml into native code.
&lt;br&gt;&lt;br&gt;&amp;gt; Does anyone have a correct set of instructions for doing this on
&lt;br&gt;&amp;gt; non-Mac platforms? Thanks.
&lt;br&gt;&lt;br&gt;This worked fine for me:
&lt;br&gt;&lt;br&gt;&amp;nbsp; ocamlopt -output-obj -o temp.o hello.ml
&lt;br&gt;&amp;nbsp; gcc -o hello main.c temp.o -L/usr/lib/ocaml -lasmrun -lm -ldl
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/calling-OCaml-from-C-on-non-Mac-platforms--tp26359098p26359792.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26359098</id>
	<title>calling OCaml from C on non-Mac platforms?</title>
	<published>2009-11-15T05:27:49Z</published>
	<updated>2009-11-15T05:27:49Z</updated>
	<author>
		<name>John Nowak</name>
	</author>
	<content type="html">I'm trying to call OCaml from C. Essentially, I have this for &amp;quot;main.c&amp;quot;:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; #include &amp;lt;caml/mlvalues.h&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; #include &amp;lt;caml/callback.h&amp;gt;
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; void hello() {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;static value *closure = NULL;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if(!closure) closure = caml_named_value(&amp;quot;hello&amp;quot;);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;caml_callback(*closure, Val_unit);
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; int main(int argc, char **argv) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;caml_main(argv);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;hello();
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return 0;
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;&lt;br&gt;And the following &amp;quot;hello.ml&amp;quot;:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; let hello () = print_endline &amp;quot;Hello, world!&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; let () = Callback.register &amp;quot;hello&amp;quot; hello
&lt;br&gt;&lt;br&gt;I can then compile as follows on OS X 10.5:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; ocamlopt -c hello.ml -o hello.cmx
&lt;br&gt;&amp;nbsp; &amp;nbsp; ocamlopt -output-obj hello.cmx -o hello.o
&lt;br&gt;&amp;nbsp; &amp;nbsp; gcc -c main.c -o main.o -I&amp;quot;`ocamlc -where`&amp;quot;
&lt;br&gt;&amp;nbsp; &amp;nbsp; gcc -o hello hello.o main.o -L&amp;quot;`ocamlc -where`&amp;quot; -ldl -lm -lasmrun
&lt;br&gt;&lt;br&gt;This works fine on OS X. However, it does not seem to work on Linux/ 
&lt;br&gt;AMD64 or FreeBSD/AMD64. I've tried suggestions from all over the web &amp;nbsp;
&lt;br&gt;and I've tried the approach given in the manual and nothing works. In &amp;nbsp;
&lt;br&gt;all non-Mac cases, I get this on the second line:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; hello.o: file not recognized: File truncated
&lt;br&gt;&amp;nbsp; &amp;nbsp; Error during linking
&lt;br&gt;&lt;br&gt;One thing I can do is do this instead of the first two lines:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; ocamlopt -c -output-obj hello.ml
&lt;br&gt;&lt;br&gt;However, then I get the following:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; hello.o: In function `camlHello__hello_58':
&lt;br&gt;&amp;nbsp; &amp;nbsp; (.text+0x8): undefined reference to &amp;nbsp;
&lt;br&gt;`camlPervasives__print_endline_298'
&lt;br&gt;&amp;nbsp; &amp;nbsp; /usr/lib/ocaml/3.10.2/libasmrun.a(startup.o): In function &amp;nbsp;
&lt;br&gt;`caml_main':
&lt;br&gt;&amp;nbsp; &amp;nbsp; (.text+0x25f): undefined reference to `caml_data_segments'
&lt;br&gt;&amp;nbsp; &amp;nbsp; /usr/lib/ocaml/3.10.2/libasmrun.a(startup.o): In function &amp;nbsp;
&lt;br&gt;`caml_main':
&lt;br&gt;&amp;nbsp; &amp;nbsp; (.text+0x273): undefined reference to `caml_code_segments'
&lt;br&gt;&amp;nbsp; &amp;nbsp; ...
&lt;br&gt;&lt;br&gt;Does anyone have a correct set of instructions for doing this on non- 
&lt;br&gt;Mac platforms? Thanks.
&lt;br&gt;&lt;br&gt;- John
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/calling-OCaml-from-C-on-non-Mac-platforms--tp26359098p26359098.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26352924</id>
	<title>Re: The lexer hack</title>
	<published>2009-11-14T11:09:13Z</published>
	<updated>2009-11-14T11:09:13Z</updated>
	<author>
		<name>Goswin von Brederlow-2</name>
	</author>
	<content type="html">Micha &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26352924&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;micha-1@...&lt;/a&gt;&amp;gt; writes:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On Tuesday, 10. November 2009 15:42:52 Dario Teixeira wrote:
&lt;br&gt;&amp;gt;&amp;gt; Hi,
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I'm creating a parser for a LaTeX-ish language that features verbatim
&lt;br&gt;&amp;gt;&amp;gt; blocks. To handle them I want to switch lexers on-the-fly, depending on the
&lt;br&gt;&amp;gt;&amp;gt; parsing context. &amp;nbsp;Therefore, I need the state from the (Menhir generated)
&lt;br&gt;&amp;gt;&amp;gt; parser to influence the lexing process (I believe this is called the &amp;quot;lexer
&lt;br&gt;&amp;gt;&amp;gt; hack&amp;quot; in compiler lore).
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; if the lexer cannot decide it on the tokens seen, a packrat parser (like 
&lt;br&gt;&amp;gt; Aurochs) may be a better choice, since in a PEG there is no seperate lexer, 
&lt;br&gt;&amp;gt; it's all one grammar, so you don't have this problem.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;Michael
&lt;/div&gt;&lt;br&gt;There usualy must be something present to support '(* &amp;lt;vebatim
&lt;br&gt;text&amp;gt; *)' and '&amp;quot;&amp;lt;verbatim text&amp;gt;&amp;quot;', i.e. comments and strings.
&lt;br&gt;Find out what is recommended for those and adapt it.
&lt;br&gt;&lt;br&gt;MfG
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Goswin
&lt;br&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Caml-list mailing list. Subscription management:
&lt;br&gt;&lt;a href=&quot;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list&lt;/a&gt;&lt;br&gt;Archives: &lt;a href=&quot;http://caml.inria.fr&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr&lt;/a&gt;&lt;br&gt;Beginner's list: &lt;a href=&quot;http://groups.yahoo.com/group/ocaml_beginners&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://groups.yahoo.com/group/ocaml_beginners&lt;/a&gt;&lt;br&gt;Bug reports: &lt;a href=&quot;http://caml.inria.fr/bin/caml-bugs&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://caml.inria.fr/bin/caml-bugs&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/The-lexer-hack-tp26284563p26352924.html" />
</entry>

</feed>
