2019-06-10

Public Project

It has been a few years in the making, but (update: 9 July) the wait is over, and the work begins: The Ecstasy project is public on Github at https://github.com/xtclang. As part of this process, the licenses (Apache 2.0 for source code, and Creative Commons CC-BY-4.0 for documentation) and the contributor agreements (Apache model for both individuals and organizations) have been published.

The biggest challenge is not in the publishing of the existing work; that is a fairly simple, if tedious, process. The real challenge is in clearly communicating the status of the project, the target of the project, and -- quite importantly! -- who should not use the project.

Based on our internal tracking process, what we are releasing is a version 0.1, and not a version 1.0. Most developers should not invest their time in a project until it nears an actual 1.0 release, because such a project is not ready for production use, and most developers are paid to work on things that are intended for production use.

What actually defines a 1.0 release? For the Ecstasy project, the requirements are clear:
  • A language specification, a runtime specification, and user documentation for the language, the runtime library, and the toolchain.
  • A native runtime implementation, with (minimally) either a JIT or an AOT native compiler.
  • A natural (Ecstasy) runtime library.
  • A natural (Ecstasy) implementation of the toolchain, including the Ecstasy compiler, the Ecstasy assembler, and the Ecstasy linker.
There are many additional "nice to haves" that we hope to complete before we finish the 1.0 release, but there is a reason why the other items are called "nice to haves" instead of "requirements".

We will only "get one chance to make a good first impression", and we are determined not to waste it. We will not ask developers to waste their time attempting to use an incomplete project. We must find a way to communicate that clearly, while simultaneously opening our doors as widely as possible to those who desire to learn, contribute to the project, and propel us towards completion.

No comments:

Post a Comment

All comments are subject to the Ecstasy code of conduct. To reduce spam, comments on old posts are queued for review before being published.