Archives for CDSoft programs
are now available in the pub section.
🆕Novembre
2023
bang now replaces
make as the build system for nearly all my software
projects (LuaX, ypp, panda, … and even bang itself, as well as this
website).
🆕August
2023
bang is a Ninja build
file generator, scriptable in LuaX.
🆕May
2023
ypp is yet another
preprocessor aiming to unify upp and panda.
🆕February
2023
lsvg is a Lua interpreter
designed specifically for generating SVG images.
🆕since August
2022
LuaX is an eXtended Lua
interpreter and cross-compiler offering a range of useful statically
linked modules (no external dependencies). It integrates well with upp – enhancing its macro system with new functions
and modules – and with Pandoc (as LuaX
can by loaded by the Pandoc Lua interpreter). LuaX was initially
developed for a yet-to-be-released confidential project centered on
actor-oriented programming.
(✔️ǝlƃooפ, ✔️ʞooqǝɔɐℲ, ✔️uozɐɯ∀): Stop feeding
the giants – choose freedom and digital respect!
📰Friday
2. April 2021
upp is a companion tool to
nil is a lightweight text preprocessor, scriptable with Lua.
🆕since
December 2020
Exploring the actor model in an embedded multicore context. C imperative
components are refactored into pure stream functions with no side effect
➡️ low-level C with
high-level functional properties 🏆
📰Saturday 30. January 2021
Experimenting with Pandoc
Lua filters. panda
serves as a lightweight and consistent alternative to abp offering features like
text substitution, file inclusion, diagram generation, and scripting.
🆕Sunday 24.
May 2020: Working at EasyMile for more than 8 years.
Real-time critical software in C, combined with Haskell-based simulation
and monitoring -— a powerful and enjoyable combo! 😄
With over 26 years of experience in safety-critical systems, I bring
deep expertise in both aeronautics and autonomous vehicles.
I spent 18 years at Sopra, contributing to major projects for Airbus,
Thales, Liebherr, and others, under DO-178B certification standards.
For the past 8+ years, I’ve been driving innovation at EasyMile, where I design and develop
high-performance, real-time multicore software in C for autonomous
mobility systems, with a robust simulation and testing framework
entirely built in Haskell.
Interested in the full story? Feel free to check out my resume.
Personal projects
I’m passionate about free and open-source software. I primarily work
with GNU/Linux, and most of my development is done in Haskell, Lua, and
C. This page showcases a selection of my personal projects.
You can find the full list on https://codeberg.org/cdsoft. Whenever possible, it’s
highly recommended to build them from source to ensure compatibility and
up-to-date versions. If you do need precompiled binaries, some are
available in the ‘pub’
section.”
Lua / LuaX
LuaX: Lua eXtended. A
simple Lua interpretor and compiler for Linux, MacOS and Windows, using
Zig as a cross-compiler.
ypp: Yet a
PreProcessor. It’s an attempt to merge UPP and Panda. It acts as a
generic text preprocessor as UPP and comes with macros reimplementing
most of the Panda functionalities (i.e. Panda facilities not restricted
to Pandoc).
panda: Panda -
Pandoc add-ons (Lua filters for Pandoc). A lightweight abp
alternative.
lsvg: LuaX
interpreter specialized to generate SVG, PNG and PDF images.
upp (discontinued,
consider using ypp
instead): Universal PreProcessor. A lightweight pp
alternative.
In Haskell
abp (discontinued,
consider using ypp or panda instead):
Abstract Preprocessor for Pandoc AST.
pp (discontinued,
consider using ypp
instead): Generic Preprocessor for Pandoc inspired by DPP/GPP.
Vim
todo: basic but
efficient todo list plugin for Vim
pwd: basic but
efficient password manager plugin for Vim