styx, a programming languange written in D, is on the bootstrap path

Basile B. b2.temp at gmx.com
Fri Jan 15 19:18:09 UTC 2021


On Friday, 15 January 2021 at 09:54:59 UTC, Ola Fosheim Grøstad 
wrote:
> On Thursday, 14 January 2021 at 17:51:51 UTC, Basile B. wrote:
>> This is the last[1] occasion to speak about a programming 
>> language initiatly made in D, as the bootstrap phase is very 
>> near.
>
> Interesting project! How did you move from D to Styx? (I assume 
> bootstrapping means a self hosting compiler?) Did you write 
> some scripts to translate?

self-hosting is not started yet, maybe next month, classes are 
still to be implemented.
I plan to use dparse for the most part, not only to convert but 
also to detect non bootstrapable code or missing features. Then, 
feature freeze, convert, catch and fix bugs as they will appear 
when feading the compiler with real food.

> I've found myself to sketch new programming languages whenever 
> I hit things in existing languages that I find annoying over 
> the past decade or so.

This is a noble reason. Styx has no such motivations. It is 
simpler than D1 for example and has no killer feature, just 3 or 
4 creative things are
- optional break/continue expression
- explicit overloads
- DotExpression aliases (they have been proposed to DMD this 
summer when I worked "under cover" as Nils.)
- pointers to member function is very different from what I have 
seen so far (no fat pointer)

> I finally decided to start on a lexer for it... How long did it 
> take you to get where you are now?

The project exists since several years (2017-04-13 20:05:51) but 
is only actively developed since july 2020. The game changers 
were:
- to use LLVM instead of libfirm
- to that some part of the initial design were bad
- proper lvalue implementation


More information about the Digitalmars-d-announce mailing list