guile-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] add SRFI-119 / language/wisp to Guile? (new patch, squashed)


From: Christina O'Donnell
Subject: Re: [PATCH] add SRFI-119 / language/wisp to Guile? (new patch, squashed)
Date: Fri, 19 Jan 2024 12:10:15 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.15.0

Hi Arne,

On 09/01/2024 07:05, Dr. Arne Babenhauserheide wrote:
> It’s a new year — any chance for one more look whether adding SRFI-119
> in Guile is ok to merge?

As a disclaimer, I'm a Scheme newbie, but I think my opinion may have /some/
value.

On its own, Wisp seems like a better syntax for tooling that looks at files as a
list of lines, rather than as a tree of S-expressions. For example, the diff
tool looks for changes in lines, so when adding a value to the end of a list it will always show 1 extra line removed and then added again with one less paren.
For example (from a record definition):

   (device-tree-support? bootloader-configuration-device-tree-support?
-                         (default #t)))   ;boolean
+                         (default #t))    ;boolean
+  (extra-initrd          bootloader-configuration-extra-initrd
+                         (default #f)))   ;string | #f

Whereas in Wisp syntax, you'd simply get:

   device-tree-support? bootloader-configuration-device-tree-support?
                         default #t   ;boolean
+  extra-initrd          bootloader-configuration-extra-initrd
+                        default #f   ;string | #f

Likewise, commenting code in scheme is a pain because code-commenting is done by
line. R6RS comments (#;) aren't implemented in Guile to my knowledge. So
parenthesis aware commenting is left up to the editor to implement.

I could say the same about editors like Vim and many other editors that see the
world as a list of lines.

However it could cause some fragmentation of the community as peoples editors are set up for Lisp and not Wisp or vice versa. Though, I think that could be mostly resolved if there was a script that could convert Wisp to Lisp and back. Ideally such that on a large code base there's very few instances where Lisp -> Wisp -> Lisp produces changes the code even by white-space. But, I don't know
whether even then you'd find much interest from the other maintainers.

Kind regards,
 - Christina



reply via email to

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