HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
zesterer
tao
Rust2022–2022
zesterer / tao

tao

A statically-typed functional language with generics, typeclasses, sum types, pattern-matching, first-class functions, currying, algebraic effects, associated types, good diagnostics, etc.

2Distinct people
7Mentions
0Explicit recommenders
1.2KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A statically-typed functional language with generics, typeclasses, sum types, pattern-matching, first-class functions, currying, algebraic effects, associated types, good diagnostics, etc.

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, 3:56:07 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 week7 dated mentions

Observed mentions: 2022-04-13 09:40:57 UTC to 2022-07-05 20:45:43 UTC. Weeks start Monday, UTC.

02462022-04-11 00:00:00 UTC to 2022-04-18 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsApr 112022-04-18 00:00:00 UTC to 2022-04-25 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-04-25 00:00:00 UTC to 2022-05-02 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-05-02 00:00:00 UTC to 2022-05-09 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-05-09 00:00:00 UTC to 2022-05-16 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-05-16 00:00:00 UTC to 2022-05-23 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-05-23 00:00:00 UTC to 2022-05-30 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsMay 232022-05-30 00:00:00 UTC to 2022-06-06 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-06-06 00:00:00 UTC to 2022-06-13 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-06-13 00:00:00 UTC to 2022-06-20 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-06-20 00:00:00 UTC to 2022-06-27 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-06-27 00:00:00 UTC to 2022-07-04 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-07-04 00:00:00 UTC to 2022-07-11 00:00:00 UTC (exclusive): 6 mentions; 1 submissions, 5 commentsJul 4

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
Apr 112022-04-11 00:00:00 UTC2022-04-18 00:00:00 UTC101
Apr 182022-04-18 00:00:00 UTC2022-04-25 00:00:00 UTC000
Apr 252022-04-25 00:00:00 UTC2022-05-02 00:00:00 UTC000
May 22022-05-02 00:00:00 UTC2022-05-09 00:00:00 UTC000
May 92022-05-09 00:00:00 UTC2022-05-16 00:00:00 UTC000
May 162022-05-16 00:00:00 UTC2022-05-23 00:00:00 UTC000
May 232022-05-23 00:00:00 UTC2022-05-30 00:00:00 UTC000
May 302022-05-30 00:00:00 UTC2022-06-06 00:00:00 UTC000
Jun 62022-06-06 00:00:00 UTC2022-06-13 00:00:00 UTC000
Jun 132022-06-13 00:00:00 UTC2022-06-20 00:00:00 UTC000
Jun 202022-06-20 00:00:00 UTC2022-06-27 00:00:00 UTC000
Jun 272022-06-27 00:00:00 UTC2022-07-04 00:00:00 UTC000
Jul 42022-07-04 00:00:00 UTC2022-07-11 00:00:00 UTC615

What Hacker News says

7 sources
Yep, this is the case: the type-checker allows arbitrary computation to occur at compilation time. You can see some of that here, where I've implemented peano arithmetic/addition/multiplication/branching using the type system: https://github.com/zesterer/tao/blob/master/examples/type-as... . I've not yet had the time or mental fortitude to implement something more non-trivial like N-queens or a Brainfuck interpreter, but perhaps eventually!
In Tao: A statically-typed functional language
> Curious how Tao is pushing the limits on that front? I don't want to put emphasis on "pushing the limits" because I'm still very new to language design and mostly self-taught. There are bigger and better languages pushing the envelope further than Tao! That said, I've been experimenting with: - Expressing totality and type inhabitance in the type system - Effect systems (including user-defined effects, effect handling, parametric effects, lowering to monadic IO, etc.) - Typeclass inference via typeclass variables (Tao can handle several cases that are ambiguous even in Rust, such as the following: https://github.com/zesterer/tao/blob/master/examples/debug.t...)
In Tao: A statically-typed functional language

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.