Jump to content



The Bag of Holding



Photo

Rapid-fire debugging thoughts

Posted by ApochPiQ, 16 May 2012 · 13,260 views

Just a collection of assorted things that have been running through my mind during the past week and a half of marathon debugging...

Unless you have a really darn good reason, don't use different coordinate systems for different parts of your game, and especially not if you're using floating-point representations. Conversion back...


Photo

Epoch - Generics vs. Templates

Posted by ApochPiQ, 08 May 2012 · 327 views
Epoch
This is mostly just some rambling to try and organize my own thoughts regarding the Epoch type system, but it may also be interesting for general consumption, so I decided to post it here instead of just leaving it in my scratch book.


One of the big concerns I have for the next steps of Epoch's development is supporting generic programming. In...


Photo

Sum types are now more powerful

Posted by ApochPiQ, 06 May 2012 · 241 views
Epoch
I worked on the sum type implementation for a while, and finally got it up to the point where you can dynamically alter the type of data stored in a sum-typed variable. This is subtly different from dynamic typing; the possible types of the variable are bounded at compile time, and the compiler guarantees that you can always act on the data at run...


Photo

More steroids for Epoch's type system!

Posted by ApochPiQ, 28 April 2012 · 278 views
Epoch
This program now compiles and runs under the Epoch trunk:

//
// SUMTYPEFUNCTION.EPOCH
//
// Basic test of functions operating on sum types
//

type test : integer | string



sumfunc : integer param
{
assert(param == 42)
}

sumfunc : string param
{
assert(param == "bletch")
}


entrypoint :
{
test foo = 42
test bar =...


Photo

Epoch Type System += Steroids

Posted by ApochPiQ, 27 April 2012 · 301 views
Epoch, Type system
Another productive week in Epoch-land!

The first phase of my recent set of changes was to introduce the internal concept of type families. These are groups of type ID tags that represent different categories of semantics. For example, I used to reserve everything above the ID number 20 as "structure" types; now, structure type IDs...


Photo

Musings on Epoch features

Posted by ApochPiQ, 24 April 2012 · 618 views
Epoch
I'll just leave this here...


//
// Define a recursive structure for a singly linked list
//
// A list must contain at least one element. If empty lists
// are desired in a given context, use the algebraic sum
// type (list<T> | nothing) to indicate that the list may
// be empty.
//
// Note that the "next" member is either a...


Photo

It's Finally Here!

Posted by ApochPiQ, 22 April 2012 · 634 views
Epoch, Release 12
I've finally launched Release 12 of the Epoch programming language!

Go check out the sources and binaries and also the...


Photo

Software at Scale: Practice Like You Play

Posted by ApochPiQ, 19 April 2012 · 1,624 views

I recently learned an interesting lesson in developing software that needs to scale to large capacities.

I can't get into the specifics of what I was working on, but the essential facts are more or less as follows:
It includes a cache algorithm
I tested it with as much load as my workstation could generate
In tests, it performed well as...


Photo

Epoch Release 12 - Final Phases of Preparation!

Posted by ApochPiQ, 18 April 2012 · 482 views
Epoch, Release 12
At long last, the checklist of major items to do for Epoch Release 12 is empty!

There are a few lingering TODOs in the code which I will probably try and knock out over the next few days, and then it's down to deciding how much additional work I really feel like doing before shipping R12. Considering that all the compiler tests pass, Era compiles...


Photo

Homing in on Epoch Release 12

Posted by ApochPiQ, 14 April 2012 · 526 views
Epoch, Release 12
The task list for Epoch Release 12 continues to shrink!

Right now there are basically six major things that definitely need to be done before I'd even consider shipping the release:
Operator precedence reimplementation (basically just need to do a quick Shunting Yard implementation in the new compiler)
Fix up code generation of...






May 2012 »

S M T W T F S
  12345
6789101112
13141516171819
20 212223242526
2728293031  

Recent Comments

PARTNERS