Hi there, FriCAS-ers!

Some of you may already know that GSoC 2014 is officially closing soon.
They've already announced hard "pencils down", which marks a milestone in
my project. The code is ready for inspection by general audience at
https://github.com/cahirwpz/phd. You may play with it to find limitations,
identify bugs or serious flaws, or event point out horribly complex LOCs to
shed light on. Preferably, you should use github code review / bug
reporting tools.

Note that new type checker project is nowhere near to the end. It can
correctly verify types for large class of Spad programs. However there're
some important things missing, for instance:

   - unions with named variants,
   - subtyping for domains (other than hardcoded, i.e. PI, NNI, Integer),
   - environment merging after if-then-else expressions,
   - special treating for "Rep" at domain level,
   - has, is, pretend operators,
   - functor arguments type,
   - deeper understanding of categories,
   - and many, many more.

... which makes it inapplicable for general use.

If parser could output source code position (file / line / column) for each
symbol (Waldek promised(?) to extend the compiler a few months ago), I
could also start thinking about outputting meaningful diagnostic messages.

There's no official list of supported features, however there're few tests
that I use to verify my code - you can have a look at them to figure out
what have been done. Any extra testing would be kindly seen. Obviously I'm
not at the moment, where I can feed whole algebra sources into the type
checker. Unlike during mid-term GSoC evaluations, this time type annotated
code is fed directly into old compiler, so it does the real job.

New type checker can perform arbitrary AST (abstract syntax tree) rewrite,
so we can start experimenting with syntax extensions as long as they can be
expressed in code understood by current compiler. However, personally I'd
focus on adding missing features.

Another thing worth to mention... in my repository at
https://github.com/cahirwpz/phd you can find some sources written in Ocaml.
That's a prototype of low-level Spad code (also known as FOAM) compiler
using LLVM framework. Large part of it will be eventually rewritten into
Spad and C++ (hopefully this year).

Having a chance I'll make an announcement - I'm looking for funding
programme in any form (stipend, grant, prospective post-doc) to boost my
work on new type checker / compiler for Spad. If you know of any, drop me a
line.

I'm aware I can expect rapid surge in interest in the project.
Unfortunately I'm not going to actively participate in it till the
beginning of october. I'll be involved in a demoscene project for next 4
weeks and I won't have much time on other things.

-- 
Kind regards
Krystian Bacławski

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to