{"library":"whynot","type":"library","category":null,"description":"whynot.js is a generic, VM-based framework for matching formal languages, drawing inspiration from systems like Russ Cox's regular expression engine. It operates by considering all possible branches of a program in parallel, enabling efficient implementation of various language matching tasks, including regular expressions and XML schemas. A key differentiator is its ability to record program progress through input and grammar, providing detailed feedback on *why* an input might not match a given grammar. The current stable version is 5.0.0, with releases focusing on performance, memory optimization, and module compatibility (ESM/CJS). While there isn't a strict release cadence, updates address bug fixes, dependency bumps, and significant architectural improvements.","language":"javascript","status":"active","version":"5.0.0","tags":["javascript","Language","Matching","Regex","Structure","typescript"],"last_verified":"Wed May 27","install":[{"cmd":"npm install whynot","imports":["import { VM } from 'whynot';","import { Program } from 'whynot';","import { Instruction } from 'whynot';"]},{"cmd":"yarn add whynot","imports":[]},{"cmd":"pnpm add whynot","imports":[]}],"homepage":null,"github":"https://github.com/bwrrp/whynot.js","docs":null,"changelog":null,"pypi":null,"npm":"https://www.npmjs.com/package/whynot","openapi_spec":null,"status_page":null,"smithery":null,"compatibility":{"summary":{"python_range":"18–22","success_rate":0,"avg_install_s":null,"avg_import_s":null,"wheel_type":null},"url":"https://checklist.day/v1/registry/whynot/compatibility"}}