Here are a few examples of KC3 code. Some are original pieces for this article, some are taken from existing code.
def factorial = fn {
(0) { 1 }
(n) {
if (n > 0) do
n * factorial(n - 1)
...
Yesterday we added support for structs on Apple sillicon. It took us 5 minutes to figure it out.
The struct padding is ok : if size is greater than 32 bits, then align on 32 bits. This is a nice equilibrium between speed and space, and t...
We started writing bindings for GTK+4 in KC3 and it works !
Work in progress on the GTK+4 wrapper for KC3.
A few wrapper functions were written for a simple hello world. There are a lot more to be written if we look at the number of functions with pointers of the [GTK+4 documentation](https://d...
Today we deployed the KC3 git master branch to our production servers : https://www.kmx.io/ and https://kc3-lang.org/.
The latest patches include full support for threads with a brand new `env_fork...
The https://www.kmx.io/ website relies primarily on a private wiki to translate the website pages from Markdown syntax to HTML. The page slug is included in the page body and div classes ...
I did a first try for thread support using pthread on KC3 and it mostly works because the facts database (triple store) and its cursors (iterators) are already locked using pthread rwlock and mutex.
To make this possible many pointers we...
The images are generated on the fly by a custom route and controller in kc3_httpd. The xml body is then rendered with content type image/svg+xml.
This is an e...
Today we released the new kmx.io website.
It is a web application including a blog and user management written in KC3 using kc3_httpd
and its dynamic routes.
The blog and users are sav...
We put a new website online for the KC3 Programming Language
The website is self hosted on kc3_httpd
web server written in KC3 and hosts the documentation for the language.
Please leave your comments on disc...
Today we released KC3 v0.1.12. This release is an important milestone as we are done renaming the project from C3 to KC3.
KC3 is a programming language with meta-programmation and a graph database embedded into the language. It aims to ...
Today we released C3 v0.1.7 : https://git.kmx.io/c3-lang/c3/_tag/v0.1.7.
There is no stable branch, development tree is available as branch master
:
https://git.kmx.io/c3-lang/c3.
C3 is a programming language ...
Today we released cl-unix-cybernetics v0.3.3.
https://git.kmx.io/thodg/cl-unix-cybernetics/_tree/v0.3.3/
This project used to be named Adams. It was renamed in this release to cl-unix-cybernetics.
Today we released kmxgit v0.3.0 : https://git.kmx.io/kmx.io/kmxgit/_tag/v0.3.0.
The new stable branch is v0.3 : https://git.kmx.io/kmx.io/kmxgit/_tree/v0.3.
Today we released kmxgit v0.2.0 : https://git.kmx.io/kmx.io/kmxgit/_tag/v0.2.0 .
The new stable branch is v0.2 : https://git.kmx.io/kmx.io/kmxgit/_tree/v0.2 .
Today we released kmxgit v0.1.1 on https://git.kmx.io/.
...
Usually, backups give you data redundancy. In this article I want to consider functionnal redundancy.
Of course you have to backup often. But what if one of your backups could be used directly if the original machine breaks ?
I usu...
https://github.com/cl-adams/adams/releases/tag/adams-0.3.1
This release is a dependency update only.
Adams is a UNIX system administration tool written in Common Lisp.
You describe your systems (hosts) using resources having prop...
https://github.com/cl-adams/adams/releases/tag/adams-0.3
This release is an update to Adams 0.2.
Adams is a UNIX system administration tool written in Common Lisp.
You describe your systems (hosts) using resources having properti...
I started kmx.io to work as a freelance contractor for making websites.
I know hosting, backend development, frontend.
I want to provide consulting on OpenBSD and Elixir. These are two technologies that will stand the test ...