[m-rev.] for review: high level C paper on w3

Zoltan Somogyi zs at cs.mu.OZ.AU
Fri Oct 26 14:33:36 AEST 2001


Add the high level C paper to the web site.

w3/information/include/papers.inc:
	Give the details of the high level C paper Fergus and I just submitted
	for publication.

w3/information/papers/hlc1.ps.gz:
	New file: the paper itself.

w3/information/papers/hlc1.ps.gz:
	New file: the tar file containing the raw data on which the performance
	evaluation section of paper is based.

w3/news/newsdb.inc:
	Mention the new paper.

Zoltan.

cvs diff: Diffing .
cvs diff: Diffing bin
cvs diff: Diffing contact
cvs diff: Diffing contact/include
cvs diff: Diffing download
cvs diff: Diffing download/include
cvs diff: Diffing download/patches
cvs diff: Diffing htdig
cvs diff: Diffing htdig/include
cvs diff: Diffing images
cvs diff: Diffing include
cvs diff: Diffing information
cvs diff: Diffing information/bench
cvs diff: Diffing information/deep_demo
cvs diff: Diffing information/developers
cvs diff: Diffing information/doc
cvs diff: Diffing information/dotnet
cvs diff: Diffing information/events
cvs diff: Diffing information/events/images
cvs diff: Diffing information/include
Index: information/include/papers.inc
===================================================================
RCS file: /home/mercury1/repository/w3/information/include/papers.inc,v
retrieving revision 1.24
diff -u -b -r1.24 papers.inc
--- information/include/papers.inc	2001/08/03 04:14:16	1.24
+++ information/include/papers.inc	2001/10/26 04:27:49
@@ -14,6 +14,43 @@
 <h2>Papers on Mercury</h2>
 
 <ul>
+
+<li>
+<strong>
+Compiling Mercury to high-level C code
+</strong>
+<br>
+Fergus Henderson and Zoltan Somogyi
+<br>
+Department of Computer Science, University of Melbourne,
+Melbourne, Australia, October 2001, 17 pages.
+<a href = "papers/hlc1.ps.gz">
+Available here (75K).
+</a>
+<p>
+Many logic programming implementations compile to C,
+but they compile to very low-level C, and thus discard many
+of the advantages of compiling to a high-level language.
+We describe an alternative approach to compiling logic
+programs to C, based on continuation passing, that we have used
+in a new back-end for the Mercury compiler.
+The new approach compiles to much higher-level C code,
+which means the compiler back-end and run-time system
+can be considerably simpler.
+<p>
+We present a formal schema for the transformation,
+and give benchmark results which show that this approach delivers
+performance about equal to the fastest previous implementation,
+with greater simplicity and better portability and interoperability.
+<p>
+The approach we describe can also be used for compiling
+to other target languages, such as IL
+(the Microsoft .NET intermediate language).
+<p>
+The raw data that the performance evaluation section is based on
+is available as a <a href = "papers/hlc1_perf_data.tar.gz">31 Mb tar file</a>.
+<p>
+
 <li>
 <strong>
 Deep profiling:
@@ -180,7 +217,7 @@
 and can make a large class of programs tail recursive.
 <p>
 The raw data on which the evaluation is based
-is available as a <a href = "papers/tail_data.tar.gz">5 Kb tar file</a>
+is available as a <a href = "papers/tail_data.tar.gz">5 Kb tar file</a>.
 <p>
 
 <li>
cvs diff: Diffing information/papers
Index: information/papers/hlc1.ps.gz
===================================================================
RCS file: hlc1.ps.gz
diff -N hlc1.ps.gz
Binary files /dev/null and hlc1.ps.gz differ
Index: information/papers/hlc1_perf_data.tar.gz
===================================================================
RCS file: hlc1_perf_data.tar.gz
diff -N hlc1_perf_data.tar.gz
Binary files /dev/null and hlc1_perf_data.tar.gz differ
cvs diff: Diffing information/reports
cvs diff: Diffing mailing-lists
cvs diff: Diffing mailing-lists/include
cvs diff: Diffing mailing-lists/mercury-ads
cvs diff: Diffing mailing-lists/mercury-ads/include
cvs diff: Diffing mailing-lists/mercury-developers
cvs diff: Diffing mailing-lists/mercury-developers/include
cvs diff: Diffing mailing-lists/mercury-reviews
cvs diff: Diffing mailing-lists/mercury-reviews/include
cvs diff: Diffing mailing-lists/mercury-users
cvs diff: Diffing mailing-lists/mercury-users/include
cvs diff: Diffing news
Index: news/newsdb.inc
===================================================================
RCS file: /home/mercury1/repository/w3/news/newsdb.inc,v
retrieving revision 1.60
diff -u -b -r1.60 newsdb.inc
--- news/newsdb.inc	2001/08/13 05:49:34	1.60
+++ news/newsdb.inc	2001/10/26 04:18:32
@@ -22,6 +22,13 @@
 
 $newsdb = array(
 
+"26 October 2001" => array("New paper",
+
+"We have a new paper available 
+from our <A HREF=\"information/papers.html\">papers page</A>,
+which outlines the design of the back end that generates high level C".
+),
+
 "13 August 2001" => array("Smart recompilation",
 
 "The Mercury compiler can now perform smart recompilation. With smart
--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list