Make V1.7
MAKE — v1.7
A tiny, English-like scripting language & editor — one developer project
Highlights — what’s new in v1.7
- Real functions:
createFunction / endFunction, parameters, anduseFunction ... giving. Functions run with their own local scope.
- Conditionals (clean & readable): new
if/if_notblocks with anelse skipTo <label>pattern; default skip label isend. Nesting is simple — labelled ends keep structure clear. - Looping tools: reliable loop patterns using
save/loadand relative jumps (e.g.skip -2) — all demonstrated in examples. - Function output model: functions “show” results and you read them with
\lastFunctionOutputinstead of a traditionalreturn. You can show multiple times; the last shown value becomes the function result. - Cleaner control flow: two equivalent styles:
if X else skipTo labelandskipTo label if X(use whichever reads better). Multiple IFs can target oneendlabel. - Examples & editor improvements: 13 curated examples included (factorial, star pattern, torch toggle, file save/load, and more). Editor now has save/load buttons, syntax shortcuts, autocomplete for examples, and Android-specific tokens highlighted.
- Android-only helpers:
toast,switchOnTorch,switchOffTorch, andvibrate(convenience commands when running on Android). - Other small features & fixes:
quitEditor,\currentline,\scriptname, robust whitespace handling (leading spaces stripped), and many bugfixes.
Changelog (selected)
- v1.7 (this release)
- Function system: createFunction / useFunction with parameter support and local scope.
- Real
ifblocks with optionalelse skipTo; default labelendwhen no else provided. - Improved examples (13 total) and example manager in editor.
- Fixes for skip/gotoline whitespace issues (source is pre-cleaned).
- Added quitEditor, vibrate, and save/load editor buttons.
- v1.6 → v1.7: added conditional blocks, function-from-file calling, improved editor UX and example suite.
- Earlier (1.0 → 1.6): built the core Make interpreter, string-keyword behaviours, skip/load/save flow, and Android integrations.
Quick demo examples (copy into the editor)
Factorial (function + loop via save/load)
createFunction factorial getting num
fact = 1
save a
fact × num
num - 1
load a if num ≠ 0.0
show \fact
endFunction
useFunction factorial giving 4
show \lastFunctionOutput
Conditional chain (three checks share one end)
a = 1.0
if a ≠ 0.0 else skipTo end
if a ≥ 1.0 else skipTo end
if a = 1.0 else skipTo end
show \a
end
Torch toggle (Android example)
skipTo end if a = 1.0
switchOnTorch
a = 2
end
skipTo end if_not a = 1.0
switchOffTorch
a = 0
end
show \a
a - 1
Documentation & examples included
- 13 ready-to-run examples packaged with the app (star patterns, factorial, torch flicker, file save/load, a+b² proof, and more).
- Full syntax reference available in-app:
show,save,load,skipTo,if,if_not,createFunction,useFunction, and Android tokens. - Editor supports keyword shortcuts and syntax highlighting for core keywords; user-added keywords are supported via KeyWordBehaviour.
Notes for developers & integrators
- The interpreter is intentionally lightweight — built for readability and ease of embedding. The .jar interpreter (planned) will allow you to embed Make in Java projects.
- Functions run with a cloned variable scope (local variables inside a function do not mutate caller variables by default).
\lastFunctionOutputholds the lastshowvalue produced by a function call — that is how functions “return” values in Make.- If you want a core-free DSL, users can call
disableCoreto remove built-in behaviours and supply their own via keyword behaviours.
Known limitations & roadmap
- Currently functions use the interpreter synchronously (no built-in async/callback). Nested calls are supported and stable in v1.7.
- Planned: improved module import syntax, small standard library, a .jar release for desktop embedding, and enhanced editor UX.
- Planned: optional structured `else if` sugar, and more Android utilities if requested.
Credits & notes
Made by a single indie developer — created from scratch on mobile. Project started Nov 12, 2025. This release includes many user-facing improvements and example programs to show what Make can do.
Want to help or contribute?
If you want examples, report bugs, or test a feature (Android-only features included), drop an issue on the itch page comments or DM the developer. Pull requests for the .jar and example translations are welcome once the repo is public.
Download: (use the itch.io download button above) — release v1.7, examples and documentation bundled with the editor.
Files
Get Make
Make
A new programming language
| Status | In development |
| Category | Other |
| Author | RARE DEVELOPER |
| Tags | compiler, No AI, programming-language |
Leave a comment
Log in with itch.io to leave a comment.