guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

10/14: gpce-2017: Adjust as suggested by the reviewers.


From: Ludovic Courtès
Subject: 10/14: gpce-2017: Adjust as suggested by the reviewers.
Date: Fri, 1 Sep 2017 11:57:55 -0400 (EDT)

civodul pushed a commit to branch master
in repository maintenance.

commit 832e95ad0012cd09e5713268fe1dca98bda95fe2
Author: Ludovic Courtès <address@hidden>
Date:   Fri Sep 1 14:02:21 2017 +0200

    gpce-2017: Adjust as suggested by the reviewers.
---
 doc/gpce-2017/gpce.skb     | 22 +++++++++++++++-------
 doc/gpce-2017/staging.sbib | 29 +++++++++++++++++++++++++++++
 2 files changed, 44 insertions(+), 7 deletions(-)

diff --git a/doc/gpce-2017/gpce.skb b/doc/gpce-2017/gpce.skb
index b58eafc..8a98b27 100644
--- a/doc/gpce-2017/gpce.skb
+++ b/doc/gpce-2017/gpce.skb
@@ -79,7 +79,7 @@
                                    "\\usepackage{microtype}\n"
                                    ;; "\\usepackage[hypcap]{caption}\n"
                                    ;; "\\DeclareCaptionType{copyrightbox}\n"
-                                   ;; "\\usepackage{balance}\n"
+                                   "\\usepackage{balance}\n"
                                    
                                    ;; Recognize ‘⇒’ and ‘â‡â€™ in LaTeX input.
                                    
"\\DeclareUnicodeCharacter{21D2}{$\\Rightarrow$}\n"
@@ -245,8 +245,8 @@ rollback “for free.† While Guix and Nix are package 
managers, the
 Guix System Distribution (or GuixSD) as well as NixOS extend the
 functional paradigm to whole operating system deployments ,(ref :bib
 'dolstra2010:nixos).])
-      (p [While Guix implements this functional deployment paradigm
-pioneered by Nix, we explained in previous work that its
+      (p [Guix implements this functional deployment paradigm
+pioneered by Nix but, as explained in previous work, its
 implementation departs from Nix in interesting ways ,(ref :bib
 'courtes2013:functional).  First, while Nix relies on a custom
 domain-specific language (DSL), the Nix language, Guix instead
@@ -325,7 +325,7 @@ concludes.]))
       :ident "origins"
       
       (p [Scheme is a dialect of Lisp, and Lisp is famous for its
-homoiconicity—the fact that code has a direct representation as a data
+its direct representation of code as a data
 structure using the same syntax.  “S-expressions†or “sexpsâ€, Lisp’s
 parenthecal expressions, thus look like they lend themselves to code
 staging.
@@ -420,7 +420,9 @@ cases.])
                  :start ";!begin-imagemagick-gexp"
                  :stop ";!end-imagemagick-gexp")))
 
-        (p [G-expressions ,(emph [bind software deployment to staging]).
+        (p [G-expressions ,(emph [bind software deployment to
+staging]): when a gexp is staged, the software and artifacts it refers
+to are guaranteed to be deployed as well.
 A gexp bundles an sexp and its inputs
 and outputs, and it can be serialized with ,(tt [/gnu/store]) file
 names substituted as needed.  We first define two operators:
@@ -689,7 +691,7 @@ Guix.])
 the history of Guix.  Package definitions like that of Figure ,(ref
 :figure "fig-package-def") rely on the previous ad-hoc staging
 mechanism, as can be seen in the use of labels in the ,(tt
-[inputs]) field of definitions.  Guix today includes more than 5,500
+[inputs]) field of definitions.  Guix today includes more than 6,000
 packages, which still use this old, pre-gexp style.  We are
 considering a migration to a new style but given the size of the
 repository, this is a challenging task and we must make sure every use
@@ -711,7 +713,7 @@ flexibility.]))
         (p [GuixSD, the Guix-based GNU/Linux distribution, was one of
 the main motivations behind gexps.  The principle behind GuixSD is
 that, given a high-level ,(tt [operating-system]) declaration that
-specifies user accounts, system services, and other OS settings, the
+specifies user accounts, system services, and other settings, the
 complete system is instantiated to the store.  To achieve that, a lot
 of files must be generated: start/stop script for all the system
 services (daemons, operations such as file system mounts, etc.),
@@ -890,6 +892,11 @@ escaping syntax.  The “code-as-string†paradigm also has 
other side
 effects: comments and whitespace in those strings is preserved, and
 changing those triggers a rebuild of the derivation, which is
 inconvenient.])
+      (p [There are similarities between GuixSD and MirageOS, which both
+aim to unify configuration and deployment into a single high-level
+language framework ,(ref :bib 'madhavapeddy2013:unikernels).  Mirage
+uses code staging through MetaOCaml, though that is limited to the
+implementation of its data storage layer.])
       (p [Code staging is often studied in the context of optimized code
 generation ,(ref :bib '(rompf2012:lms wang2002:s2 aktemur2013:shonan)),
 or that of hygienic macros ,(ref :bib '(kohlbecker1986:hygienic
@@ -955,6 +962,7 @@ the assembly of operating system components in GuixSD.  
Using a
 single-language framework with staging has proved to enable new ways
 of code reuse and composition.]))
    
+   (!latex "\n\\newpage\n\\balance\n")
    (references))
    
 ;;; Local Variables:
diff --git a/doc/gpce-2017/staging.sbib b/doc/gpce-2017/staging.sbib
index 33b277d..12c8e1b 100644
--- a/doc/gpce-2017/staging.sbib
+++ b/doc/gpce-2017/staging.sbib
@@ -147,6 +147,35 @@ Evaluation and Semantics-Based Program Manipulation (PEPM 
1999)")
   (keywords "code generation, domain-specific languages, generative 
programming, high-performance computing, staging"))
 
 
+(article madhavapeddy2013:unikernels
+ (author "Anil Madhavapeddy and David J. Scott")
+ (title "Unikernels: Rise of the Virtual Library Operating System")
+ (journal "Queue")
+ (issue_date "November 2013")
+ (volume "11")
+ (number "11")
+ (month "December")
+ (year "2013")
+ (issn "1542-7730")
+ (pages "30:30--30:44")
+ (articleno "30")
+ (numpages "15")
+ (url "http://doi.acm.org/10.1145/2557963.2566628";)
+ (doi "10.1145/2557963.2566628")
+ (acmid "2566628")
+ (publisher "ACM")
+ (address "New York, NY, USA"))
+
+#|
address@hidden,
+    (author "Thomas Gazagnaire and Anil Madhavapeddy")
+    (title " Statically-typed value persistence for ML")
+    (booktitle "1st Workshop on Generative Technologies")
+    (month "March")
+    year = {2010}
+}
+|#
+
 #|
 (defun skr-from-bibtex ()
   "Vaguely convert the BibTeX snippets after POINT to SBibTeX."



reply via email to

[Prev in Thread] Current Thread [Next in Thread]