<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
FYI - This is way more work than is appropriate for a single
summer. Bringing up a new frontend and getting good performance out
of it is general several man years of work. I strongly suggest you
identify a subproject of a more reasonable scope and propose that.<br>
<br>
p.s. Also, I'm not sure that porting an external open source project
is really appropriate for an LLVM GSoC project. Have you considered
proposing something to the Bigloo project? They might be better
able to provide mentoring for what you're interested in. Or
alternatively, you might do well to seek an active mentor from both
projects. <br>
<br>
Philip<br>
<br>
<div class="moz-cite-prefix">On 03/17/2016 09:57 PM, Zhengyang Liu
via llvm-dev wrote:<br>
</div>
<blockquote
cite="mid:SG2PR06MB04276545C523825165DF47D4FD8C0@SG2PR06MB0427.apcprd06.prod.outlook.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
<div id="divtagdefaultwrapper" style="font-size:12pt;
color:#000000; background-color:#FFFFFF;
font-family:Calibri,Arial,Helvetica,sans-serif">
<div><span style="font-size: 12pt;">Hi, everyone</span><br>
</div>
<div><span style="font-size: 12pt;"><br>
</span></div>
<div>This proposal covers the OpenProjects idea ‘Port the Bigloo
Scheme compiler, from Manuel Serrano at INRIA
Sophia-Antipolis, to output LLVM bytecode.’ There is not a
popular functional language frontend yet on LLVM. To my
knowledge, this is mostly because LLVM is lack of runtime
support for the functional language needs, and C foreign
function interface calls are relatively hard since LLVM leaves
memory management to be handled by program. Bigloo is a high
performance(according to [1] ) scheme implementation and it
designed to be mostly R5RS compatible. It uses Boehm GC(also
used in llvm-gcc) to manage C FFI calls memory. Therefore
bigloo is a proper choice for the scheme frontend of LLVM. On
the other hand, compile scheme to LLVM IR will make use of
LLVM’s optimization techniques. The LLVM backend will boost
the performance of bigloo. In this summer, I would like to
build a robust, high-performance scheme frontend for LLVM.</div>
<div><br>
</div>
<div>About Me:</div>
<div>I am Zhengyang, a M.S. candidate at Beijing University of
Posts and Telecomunications working in the area of static
program analysis. My CV can be found in [2] . Most of my works
are based on Clang. I have contributed to Static Analysis
Suite(SAS) from CERN PH-SFT as Google Summer of Code 2015
project. About the preparation for this proposal, I have
studied the source codes, serveral research papers and user
manual of bigloo. I am interested in working with LLVM
community, and hoping to contribute to LLVM. </div>
<div><br>
</div>
<div>Proposed Work:</div>
<div>(Before GSoC’16 start) Add support for calling LLVM IR API
on bigloo.</div>
<div>(Week 1-3) Create a new LLVM backend for bigloo scheme to
make bigloo produce LLVM IR.</div>
<div>(Week 4-6) Integrate Boehm garbage collector to the
runtime.</div>
<div>(Week 7) Create project build/test infrastructure. </div>
<div>(Week 8-9) Run benchmarks and analysis the performance on
the new scheme compiler.</div>
<div><br>
</div>
<div>I have some questions for this idea:</div>
<div>1) Is this a good idea for a GSoC project ?</div>
<div>2) If any one is available to mentor me for this ?</div>
<div><br>
</div>
<div>Please let me know your comments on this proposal as a GSoC
project. Any comments on how to refine this proposal are
welcome. I will be very grateful if someone puts me in the
right direction for the project.</div>
<div><br>
</div>
<div><br>
</div>
<div>Thanks,</div>
<div>Zhengyang Liu,</div>
<div>Beijing University of Posts and Telecommunications,</div>
<div><a class="moz-txt-link-abbreviated" href="mailto:zhengyang-liu@hotmail.com">zhengyang-liu@hotmail.com</a>.</div>
<div><br>
</div>
<div>
<div style="font-family: Calibri, Arial, Helvetica,
sans-serif; font-size: 16px;">
[1]
<a class="moz-txt-link-freetext" href="http://www.cs.utah.edu/~mflatt/benchmarks-20100126/log1/Gambit_20benchmarks.html">http://www.cs.utah.edu/~mflatt/benchmarks-20100126/log1/Gambit_20benchmarks.html</a></div>
<div style="font-family: Calibri, Arial, Helvetica,
sans-serif; font-size: 16px;">
[2] <a class="moz-txt-link-freetext" href="http://zhengyangl.com/cv.pdf">http://zhengyangl.com/cv.pdf</a></div>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
LLVM Developers mailing list
<a class="moz-txt-link-abbreviated" href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>
<a class="moz-txt-link-freetext" href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a>
</pre>
</blockquote>
<br>
</body>
</html>