On Sun, Aug 19, 2018 at 11:03 AM, Andrew J wrote:
> Very nice. The Racket special sauce is the (match*...). I need to get my
> head around what's going on there.
>
>
If you already understand match, perhaps this will help:
> (match (list 5 6)
[(list a b) (+ a b)])
11
More concise, match*
As an example, this...
- a
- b c
- d e f
- g h
would get transformed into something like this...
'(a (b c) (d e f (g h)))
You can implement this in 2 stages. Stage 1 is line based parsing, turn
the input text into this list:
'((0 a)
(2 b c)
(2 d e f)
(4 g h)))
the
Den lør. 18. aug. 2018 kl. 03.31 skrev Andrew J :
> Hi. In a little side project, I'm looking for an simple Racket-y way to
> transform a bulleted list into a tree structure, maybe like sxml.
>
> As an example, this...
>
> - a
> - b c
> - d e f
> - g h
>
> would get transformed into
Thanks. That's a useful package to know and solves the parsing problem. Now
I need to syntax transform the xexpr into my target minimal list. Time to
dig into *Fear of Macros*.
A.
On Saturday, 18 August 2018 12:19:12 UTC+10, Shu-Hung You wrote:
>
> The markdown package by Greg Hendershott
Hi. In a little side project, I'm looking for an simple Racket-y way to
transform a bulleted list into a tree structure, maybe like sxml.
As an example, this...
- a
- b c
- d e f
- g h
would get transformed into something like this...
'(a (b c) (d e f (g h)))
I can see a few ways to
5 matches
Mail list logo