guile-user
[Top][All Lists]
Advanced

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

Re: Wisp 1.0 released


From: Arne Babenhauserheide
Subject: Re: Wisp 1.0 released
Date: Sat, 09 Feb 2019 23:50:30 +0100
User-agent: mu4e 1.0; emacs 26.1

zx spectrumgomas <address@hidden> writes:

> I'm sorry if it's a stupid question, but can the opposite process be done?
> I mean, is there lisp2wisp?

That is no stupid question at all.

The opposite process is possible — the readable project has a sweeten[1]
script which does just that for readable syntax — but it is hard to get
right. While going from wisp to Scheme just requires adding parens,
going from Scheme to wisp sometimes requires human judgement whether to
keep inline-parens, use an inline colon or use a new line, because the
inline colon is intentionally restricted to opening parentheses which
end at the end of the line (to avoid transporting state into the next
line which the programmer or tooling would have to track).

As far as I know, the sweeten script avoids some of this complexity by
working on the syntax tree and generating indentation-sensitive code
from that, but my last information is that by doing so it loses the
comments.

Since wisp can interact fully well with other code in Scheme files, I’d
just keep existing code in Scheme, except if you do large-scale
refactoring on the code anyway.

That said, the sweeten script might get you 95% of the way towards
turning a file into wisp. Sweet expressions and wisp mostly differ in
details (wisp intentionally keeps its syntax to a minimum, while sweet
expressions provide a lot more syntactic sugar for specific cases).

[1]: https://sourceforge.net/p/readable/code/ci/develop/tree/src/sweeten.sscm

Best wishes,
Arne
--
Unpolitisch sein
heißt politisch sein
ohne es zu merken

Attachment: signature.asc
Description: PGP signature


reply via email to

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