Tuesday, October 30, 2012

What's cooking in the EDT kitchen? - October 30

EDT 0.8.2 Milestone 3 is nearly finished!  We're in the final week of development now.

In the past week we've been merging our extensibility changes into the main development branch.  We've updated our tests and samples.  Work continues on language enhancements like classes.

Matt

Tuesday, October 23, 2012

What's cooking in the EDT kitchen? - October 23

As I wrote in last week's post, we continue making good progress towards 0.8.2 Milestone 3.  The milestone will be finished in two weeks.

Extensibility
  • Our system types can now be compiled under the extensible framework.  No more "magic" or patching things up by hand!  Once this is done we'll start merging the extensibility changes into the main code stream (and our nightly builds).
Language
  • Continued working to implementing classes.
  • We're working on a new rule to decide when two arrays are compatible.  The current rule is complicated and maybe inconsistent.  The simplest rule (both arrays must be exactly the same type, unless one is an array of Anys) is more strict than we've been in the past.
  • We decided that only eglx.lang.* will be implicitly imported in an egl file.  Importing eglx.lang.* gives you basic things like int, string, etc.
Other
 Matt

Monday, October 15, 2012

What's cooking in the EDT kitchen? - October 15

We continue making good progress towards our next milestone.

Extensibility
  • We're close to getting our system types compiled under the new extensible framework.  Once this is done we'll start merging the extensibility changes into the main code stream (and our nightly builds).
Language
  • Started implementing classes.
  • We decided that "abstract" functions will be allowed in a class. An abstract function contains no statements and is terminated by a semicolon instead of the end keyword. In order for our parser to understand this new syntax, we will remove support for the do-nothing statement that consists of only a semicolon.
  • We revised the rules for comparisons involving the bytes type. Our old rule was that both bytes value must have a length, and the lengths must be the same. So you couldn't compare a bytes(3) to a bytes(4), or a bytes(3) to a bytes with no length. These comparisons are now valid. Comparing bytes(n) and bytes will be like comparing string(n) and string.
Other
Matt

Monday, October 8, 2012

What's cooking in the EDT kitchen? - October 8

Hello. Here I am again, letting you know what we've been up to in the EDT kitchen. You can read my previous post to learn what we did last week.

Extensibility
  • We're close to getting our system types compiled under the new extensible framework.  Once this is done we'll start merging the extensibility changes into the main code stream (and our nightly builds).
Language
  • Finished parser and compiler work for the "if-then-else" ternary operator. It hasn't yet been implemented in the generators.
  • Wrote many tests for the new bytes type.  The next step is to run the tests and fix all the problems we find.
Other
Matt

Tuesday, October 2, 2012

What's cooking in the EDT kitchen? - October 2

We finished EDT 0.8.2 Milestone 2 last week. You can read about it on our new and noteworthy page.

Here's a link to last week's "What's Cooking?" post.

This week is the first week of Milestone 3, which will include the extensibility features we've been working on for so long, as well as improvements to the language.

Extensibility
  • Modifying the validation code to use the new extensibility features.
Language
  • Began work on the "if-then-else" ternary operator.  Example: x = y > 0 ? y : -1;
Other
Matt

Version 0.8.2 Milestone 2 is available

The new milestone build is waiting for you:


-- Ben