Hi folks,
*Write a macro with Racket this summer! Win stickers!*
The purpose of this event is to grow the syntax-parse-example documentation
and repository to grow as a resource for the Racket community. But you do
not need to submit a full example to win stickers --- any syntax-parse
macro counts.
*It's like a Quilting Bee, but for syntax parse macros!*
Ground Rules:
- you can write any macro as long as it uses syntax-parse somehow
- enter as many times as you like
- the first 20 individuals who enter will win exclusive stickers
- open July 1 to September 1
Submit by opening an issue here:
https://github.com/syntax-objects/Summer2021/issues/new?assignees=&labels=entry&template=enter-the-syntax-parse-bee.md&title=%5Bentry+-+name%2Fdescription+of+macro%5D
To help you get started, we suggest two categories of before-and-after
macro:
1. *Code Cleaning* : Introduce a macro where there was none before. Look
for ways to make your source code more beautiful and/or less repetitive.
2. *Macro Engineering* : Use the tools in syntax-parse to improve an
existing macro (which may or may not currently use syntax-parse). Try to
make the old macro more maintainable, more robust against errors, and/or
more flexible.
Updates will be via Racket News, Racket-Users, Slack, Discord & Reddit.
Whatever you decide, we hope that you learn and have fun!
- Ben + Stephen
PS a 'Bee' is a community effort toward a common goal. A quilting bee is for
making a quilt. In this case the quilt is a patchwork of syntax-parse
macros.
- - -
Syntax parse docs:
https://docs.racket-lang.org/syntax/stxparse.html
Syntax parse examples:
https://docs.racket-lang.org/syntax-parse-example/
Extra syntax classes:
https://docs.racket-lang.org/syntax-classes/
Mythical Macros tutorial:
https://soegaard.github.io/mythical-macros/
Macros and Languages in Racket book draft:
http://rmculpepper.github.io/malr/
Fine print:
- this is an UNOFFICIAL event run by Racket users (@spdegabrielle and
@bennn)
- entries must be submitted under the MIT license [1] for code and under
CC [2] for accompanying prose
- stickers will be mailed via USPS; international entries are allowed
- please abide by the Racket Friendly Environment Policy [3]
[1] https://github.com/racket/racket/blob/master/racket/src/LICENSE-MIT.txt
[2] http://creativecommons.org/licenses/by/4.0/
[3] https://racket-lang.org/friendly.html
--
You received this message because you are subscribed to the Google Groups
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/racket-users/CAFUu9R6kCG%2BXFnYwOnD_9XyfNq%2BNbJnPVA_rpD4vGKPkzSXBDA%40mail.gmail.com.