HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
argumentcomputer
yatima
Lean2021–2021
argumentcomputer / yatima

yatima

A zero-knowledge Lean4 compiler and kernel

3Distinct people
5Mentions
0Explicit recommenders
149GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A zero-knowledge Lean4 compiler and kernel

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, 1:49:46 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 hour5 dated mentions

Observed mentions: 2021-06-07 18:09:03 UTC to 2021-06-08 09:56:49 UTC.

012021-06-07 18:00:00 UTC to 2021-06-07 19:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 commentsJun 7, 18:002021-06-07 19:00:00 UTC to 2021-06-07 20:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-07 20:00:00 UTC to 2021-06-07 21:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-07 21:00:00 UTC to 2021-06-07 22:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-07 22:00:00 UTC to 2021-06-07 23:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-07 23:00:00 UTC to 2021-06-08 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2021-06-08 00:00:00 UTC to 2021-06-08 01:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2021-06-08 01:00:00 UTC to 2021-06-08 02:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsJun 8, 01:002021-06-08 02:00:00 UTC to 2021-06-08 03:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2021-06-08 03:00:00 UTC to 2021-06-08 04:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-08 04:00:00 UTC to 2021-06-08 05:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-08 05:00:00 UTC to 2021-06-08 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-08 06:00:00 UTC to 2021-06-08 07:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-08 07:00:00 UTC to 2021-06-08 08:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-08 08:00:00 UTC to 2021-06-08 09:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-08 09:00:00 UTC to 2021-06-08 10:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsJun 8, 09:00

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
Jun 7, 18:002021-06-07 18:00:00 UTC2021-06-07 19:00:00 UTC110
Jun 7, 19:002021-06-07 19:00:00 UTC2021-06-07 20:00:00 UTC000
Jun 7, 20:002021-06-07 20:00:00 UTC2021-06-07 21:00:00 UTC000
Jun 7, 21:002021-06-07 21:00:00 UTC2021-06-07 22:00:00 UTC000
Jun 7, 22:002021-06-07 22:00:00 UTC2021-06-07 23:00:00 UTC000
Jun 7, 23:002021-06-07 23:00:00 UTC2021-06-08 00:00:00 UTC101
Jun 8, 00:002021-06-08 00:00:00 UTC2021-06-08 01:00:00 UTC101
Jun 8, 01:002021-06-08 01:00:00 UTC2021-06-08 02:00:00 UTC000
Jun 8, 02:002021-06-08 02:00:00 UTC2021-06-08 03:00:00 UTC101
Jun 8, 03:002021-06-08 03:00:00 UTC2021-06-08 04:00:00 UTC000
Jun 8, 04:002021-06-08 04:00:00 UTC2021-06-08 05:00:00 UTC000
Jun 8, 05:002021-06-08 05:00:00 UTC2021-06-08 06:00:00 UTC000
Jun 8, 06:002021-06-08 06:00:00 UTC2021-06-08 07:00:00 UTC000
Jun 8, 07:002021-06-08 07:00:00 UTC2021-06-08 08:00:00 UTC000
Jun 8, 08:002021-06-08 08:00:00 UTC2021-06-08 09:00:00 UTC000
Jun 8, 09:002021-06-08 09:00:00 UTC2021-06-08 10:00:00 UTC101

What Hacker News says

5 sources
Sure, so I do use petgraph for actually visualizing the lambda DAG graphs, since it's got a very nice graphviz integration: https://github.com/yatima-inc/yatima/blob/059b0abccd0ca54b9a.... You can see the output of that here: https://i.redd.it/94zg24fboyv61.png (N.B. We removed that module from the language core since we're trying to make that no_std, but we're adding it back to our utils crate soon: https://github.com/yatima-inc/yatima/issues/70) But we can't use petgraph for the actual computational lambda-DAG because of performance. For example, one thing we get by using pointers is constant-time insertion and removal of of parent nodes (every node in the graph points to their parent). We actually wrote our own Doubly-Linked-List in Rust (it can be done!) to store pointers to the parents for this reason: https://github.com/yatima-inc/y
Read the rest
atima/blob/main/core/src/dll..... There's also memory concerns, given that the lambda-DAG collects its own garbage, freeing space allocated for nodes when no longer in use, whereas I believe petgraph is just `Vec` internally, which would require shrinking, and that would also be slow. All this low-level pointer manipulation was, tbh, a huge amount of work, but the end result is a performant lazy lambda-calculus reducer with sharing in a few thousand lines of Rust, which means fast lambdas on wherever WASM runs. (That said, I'm a little bit concerned about cache misses with all the pointer chasing we do, but I haven't yet gotten around to profiling different Yatima expressions to measure this. Would be a great project for an OSS contributor too, so I'll probably make a GH issue for it!)
In Yatima: A programming language for the decentralized web
Totally a fair point. Honestly I'm not sure the Yatima's actually ready for on-boarding language users, as distinct from language contributors, just yet. Like, if you want to hack on a Rust implementation of a functional language and can figure out a lot stuff from the source, we're just about ready for you. If you want to use the language to build software that's useful for some other purpose, I don't think we're quite there yet. We don't even have IO yet! But you're definitely right that once we're ready for people who aren't contributors to use the language we'll need code examples, tutorials, a web repl (it's in progress! https://github.com/yatima-inc/yatima/tree/main/web), and all that good stuff. 100% agree on that
In Yatima: A programming language for the decentralized web
Some random questions to the developers regarding the motivation that "math is more fun when you have a computer to take care of the detail-work" [0]: 1. Do you have plans to make Yatima a usable theorem prover? 2. If so, how will people typically quotient things (e.g. does it have quotient types)? 3. How far does the type theory depart from classical mathematics? 4. The paper you've linked [1] suggests that the standard definition of contradiction is "too strong" in its theory, but that appears to be the definition of Empty [2]. What am I missing? [0]: https://github.com/yatima-inc/yatima#motivation [1]: https://homepage.divms.uiowa.edu/~astump/papers/fu-stump-rta... [2]: https://github.com/yatima-inc/introit/blob/main/Empty.ya
In Yatima: A programming language for the decentralized web

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.