v2?

166 views
Skip to first unread message

Ozz

unread,
Jul 11, 2012, 9:02:55 AM7/11/12
to seexpr-discuss
Hi,

I've just started a small project with SeExpr and noticed the upcoming
v2 branch has been inactive for a few months now. Is it worth basing
my implementation on this branch, given that the API is slightly
different, or should I stick with the main one?

Btw, whw is the LLVM version going? ;)

Cheers,
Osiris

Andrew Selle

unread,
Jul 12, 2012, 9:37:01 PM7/12/12
to seexpr-...@googlegroups.com
The short: The v2 branch is the experimental branch where I've integrated a lot of work from an intern project we had last summer. This is a slow burn project for me, so I would recommend everyone stick with the version 1.  
 
Details about the v2 branch:

- This adds mainly type features. We are experimenting with adding uniform, constant and varying modifiers to data types as well as string and floating points to the language.
- The interpreter has been rewritten to do a type check in a more formal way so it can infer the types (which will be important for LLVM). It uses a very interesting template strategy to use as specialized versions of the code as possible to hide the cost of the complexity of having to loop over each component of the vector.
- This adds a lot of complexity to the implementation that I have yet to battle test.
- This is the branch that I will most likely eventually integrate the LLVM

LLVM status
- I have a separate version of the language which was a variant that I used to test the ideas of LLVM. It was relatively successful, but it was not compatible. So, I decided to mutate SeExpr into a form that would be ready to integrate this.
- If there is interest in this variant language I can put it up on github, but I will warn that it is not stable and it does not have important features like the builtin library.
- It does have some interesting tidbits like being able to reproduce many of the builtin functions of seexpr as user-defined functions that auto-inline into the native code.

Overall, my plan is to write up a clearer roadmap of SeExpr and translate that into github issues. I'd love to help from anyone that has time after that point!

-Andy
Reply all
Reply to author
Forward
0 new messages