Hi Alejandro,
Zig is a new programming language whose goal is to replace C.
But the Zig project also contains a toolchain to compile
C code (based on clang compiler's code), and can even do
cross platform compilation (although I did not try it for
the Gobo Eiffel compiler yet). So instead of using say
'gcc ...' to compile the C code generated by the Eiffel
compiler, the command will be 'zig cc ...'. Of course this
should be transparent for the Eiffel programmer. The reason
why I work on this integration in Gobo Eiffel is first the
fact that it can be used on all mainstream platforms without
requiring the Eiffel users to have to install a C compiler
(Zig is included in the Gobo Eiffel package). Second, as
mentioned above, it allows cross platform compilation, which
is something I might work on in a next version of Gobo. Third,
the Zig toolchain has a caching mechanism which means that
if a C file has not changed, its object file will be available
in the cache and will be reused, hence avoiding a recompilation
of this file. I saw C compilation time improvements thanks
to this caching mechanism.
On 09/09/2025 0:35, Alejandro Garcia wrote:
> Congratulations!
>
> It looks like an immense amount of work.
>
> This line is very interesting:
>
> * Use Zig toolchain as default backend C compiler (bundled into the
> delivery package).
>
> Can you expand a little bit on it?
>
>
> On Mon, Sep 8, 2025 at 1:08 PM Eric Bezault <
er...@gobosoft.com
> <mailto:
er...@gobosoft.com>> wrote:
>
> The Gobo Eiffel Project provides the Eiffel community with free
> and portable Eiffel tools and libraries. Please see the release
> notes here:
>
>
https://github.com/gobo-eiffel/gobo/blob/master/History.md <https://
>
github.com/gobo-eiffel/gobo/blob/master/History.md>
>
https://www.gobosoft.com <
https://www.gobosoft.com>
>
> Happy Eiffeling.
>
> --
> Eric Bezault
> mailto:
er...@gobosoft.com <mailto:
er...@gobosoft.com>
>
http://www.gobosoft.com <
http://www.gobosoft.com>
>
> --
> You received this message because you are subscribed to the Google
> Groups "Eiffel Users" group.
> To unsubscribe from this group and stop receiving emails from it,
> send an email to
eiffel-users...@googlegroups.com
> <mailto:
eiffel-users%2Bunsu...@googlegroups.com>.
> <
https://groups.google.com/d/msgid/eiffel-
> users/2e1ba688-1f47-416f-99f6-9d47c3f9effd%
40gobosoft.com>.