From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Matt Wette Newsgroups: gmane.lisp.guile.user,gmane.lisp.readable-lisp Subject: Re: wisp literal array syntax for Guile, a good idea? Date: Sun, 12 Nov 2017 13:20:27 -0800 Message-ID: <098670CE-873B-4DCC-A111-A88044861BBD@gmail.com> References: <87mv3rgrwk.fsf@web.de> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1510521663 17347 195.159.176.226 (12 Nov 2017 21:21:03 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 12 Nov 2017 21:21:03 +0000 (UTC) Cc: guile-user@gnu.org, readable-discuss To: Arne Babenhauserheide Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Sun Nov 12 22:20:55 2017 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eDzgU-0003wD-Ce for guile-user@m.gmane.org; Sun, 12 Nov 2017 22:20:54 +0100 Original-Received: from localhost ([::1]:51320 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eDzgY-0004Mo-Qm for guile-user@m.gmane.org; Sun, 12 Nov 2017 16:20:58 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:52395) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eDzg9-0004MV-Lz for guile-user@gnu.org; Sun, 12 Nov 2017 16:20:34 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eDzg6-00042R-IW for guile-user@gnu.org; Sun, 12 Nov 2017 16:20:33 -0500 Original-Received: from mail-pf0-x232.google.com ([2607:f8b0:400e:c00::232]:47547) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eDzg6-000422-Ae for guile-user@gnu.org; Sun, 12 Nov 2017 16:20:30 -0500 Original-Received: by mail-pf0-x232.google.com with SMTP id t69so1445523pfg.4 for ; Sun, 12 Nov 2017 13:20:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=1xY4HOeEwFSIIGRst539fA/iu6Bp1S+UtxqXWW0BGUc=; b=Ex/JfF3b3rr6mNdDW2XZ44SuDxHBiDcFYzpXVz4v4/94LXsDxcwgfsh0WdybU/0yk+ Nf1sut3uZd+epqMzljG2UeNh1gq4+b/zRXplYIdFeBecTsX37SFIE3HNT+PnEinFhYHG dtY2x9tK2vUKrPwkmGR80J9p7oh6pKEJURwSd+d3hjlzdMkBfjGim1VPYMgyJ7/5ML8M dYabyHv/+MxYkFu4cnFKL8oUilhU07PgjXvBl+Drgh6vNwH2KjIHIVJasgbwX6qvJsIg 0HMo3UaYprBUrZN/wJfp+3YHgK0EVUidtjunLbLXbzk2b3cFz9JjW6MtPT9pB8TSX17e EnBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=1xY4HOeEwFSIIGRst539fA/iu6Bp1S+UtxqXWW0BGUc=; b=Rmu+hSXq+l4K+0oxoijYic/HkpemCwh7z/MILEbRoRbQeOeVaNX4sja03S+aimc4AQ XUFT0xvvFvoki3LE6XLnuMndZpRb5IGopasfb3ZLU2uRTzARHVQraVIaQGa2SeF2yY+o GedJMOVZCRRpoe0hTsuD0nGOh8BXVCZ8Zpk3CVDK7iXFf1kibTtHAWv+/albMLE6hlB9 9NexgP6ZnH0uqj/c8siIEneULFiKNhAhwypm8mLcpVy5K0H8j0ARUGHVeQSiLOia6u2q AJ2CXSyt2+hTlJcLfp6m9RWuAAxHi1dIEUVDbUy2r7Hw+05cZo9DF6ZojG/cdvBRKnfI 6wlA== X-Gm-Message-State: AJaThX7u9ipCqHDl84yMMrjfOpX+1ZMylAH33z0hyqiT1/4dcmQvSGaU e8cizGtIqviwXknza4//BW1wEf5n X-Google-Smtp-Source: AGs4zMY8EcHzHTfbgr7HEpEYbtKhIqpRtI9ZLEmBfJndL5urC/tIUrjB8IZsijuqh46FtEPCcZZFIg== X-Received: by 10.159.242.196 with SMTP id x4mr7002602plw.342.1510521629069; Sun, 12 Nov 2017 13:20:29 -0800 (PST) Original-Received: from nautilus.championbroadband.com (216-165-229-229.championbroadband.com. [216.165.229.229]) by smtp.gmail.com with ESMTPSA id w9sm28632680pfl.19.2017.11.12.13.20.28 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 12 Nov 2017 13:20:28 -0800 (PST) In-Reply-To: <87mv3rgrwk.fsf@web.de> X-Mailer: Apple Mail (2.3273) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400e:c00::232 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.org gmane.lisp.guile.user:14251 gmane.lisp.readable-lisp:1550 Archived-At: > On Nov 12, 2017, at 10:34 AM, Arne Babenhauserheide = wrote: >=20 > Hi, >=20 > Wisp=C2=B9 as general syntax is pretty much done. The releases this = year only > provided bug fixes and additional examples. A procedure definition = looks > like this: >=20 > define : hello who > format #f "Hello ~a!\n" > . who >=20 > =46rom experience with building tools with Wisp=C2=B2 I am pretty = happy with > its syntax; it feels like a sweet spot between minimal syntax-overhead > and producing easily readable code (leaning a bit more towards minimal > syntax-overhead than readable/sweet). >=20 > But there is one Guile-specific feature where it is lacking: When > defining a procedure in Guile, you can add properties by creating a > literal array as line =E2=80=94 or as second line if the first line is = a literal > string that then serves as documentation. This can be used to define > tests.=C2=B3 Then a full fledged Hello World! looks like this: >=20 > define : hello who > . "Say hello to WHO" > . #((tests > (test-equal "Hello World!\n" > (hello "World")))) > format #f "Hello ~a!\n" > . who Do you have a syntax for vector literals? If not, why can't you just = write define : hello who "Say hello to WHO" vector : tests test-equal "hello World"=20 . hello "World format #f "Hello ~a!\n" . who