Skip to content

🔀 Solutions and non-solutions to JavaScript's async problem

Notifications You must be signed in to change notification settings

InvictusMB/async-problem

 
 

Repository files navigation

JavaScript has a problem

We like to say that JavaScript has a callback problem. This project considers various approaches to the following problem:

Given a path to a directory containing an index file, index.txt, and zero or more other files, read the index file (which contains one filename per line), then read each of the files listed in the index concurrently, concat the resulting strings (in the order specified by the index), and write the result to stdout.

The program's exit code should be 0 if the entire operation is successful; 1 otherwise.

All side effects must be isolated to the main function. Impure functions may be defined at the top level but may only be invoked in main.

The solutions are best read in the following order:

The above ordering is suggested reading order only – not grade. Solutions are graded on the following criteria:

  • the size of main (smaller is better); and
  • the degree to which the approach facilitates breaking the problem into manageable subproblems.

† Perhaps in five years we'll be saying that JavaScript has a promise problem.

About

🔀 Solutions and non-solutions to JavaScript's async problem

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 90.6%
  • Shell 9.4%