Sign in to follow this  
ApochPiQ

RFC: Epoch Programming Language, Release 14

Recommended Posts

ApochPiQ    23003
As many of you may know by now, I've been working on a programming language for quite some time. (I like to say that it's really only been six months or so of real work, and a few years of slacking off in between.)

Release 14 of this language, Epoch, is now available.

In this release, I've focused on performance of the runtime system - specifically, 100% native code generation via LLVM. The language remains fully garbage collected and still manages to perform quite acceptably.

You can find out plenty of details on the language itself at the link above; but here's a quick taste of what it looks like:
fib : 0 -> 1
fib : 1 -> 1
fib : integer n -> integer f = fib(n - 1) + fib(n - 2)

deep_thought : -> integer answer = 0
{
    integer a = fib(5)
    integer b = fib(8)
    answer = a + b
}

entrypoint :
{
    integer the_answer = deep_thought()
    print(cast(string, the_answer))
}
It's like 1AM or something ridiculous, so I'm going to leave this brief for now; but feel free to bombard the thread with questions, comments, feedback, vitriol, etc :-)

Share this post


Link to post
Share on other sites
Eliad Moshe    862

0. Syntax for function specialization + returned value initialization is very cool! 

1. The lack of semicolons makes the code being much cleaner.

2. Just from curiosity: What led you to choose the cast syntax ?

3. Is there a linkage interface?

 

++

Edited by Eliad Moshe

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this