----------------------------------------------------------------------------------
@MSGID:
2633b500
@REPLY: <nzRJAvWCQBiyNSZoM@bongo-ra.co> 3cf91d4f
@REPLYADDR none) (albert
@REPLYTO 2:5075/128 none) (albert
@CHRS: CP866 2
@RFC: 1 0
@RFC-References:
<2bcb3a48-7082-4d29-9496-829749a5403cn@googlegroups.com> <20230607130305.691@kylheku.com>
<nzRJAvWCQBiyNSZoM@bongo-ra.co>
@RFC-Message-ID:
@TZUTC: 0200
@TID: FIDOGATE-5.12-ge4e8b94
In article <
nzRJAvWCQBiyNSZoM@bongo-ra.co>,
Spiros Bousbouras <
spibou@gmail.com> wrote:
>On Wed, 7 Jun 2023 20:26:03 -0000 (UTC)
>Kaz Kylheku <
864-117-4973@kylheku.com> wrote:
>> The quasiquote is a templating language for creating nested
>> lists using a notation which looks like those lists, rather
>> than hard-to-read nested constructor calls.
>> A quasiquote can be nested and it can insert material into
>> any level of nesting.
>>
>> This templating notation is heavily used in writing macros,
>> and other code-to-code transformation situations.
>> Sometimes it is used in manipulating data which isn`t code, too.
>
>For 2 or more levels of nesting , I find it a lot more readable
>to use explicit calls instead of nested backquotes. With the
>explicit calls , you push all the quoting to the innermost level
>and otherwise the usual evaluation rules apply. It usually is
>more verbose but I find it more readable.
I have been experimenting with a reverse polish like language.
The main elements are bracket pairs.
{ } is deferred code
{ do something } leaves a token that can be "run".
Normally code is executed, but you can execute code
while in deferred mode by [ ]
So you got
{ [ 1 2 + "addition result:" type . ] "hello world" type }
This types the addition result while the line is entered.
It leaves a token that can be run to type the "hello world| message.
Normally a deferred token is given a name via `:` like so.
{ "hello world" type } : hellow
The idea is that the brackets can be nested indefinitely.
{ [ variable x ] .... x ... }
{
[
variable x
{ 2 * + } : add-a-duplicate
] .... x add-a-duplicate ...
} : do-something
Is that idea related?
Groetjes Albert
--
Don`t praise the day before the evening. One swallow doesn`t make spring.
You must not say "hey" before you have crossed the bridge. Don`t sell the
hide of the bear until you shot it. Better one bird in the hand than ten in
the air. First gain is a cat spinning. - the Wise from Antrim -
--- trn 4.0-test77 (Sep 1, 2010)
* Origin: KPN B.V. (2:5075/128)
SEEN-BY: 5005/49 5015/255 5019/40 5020/715 848 1042
4441 12000 5030/49 1081
SEEN-BY: 5058/104 5075/128
@PATH: 5075/128 5020/1042 4441