• Advertisement
Sign in to follow this  

RFC: Epoch Programming Language, Release 14

This topic is 1736 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

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
Advertisement

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
Sign in to follow this  

  • Advertisement