Jump to content

  • Log In with Google      Sign In   
  • Create Account

Awesome job so far everyone! Please give us your feedback on how our article efforts are going. We still need more finished articles for our May contest theme: Remake the Classics

The Bag of Holding



Implementing Higher Order Functions on Top of LLVM

Posted by ApochPiQ, 07 April 2013 · 274 views
Epoch
One of my favorite features of the Epoch programming language  is the inclusion of first-class higher order functions:apply : (thefunction : ){    thefunction()}apply : string param, (thefunction : string -> string) -> string ret = thefunction(param)mutate : string param -> string ret = param ; " foo"entrypoint :{    string s = apply("test", m...


Quoth the VM: I'm not dead yet!

Posted by ApochPiQ, 05 April 2013 · 245 views
Epoch
As I've written about previously, I'm working on destroying the Epoch virtual machine for once and for all.Tonight I hit a major milestone in that effort: 43 of 54 compiler tests are now passing. This is the result of dozens of bugfixes and a truly hideous amount of surgery on the JIT code.Of the tests that still fail, there are four major classes of issu...


Death to the VM

Posted by ApochPiQ, 13 March 2013 · 419 views
Epoch
After a brief time away, I've come back to Epoch ready to hack on the thing again.I've remarked several times in the past that I'd like to get rid of the VM implementation that currently runs most Epoch code. This is motivated by a few factors, but primarily performance and a desire to eliminate duplication. As it stands, the VM is redundant for any Epoch...


Concurrent programming bug - the solution

Posted by ApochPiQ, 04 February 2013 · 577 views

In my last post  I outlined a bug that recently bit me in a reference-counting mechanism in a concurrent system.If you haven't solved the mystery yet, here's some hints from common guesses I've seen from various people:The reference count is implemented using atomic intrinsics.Atomicity and alignment are proven correct for the platform in question.Mutual...


Concurrent programming is hard, mmmkay?

Posted by ApochPiQ, 01 February 2013 · 698 views

Here's a fun bug that I've had in one of my projects for quite some time, which I finally figured out and fixed today.As with most bugs of this nature, it took dozens of readings through the code to spot it, and by the time I finally realized what I'd done, I felt incredibly stupid. In hindsight it's bloody obvious, but it highlights exactly the kind of m...


Dude, Just Chill Out.

Posted by ApochPiQ, 24 January 2013 · 520 views

Hi, my name is Apoch, and I'm a workaholic.I lived for many years in denial of this fact. It has only been very recently that I've begun to really understand the nature of my condition. There's any number of fancy ways to dress it up, but the bottom line is, I'm addicted to getting things done .I started this month with a very tight work schedule: an impe...


Epoch - still getting faster!

Posted by ApochPiQ, 04 January 2013 · 479 views
Epoch, Ray tracing
With little bits and pieces of free time over the holiday break, I've been working on adding some more oomph to the Epoch native machine code JIT system. In a nutshell, this means a lot of operations which used to be slow and costly are getting cheaper and more efficient.I've also experimented with the LLVM optimizers a bit and upgraded to version 3.2, wh...


Epoch Realtime Raytracing Demo

Posted by ApochPiQ, 02 December 2012 · 742 views
Epoch
As I've written about in the past couple of weeks, I've been investing a heavy amount of time into the Epoch programming language, particularly in the realm of runtime performance. Most of the work has gone into implementing native code generation via LLVM so that Epoch programs aren't...


Oh. Yeah.

Posted by ApochPiQ, 30 November 2012 · 462 views
Epoch
Yeah, this just happened:




Abusing speed for fun and profit (not that kind of speed)

Posted by ApochPiQ, 30 November 2012 · 430 views
Epoch
It's a slow Friday afternoon so I figured I'd brain dump some things I've been playing with for Release 14 of Epoch.

As I've mentioned in the past, one of my proof-of-concept programs for R14 is a raytracer. This is for a few reasons:

Raytracing is just cool (and I have a nostalgic...






May 2013 »

S M T W T F S
   1234
567891011
12131415161718
19202122 23 2425
262728293031 

Recent Entries

Recent Comments

PARTNERS