Subject: [bug#37411] [PATCH] gnu: Add fennel.

From: Ludovic Courtès <[email-masked]>
Date: Tue, 01 Oct 2019 23:17:26 +0200

Hi Alex,

Alex ter Weele <[email-masked]> skribis:

>>>From 5156cfff4e0e9c8b7223213ab28c891c97641e6c Mon Sep 17 00:00:00 2001
> From: Alex ter Weele <[email-masked]>
> Date: Sat, 7 Sep 2019 16:18:38 -0500
> Subject: [PATCH] gnu: Add fennel.
>
> * gnu/packages/fennel.scm: New file.
> * gnu/local.mk (GNU_SYSTEM_MODULES): Add fennel.scm.

Some comments to complement what 宋文武 wrote earlier.

> +++ b/gnu/packages/fennel.scm
> @@ -0,0 +1,63 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;; Copyright © 2019 Alex ter Weele <[email-masked]>
> +

Please add a complete header as in the other files.

> +         (replace 'install
> +           (lambda _
> +             (let* ((out (assoc-ref %outputs "out"))
> +                    (data (string-append out "/share/"))
> +                    (bin (string-append out "/bin/")))
> +               (copy-recursively (assoc-ref %build-inputs "source") data)
> +               (install-file "fennel" bin)
> +               (wrap-program (string-append bin "fennel")
> +                 `("LUA_PATH" ";" prefix (,(string-append data "?.lua")))
> +                 `("FENNEL_PATH" ";" prefix (,(string-append data "?.fnl"))))))))))

Could you add #t at the end of the phase?

> +    (home-page "https://fennel-lang.org/")
> +    (synopsis "Lua lisp language")

Maybe “Lisp-like programming language embedded in Lua”?

> +    (description "Fennel is a programming language that brings together the
> +speed, simplicity, and reach of Lua with the flexibility of a lisp syntax and
> +macro system.
> +
> +    * Full Lua compatibility: Easily call any Lua function or library from
> +Fennel and vice-versa.
> +
> +    * Zero overhead: Compiled code should be just as or more efficient than
> +hand-written Lua.
> +
> +    * Compile-time macros: Ship compiled code with no runtime dependency on
> +Fennel.
> +
> +    * Embeddable: Fennel is a one-file library as well as an executable.
> +Embed it in other programs to support runtime extensibility and interactive
> +development.
> +
> +Anywhere you can run Lua code, you can run Fennel code.")

Please use @itemize and @item for the bullet list.

Could you send an updated patch?

Thanks!

Ludo’.