simplex-lang 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/simplex.peggy"],"names":["$top_level_initializer","Start","SourceCharacter","WhiteSpace","LineTerminator","LineTerminatorSequence","Comment","MultiLineComment","MultiLineCommentNoLineTerminator","SingleLineComment","Identifier","IdentifierName","IdentifierStart","IdentifierPart","UnicodeLetter","UnicodeCombiningMark","ReservedWord","Keyword","Literal","NullLiteral","BooleanLiteral","NumericLiteral","DecimalLiteral","DecimalIntegerLiteral","DecimalDigit","NonZeroDigit","ExponentPart","ExponentIndicator","SignedInteger","HexIntegerLiteral","HexDigit","StringLiteral","DoubleStringCharacter","SingleStringCharacter","LineContinuation","EscapeSequence","CharacterEscapeSequence","SingleEscapeCharacter","NonEscapeCharacter","EscapeCharacter","HexEscapeSequence","UnicodeEscapeSequence","Ll","Lm","Lo","Lt","Lu","Mc","Mn","Nd","Nl","Pc","Zs","AndToken","ElseToken","FalseToken","IfToken","InToken","NotToken","NullToken","OrToken","ThenToken","TrueToken","TypeofToken","ModToken","LetToken","__","_","EOS","EOF","PrimaryExpression","ArrayLiteral","ElementList","Elision","ObjectLiteral","PropertyNameAndValueList","PropertyAssignment","PropertyName","MemberExpression","CallExpression","Arguments","ArgumentList","CallArgument","CurryPlaceholder","LeftHandSideExpression","ExponentiationExpression","ExponentiationOperator","UnaryExpression","UnaryOperator","MultiplicativeExpression","MultiplicativeOperator","AdditiveExpression","AdditiveOperator","ConcatenationExpression","ConcatenationOperator","RelationalExpression","RelationalOperator","EqualityExpression","EqualityOperator","LogicalANDExpression","LogicalANDOperator","LogicalORExpression","LogicalOROperator","ConditionalExpression","NullishCoalescingExpression","NullishCoalescingOperator","PipeExpression","PipeOperator","LambdaExpression","LambdaArrow","FormalParameterList","LetExpression","VariableDeclarationList","VariableDeclaration","Initialiser","EqualOperator","Expression","ExpressionStatement"],"mappings":";;;;;AAAEA;AACFA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAIyC,mBAAmB,E;+BAsCrB,cAAc,E;qCAGN;AAC/C;AACA;AACA;AACA;AACA;AACA,IAAI,E;mCAMqC,kBAAkB,E;2BAoD5C;AACf;AACA;AACA;AACA;AACA;AACA,IAAI,E;2BAGW;AACf;AACA;AACA;AACA;AACA;AACA,IAAI,E;2BACY;AAChB;AACA;AACA;AACA;AACA;AACA,IAAI,E;kCAG6D;AACjE;AACA,IAAI,E;kCAC0D;AAC9D;AACA,IAAI,E;2BAGuD;AAC3D;AACA;AACA;AACA;AACA;AACA,IAAI,E;4BACiC;AACrC;AACA;AACA;AACA;AACA;AACA,IAAI,E;4BACqC;AACzC;AACA;AACA;AACA;AACA;AACA,IAAI,E;kCAsByB;AAC7B;AACA;AACA;AACA;AACA;AACA,IAAI,E;iCAMsC;AAC1C;AACA;AACA;AACA;AACA;AACA,IAAI,E;iCACsC;AAC1C;AACA;AACA;AACA;AACA;AACA,IAAI,E;4BAGgD,gBAAgB,E;oCAClC,kBAAkB,E;4BAIA,gBAAgB,E;oCAClC,kBAAkB,E;4BAInB,YAAY,E;4BAItB,cAAc,E;4BAY3B,cAAc,E;4BACd,cAAc,E;4BACd,cAAc,E;4BACd,cAAc,E;4BACd,cAAc,E;4BACd,cAAc,E;4BAGiC,gBAAgB,E;kCASpC;AACrC;AACA,IAAI,E;kCAGmD;AACvD;AACA,IAAI,E;sCAwEqC,oBAAoB,E;mCAGvB;AACtC;AACA;AACA;AACA;AACA;AACA,IAAI,E;oCACoC;AACxC;AACA;AACA;AACA;AACA;AACA,IAAI,E;6CACiE;AACrE;AACA;AACA;AACA;AACA;AACA,IAAI,E;4CAI4C;AAChD;AACA,MAAM,E;kDAGoD;AAC1D;AACA,MAAM,E;sCAED,kDAAkD,E;kCAG7B,8CAA8C,E;4BAGxD;AAChB;AACA;AACA;AACA;AACA;AACA,IAAI,E;sCACmD;AACvD;AACA;AACA;AACA;AACA;AACA,IAAI,E;sCAC0D;AAC9D;AACA;AACA;AACA;AACA;AACA,IAAI,E;sCAG8D;AAClE;AACA,IAAI,E;sCAG6C;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,E;0CAY0C;AAC9C;AACA;AACA;AACA,QAAQ,E;0CACmC;AAC3C;AACA;AACA;AACA,QAAQ,E;0CACoC;AAC5C;AACA;AACA;AACA,QAAQ,E;sCAEH;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,E;wCAI6C;AACjD;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,E;sCAGqB;AAC3B;AACA;AACA;AACA;AACA;AACA,QAAQ,E;0CACsC;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,E;0CACmC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,E;sCAEH;AACL;AACA;AACA;AACA;AACA;AACA,IAAI,E;gCAGoC;AACxC;AACA,IAAI,E;sCAGkD;AACtD;AACA,IAAI,E;4BAOK;AACT;AACA;AACA;AACA;AACA,EAAE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","file":"index.js"}
1
+ {"version":3,"sources":["../src/simplex.peggy"],"names":["$top_level_initializer","Start","SourceCharacter","WhiteSpace","LineTerminator","LineTerminatorSequence","Comment","MultiLineComment","MultiLineCommentNoLineTerminator","SingleLineComment","Identifier","IdentifierName","IdentifierStart","IdentifierPart","UnicodeLetter","UnicodeCombiningMark","ReservedWord","Keyword","Literal","NullLiteral","BooleanLiteral","NumericLiteral","DecimalLiteral","DecimalIntegerLiteral","DecimalDigit","NonZeroDigit","ExponentPart","ExponentIndicator","SignedInteger","HexIntegerLiteral","HexDigit","StringLiteral","DoubleStringCharacter","SingleStringCharacter","LineContinuation","EscapeSequence","CharacterEscapeSequence","SingleEscapeCharacter","NonEscapeCharacter","EscapeCharacter","HexEscapeSequence","UnicodeEscapeSequence","Ll","Lm","Lo","Lt","Lu","Mc","Mn","Nd","Nl","Pc","Zs","AndToken","ElseToken","FalseToken","IfToken","InToken","NotToken","NullToken","OrToken","ThenToken","TrueToken","TypeofToken","ModToken","LetToken","__","_","EOS","EOF","PrimaryExpression","ArrayLiteral","ElementList","Elision","ObjectLiteral","PropertyNameAndValueList","PropertyAssignment","PropertyName","MemberExpression","CallExpression","Arguments","ArgumentList","CallArgument","CurryPlaceholder","LeftHandSideExpression","ExponentiationExpression","ExponentiationOperator","UnaryExpression","UnaryOperator","MultiplicativeExpression","MultiplicativeOperator","AdditiveExpression","AdditiveOperator","ConcatenationExpression","ConcatenationOperator","RelationalExpression","RelationalOperator","EqualityExpression","EqualityOperator","LogicalANDExpression","LogicalANDOperator","LogicalORExpression","LogicalOROperator","ConditionalExpression","NullishCoalescingExpression","NullishCoalescingOperator","PipeExpression","PipeOperator","TopicReference","LambdaExpression","LambdaArrow","FormalParameterList","LetExpression","VariableDeclarationList","VariableDeclaration","Initialiser","EqualOperator","Expression","ExpressionStatement"],"mappings":";;;;;AAAEA;AACFA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAIyC,mBAAmB,E;+BAsCrB,cAAc,E;qCAGN;AAC/C;AACA;AACA;AACA;AACA;AACA,IAAI,E;mCAMqC,kBAAkB,E;2BAoD5C;AACf;AACA;AACA;AACA;AACA;AACA,IAAI,E;2BAGW;AACf;AACA;AACA;AACA;AACA;AACA,IAAI,E;2BACY;AAChB;AACA;AACA;AACA;AACA;AACA,IAAI,E;kCAG6D;AACjE;AACA,IAAI,E;kCAC0D;AAC9D;AACA,IAAI,E;2BAGuD;AAC3D;AACA;AACA;AACA;AACA;AACA,IAAI,E;4BACiC;AACrC;AACA;AACA;AACA;AACA;AACA,IAAI,E;4BACqC;AACzC;AACA;AACA;AACA;AACA;AACA,IAAI,E;kCAsByB;AAC7B;AACA;AACA;AACA;AACA;AACA,IAAI,E;iCAMsC;AAC1C;AACA;AACA;AACA;AACA;AACA,IAAI,E;iCACsC;AAC1C;AACA;AACA;AACA;AACA;AACA,IAAI,E;4BAGgD,gBAAgB,E;oCAClC,kBAAkB,E;4BAIA,gBAAgB,E;oCAClC,kBAAkB,E;4BAInB,YAAY,E;4BAItB,cAAc,E;4BAY3B,cAAc,E;4BACd,cAAc,E;4BACd,cAAc,E;4BACd,cAAc,E;4BACd,cAAc,E;4BACd,cAAc,E;4BAGiC,gBAAgB,E;kCASpC;AACrC;AACA,IAAI,E;kCAGmD;AACvD;AACA,IAAI,E;sCAuEqC,oBAAoB,E;mCAGvB;AACtC;AACA;AACA;AACA;AACA;AACA,IAAI,E;oCACoC;AACxC;AACA;AACA;AACA;AACA;AACA,IAAI,E;6CACiE;AACrE;AACA;AACA;AACA;AACA;AACA,IAAI,E;4CAI4C;AAChD;AACA,MAAM,E;kDAGoD;AAC1D;AACA,MAAM,E;sCAED,kDAAkD,E;kCAG7B,8CAA8C,E;4BAGxD;AAChB;AACA;AACA;AACA;AACA;AACA,IAAI,E;sCACmD;AACvD;AACA;AACA;AACA;AACA;AACA,IAAI,E;sCAC0D;AAC9D;AACA;AACA;AACA;AACA;AACA,IAAI,E;sCAG8D;AAClE;AACA,IAAI,E;sCAG6C;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,E;0CAY0C;AAC9C;AACA;AACA;AACA,QAAQ,E;0CACmC;AAC3C;AACA;AACA;AACA,QAAQ,E;0CACoC;AAC5C;AACA;AACA;AACA,QAAQ,E;sCAEH;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,E;wCAI6C;AACjD;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,E;sCAGqB;AAC3B;AACA;AACA;AACA;AACA;AACA,QAAQ,E;0CACsC;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,E;0CACmC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,E;sCAEH;AACL;AACA;AACA;AACA;AACA;AACA,IAAI,E;gCAGoC;AACxC;AACA,IAAI,E;sCAGkD;AACtD;AACA,IAAI,E;4BAOK;AACT;AACA;AACA;AACA;AACA,EA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","file":"index.js"}
package/src/compiler.ts CHANGED
@@ -36,12 +36,13 @@ interface ContextHelpers<Data, Globals> {
36
36
  pipe(
37
37
  this: void,
38
38
  head: unknown,
39
- tail: { opt: boolean; next: (_: unknown) => unknown }[]
39
+ tail: { opt: boolean; next: (topic: unknown) => unknown }[]
40
40
  ): unknown
41
41
  }
