Topten Software Blog
Latest updates from Topten Software
Change of Plans, Prefix Shelved.
I've decided to suspend development of Prefix for the time being.
Prefix - ForEach Statements
Prefix now supports foreach loops but their not exactly as you might expect....
Prefix - Anonymous Functions and Lambdas
A day or two ago I wrote about Prefix' support for delegates types - which are great, but they're only half the story. To make the most of them, you really need anonymous functions and lambda expressions.
Prefix - typeof and typename operators
Prefix does not (and will not) have an equivalent to .NET's runtime reflection capabilities. It does however have something a little better than what JavaScript provides - introducing the typename and typeof operators...
Porting "Burst Fish" to Prefix
A couple of days ago I stumbled on this great little JavaScript game tutorial and I thought it would be interesting to port it to Prefix as an example of something a little more "real world" than the hundreds of unit tests I've been using.
Prefix - Delegates
In JavaScript, functions are "first-class objects" that can be stored in variables or passed as arguments to other functions. Prefix delegates are similar except they're strongly typed.
Prefix - Arrays
Prefix now supports arrays and starts to diverge from C#/.NET a little...
Prefix - Generics (again), indexers, read only fields, variadic parameters
In this last week or so I've been working on getting Prefix to the point where arrays are working. Unfortunately this highlighted a couple of design flaw in generics...
Prefix takes One Giant Leap with Support for Generics
After a week or so of mind melting work, Prefix now support Generics! This was a challenge both in compiling the Prefix code and in working out how to generate the required JavaScript. But since there's not much point to a strongly typed language without strongly typed collections, I'm sure the effort is worth it...
Unit Testing Prefix with V8, V8Sharp and PetaTest (and hints on what's coming next)
In developing Prefix I needed a reliable, flexible and fast unit testing framework. To build this I used V8 (Google's JavaScript Engine from Chrome), V8Sharp (a .NET wrapper for V8) and PetaTest (my tiny unit testing framework).
Prefix - Support for Interfaces
Prefix now supports interfaces and is cause for the first bit of "runtime support" code to be generated by the compiler.
A Language (temporarily) called Prefix
For the time being, I've decided to call this language Prefix. I'm not particularly fond of it, but I just need a name - anything's got to be better than [something]. As for the project itself, static constructors and enumerated types are now working.
A Language Called [something] - Code Path Analysis
This is not so much a language feature but the compiler now does a fairly good job of code path analysis.
A Language Called [something] - more language features
I still haven't decided on a name for this project, but the compiler itself is coming along nicely and now supports static members, virtual properties, the using statement and more...
A Language Called [something] - The Story So Far - Part II
Part II of describing what's been implemented in this language compiler I'm working on.
A Language Called [something] - The Story So Far
As mentioned in my previous post I've made some pretty good progress on this little language I'm working on.