unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Carlo Zancanaro <carlo@zancanaro.id.au>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 35082@debbugs.gnu.org, Per Bothner <per@bothner.com>
Subject: [bug#35082] [PATCH] gnu: Add kawa.
Date: Thu, 04 Apr 2019 11:33:37 +1100	[thread overview]
Message-ID: <878swqip7i.fsf@zancanaro.id.au> (raw)
In-Reply-To: <87d0m2rfuq.fsf@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 1608 bytes --]

Hey Ludo’,

On Thu, Apr 04 2019, Ludovic Courtès wrote:
> Carlo Zancanaro <carlo@zancanaro.id.au> skribis:
>
>> The suggested synopsis is "Java framework and implementation of 
>> Scheme, Elisp, and more", and the suggested description is "GNU 
>> Kawa is an implementation of the Scheme programming language 
>> that is built on top of the Java platform.  It is thus 
>> conveniently integrated with Java and benefits from this by 
>> having a compiler, optional static typing, and so on.  Kawa 
>> also serves as a framework for implementing other programming 
>> languages on the Java platform.  Included in Kawa is qexo, a 
>> partial implementation of XQuery in Java."
>
> I actually have a slight preference for these :-), I find it 
> more factual than what you propose, but I’m happy either way.

The main difference is the emphasis. The suggested text emphasises 
the "framework" aspect of Kawa, whereas my text emphasise the 
"Scheme" aspect (with a short mention of the framework at the 
end). I don't know which emphasis the project desires, so I've 
Cced Per Bothner in case he has a preference. The text that I have 
used in the description is loosely taken from the Kawa home 
page[1].

The placement in scheme.scm makes the Scheme emphasis a natural 
choice. Compare with the description of Racket, which is also a 
framework for building programming languages, but our synopsis and 
description emphasise that it is an implementation of Scheme.

I've attached a patch with the updated URL.

Carlo

[1]: https://www.gnu.org/software/kawa/index.html


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-kawa.patch --]
[-- Type: text/x-diff, Size: 2385 bytes --]

From bc7cd37b4bf8acf34a1f429a965f9bf28900b3d1 Mon Sep 17 00:00:00 2001
From: Carlo Zancanaro <carlo@zancanaro.id.au>
Date: Mon, 25 Feb 2019 16:41:22 +1100
Subject: [PATCH] gnu: Add kawa.

* gnu/packages/scheme.scm (kawa): New variable.
---
 gnu/packages/scheme.scm | 32 +++++++++++++++++++++++++++++++-
 1 file changed, 31 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index 9dbb3713ee..6d1051abfb 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -31,7 +31,7 @@
   #:use-module (gnu packages)
   #:use-module ((guix licenses)
                 #:select (gpl2+ lgpl2.0+ lgpl2.1+ lgpl3+ asl2.0 bsd-3
-                          cc-by-sa4.0 non-copyleft))
+                          cc-by-sa4.0 non-copyleft expat))
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix git-download)
@@ -69,6 +69,7 @@
   #:use-module (gnu packages tls)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages libedit)
+  #:use-module (gnu packages java)
   #:use-module (srfi srfi-1)
   #:use-module (ice-9 match))
 
@@ -1245,4 +1246,30 @@ multilingual support are some of the goals.  Gauche comes with a package
 manager/installer @code{gauche-package} which can download, compile, install
 and list gauche extension packages.")
     (license bsd-3)))
+
+(define-public kawa
+  (package
+    (name "kawa")
+    (version "3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://gnu/kawa/kawa-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1k9qpydc64ar4aqyg3q7jmmxy503ayj85227qfhc5n6ngchqavhy"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:parallel-build? #f
+       #:parallel-tests? #f))
+    (inputs
+     `(("icedtea" ,icedtea-8 "jdk")))
+    (home-page "https://www.gnu.org/software/kawa/")
+    (synopsis "Scheme on the Java Virtual machine")
+    (description "Kawa is an implementation of Scheme for the Java Virtual
+Machine.  It combines the benefits of dynamic scripting languages (minimal
+boiler-plate, fast to start up, REPL) with the benefits of traditional
+compiled languages (fast execution, static error detection, modularity,
+zero-overhead Java integration).  Kawa also provides a framework for
+implementing other programming languages on the Java platform.")
+    (license expat)))
-- 
2.21.0


  reply	other threads:[~2019-04-04  0:34 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-02 13:16 [bug#35082] [PATCH] gnu: Add kawa Carlo Zancanaro
2019-04-03 20:30 ` Ludovic Courtès
2019-04-04  0:33   ` Carlo Zancanaro [this message]
2019-04-04  8:01     ` Ludovic Courtès
2019-04-04  8:03     ` Ludovic Courtès
2019-04-04  8:10       ` Ricardo Wurmus
2019-06-13 11:02         ` bug#35082: " Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=878swqip7i.fsf@zancanaro.id.au \
    --to=carlo@zancanaro.id.au \
    --cc=35082@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    --cc=per@bothner.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).