Full name: English, but it accidentally became a programming language.
Short description: Pseudocode that actually runs.
One-line pitch: Write it like English. Run it like code.
Englang is a tiny English-like programming language made for beginners who understand logic but do not want to fight syntax on day one.
It starts with readable instructions and then gradually moves learners toward symbolic and curly-brace syntax.
Englang is what happens when pseudocode gets tired of being theoretical.
Also known as:
English that runs
Pseudocode with commitment
JavaScript's polite younger cousin
A no-semicolon zone for beginners
The language your school notebook wanted- Live docs website:
https://englang.pephub.tech/ - GitHub repository:
https://github.com/Prasundas99/englang
- values and variables
- expressions
- decisions (
if / else) - loops
- functions
- input/output flow
Example:
start
set name to "Alice".
print "Hello", name.
V1: English-like syntax (beginner-first)V2: Symbol-based pseudocode styleV3: Curly-brace style closer to mainstream languages
startprogram entrysetassignmentsprintoutput- arithmetic expressions with precedence
if / else if / else- comparisons and logical conditions
- loops:
while,for each,repeat break- functions
ask(...)input through runtime handler
englang/
src/
index.js
lexer.js
parser.js
constants/
tokens.js
utils/
syntax.js
tests/
tests.js
examples/
*.eng
README.md
docs/
*.md
scripts/
build-cdn.mjs
website/
docusaurus.config.js
docs/
src/
static/
cdn/
englang.min.js
run.js
index.js
package.json
Backlog.md- Node.js (LTS recommended)
- npm
npm installnpm testnpm startCreate playground.mjs:
import { runEnglang } from './src/index.js';
const sourceCode = `
start
set learner to "Prasun".
print "Hello", learner.
`;
const result = runEnglang(sourceCode, console);
console.log(result.output);Run:
node playground.mjsrunEnglang(sourceCode, (logger = console), (options = {}));sourceCode: Englang program textlogger: output logger (consoleby default)options.ask(questionText): input provider forask(...)
Return shape:
{
variables: {},
functions: {},
output: []
}Build bundle:
npm run build:cdnOutputs:
cdn/englang.min.jswebsite/static/cdn/englang.min.js
Browser usage:
<script src="https://github.com/Prasundas99/englang/blob/main/cdn/englang.min.js"></script>
<script>
const result = Englang.runEnglang(`
start
print "Hello from browser".
`);
console.log(result.output);
</script>npm --prefix website install
npm --prefix website startBuild:
npm --prefix website run buildnpm start-> run sample (run.js)npm test-> run test suite (tests/tests.js)npm run build:cdn-> build browser bundlenpm run prepare-> set up husky hooks
- Introduction
- Tutorial (V1)
- How To Use
- CDN Usage
- Thinking
Website: https://englang.pephub.tech/