@thi.ng/pointfree 3.1.136 → 3.1.138
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/README.md +23 -22
- package/package.json +8 -8
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<!-- This file is generated - DO NOT EDIT! -->
|
|
2
|
-
<!-- Please see: https://
|
|
3
|
-
# 
|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/@thi.ng/pointfree)
|
|
6
6
|

|
|
@@ -8,11 +8,12 @@
|
|
|
8
8
|
|
|
9
9
|
> [!NOTE]
|
|
10
10
|
> This is one of 214 standalone projects, maintained as part
|
|
11
|
-
> of the [@thi.ng/umbrella](https://
|
|
11
|
+
> of the [@thi.ng/umbrella](https://codeberg.org/thi.ng/umbrella/) ecosystem
|
|
12
12
|
> and anti-framework.
|
|
13
13
|
>
|
|
14
|
-
> 🚀 Please help me to work full-time on these projects by [sponsoring
|
|
15
|
-
>
|
|
14
|
+
> 🚀 Please help me to work full-time on these projects by [sponsoring
|
|
15
|
+
> me](https://codeberg.org/thi.ng/umbrella/src/branch/develop/CONTRIBUTING.md#donations).
|
|
16
|
+
> Thank you! ❤️
|
|
16
17
|
|
|
17
18
|
- [About](#about)
|
|
18
19
|
- [Reading links](#reading-links)
|
|
@@ -79,7 +80,7 @@ functional composition via lightweight (~3KB gzipped), stack-based embedded DSL.
|
|
|
79
80
|
|
|
80
81
|
This module implements the language's core components in vanilla ES6 and
|
|
81
82
|
is perfectly usable like that. **The related
|
|
82
|
-
[@thi.ng/pointfree-lang](https://
|
|
83
|
+
[@thi.ng/pointfree-lang](https://codeberg.org/thi.ng/umbrella/src/branch/develop/packages/pointfree-lang)
|
|
83
84
|
module defines an actual language with a powerful and more concise
|
|
84
85
|
syntax around this module and might be better suited for some use
|
|
85
86
|
cases.**
|
|
@@ -89,7 +90,7 @@ Current features:
|
|
|
89
90
|
- words implemented as tiny vanilla JS functions (easily extensible)
|
|
90
91
|
- optimized pre-composition/compilation of custom user defined words
|
|
91
92
|
(see
|
|
92
|
-
[word.ts](https://
|
|
93
|
+
[word.ts](https://codeberg.org/thi.ng/umbrella/src/branch/develop/packages/pointfree/src/word.ts))
|
|
93
94
|
- dual stack (main & stash/scratch space)
|
|
94
95
|
- nested execution environments (scopes)
|
|
95
96
|
- arbitrary stack values
|
|
@@ -104,7 +105,7 @@ Current features:
|
|
|
104
105
|
- higher order combinators
|
|
105
106
|
- environment manipulation etc.
|
|
106
107
|
- stack comments & documentation for most ops/words
|
|
107
|
-
- [over 330 test cases](https://
|
|
108
|
+
- [over 330 test cases](https://codeberg.org/thi.ng/umbrella/src/branch/develop/packages/pointfree/test/index.ts)
|
|
108
109
|
|
|
109
110
|
### Reading links
|
|
110
111
|
|
|
@@ -180,7 +181,7 @@ normalize([10, -10, 0])
|
|
|
180
181
|
|
|
181
182
|
In terms of composing processing pipelines, this approach is somewhat
|
|
182
183
|
related to
|
|
183
|
-
[transducers](https://
|
|
184
|
+
[transducers](https://codeberg.org/thi.ng/umbrella/src/branch/develop/packages/transducers),
|
|
184
185
|
however the pointfree method and use of a stack as sole communication
|
|
185
186
|
medium between different sub-processes **can** be more flexible, since
|
|
186
187
|
each function ("word" in Concatenative-programming-speak) can consume or
|
|
@@ -193,11 +194,11 @@ non-linear control flow.
|
|
|
193
194
|
|
|
194
195
|
**STABLE** - used in production
|
|
195
196
|
|
|
196
|
-
[Search or submit any issues for this package](https://
|
|
197
|
+
[Search or submit any issues for this package](https://codeberg.org/thi.ng/umbrella/issues?q=%5Bpointfree%5D)
|
|
197
198
|
|
|
198
199
|
## Support packages
|
|
199
200
|
|
|
200
|
-
- [@thi.ng/pointfree-lang](https://
|
|
201
|
+
- [@thi.ng/pointfree-lang](https://codeberg.org/thi.ng/umbrella/src/branch/develop/packages/pointfree-lang) - Forth style syntax layer/compiler & CLI for the [@thi.ng/pointfree](https://codeberg.org/thi.ng/umbrella/src/branch/develop/packages/pointfree) DSL
|
|
201
202
|
|
|
202
203
|
## Installation
|
|
203
204
|
|
|
@@ -229,24 +230,24 @@ Package sizes (brotli'd, pre-treeshake): ESM: 3.23 KB
|
|
|
229
230
|
|
|
230
231
|
## Dependencies
|
|
231
232
|
|
|
232
|
-
- [@thi.ng/api](https://
|
|
233
|
-
- [@thi.ng/checks](https://
|
|
234
|
-
- [@thi.ng/compose](https://
|
|
235
|
-
- [@thi.ng/equiv](https://
|
|
236
|
-
- [@thi.ng/errors](https://
|
|
233
|
+
- [@thi.ng/api](https://codeberg.org/thi.ng/umbrella/src/branch/develop/packages/api)
|
|
234
|
+
- [@thi.ng/checks](https://codeberg.org/thi.ng/umbrella/src/branch/develop/packages/checks)
|
|
235
|
+
- [@thi.ng/compose](https://codeberg.org/thi.ng/umbrella/src/branch/develop/packages/compose)
|
|
236
|
+
- [@thi.ng/equiv](https://codeberg.org/thi.ng/umbrella/src/branch/develop/packages/equiv)
|
|
237
|
+
- [@thi.ng/errors](https://codeberg.org/thi.ng/umbrella/src/branch/develop/packages/errors)
|
|
237
238
|
|
|
238
239
|
Note: @thi.ng/api is in _most_ cases a type-only import (not used at runtime)
|
|
239
240
|
|
|
240
241
|
## Usage examples
|
|
241
242
|
|
|
242
243
|
Two projects in this repo's
|
|
243
|
-
[/examples](https://
|
|
244
|
+
[/examples](https://codeberg.org/thi.ng/umbrella/src/branch/develop/examples)
|
|
244
245
|
directory are using this package:
|
|
245
246
|
|
|
246
|
-
| Screenshot | Description | Live demo | Source
|
|
247
|
-
|
|
248
|
-
| <img src="https://
|
|
249
|
-
| <img src="https://
|
|
247
|
+
| Screenshot | Description | Live demo | Source |
|
|
248
|
+
|:----------------------------------------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------|:-----------------------------------------------------|:------------------------------------------------------------------------------------------|
|
|
249
|
+
| <img src="https://codeberg.org/thi.ng/umbrella/media/branch/develop/assets/examples/pointfree-geom.jpg" width="240"/> | Live coding playground for 2D geometry generation using @thi.ng/pointfree-lang | [Demo](https://demo.thi.ng/umbrella/pointfree-geom/) | [Source](https://codeberg.org/thi.ng/umbrella/src/branch/develop/examples/pointfree-geom) |
|
|
250
|
+
| <img src="https://codeberg.org/thi.ng/umbrella/media/branch/develop/assets/examples/pointfree-svg.png" width="240"/> | Generate SVG using pointfree DSL | | [Source](https://codeberg.org/thi.ng/umbrella/src/branch/develop/examples/pointfree-svg) |
|
|
250
251
|
|
|
251
252
|
## API
|
|
252
253
|
|
|
@@ -624,7 +625,7 @@ pf.run([10, 20, 30, 40, 50, 60, [pf.add], pf.tria2])[0]
|
|
|
624
625
|
// [30, 70, 110]
|
|
625
626
|
```
|
|
626
627
|
|
|
627
|
-
See [tests](https://
|
|
628
|
+
See [tests](https://codeberg.org/thi.ng/umbrella/src/branch/develop/packages/pointfree/test/index.ts#L579) for more examples...
|
|
628
629
|
|
|
629
630
|
### Array transformations
|
|
630
631
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@thi.ng/pointfree",
|
|
3
|
-
"version": "3.1.
|
|
3
|
+
"version": "3.1.138",
|
|
4
4
|
"description": "Pointfree functional composition / Forth style stack execution engine",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "./index.js",
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"sideEffects": false,
|
|
9
9
|
"repository": {
|
|
10
10
|
"type": "git",
|
|
11
|
-
"url": "git+https://
|
|
11
|
+
"url": "git+https://codeberg.org/thi.ng/umbrella.git",
|
|
12
12
|
"directory": "packages/pointfree"
|
|
13
13
|
},
|
|
14
14
|
"homepage": "https://thi.ng/pointfree",
|
|
@@ -40,11 +40,11 @@
|
|
|
40
40
|
"tool:tangle": "../../node_modules/.bin/tangle src/**/*.ts"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@thi.ng/api": "^8.12.
|
|
44
|
-
"@thi.ng/checks": "^3.8.
|
|
45
|
-
"@thi.ng/compose": "^3.0.
|
|
46
|
-
"@thi.ng/equiv": "^2.1.
|
|
47
|
-
"@thi.ng/errors": "^2.6.
|
|
43
|
+
"@thi.ng/api": "^8.12.18",
|
|
44
|
+
"@thi.ng/checks": "^3.8.8",
|
|
45
|
+
"@thi.ng/compose": "^3.0.55",
|
|
46
|
+
"@thi.ng/equiv": "^2.1.107",
|
|
47
|
+
"@thi.ng/errors": "^2.6.7"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
50
|
"esbuild": "^0.27.2",
|
|
@@ -136,5 +136,5 @@
|
|
|
136
136
|
"alias": "pf",
|
|
137
137
|
"year": 2015
|
|
138
138
|
},
|
|
139
|
-
"gitHead": "
|
|
139
|
+
"gitHead": "8ddf86ea0a1e658ddbf19cc645b29d0c176e29c4\n"
|
|
140
140
|
}
|