<commit_before>chnobean.Promise
=======

## A Promises/A+ implementation.

 - Coded with performance in mind.
 - Tweakable by constants for even better performance.
 - ~1.5k minified with closure complier SIMPLE_OPTIMIZATIONS

## Tweaks

### CONVERT_THENABLES = false;

This will disable the automatic detection of non-chnobean.Promise thenables, but will gain you nice perf boost by not using an extra try / catch. You can still use non-chnobean.Promise by explicitly converting them: new chnobean.Promise(thenable);

### ALWAYS_RESOLVE_SYNCHRONIOUSLY = true;

Spec quote: onFulfilled or onRejected must not be called until the execution context stack contains only platform code.

If you don't rely on this, chnobean.Promise can avoid using setTimeout which will give another nice perf boost.

Anoter use for this is debugging, where you can have a full call stack tht includes the resolve() or reject() call.<commit_msg>readme tweaks<commit_after>chnobean.Promise
=======

## A Promises/A+ implementation.

 - Coded with performance in mind.
 - Tweakable by constants for even better performance.
 - ~1.5k minified. Tested with closure complier set to SIMPLE_OPTIMIZATIONS

## Tweaks

### CONVERT_THENABLES = false;

This will disable the automatic detection of non-chnobean.Promise thenables, but will gain you a nice perf boost by not using an extra try / catch.

### ALWAYS_RESOLVE_SYNCHRONIOUSLY = true;

Spec quote: "onFulfilled or onRejected must not be called until the execution context stack contains only platform code."

If you don't need to rely on this behavior, chnobean.Promise can avoid using setTimeout, which will give another nice perf boost.

Anoter use for this is debugging, where you can have a full call stack that includes all resolve() or reject() calls.
{'fraction_non_alphanumeric': 0.06449803701626472, 'fraction_numerical': 0.002243409983174425, 'mean_word_length': 4.6455696202531644, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5116346', 'n_tokens_mistral': 511, 'n_tokens_neox': 493, 'n_words': 232}