Gordon programming language
Basile B.
b2.temp at gmx.com
Sun Oct 24 11:33:51 UTC 2021
On Sunday, 24 October 2021 at 10:13:14 UTC, Tero Hänninen wrote:
> Hello,
>
> decided I'd post about my primarily D-influenced programming
> language here.
>
Nice work.
> It's data oriented, compact and despite D's influence, has a
> very different personality with no emphasis on metaprogramming
> – albeit having simple polymorphism and even compile time
> execution. Stability is something I care about deeply so you
> can expect few to no deprecations over time after some initial
> instability perhaps.
>
> Feature set is not large and I'm not willing to add a whole lot
> of "cool" convenience features besides what there already is,
> and there is no support for either OO or functional style
> programming. However, I'm rather open to adding features that
> unlock great performance benefits, such as intrinsics support.
Support for LLVM intrinsics should be indeed of a great value
added.
That could work by adding a new attribute with a string exp to
recognize it.
without that the oprations that are done in the FPU can only be
based on assembly and less inlinable.
> The module system is similar to Rust and works nicely with
> conditional compilation in that you can exclude entire modules
> and directories and, unlike in Rust, use conditional symbols
> that are automatically visible to all submodules.
>
> The compiler frontend is about 34k lines of code, self hosting
> and very fast. LLVM is the backend, but with the MIR used in
> the compiler, it's fairly straight forward to bolt on other
> backends.
Congrats for reaching self-hosting.
Once thing I notice is that there does not seem to be a way to
generate debug info. You really should support them (LLVM C api
has a whole header with everything you need to achieve that),
because not only this allows to debug the compiler more easily
but also can be used to easily instrument code in a generic way.
With debug info, you can of course debug but also profile
(valgrind --tool=calgrind), find leaks (valgrind), cover (kcov),
etc.
> Compiler source code:
> https://github.com/tjhann/gordon
>
> Website:
> https://tjhann.github.io/gordon-web/
>
> I don't know how to make websites... and I want a much lighter
> background actually.
>
> Take a look! :)
More information about the Digitalmars-d-announce
mailing list