#Declarative

Declarative programming for Digital Preservationists @ NTTW8


by @beet_keeper

Just released on the No Time to Wait (NTTW) YouTube channel is my presentation from NTTW8 in Karlsruhe, Germany. (Slides also available here).

The presentation follows up on my proposal for iPRES 2024 and allowed me to present parts of what was, in the end, a pretty significant paper (in terms of word count).

Some of my reflections on the presentation are below.

Continue reading “Declarative programming for Digital Preservationists @ NTTW8”

#Code #Coding #Conferences #declarative #declarativeLanguages #declarativeProgramming #jsonid #KVAL #kvalAccessLanguage #NoTimeToWait #NTTW #NTTW8 #NTTW9 #Programming #programmingParadigms #software #SoftwareDevelopment #talks

An slide excerpt from my presentation Declarative Programming for Digital Preservationists showing how network effect can be embraced and side-effects are reduced in the declarative paradigm.
Hacker Newsh4ckernews
2025-04-24
2025-03-28

Interested in , , and ?

Watch Giacomo Leidi's talk about self-hosting @forgejo using Guix's container backed configuration. Check it out 👇

youtu.be/MWwunOoj-PI

His Gocix project shows how to bring together container-based software while benefiting from the resilience of declarative configuration! He has services for and more!

@paulbutgold

Image of the title slide introducing Giacomo Leidi's slide titled "Self-hosting Forgejo in Guix using OCI containers", with a subtitle of "Declarative Docker and OCI Container Services".
2025-03-24

Want but with the power of configuration? The recoverability of for system configuration?

Wednesday it's the online meet-up! With a great talk by @paulbutgold
about running docker / oci containers using the Guix configuration system.

His Gocix project has , , , and examples.

Meet-up details:

meetup.com/guix-social/events/

Image of the title screen for Giacomo Leidi's talk with the text "Self-hosting Forgejo in Guix using OCI Containers", and the sub-heading "Declarative Docker and OCI Container services".
2025-03-22

@nimue You need and configuration! That way if something goes wrong you can revert to a known good version before the update.

Check out (or ), if you want to try something "completely different" - bit of a learning curve though - but very rewarding.

2025-03-01

Is #openSUSE going for #declarative with the introduction of #Agama ? 🤔

agama-project.github.io/

2025-02-22

For social I'm going to do a talk for on trying as a distribution. Basically, how to install Guix System, and getting started.

I'm going to do it in a as that's an easy way to try the derived goodness without fully committing.

What do you think the key things are to cover? Any particular sticky areas? Anything that was super interesting when you were getting started? What do need to know?

vintage screwlisp accountscrewtape@mastodon.sdf.org
2025-02-12

#programming #example #tutorial #commonLisp #series #declarative #functionalProgramming #lazyEvaluation #medium #article

medium.com/@screwlisp/common-l

I cover
- getting series and using it in a package
- Series' mapping
- Series' iteration (perform a side effect for the whole series, return nothing)
- Series' alter (in-place destructive modification of its input sequence)

Medium.com says it's possible to read my article in two minutes. Feel free to respond with the number of minutes it took you.

2025-01-28

What kinds of contributions do people make to ?

As a package manager and distribution unsurprisingly most send patches to update packages.

But people also help by reviewing patches, handling and testing bugs, writing documentation and translating.

And it's easy to get started - there's even a handy web page:

guix.gnu.org/en/contribute/

And if you're at there will be plenty of people at the computing room on Sunday, or maybe even the room

2025-01-27

How is used as a ?

System level packages are managed through configuration same as . User level packages using Guix Home.

Roughly 50% use guix home to manage their - big increase over hosted users.

40% to package their own - 36% for .

Lots of requests to deal with dependencies (e.g. Python's requirements.txt) and languages like and

See:

guix.gnu.org/en/blog/2025/guix

Screenshot showing table that sets out which parts of Guix are used when it's installed as a GNU/Linux distribution
2025-01-25

About 50% of users adopt as a distribution. Most in a config.

That surprised me as it's harder than starting with it as a hosted package manager.

A lot of are interested in configuration. Feels like people are experimenting with and . Users commonly mentioned and

About 5% initially adopt as a server, and then when they have confidence it goes up to about a third. That's cool!

2025-01-24

@sigismundninja whoop whoop for being 💪

We're just running the results of our user survey and the love of , has seen lots of new users! Also has which is as as can get!

Check out this blog post:

guix.gnu.org/en/blog/2025/guix

Runs well in a and there's a package ;-))

2025-01-24

is growing and many new users are adopting it!

Almost 75% of the user-base are recent adopters having used it for less than 4 years. 50% less than 2 years!

It's a similar to who's survey showed 65% of users were 0-2 years.

There's been a surge of interest in the benefits of and .

And with we also get and - but don't worry you don't _have_ to use to use Guix (said the user)

See:

guix.gnu.org/en/blog/2025/guix

Bar chart showing participants in the Guix survey's GNU Guix experience. 26% less than 1 year; 23% between 1-2 years; 25% between 2-4 years, 17% more than 4 years; 9% stopped using Guix.
2025-01-24

The survey also showed that our users are knowledgeable people. Almost 50% are experts/advanced and 47% are intermediate!

A lot of the attraction is the value of declarative configuration and reproducibility. Users also identified that Scheme, Guile and Lisp are cool! Perhaps the overlap of two different communities! That was my path from and /#debian

See Q1 in the post:

guix.gnu.org/en/blog/2025/guix

Bar chart showing survey participants GNU/Linux knowledge. Most uses are experienced.
Harris Georgiouxgeorgio_gr
2024-11-29

: Estimation of cos(x) via dynamic series in Clojure

This is a very simple code snippet demonstrating the basic syntax of Clojure, which is considered as an "improved LISP" but with very important additional advantages, like being JVM-based and very closely tied to Java idioms.

Watch the full video in Youtube channel central -- youtube.com/@apneacoding

Harris Georgiouxgeorgio_gr
2024-11-29

: Estimation of cos(x) via dynamic series in Clojure

This is a very simple code snippet demonstrating the basic syntax of Clojure, which is considered as an "improved LISP" but with very important additional advantages, like being JVM-based and very closely tied to Java idioms.

Watch the full video in Youtube channel central -- youtube.com/@apneacoding

Harris Georgiouxgeorgio_gr
2024-10-24

: Fibonacci numbers calculation in Clojure

Watch the full video in Youtube channel central -- youtube.com/@apneacoding

Enable captions for more details and walk-through. Source code available at the Github repository (see channel info).

Harris Georgiouxgeorgio_gr
2024-10-24

: Fibonacci numbers calculation in Clojure

Watch the full video in Youtube channel central -- youtube.com/@apneacoding

Enable captions for more details and walk-through. Source code available at the Github repository (see channel info).

Harris Georgiouxgeorgio_gr
2024-10-18

: Fibonacci numbers calculation in Elixir

This is a very simple code snippet demonstrating the basic syntax of Elixir, which is considered as one of the 'pure' functional languages with a rich set of idioms.

See the full video in Youtube channel central -- youtube.com/@apneacoding

Source code available at the Github repository (see channel info).

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst