Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Curry helper functions. #125

Closed
bigeasy opened this issue Nov 26, 2020 · 0 comments
Closed

Curry helper functions. #125

bigeasy opened this issue Nov 26, 2020 · 0 comments
Assignees

Comments

@bigeasy
Copy link
Owner

bigeasy commented Nov 26, 2020

No description provided.

@bigeasy bigeasy added this to the Convert to ES6. milestone Nov 26, 2020
@bigeasy bigeasy self-assigned this Nov 26, 2020
bigeasy pushed a commit that referenced this issue Nov 26, 2020
Added the ability to curry `resolve`. Will apply it to all helper
functions that raise exceptions except assert. Well, maybe assert still,
but it is going to be the place where the syntax bashing falls apart.

Ambiguities appear to be resolved. For currying we tell the user to call
with an appropriate first argument, options object, code string, code
symbol or message format, and to omit what the argument is supposed to
be which is either a `Promise` or a function. We can be sure that we're
not mistaking an options object for a `Promise` unless the user decides
to add a `then` function property for no good reason. We're not going to
document an admonisment not to do so, it won't happen.

Closes #126.
See #111.
See #125.
bigeasy pushed a commit that referenced this issue Nov 27, 2020
Finalize the deferred constructor implementation. Migrated from one
implementation to the next to implement currying.

See #111.
See #112.
See #113.
See #125.
bigeasy pushed a commit that referenced this issue Dec 9, 2020
 * Delete unused swipe. See #97.
 * Remove `Context` class. Closes #144.
 * Documentation and test for `sprintf` errors. See #95. See #97.
 * Documentation on inheritance in `swipe.t.js`. See #97. See #133.
 * Clean up `README.md`. See #97.
 * Remove debugging message.
 * An integer argument sets stack trace limit. See #97. See #143.
 * Implement `toString()` and `inspect.util`. Closes #142.
 * Inheritance and aliases.
 * Import symbols using `symbol`. See #133.
 * Move existing inheritance into `swipe.t.js`. See #133.
 * Sorted out construction of aliases. See #140.
 * Rename `Merge.argument` to `combine`. See #140. See #97.
 * Move used verbiage to `swipe.t.js`. See #97.
 * Tidy newline printing in `readme.t.js`. See #97.
 * `codes` no longer reports templates. See #133. See #140.
 * Tidy declaration of codes lookup. See #133. See #140.
 * Options object can now go anywhere. See #117.
 * Sketch of plain code inheritance. See #133. See #141.
 * Non-enumerable properties in defaults. See #141.
 * Non-enumerable properties in constructor. See #141.
 * Corral class properties into `Prototype`. See #133. See #140.
 * `create` unshifts onto `vargs`. See #133. See #140.
 * Added thoughts about inheritance to docs. See #133. See #140.
 * Inheriting templates from super class. See #140.
 * Sketch of aliases. See #140.
 * Implement sprintf-only properties. Closes #127.
 * Document the appropriate use of error properties. See #97.
 * Derive from derived super class, inherit codes. Closes #133.
 * Moving some documentation around, diary entry. See #97.
 * Talk default properties and codes before JSON. See #97.
 * More documentation. See #97.
 * Convert nested Errors to Interrupt format. See #102.
 * Re-implementation of stack trace parser. See #102.
 * Sort out enumerability. Closes #128.
 * Thoughts on printing non-Error nested errors.
 * `code` returns an object. Closes #139.
 * Print not code if null, nor context if empty. Closes #137.
 * Reorganization, deliminate some dead code. See #97.
 * Additional documentation. See #97.
 * Create static function to get the error message. See #97. Closes #136.
 * Documentation and reorgainzation. See #97.
 * Remove old `interrupt.t.js` unit test. See #97.
 * Remove `assert`. See #131.
 * Actually using the circular reference JSON. See #130.
 * `Interrupt.Error` error codes for meta-errors. Closes #131.
 * Will not derive from `AggregateError`. Closes #116.
 * Implement a forgiving JSON serializer. Closes #130.
 * Use `Instances` instead of `MATERIAL`.
 * Created a context object for nested error context. Closes #135.
 * Display code in stack trace.
 * Add test temp directory to `.gitignore`.
 * Implement default properties by code. Closes #134.
 * Fix options merging. See #117.
 * Sketch of code inerhitence. See #133.
 * Sketch of audit, `sprintf` errors reported. See #114. Closes #122.
 * One rename of `properties` was skipped. See #129.
 * Reordered assistants in order of documentation. See #97.
 * Rename `context` to `properties`. Closes #129.
 * Currying appears to be finished. Closes #125.
 * Use the finalized deferred constructor. See #125. See #113. See #112. See #111.
 * Implement sync `try`/`catch` wapper. See #113.
 * Decide on `callback()` function signature. See #112.
 * Sketch of currying, implement `voptions`. See #125. See #111. Closes #126.
 * Settle on an argument order for constructor. See #117. Seem to have removed ambiguities. The first argument to the constructor
 * Documentation, discovered an ambiguity. See #97.
 * Sketch auditing, deferred construct. Assert docs. See #97. See #114. See #117.
 * Create `Symbol`s for error codes. Closes #124.
 * Fix `sprintf` format selection. See #117.
 * Fix `readme.t.js` example error formats. See #97.
 * Catch `sprintf` errors. See #117. See #122.
 * Assert that `Interrupt` is protected. Closes #123.
 * Rename `causes` to `errors. Closes #115.
 * Further sketch of named parameters. See #117.
 * Build with Node.js 15 on Travis CI. Closes #121.
 * Remove dead code.
 * Build with Node.js 15 on GitHub Actions. Closes #120.
 * Build with Node.js 14 on GitHub Actions. Closes #119.
 * Build with Node.js 14 at Travis CI. Closes #118.
 * Start named parameters, no constructor assertions. See #117. Closes #110.
 * Promise resolver, callback helper function.
 * Poking at the `readme.t.js`. See #97.
 * Change tagline. See #97.
 * Add a TODO. See #110.
 * Make `readme.t.js` a unit test. See #97.

Closes #145.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant