2 Aug 2009 15:30
IFL 2009: Call for Papers and Participation
IFL 2009 <ifl2009 <at> shu.edu>
2009-08-02 13:30:13 GMT
2009-08-02 13:30:13 GMT
Call for Papers and Participation
IFL 2009
Seton Hall University
SOUTH ORANGE, NJ, USA
http://tltc.shu.edu/blogs/projects/IFL2009/
Register at: http://tltc.shu.edu/blogs/projects/IFL2009/registration.html
***** NEW *****
Registration and talk submission extended to August 23, 2009!
***************
The 21st International Symposium on Implementation and Application of Functional Languages, IFL 2009, will be held
for the first time in the USA. The hosting institution is Seton Hall University in South Orange, NJ, USA and the
symposium dates are September 23-25, 2009. It is our goal to make IFL a regular event held in the USA and in
Europe. The goal of the IFL symposia is to bring together researchers actively engaged in the implementation and
application of functional and function-based programming languages. IFL 2009 will be a venue for researchers to
present and discuss new ideas and concepts, work in progress, and publication-ripe results related to the
implementation and application of functional languages and function-based programming.
Following the IFL tradition, IFL 2009 will use a post-symposium review process to produce a formal proceedings which
will be published by Springer in the Lecture Notes in Computer Science series. All participants in IFL 2009 are
invited to submit either a draft paper or an extended abstract describing work to be presented at the symposium.
These submissions will be screened by the program committee chair to make sure they are within the scope of IFL and will
appear in the draft proceedings distributed at the symposium. Submissions appearing in the draft proceedings are not
peer-reviewed publications. After the symposium, authors will be given the opportunity to incorporate the feedback from
discussions at the symposium and will be invited to submit a revised full arcticle for the formal review process. These
revised submissions will be reviewed by the program committee using prevailing academic standards to select the best
articles that will appear in the formal proceedings.
Invited Speaker:
Benjamin C. Pierce
University of Pennsylvania
Talk Title: How To Build Your Own Bidirectional Programming Language
TOPICS
IFL welcomes submissions describing practical and theoretical work as well as submissions describing applications and tools.
If you are not sure if your work is appropriate for IFL 2009, please contact the PC chair at ifl2009 <at> shu.edu. Topics of
interest include, but are not limited to:
language concepts
type checking
contracts
compilation techniques
staged compilation
runtime function specialization
runtime code generation
partial evaluation
(abstract) interpretation
generic programming techniques
automatic program generation
array processing
concurrent/parallel programming
concurrent/parallel program execution
functional programming and embedded systems
functional programming and web applications
functional programming and security
novel memory management techniques
runtime profiling and performance measurements
debugging and tracing
virtual/abstract machine architectures
validation and verification of functional programs
tools and programming techniques
FP in Education
PAPER SUBMISSIONS
Prospective authors are encouraged to submit papers or extended abstracts to be published in the draft proceedings and to
present them at the symposium. All contributions must be written in English, conform to the Springer-Verlag LNCS series
format and not exceed 16 pages. The draft proceedings will appear as a technical report of the Department of Mathematics
and Computer Science of Seton Hall University.
IMPORTANT DATES
Registration deadline August 15, 2009
Presentation submission deadline August 15, 2009
IFL 2009 Symposium September 23-25, 2009
Submission for review process deadline November 1, 2009
Notification Accept/Reject December 22, 2009
Camera ready version February 1, 2010
PROGRAM COMMITTEE
Peter Achten University of Nijmegen, The Netherlands
Jost Berthold Philipps-Universität Marburg, Germany
Andrew Butterfield University of Dublin, Ireland
Robby Findler Northwestern University, USA
Kathleen Fisher AT&T Research, USA
Cormac Flanagan University of California at Santa Cruz, USA
Matthew Flatt University of Utah, USA
Matthew Fluet Toyota Technological Institute at Chicago, USA
Daniel Friedman Indiana University, USA
Andy Gill University of Kansas, USA
Clemens Grelck University of Amsterdam/Hertfordshire, The Netherlands/UK
Jurriaan Hage Utrecht University, The Netherlands
Ralf Hinze Oxford University, UK
Paul Hudak Yale University, USA
John Hughes Chalmers University of Technology, Sweden
Patricia Johann University of Strathclyde, UK
Yukiyoshi Kameyama University of Tsukuba, Japan
Marco T. Morazán (Chair) Seton Hall University, USA
Rex Page University of Oklahoma, USA
Fernando Rubio Universidad Complutense de Madrid, Spain
Sven-Bodo Scholz University of Hertfordshire, UK
Manuel Serrano INRIA Sophia-Antipolis, France
Chung-chieh Shan Rutgers University, USA
David Walker Princeton University, USA
Viktória Zsók Eötvös Loránd University, Hungary
PETER LANDIN PRIZE
The Peter Landin Prize is awarded to the best paper presented at the symposium every year. The honored article is selected
by the program committee based on the submissions received for the formal review process. The prize carries a cash award
equivalent to 150 euros.
IFL 2009
Seton Hall University
SOUTH ORANGE, NJ, USA
http://tltc.shu.edu/blogs/projects/IFL2009/
Register at: http://tltc.shu.edu/blogs/projects/IFL2009/registration.html
***** NEW *****
Registration and talk submission extended to August 23, 2009!
***************
The 21st International Symposium on Implementation and Application of Functional Languages, IFL 2009, will be held
for the first time in the USA. The hosting institution is Seton Hall University in South Orange, NJ, USA and the
symposium dates are September 23-25, 2009. It is our goal to make IFL a regular event held in the USA and in
Europe. The goal of the IFL symposia is to bring together researchers actively engaged in the implementation and
application of functional and function-based programming languages. IFL 2009 will be a venue for researchers to
present and discuss new ideas and concepts, work in progress, and publication-ripe results related to the
implementation and application of functional languages and function-based programming.
Following the IFL tradition, IFL 2009 will use a post-symposium review process to produce a formal proceedings which
will be published by Springer in the Lecture Notes in Computer Science series. All participants in IFL 2009 are
invited to submit either a draft paper or an extended abstract describing work to be presented at the symposium.
These submissions will be screened by the program committee chair to make sure they are within the scope of IFL and will
appear in the draft proceedings distributed at the symposium. Submissions appearing in the draft proceedings are not
peer-reviewed publications. After the symposium, authors will be given the opportunity to incorporate the feedback from
discussions at the symposium and will be invited to submit a revised full arcticle for the formal review process. These
revised submissions will be reviewed by the program committee using prevailing academic standards to select the best
articles that will appear in the formal proceedings.
Invited Speaker:
Benjamin C. Pierce
University of Pennsylvania
Talk Title: How To Build Your Own Bidirectional Programming Language
TOPICS
IFL welcomes submissions describing practical and theoretical work as well as submissions describing applications and tools.
If you are not sure if your work is appropriate for IFL 2009, please contact the PC chair at ifl2009 <at> shu.edu. Topics of
interest include, but are not limited to:
language concepts
type checking
contracts
compilation techniques
staged compilation
runtime function specialization
runtime code generation
partial evaluation
(abstract) interpretation
generic programming techniques
automatic program generation
array processing
concurrent/parallel programming
concurrent/parallel program execution
functional programming and embedded systems
functional programming and web applications
functional programming and security
novel memory management techniques
runtime profiling and performance measurements
debugging and tracing
virtual/abstract machine architectures
validation and verification of functional programs
tools and programming techniques
FP in Education
PAPER SUBMISSIONS
Prospective authors are encouraged to submit papers or extended abstracts to be published in the draft proceedings and to
present them at the symposium. All contributions must be written in English, conform to the Springer-Verlag LNCS series
format and not exceed 16 pages. The draft proceedings will appear as a technical report of the Department of Mathematics
and Computer Science of Seton Hall University.
IMPORTANT DATES
Registration deadline August 15, 2009
Presentation submission deadline August 15, 2009
IFL 2009 Symposium September 23-25, 2009
Submission for review process deadline November 1, 2009
Notification Accept/Reject December 22, 2009
Camera ready version February 1, 2010
PROGRAM COMMITTEE
Peter Achten University of Nijmegen, The Netherlands
Jost Berthold Philipps-Universität Marburg, Germany
Andrew Butterfield University of Dublin, Ireland
Robby Findler Northwestern University, USA
Kathleen Fisher AT&T Research, USA
Cormac Flanagan University of California at Santa Cruz, USA
Matthew Flatt University of Utah, USA
Matthew Fluet Toyota Technological Institute at Chicago, USA
Daniel Friedman Indiana University, USA
Andy Gill University of Kansas, USA
Clemens Grelck University of Amsterdam/Hertfordshire, The Netherlands/UK
Jurriaan Hage Utrecht University, The Netherlands
Ralf Hinze Oxford University, UK
Paul Hudak Yale University, USA
John Hughes Chalmers University of Technology, Sweden
Patricia Johann University of Strathclyde, UK
Yukiyoshi Kameyama University of Tsukuba, Japan
Marco T. Morazán (Chair) Seton Hall University, USA
Rex Page University of Oklahoma, USA
Fernando Rubio Universidad Complutense de Madrid, Spain
Sven-Bodo Scholz University of Hertfordshire, UK
Manuel Serrano INRIA Sophia-Antipolis, France
Chung-chieh Shan Rutgers University, USA
David Walker Princeton University, USA
Viktória Zsók Eötvös Loránd University, Hungary
PETER LANDIN PRIZE
The Peter Landin Prize is awarded to the best paper presented at the symposium every year. The honored article is selected
by the program committee based on the submissions received for the formal review process. The prize carries a cash award
equivalent to 150 euros.
_______________________________________________ Caml-list mailing list. Subscription management: http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list Archives: http://caml.inria.fr Beginner's list: http://groups.yahoo.com/group/ocaml_beginners Bug reports: http://caml.inria.fr/bin/caml-bugs
Right now I'm having some problems with the garbage collector and the
Gc.alarm - this combination shows some (to me) odd behaviours which are
not detailed in the reference manual. Maybe someone could shed some
light on this?
Basically, at the end of a major GC cycle the GC calls the user
functions defined for any alarms. This I understand, and for the most
part it works as I expect it.
The first oddity is that I can define an alarm function which starts
another GC cycle (by calling Gc.full_major). This results, quite
understandably, in an infinite loop - GC calls alarm calls GC calls
alarm....
However, it seems that the GC no longer works quite the same when called
from within an alarm, as it no longer calls any finalisation functions.
Normally (outside alarms) the GC will print "Calling finalisation
functions. Done calling finalisation functions." if I do a Gc.full_major
and the verbosity is set appropriately. With the alarm loop, the GC will
only print the first part ("Calling finalisation functions.") once at
the start of the loop and then begin looping, starting new cycles but no
new finalisations. If I limit the looping with a counter, the GC will
behave normally again in future GC cycles outside the alarm. So it seems
the alarm or the finalising put the GC into a special mode where it no
longer does everything in a cycle that it would usually do.(?)
The other (and to me more severe) oddity is that if the alarm function
raises an exception, then the GC seems to remain in its "special mode"
where it starts no finalisation calling - but now it will also refuse to
do any alarms.
The latter is a bit of a problem for me right now, as I was using a
Gc.alarm to implement a check for a memory limit: if the alarm function
at the end of a GC cycle finds the memory usage to be above the limit,
an exception is raised which interrupts the normal operation of the
program, and the program waits for instructions from stdin.
As the first such exception-from-an-alarm effectively breaks future
alarm handling, this only works once. This was not noticeable in earlier
versions of the program which were single-use only - the alarm exception
would halt the program and say sorry, out of memory. The new program
version is supposed to be user-interactive, though, so it must be able
to catch multiple memory excesses. Worse, it also uses Unix.ITIMER_REAL
induced timer exceptions to limit processing time. Potentially such a
timer exception could also interrupt an alarm check, again breaking the
alarm handling.
Is there a way to get the GC back to normal after an exception during
the alarm? Right now it seems I have to drop alarm usage entirely, and
instead put explicit memory checks into all sorts of strategic places
throughout the program, which is not all that elegant.
Here is a short program which shows what I mean. I'm probably just
making some stupid mistake?
exception Ex
let main () =
let cnt = ref 0
in
(Gc.set {(Gc.get()) with Gc.verbose = 0x081});
let alarm_function () =
(print_endline "Alarm!";
cnt := !cnt + 1;
(* do 3 loop iterations *)
if !cnt < 3 then
(Gc.full_major ())
(* after the 3rd iteration, exit loop with an exception *)
else
(raise Ex))
in
ignore (Gc.create_alarm alarm_function);
try
(* this will call the alarm and start the loop *)
(Gc.full_major ())
with
| Ex ->
(print_endline "Exception raised!";
(* new GC cycle calls no alarm after the exception
*)
Gc.full_major ())
let () = main ();;
Thank you for your time,
Björn
Thanks.
On Mon, Jul 20, 2009 at 11:06 AM, Xavier Leroy<Xavier.Leroy <at> inria.fr> wrote:
> A few months ago, there was a discussion on this list about
> "Le langage Caml", an early book on Caml (Light) programming written
> by Pierre Weis and I. The book was out of print, but the publisher,
> Dunod Éditions, graciously agreed to relinquish its rights and give
> them back to the authors.
>
> Pierre and I are therefore happy to announce that the full text of the
> book (2nd edition) is now available freely:
>
>
RSS Feed