Jump to content

  • Log In with Google      Sign In   
  • Create Account

The Bag of Holding



Slimming down the Epoch runtime and improving program start times

Posted by ApochPiQ, 18 October 2014 · 210 views
Epoch
Right now a big limitation of the Epoch program execution model is the fact that .EXEs generated by the compiler are not in fact native binaries. They are compact bytecode wrapped in a thin shim that churns said bytecode through an LLVM wrapper layer each time the program is launched. This means that every single time you start an Epoch program, it is bas...


Epoch Mailing List

Posted by ApochPiQ, 13 October 2014 · 220 views
Epoch
I've spun up a mailing list for the Epoch project, mostly because I'm tired of having conversations about it span half a dozen websites and PMs and blah blah.

Here's the link: clicky . Or you can email epoch-language@googlegroups.com to accomplish the same thing.

It should be open to anyone to come and talk about the language or just ask questions. I'll...


Three toads and the spit of a badger

Posted by ApochPiQ, 13 October 2014 · 199 views
Epoch
So Epoch has a couple of warts that I'm looking at smoothing out. One of them has to do with overloads that do type decomposition of algebraic sum types:

//// How things look today//type Optional<type T> : T | nothingTest : integer x{ print(cast(string, x))}Test : nothing{ print("Nothing")}entrypoint :{ Optional<integer> exists =...


Watching syntax evolve

Posted by ApochPiQ, 08 October 2014 · 307 views
Epoch
I'm still thinking a lot about the question of task syntax in Epoch. The more I contemplate the matter, the less I like the idea of having tasks be overloaded as the "only" way to do namespacing. I also don't like the idea of static methods/data very much.

I still really like keeping tasks as the single mechanism for packaging functionality with data. I...


Epoch Release 15 is now available

Posted by ApochPiQ, 06 October 2014 · 255 views
Epoch
Release notes .


I didn't get a ton of votes, but all the votes I got were for doing a release sooner rather than later. So here you go, with all the warts and incomplete stuff.

This is mostly a milestone preview for those (few) of you who are really watching the project; think of it as a sneak peek more than a stable development platform. Even still, y...


Plodding ever onward

Posted by ApochPiQ, 05 October 2014 · 247 views
Epoch
I've begun the mammoth task of refitting the Epoch compiler to believe in namespaces.

Up until now, all names have been global, and all named entities have existed as peers in the global space. (The exception of course being local variables and function parameters/return slots.)

So far, I've moved algebraic sum types and scope metadata to be tracked in...


Spaces for all the things, and everything in its space

Posted by ApochPiQ, 28 September 2014 · 194 views
Epoch
So Epoch has managed to self-host (as of an embarrassingly long time ago) and the Era IDE is slowly turning into something actually worth using. Over the past few days I got a rudimentary symbol lookup feature done, where you can press F11 to process a project and F12 with the text caret over a symbol to jump immediately to the definition of the symbol. T...


Playing with colors!

Posted by ApochPiQ, 22 September 2014 · 183 views
Epoch
Been playing around with a dark theme for Era:



Syntax highlighting still needs some love, but it's getting there.


Note that the IDE now highlights structure type names and function names. This is currently activated by pressing F12, which triggers a parse of the entire project. The parse stores off relevant identifiers for use in syntax highlighting...


Argh, bitrot.

Posted by ApochPiQ, 19 September 2014 · 279 views
Epoch
Turns out that leaving a project alone for six months is a great way to discover that it's full of mysterious bugs you don't remember having.

I noticed some weird behavior with Era, the Epoch IDE, earlier this evening, and started poking around looking for explanations. It turns out that in some weird combination of circumstances, the Epoch program (Era...


A Quick Introduction to Sampler-Based Profiling

Posted by ApochPiQ, 17 September 2014 · 1,461 views
FAQ
Sampler-Based Profiling: The Quick Version
So you're happily working on some code, and suddenly it happens: everything is just too damn slow ! Something is eating up all your performance, but it's not immediately obvious what to do about it.

One of the first things any experienced programmer will tell you is to profile . In a nutshell, this is a grizzl...






October 2014 »

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

Recent Comments

PARTNERS