fez-lisp 1.5.79 → 1.5.80

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.79",
5
+ "version": "1.5.80",
6
6
  "type": "module",
7
7
  "main": "index.js",
8
8
  "keywords": [
package/src/check.js CHANGED
@@ -85,18 +85,16 @@ export const formatType = (name, env) => {
85
85
  const stats = env[name][STATS]
86
86
  return stats
87
87
  ? stats[TYPE_PROP][0] === APPLY
88
- ? `${name} (${
88
+ ? `${typeof name !== 'number' ? `${name} ` : ''}(${
89
89
  stats[ARG_COUNT] === VARIADIC
90
90
  ? '... ' + STATIC_TYPES.UNKNOWN
91
91
  : (stats[ARGUMENTS] ?? [])
92
92
  .map(
93
- (x) =>
94
- `${x[STATS][SIGNATURE]} ${x[STATS][TYPE_PROP].map((x) =>
95
- toTypeNames(x)
96
- ).join(' ')}${
97
- getSuffix(x[STATS][SIGNATURE]) === PREDICATE_SUFFIX
98
- ? ' ' + toTypeNames(PREDICATE)
99
- : ''
93
+ (x, i) =>
94
+ `${
95
+ x[STATS][TYPE_PROP][0] === APPLY
96
+ ? `${formatType(i, stats[ARGUMENTS])}`
97
+ : `${x[STATS][TYPE_PROP].map(toTypeNames).join(' ')}`
100
98
  }`
101
99
  )
102
100
  .join(' ')
@@ -407,6 +405,7 @@ export const typeCheck = (ast) => {
407
405
  env[name] = {
408
406
  [STATS]: {
409
407
  [TYPE_PROP]: [APPLY],
408
+ [SIGNATURE]: name,
410
409
  retried: 0,
411
410
  counter: 0,
412
411
  [VARIABLE_ORDER_INDEX]: env[ORDER],
@@ -471,6 +470,7 @@ export const typeCheck = (ast) => {
471
470
  // DECLARATION of ATOM
472
471
  env[name] = {
473
472
  [STATS]: {
473
+ [SIGNATURE]: name,
474
474
  retried: 0,
475
475
  counter: 0,
476
476
  [VARIABLE_ORDER_INDEX]: env[ORDER],
@@ -508,6 +508,7 @@ export const typeCheck = (ast) => {
508
508
  [STATS]: {
509
509
  retried: 0,
510
510
  counter: 0,
511
+ [SIGNATURE]: name,
511
512
  [VARIABLE_ORDER_INDEX]: env[ORDER],
512
513
  [TYPE_PROP]: [
513
514
  isL