42
42
 
43
43
  var hasOwn = Object.hasOwn
44
44
  var ERROR_STACK_REGEX = /<anonymous>:(?<row>\d+):(?<col>\d+)/g
45
+ var TOPIC_TOKEN = '%'
45
46
 
46
47
  const defaultContextHelpers: ContextHelpers<
47
48
  Record<string, unknown>,
@@ -52,6 +53,13 @@ const defaultContextHelpers: ContextHelpers<
52
53
  ensureFunction,
53
54
 
54
55
  getIdentifierValue: (identifierName, globals, data) => {
56
+ // TODO Should test on parse time?
57
+ if (identifierName === TOPIC_TOKEN) {
58
+ throw new Error(
59
+ `Topic reference "${TOPIC_TOKEN}" is unbound; it must be inside a pipe body.`
60
+ )
61
+ }
62
+
55
63
  if (identifierName === 'undefined') return undefined
56
64
 
57
65
  if (globals != null && Object.hasOwn(globals, identifierName)) {
@@ -185,15 +193,28 @@ export const defaultBinaryOperators: ExpressionBinaryOperators = {
185
193
  }
186
194
  }
187
195
 
196
+ type LogicalOperatorFunction = (
197
+ left: () => unknown,
198
+ right: () => unknown
199
+ ) => unknown
200
+
188
201
  type ExpressionLogicalOperators = Record<
189
202
  LogicalExpression['operator'],
190
- (left: () => unknown, right: () => unknown) => unknown
203
+ LogicalOperatorFunction
191
204
  >
192
205
 
206
+ const logicalAndOperatorFn: LogicalOperatorFunction = (a, b) =>
207
+ castToBoolean(a()) && castToBoolean(b())
208
+
209
+ const logicalOrOperatorFn: LogicalOperatorFunction = (a, b) =>
210
+ castToBoolean(a()) || castToBoolean(b())
211
+
193
212
  export const defaultLogicalOperators: ExpressionLogicalOperators = {
194
213
  // TODO Use castToBoolean from compile options?
195
- and: (a, b) => castToBoolean(a()) && castToBoolean(b()),
196
- or: (a, b) => castToBoolean(a()) || castToBoolean(b())
214
+ 'and': logicalAndOperatorFn,
215
+ '&&': logicalAndOperatorFn,
216
+ 'or': logicalOrOperatorFn,
217
+ '||': logicalOrOperatorFn
197
218
  }
198
219
 
199
220
  interface ExpressionOperators {
@@ -208,8 +229,6 @@ interface ExpressionOperators {
208
229
  >
209
230
  }
210
231
 
211
- const PIPE_LTR = '_'
212
-
213
232
  export interface SourceLocation {
214
233
  len: number
215
234
  location: Location
@@ -252,8 +271,6 @@ const visitors: {
252
271
  },
253
272
 
254
273
  Identifier: node => {
255
- if (node.name === PIPE_LTR) return [codePart(PIPE_LTR, node)]
256
-
257
274
  const parts: VisitResult[] = [
258
275
  codePart(`get(scope,${JSON.stringify(node.name)})`, node)
259
276
  ]
@@ -454,11 +471,11 @@ const visitors: {
454
471
 
455
472
  const tailParts: VisitResult[] = [
456
473
  codePart(
457
- `{opt:${opt},next:function(${PIPE_LTR}){return `,
474
+ `{opt:${opt},next:(scope=>topic=>{scope=[["%"],[topic],scope];return `,
458
475
  t.expression
459
476
  ),
460
477
  ...visit(t.expression),
461
- codePart(`}}`, t.expression),
478
+ codePart(`})(scope)}`, t.expression),
462
479
  codePart(`,`, t.expression)
463
480
  ]
464
481
 
@@ -479,6 +496,11 @@ const visitors: {
479
496
  return parts
480
497
  },
481
498
 
499
+ TopicReference: node => {
500
+ const parts: VisitResult[] = [codePart(`get(scope,"${TOPIC_TOKEN}")`, node)]
501
+ return parts
502
+ },
503
+
482
504
  LambdaExpression: (node, visit) => {
483
505
  // Lambda with parameters
484
506
  if (node.params.length > 0) {
@@ -631,30 +653,38 @@ export function compile<
631
653
 
632
654
  const { code: expressionCode, offsets } = traverseResult
633
655
 
634
- const bootstrapCodeHead = [
635
- `var bool = ctx.castToBoolean;`,
636
- `var bop = ctx.binaryOperators;`,
637
- `var lop = ctx.logicalOperators;`,
638
- `var uop = ctx.unaryOperators;`,
639
- `var call = ctx.callFunction;`,
640
- `var getIdentifierValue = ctx.getIdentifierValue;`,
641
- `var prop = ctx.getProperty;`,
642
- `var pipe = ctx.pipe;`,
643
- `var globals = ctx.globals ?? null;`,
644
- `return data => {`,
645
- `var scope = null;`,
646
- `var get = (scope, name) => {`,
647
- `if (scope === null) return getIdentifierValue(name, globals, data);`,
648
- `var paramIndex = scope[0].findIndex(it => it === name);`,
649
- `if (paramIndex === -1) return get(scope[2], name);`,
650
- `return scope[1][paramIndex]`,
651
- `};`,
652
- `return `
653
- ].join('')
656
+ const bootstrapCodeHead =
657
+ `
658
+ var bool=ctx.castToBoolean;
659
+ var bop=ctx.binaryOperators;
660
+ var lop=ctx.logicalOperators;
661
+ var uop=ctx.unaryOperators;
662
+ var call=ctx.callFunction;
663
+ var getIdentifierValue=ctx.getIdentifierValue;
664
+ var prop=ctx.getProperty;
665
+ var pipe=ctx.pipe;
666
+ var globals=ctx.globals??null;
667
+
668
+ function _get(_scope,name){
669
+ if(_scope===null)return getIdentifierValue(name,globals,this);
670
+ var paramIndex=_scope[0].findIndex(it=>it===name);
671
+ if(paramIndex===-1)return _get.call(this,_scope[2],name);
672
+ return _scope[1][paramIndex]
673
+ };
674
+
675
+ return data=>{
676
+ var scope=null;
677
+ var get=_get.bind(data);
678
+ return
679
+ `
680
+ .split('\n')
681
+ .map(it => it.trim())
682
+ .filter(it => it !== '')
683
+ .join('') + ' '
654
684
 
655
685
  const bootstrapCodeHeadLen = bootstrapCodeHead.length
656
686
 
657
- const functionCode = bootstrapCodeHead + expressionCode + ';}'
687
+ const functionCode = bootstrapCodeHead + expressionCode + '}'
658
688
 
659
689
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
660
690
  const defaultOptions: CompileOptions<Data, Globals> = {
@@ -10,6 +10,7 @@ export type Expression =
10
10
  | ObjectExpression
11
11
  | NullishCoalescingExpression
12
12
  | PipeSequence
13
+ | TopicReference
13
14
  | UnaryExpression
14
15
  | LambdaExpression
15
16
  | LetExpression
@@ -130,7 +131,7 @@ export interface BinaryExpression {
130
131
 
131
132
  export interface LogicalExpression {
132
133
  type: 'LogicalExpression'
133
- operator: 'and' | 'or'
134
+ operator: 'and' | '&&' | 'or' | '||'
134
135
  left: Expression
135
136
  right: Expression
136
137
  location: Location
@@ -152,11 +153,16 @@ export interface NullishCoalescingExpression {
152
153
  location: Location
153
154
  }
154
155
 
156
+ export interface TopicReference {
157
+ type: 'TopicReference'
158
+ location: Location
159
+ }
160
+
155
161
  export interface PipeSequence {
156
162
  type: 'PipeSequence'
157
163
  head: Expression
158
164
  tail: {
159
- operator: '|?' | '|'
165
+ operator: '|?' | '|' | '|>'
160
166
  expression: Expression
161
167
  }[]
162
168
  location: Location
package/src/simplex.peggy CHANGED
@@ -349,19 +349,19 @@ Zs = [\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]
349
349
 
350
350
  // Tokens
351
351
 
352
- AndToken = "and" !IdentifierPart
353
- ElseToken = "else" !IdentifierPart
354
- FalseToken = "false" !IdentifierPart
355
- IfToken = "if" !IdentifierPart
356
- InToken = "in" !IdentifierPart
357
- NotToken = "not" !IdentifierPart
358
- NullToken = "null" !IdentifierPart
359
- OrToken = "or" !IdentifierPart
360
- ThenToken = "then" !IdentifierPart
361
- TrueToken = "true" !IdentifierPart
362
- TypeofToken = "typeof" !IdentifierPart
363
- ModToken = "mod" !IdentifierPart
364
- LetToken = "let" !IdentifierPart
352
+ AndToken = "and" !IdentifierPart
353
+ ElseToken = "else" !IdentifierPart
354
+ FalseToken = "false" !IdentifierPart
355
+ IfToken = "if" !IdentifierPart
356
+ InToken = "in" !IdentifierPart
357
+ NotToken = "not" !IdentifierPart
358
+ NullToken = "null" !IdentifierPart
359
+ OrToken = "or" !IdentifierPart
360
+ ThenToken = "then" !IdentifierPart
361
+ TrueToken = "true" !IdentifierPart
362
+ TypeofToken = "typeof" !IdentifierPart
363
+ ModToken = "mod" !IdentifierPart
364
+ LetToken = "let" !IdentifierPart
365
365
 
366
366
  // Skipped
367
367
  __
@@ -371,9 +371,7 @@ _
371
371
  = (WhiteSpace / MultiLineCommentNoLineTerminator)*
372
372
 
373
373
  EOS
374
- = __ ";"
375
- / _ SingleLineComment? LineTerminatorSequence
376
- / _ &"}"
374
+ = _ SingleLineComment? LineTerminatorSequence
377
375
  / __ EOF
378
376
 
379
377
  EOF
@@ -382,6 +380,7 @@ EOF
382
380
  PrimaryExpression
383
381
  = Identifier
384
382
  / Literal
383
+ / TopicReference
385
384
  / ArrayLiteral
386
385
  / ObjectLiteral
387
386
  / "(" __ expression:Expression __ ")" { return expression; }
@@ -562,7 +561,7 @@ CallArgument
562
561
  / CurryPlaceholder
563
562
 
564
563
  CurryPlaceholder
565
- = "%" {
564
+ = "#" {
566
565
  return {
567
566
  type: 'CurryPlaceholder',
568
567
  location: getLocation(location())
@@ -718,8 +717,17 @@ PipeExpression
718
717
 
719
718
  PipeOperator
720
719
  = "|?"
720
+ / "|>"
721
721
  / "|"
722
722
 
723
+ TopicReference
724
+ = "%" {
725
+ return {
726
+ type: "TopicReference",
727
+ location: getLocation(location())
728
+ };
729
+ }
730
+
723
731
  LambdaExpression
724
732
  = "(" __ params:(FormalParameterList __)? ")" __ LambdaArrow __ body:Expression {
725
733
  return {