{"library":"spoon","title":"spoon","type":"library","description":"Spoon is a JavaScript transpiler that converts synchronous code into continuation-passing style (CPS) by identifying specified function calls and rewriting the surrounding code to use callbacks. It parses JavaScript using Esprima, constructs a High-Level Intermediate Representation (HIR) in the form of a Control Flow Graph (CFG), and then renders the transformed code back to JavaScript. Current stable version is 0.1.10, with no recent releases. It is primarily a proof-of-concept for transpilation techniques and is not actively maintained. Differentiators include low-level CFG manipulation and selective transpilation via declaration comments.","language":"javascript","status":"abandoned","last_verified":"Fri May 01","install":{"commands":["npm install spoon"],"cli":null},"imports":["const spoon = require('spoon')","const { construct } = require('spoon')","const { render } = require('spoon')"],"auth":{"required":false,"env_vars":[]},"links":{"homepage":null,"github":null,"docs":null,"changelog":null,"pypi":null,"npm":"https://www.npmjs.com/package/spoon","openapi_spec":null,"status_page":null,"smithery":null},"quickstart":{"code":"const spoon = require('spoon');\nconst code = `var x = 1; var y = hardMath(x) * 2; console.log(y);`;\nconst transformed = spoon(code, ['hardMath']);\nconsole.log(transformed);\n// Output uses callbacks for hardMath calls.","lang":"javascript","description":"Transpile code to use callbacks for specified function calls, with minimal configuration.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}