HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelfβ™§ 0
← Back to top all-time
YakshaLang
Yaksha
C2023–2023
YakshaLang / Yaksha

Yaksha

😈 Yaksha Programming Language - Offside rule + Lisp system for macros. 🐣 WIP

2Distinct people
5Mentions
0Explicit recommenders
229GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

😈 Yaksha Programming Language - Offside rule + Lisp system for macros. 🐣 WIP

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC Β· Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by month5 dated mentions

Observed mentions: 2023-03-19 11:13:41 UTC to 2023-12-19 18:56:05 UTC.

0122023-03-01 00:00:00 UTC to 2023-04-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 commentsMar 20232023-04-01 00:00:00 UTC to 2023-05-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-05-01 00:00:00 UTC to 2023-06-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-06-01 00:00:00 UTC to 2023-07-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-07-01 00:00:00 UTC to 2023-08-01 00:00:00 UTC (exclusive): 2 mentions; 2 submissions, 0 commentsJul 20232023-08-01 00:00:00 UTC to 2023-09-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-09-01 00:00:00 UTC to 2023-10-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-10-01 00:00:00 UTC to 2023-11-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-11-01 00:00:00 UTC to 2023-12-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-12-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 commentsDec 2023

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Mar 20232023-03-01 00:00:00 UTC2023-04-01 00:00:00 UTC211
Apr 20232023-04-01 00:00:00 UTC2023-05-01 00:00:00 UTC000
May 20232023-05-01 00:00:00 UTC2023-06-01 00:00:00 UTC000
Jun 20232023-06-01 00:00:00 UTC2023-07-01 00:00:00 UTC000
Jul 20232023-07-01 00:00:00 UTC2023-08-01 00:00:00 UTC220
Aug 20232023-08-01 00:00:00 UTC2023-09-01 00:00:00 UTC000
Sep 20232023-09-01 00:00:00 UTC2023-10-01 00:00:00 UTC000
Oct 20232023-10-01 00:00:00 UTC2023-11-01 00:00:00 UTC000
Nov 20232023-11-01 00:00:00 UTC2023-12-01 00:00:00 UTC000
Dec 20232023-12-01 00:00:00 UTC2024-01-01 00:00:00 UTC110

What Hacker News says

5 sources
JaDoggΒ·Jul 31, 2023Submission

Show HN: YakshaLisp – Macros for Yaksha and Lisp Dialect

YakshaLisp is a sub-language embedded in Yaksha compiler. Allowing you to do things like below (fizzbuzz). macros!{ (defun to_fb (n) (+ (if (== n 1) "" " ") (cond ((== 0 (modulo n 15)) "FizzBuzz") ((== 0 (modulo n 3)) "Fizz") ((== 0 (modulo n 5)) "Buzz") (true (to_string n)) ))) (defun fizzbuzz () (list (yk_create_token YK_TOKEN_STRING (reduce + (map to_fb (range 1 101)))))) (yk_register {dsl fizzbuzz fizzbuzz}) } def main() -> int: println(fizzbuzz!{}) return 0 This is available in latest release - https://github.com/YakshaLang/Yaksha/releases/tag/v0.0.4 (I recommend using release.py in compiler/scripts if you want to locally compile it) Few more examples: - embedding a text file macros! { (defun load_string (file) (list (yk_create_token YK_
Read the rest
TOKEN_STRING (io_read_file (map_get file "value"))))) (yk_register {dsl load_string load_string}) } def main() -> int: println(load_string!{"test.txt"}) return 0 - importing a macro import import_me as magic def main() -> int: println(magic.counter!{}) println(magic.counter!{}) println(magic.counter!{}) return 0 Looking for ideas/advice/criticism :)
5 points Β· Open discussion
JaDoggΒ·Jul 30, 2023Submission

Show HN: YakshaLisp – Lisp dialect and macros for Yaksha lang

YakshaLisp is a sub-language embedded in Yaksha compiler. Allowing you to do things like below. See the link for updated documentation. What is your opinion about lisp dialect for defining macros in a off-side rule language? # β•”β•β•—β”Œβ”€β”β”Œβ”¬β”β”Œβ”€β”β”¬β”¬ β”Œβ”€β” β•”β•¦β•—β”¬β”Œβ”¬β”β”Œβ”€β” # β•‘ β”‚ β”‚β”‚β”‚β”‚β”œβ”€β”˜β”‚β”‚ β”œβ”€ β•‘ β”‚β”‚β”‚β”‚β”œβ”€ # β•šβ•β•β””β”€β”˜β”΄ β”΄β”΄ β”΄β”΄β”€β”˜β””β”€β”˜ β•© β”΄β”΄ β”΄β””β”€β”˜ # β•”β•β•—β”¬β”Œβ”€β”β”Œβ”€β” β•”β•— ┬ β”¬β”Œβ”€β”β”Œβ”€β” # β• β•£ β”‚β”Œβ”€β”˜β”Œβ”€β”˜ β• β•©β•—β”‚ β”‚β”Œβ”€β”˜β”Œβ”€β”˜ # β•š β”΄β””β”€β”˜β””β”€β”˜ β•šβ•β•β””β”€β”˜β””β”€β”˜β””β”€β”˜ macros!{ (defun to_fb (n) (+ (if (== n 1) "" " ") (cond ((== 0 (modulo n 15)) "FizzBuzz") ((== 0 (modulo n 3)) "Fizz") ((== 0 (modulo n 5)) "Buzz") (true (to_string n)) ))) (defun fizzbuzz () (list (yk_create_token YK_TOKEN_STRING (reduce + (map to_fb (range 1 101)))))) (yk_register {dsl fizzbuzz fizzbuzz}) } def main() -> int: println(fizzbuzz!{
Read the rest
}) return 0 This is available in latest release - https://github.com/YakshaLang/Yaksha/releases/tag/v0.0.4 (I recommend using release.py in compiler/scripts if you want to locally compile it)
2 points Β· Open discussion
JaDoggΒ·Mar 19, 2023Submission

Show HN: Yaksha Programming Language

I have been working on this for a while. Main goal was to build a usable programming language. I even end up building few tools for this such as IntelliJ plugin, etc. I also plan on building some games with it in future. Main use case would be: small games (raylib), tools (static linux binaries with musl-libc) and recreational programming (wasm4). Works in Windows also. If you have emscripten in path you can even build these games/tools (raylib) to WASM. Please have a look. Thank you. ------------------------------------- Main Repo: https://github.com/YakshaLang/Yaksha Doc: https://yakshalang.github.io/documentation.html Library: https://yakshalang.github.io/library-docs.html Tutorials: https://github.com/orgs/YakshaLang/discussions/categories/tu... ---------------------------------------- Started after a comment from WalterBright here ht
Read the rest
205 points Β· Open discussion

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.