fez-lisp 1.5.74 → 1.5.75

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.
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "fez-lisp",
3
3
  "description": "Lisp interpreted & compiled to JavaScript",
4
4
  "author": "AT290690",
5
- "version": "1.5.74",
5
+ "version": "1.5.75",
6
6
  "type": "module",
7
7
  "main": "index.js",
8
8
  "keywords": [
package/src/macros.js CHANGED
@@ -550,79 +550,76 @@ export const deSuggarAst = (ast, scope) => {
550
550
  )
551
551
 
552
552
  exp[exp.length - 1] = [
553
- [APPLY, STATIC_TYPES.UNKNOWN],
553
+ [APPLY, KEYWORDS.CALL_FUNCTION],
554
554
  [
555
- [APPLY, KEYWORDS.CALL_FUNCTION],
555
+ [APPLY, KEYWORDS.ANONYMOUS_FUNCTION],
556
556
  [
557
- [APPLY, KEYWORDS.ANONYMOUS_FUNCTION],
557
+ [APPLY, KEYWORDS.BLOCK],
558
558
  [
559
- [APPLY, KEYWORDS.BLOCK],
560
- [
561
- [APPLY, KEYWORDS.DEFINE_VARIABLE],
562
- [WORD, newName],
563
- last
564
- ],
565
- args.length < 5
566
- ? [
567
- [
568
- APPLY,
569
- `optimization:tail-calls-${args.length}`
570
- ],
571
- [WORD, newName]
572
- ]
573
- : [
574
- [APPLY, KEYWORDS.CALL_FUNCTION],
575
- [WORD, newName],
559
+ [APPLY, KEYWORDS.DEFINE_VARIABLE],
560
+ [WORD, newName],
561
+ last
562
+ ],
563
+ args.length < 5
564
+ ? [
565
+ [
566
+ APPLY,
567
+ `optimization:tail-calls-${args.length}`
568
+ ],
569
+ [WORD, newName]
570
+ ]
571
+ : [
572
+ [APPLY, KEYWORDS.CALL_FUNCTION],
573
+ [WORD, newName],
574
+ [
575
+ [APPLY, KEYWORDS.ANONYMOUS_FUNCTION],
576
+ [WORD, '*fn*'],
576
577
  [
577
578
  [APPLY, KEYWORDS.ANONYMOUS_FUNCTION],
578
- [WORD, '*fn*'],
579
+ ...args,
579
580
  [
580
- [APPLY, KEYWORDS.ANONYMOUS_FUNCTION],
581
- ...args,
581
+ [APPLY, KEYWORDS.BLOCK],
582
582
  [
583
- [APPLY, KEYWORDS.BLOCK],
583
+ [APPLY, KEYWORDS.DEFINE_VARIABLE],
584
+ [WORD, '*res*'],
584
585
  [
585
- [APPLY, KEYWORDS.DEFINE_VARIABLE],
586
- [WORD, '*res*'],
586
+ [APPLY, KEYWORDS.CREATE_ARRAY],
587
+ [[APPLY, '*fn*'], ...args]
588
+ ]
589
+ ],
590
+ [
591
+ [APPLY, KEYWORDS.LOOP],
592
+ [
593
+ [APPLY, KEYWORDS.IS_LAMBDA],
587
594
  [
588
- [APPLY, KEYWORDS.CREATE_ARRAY],
589
- [[APPLY, '*fn*'], ...args]
595
+ [APPLY, KEYWORDS.GET_ARRAY],
596
+ [WORD, '*res*'],
597
+ [ATOM, 0]
590
598
  ]
591
599
  ],
592
600
  [
593
- [APPLY, KEYWORDS.LOOP],
601
+ [APPLY, KEYWORDS.SET_ARRAY],
602
+ [WORD, '*res*'],
603
+ [ATOM, 0],
594
604
  [
595
- [APPLY, KEYWORDS.IS_LAMBDA],
605
+ [APPLY, KEYWORDS.CALL_FUNCTION],
596
606
  [
597
607
  [APPLY, KEYWORDS.GET_ARRAY],
598
608
  [WORD, '*res*'],
599
609
  [ATOM, 0]
600
610
  ]
601
- ],
602
- [
603
- [APPLY, KEYWORDS.SET_ARRAY],
604
- [WORD, '*res*'],
605
- [ATOM, 0],
606
- [
607
- [APPLY, KEYWORDS.CALL_FUNCTION],
608
- [
609
- [APPLY, KEYWORDS.GET_ARRAY],
610
- [WORD, '*res*'],
611
- [ATOM, 0]
612
- ]
613
- ]
614
611
  ]
615
- ],
616
- [
617
- [APPLY, KEYWORDS.GET_ARRAY],
618
- [WORD, '*res*'],
619
- [ATOM, 0]
620
612
  ]
613
+ ],
614
+ [
615
+ [APPLY, KEYWORDS.GET_ARRAY],
616
+ [WORD, '*res*'],
617
+ [ATOM, 0]
621
618
  ]
622
619
  ]
623
620
  ]
624
621
  ]
625
- ]
622
+ ]
626
623
  ]
627
624
  ]
628
625
  ]
@@ -651,61 +648,55 @@ export const deSuggarAst = (ast, scope) => {
651
648
  const keyName = newName + ':key'
652
649
 
653
650
  exp[exp.length - 1] = [
654
- [APPLY, STATIC_TYPES.UNKNOWN],
651
+ [APPLY, KEYWORDS.CALL_FUNCTION],
655
652
  [
656
- [APPLY, KEYWORDS.CALL_FUNCTION],
653
+ [APPLY, KEYWORDS.ANONYMOUS_FUNCTION],
657
654
  [
658
- [APPLY, KEYWORDS.ANONYMOUS_FUNCTION],
655
+ [APPLY, KEYWORDS.BLOCK],
659
656
  [
660
- [APPLY, KEYWORDS.BLOCK],
661
- [
662
- [APPLY, KEYWORDS.DEFINE_VARIABLE],
663
- [WORD, memoName],
664
- [[APPLY, 'new:map64']]
665
- ],
657
+ [APPLY, KEYWORDS.DEFINE_VARIABLE],
658
+ [WORD, memoName],
659
+ [[APPLY, 'new:map64']]
660
+ ],
661
+ [
662
+ [APPLY, KEYWORDS.DEFINE_VARIABLE],
663
+ [WORD, newName],
666
664
  [
667
- [APPLY, KEYWORDS.DEFINE_VARIABLE],
668
- [WORD, newName],
665
+ [APPLY, KEYWORDS.ANONYMOUS_FUNCTION],
666
+ ...args,
669
667
  [
670
- [APPLY, KEYWORDS.ANONYMOUS_FUNCTION],
671
- ...args,
668
+ [APPLY, KEYWORDS.BLOCK],
672
669
  [
673
- [APPLY, KEYWORDS.BLOCK],
670
+ [APPLY, KEYWORDS.DEFINE_VARIABLE],
671
+ [WORD, keyName],
674
672
  [
675
- [APPLY, KEYWORDS.DEFINE_VARIABLE],
676
- [WORD, keyName],
677
- [
678
- [APPLY, 'from:string-or-number->key'],
679
- [
680
- [APPLY, KEYWORDS.CREATE_ARRAY],
681
- ...args
682
- ]
683
- ]
673
+ [APPLY, 'from:string-or-number->key'],
674
+ [[APPLY, KEYWORDS.CREATE_ARRAY], ...args]
675
+ ]
676
+ ],
677
+ [
678
+ [APPLY, KEYWORDS.IF],
679
+ [
680
+ [APPLY, 'map:exists?'],
681
+ [WORD, memoName],
682
+ [WORD, keyName]
684
683
  ],
685
684
  [
686
- [APPLY, KEYWORDS.IF],
687
- [
688
- [APPLY, 'map:exists?'],
689
- [WORD, memoName],
690
- [WORD, keyName]
691
- ],
692
- [
693
- [APPLY, 'map:get'],
694
- [WORD, memoName],
695
- [WORD, keyName]
696
- ],
697
- [
698
- [APPLY, 'map:set-and-get!'],
699
- [WORD, memoName],
700
- [WORD, keyName],
701
- last.at(-1)
702
- ]
685
+ [APPLY, 'map:get'],
686
+ [WORD, memoName],
687
+ [WORD, keyName]
688
+ ],
689
+ [
690
+ [APPLY, 'map:set-and-get!'],
691
+ [WORD, memoName],
692
+ [WORD, keyName],
693
+ last.at(-1)
703
694
  ]
704
695
  ]
705
696
  ]
706
- ],
707
- [WORD, newName]
708
- ]
697
+ ]
698
+ ],
699
+ [WORD, newName]
709
700
  ]
710
701
  ]
711
702
  ]