Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • S sweet-core
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 62
    • Issues 62
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 4
    • Merge requests 4
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • sweet-js
  • sweet-core
  • Wiki
  • design

design · Changes

Page history
Updated design (markdown) authored Jan 05, 2015 by Tim Disney's avatar Tim Disney
Hide whitespace changes
Inline Side-by-side
design.md
View page @ 9e794353
......@@ -7,6 +7,8 @@ But JS complicates this because delimiters can appear inside
of a regex literal and deciding if `/` is the start of a
regex or the division operator depends on parsing context.
The read algorithm follows but see also the DLS 14 [paper](https://github.com/mozilla/sweet.js/blob/master/doc/dls2014/sweetjs.pdf?raw=true) which goes into more detail.
### Give lookbehind to the reader
So to handle the problem of `/` we can use "almost one" lookbehind to
......@@ -463,4 +465,3 @@ Useful papers on macros:
* Refining Syntactic Sugar: Tools for Supporting Macro Development
* Fortifying Macros
* Composable and Compilable Macros
Clone repository
  • Example macros
  • FAQ
  • High level design overview
  • Home
  • Macro resources
  • Patterns
  • Syntax Case
  • case api
  • custom operators
  • design
  • expander design
  • modules
  • node loader
  • pattern_class
  • reader scratch
View All Pages