Тёмный

Introduction to G-Expressions Introduction to G-Expressions 

Подписаться
Просмотров 896
% 26

by Christopher Marusich
At: FOSDEM 2020
video.fosdem.org/2020/AW1.125/gexpressionsguile.webm
This talk will present an overview of G-Expressions and how the GNU Guix project uses them.
The GNU Guix project invented G-Expressions to make it easier to "stage" data or code, in the form of S-Expressions, for later manipulation or evaluation. They are similar to S-Expressions, hence the name, but they provide useful code staging features beyond what can be easily accomplished with just "quasiquote" and "unquote". A high-level object (such as a Guix package) can be included in a G-Expression; the transitive dependencies of that high-level object will then be automatically carried along with the G-Expression. When the G-Expression is converted to an S-Expression and stored on disk for later manipulation or evaluation, the high-level object will be automatically "lowered" to an appropriate representation (such as the package's output path) via a "compiler". Compared to direct manipulation of S-Expressions, G-Expressions can provide a simpler and more intuitive way to stage data or code.
The Guix project uses G-Expressions to accomplish a wide variety of tasks, including:
❮ul❯
❮li❯Building the latest version of Guix via "guix pull"❮/li❯
❮li❯Executing the "liberation" procedure to convert Mozilla Firefox's source code into GNU IceCat's source code❮/li❯
❮li❯Building Docker containers from scratch❮/li❯
❮li❯Executing activation actions during system boot❮/li❯
❮li❯...and more!❮/li❯
❮/ul❯
Room: AW1.125
Scheduled start: 2020-02-02 12:10:00

Наука

Опубликовано:

 

25 окт 2020

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 1   
@ayylmao3765
@ayylmao3765 6 месяцев назад
That was a life saver