{"id":50630678,"url":"https://github.com/tauraro/tauraro","last_synced_at":"2026-06-06T21:01:31.098Z","repository":{"id":360033485,"uuid":"1242582687","full_name":"tauraro/tauraro","owner":"tauraro","description":"A compiled, statically-typed programming language with Python-style syntax, Rust-level performance, and full bilingual (English + Hausa) keyword support. ","archived":false,"fork":false,"pushed_at":"2026-05-31T21:56:23.000Z","size":3767,"stargazers_count":24,"open_issues_count":1,"forks_count":8,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-05-31T23:12:03.158Z","etag":null,"topics":["easy","friendly","native","programming-language","systems-programming","very-fast"],"latest_commit_sha":null,"homepage":"https://tauraro.org","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tauraro.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-18T14:58:54.000Z","updated_at":"2026-05-31T22:11:20.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/tauraro/tauraro","commit_stats":null,"previous_names":["tauraro/tauraro"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/tauraro/tauraro","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tauraro%2Ftauraro","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tauraro%2Ftauraro/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tauraro%2Ftauraro/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tauraro%2Ftauraro/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tauraro","download_url":"https://codeload.github.com/tauraro/tauraro/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tauraro%2Ftauraro/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33999587,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-06T02:00:07.033Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["easy","friendly","native","programming-language","systems-programming","very-fast"],"created_at":"2026-06-06T21:00:42.266Z","updated_at":"2026-06-06T21:01:31.085Z","avatar_url":"https://github.com/tauraro.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"assets/tauraro-img.jpg\" alt=\"Tauraro Logo\" width=\"180\" style=\"border-radius: 16px;\"/\u003e\n\n  \u003ch1\u003eTauraro\u003c/h1\u003e\n  \u003cp\u003e\u003cstrong\u003eCompiled · Statically Typed · Python Syntax · C Performance · Bilingual\u003c/strong\u003e\u003c/p\u003e\n\n  \u003cp\u003e\n    \u003cimg src=\"https://img.shields.io/badge/license-MIT%20%2F%20Apache%202.0-blue?style=flat-square\" alt=\"License\"/\u003e\n    \u003cimg src=\"https://img.shields.io/badge/version-v0.0.5-brightgreen?style=flat-square\" alt=\"Version\"/\u003e\n    \u003cimg src=\"https://img.shields.io/badge/platform-Windows%20%7C%20Linux%20%7C%20macOS-lightgrey?style=flat-square\" alt=\"Platform\"/\u003e\n    \u003cimg src=\"https://img.shields.io/badge/bilingual-English%20%2B%20Hausa-orange?style=flat-square\" alt=\"Bilingual\"/\u003e\n    \u003cimg src=\"https://img.shields.io/badge/backend-GCC%20%2F%20Clang-red?style=flat-square\" alt=\"Backend\"/\u003e\n    \u003cimg src=\"https://img.shields.io/badge/self--hosted-yes-purple?style=flat-square\" alt=\"Self-hosted\"/\u003e\n  \u003c/p\u003e\n\n  \u003cp\u003e\n    \u003ca href=\"docs/lang/README.md\"\u003e\u003cstrong\u003eDocumentation\u003c/strong\u003e\u003c/a\u003e\n    \u0026nbsp;·\u0026nbsp;\n    \u003ca href=\"examples/\"\u003e\u003cstrong\u003eExamples\u003c/strong\u003e\u003c/a\u003e\n    \u0026nbsp;·\u0026nbsp;\n    \u003ca href=\"https://github.com/tauraro/tauraro/releases\"\u003e\u003cstrong\u003eReleases\u003c/strong\u003e\u003c/a\u003e\n    \u0026nbsp;·\u0026nbsp;\n    \u003ca href=\"https://github.com/tauraro/tauraro/issues\"\u003e\u003cstrong\u003eIssues\u003c/strong\u003e\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\n---\n\n## What Is Tauraro?\n\nTauraro is a compiled, statically-typed language with Python-style indentation syntax. It compiles to C and then to native machine code via GCC or Clang — giving you Python's readability with performance close to hand-written C.\n\nIt is also the **first programming language with full bilingual keyword support** — every keyword has both an English and a Hausa equivalent. Programs can be written in either language, or mixed freely.\n\n```python\n# English\ndef greet(name: str) -\u003e str:\n    return f\"Hello, {name}!\"\n\n# Hausa\naiki gaisawa(suna: str) -\u003e str:\n    dawo f\"Sannu, {suna}!\"\n\ndef main():\n    print(greet(\"world\"))\n    buga(gaisawa(\"duniya\"))\n```\n\n---\n\n## Installation\n\nDownload the latest binary from the [Releases](https://github.com/tauraro/tauraro/releases) page:\n\n\u003cdiv align=\"center\"\u003e\n\n| Platform | File |\n|----------|------|\n| Windows (x64) | `tauraroc-windows-x64.zip` |\n| Linux (x64) | `tauraroc-linux-x64.tar.gz` |\n| macOS (x64/arm64) | `tauraroc-macos.tar.gz` |\n\n\u003c/div\u003e\n\nExtract and place `tauraroc` (or `tauraroc.exe` on Windows) somewhere on your `PATH`.\n\n**Requirement:** GCC or Clang must be installed. Tauraro compiles to C and uses the system C compiler to produce the final binary.\n\nVerify your installation:\n\n```sh\ntauraroc --version\n# tauraroc v0.0.3\n```\n\n---\n\n## Quick Start\n\n**hello.tr**\n```python\ndef main():\n    print(\"Sannu duniya!\")   # Hello, world!\n```\n\n```sh\ntauraroc --run hello.tr\n```\n\n---\n\n## Language Features\n\n\u003cdiv align=\"center\"\u003e\n\n| Feature | Description |\n|---------|-------------|\n| **Classes** | Method dispatch, inheritance (`extends`), interfaces, operator overloading |\n| **Enums** | Tagged unions with pattern matching |\n| **Generics** | Monomorphized at compile time — no boxing |\n| **F-strings** | `f\"result = {value}\"` — zero overhead |\n| **Ownership** | Automatic memory management, no GC |\n| **Error handling** | `Result[T,E]`, `throws`, `?` operator |\n| **Concurrency** | `spawn`, `task_group:`, `await_all`, `Thread.spawn`, `Chan[T]`, `Mutex[T]`, `Atomic[T]` |\n| **Data race safety** | `Sendable` interface enforced at compile time on all spawn/thread boundaries |\n| **Unsafe** | `unsafe:`, `Pointer[T]`, inline `asm()` |\n| **GPU** | `gpu:` blocks → OpenMP parallel loops |\n| **FFI** | `extern \"C\"` for calling C libraries |\n| **Closures** | First-class anonymous functions with capture |\n| **Bilingual** | English + Hausa keywords, mix freely |\n\n\u003c/div\u003e\n\n---\n\n## CLI Reference\n\n```\ntauraroc \u003cfile.tr\u003e [options]\n\n  --version         Print compiler version and exit\n  --run             Compile and immediately execute\n  --check           Semantic analysis only, no output\n  --emit c          Print generated C code\n  --emit ast        Print AST and stop\n  --verbose         Show all pipeline phases\n  -o \u003cpath\u003e         Output executable path\n  -O0/-O1/-O2/-O3  Optimization level (default: -O2)\n  -Os               Optimize for size\n  -fopenmp          Enable OpenMP for gpu: blocks\n  -I \u003cdir\u003e          Add module search path\n```\n\n---\n\n## Bilingual Keywords\n\nEvery keyword has an English and Hausa equivalent:\n\n\u003cdiv align=\"center\"\u003e\n\n| English | Hausa | Meaning |\n|---------|-------|---------|\n| `def` | `aiki` | define function |\n| `class` | `aji` | define class |\n| `struct` | `tsari` | define struct |\n| `if` | `idan` | conditional |\n| `elif` | `koidan` | else-if |\n| `else` | `sai` | else |\n| `for` | `ga` | for loop |\n| `while` | `yayinda` | while loop |\n| `return` | `dawo` | return |\n| `break` | `tsaya` | break |\n| `continue` | `ci_gaba` | continue |\n| `match` | `duba` | pattern match |\n| `case` | `hali` | match arm |\n| `try` | `gwada` | try block |\n| `except` | `kama` | except handler |\n| `finally` | `karshe` | finally block |\n| `raise` | `jefa` | raise exception |\n| `async` | `ba_jira` | async function |\n| `await` | `jira` | await expression |\n| `import` | `shigo` | import module |\n| `from` | `daga` | from import |\n| `as` | `kamar` | alias |\n| `in` | `a_cikin` | membership / loop |\n| `true` | `gaskiya` | boolean true |\n| `false` | `karya` | boolean false |\n| `none` | `babu` | null / none |\n| `and` | `da` | logical and |\n| `or` | `ko` | logical or |\n| `not` | `ba` | logical not |\n| `print` | `buga` | print to stdout |\n\n\u003c/div\u003e\n\n---\n\n## Example Program\n\n```python\nclass Kirga:\n    pub adadi: i64\n\nextend Kirga:\n    pub def init(n: i64) -\u003e Kirga:\n        mut k = Kirga()\n        k.adadi = n\n        return k\n\n    pub def qara(self, n: i64) -\u003e void:\n        self.adadi = self.adadi + n\n\n    pub def nuna(self) -\u003e void:\n        buga(f\"adadi = {self.adadi}\")\n\ndef main():\n    mut k = Kirga.init(0)\n    ga i in range(10):\n        k.qara(i)\n    k.nuna()    # adadi = 45\n```\n\n---\n\n## Compiler Pipeline\n\n```\n.tr source\n    │\n    ▼\n  Lexer          tokenize source text\n    │\n    ▼\n  Parser         build AST\n    │\n    ▼\n  Sema           type-check, resolve names\n    │\n    ▼\n  HIR            typed intermediate representation\n    │\n    ▼\n  C Codegen      emit C source\n    │\n    ▼\n  GCC / Clang    compile to native binary\n    │\n    ▼\n  Executable\n```\n\nAll stages are written in Tauraro itself — the compiler is **fully self-hosted**.\n\n---\n\n## Performance\n\nBenchmarks run on Windows x64 with `gcc -O3` (C), `rustc -C opt-level=3 -C target-cpu=native` (Rust), and `tauraroc -O3` (Tauraro → C → `gcc -O3 -march=native`).\n\n| Benchmark | C | Rust | Tauraro | Tau/C | Tau/Rust |\n|-----------|--:|-----:|--------:|------:|---------:|\n| Fibonacci 1B steps | 1.476s | 0.675s | 0.759s | **0.51×** | 1.12× |\n| Float Multiply 1B | 3.614s | 3.233s | 3.280s | **0.91×** | 1.01× |\n| Newton Sqrt 1B | 18.076s | 17.045s | 17.278s | **0.96×** | 1.01× |\n| Mandelbrot 800×800 | 1.389s | 1.491s | 1.340s | **0.96×** | **0.90×** |\n| Sieve 50M | 1.390s | 1.313s | 1.221s | **0.88×** | **0.93×** |\n| Matrix Multiply 400×400 | 0.053s | 0.027s | 0.027s | **0.51×** | **1.00×** |\n\n`tauraroc -O3` passes `-march=native -funroll-loops` to GCC. Tauraro beats C on **8 of 9 measurable benchmarks** and ties or beats Rust on 5. Full results in [`benchmarks/README.md`](benchmarks/README.md).\n\n---\n\n## Documentation\n\nThe full language reference lives in [`docs/lang/`](docs/lang/):\n\n| # | Topic |\n|---|-------|\n| 01 | [Introduction \u0026 CLI](docs/lang/01_intro.md) |\n| 02 | [Variables \u0026 Types](docs/lang/02_variables_and_types.md) |\n| 03 | [Operators](docs/lang/03_operators.md) |\n| 04 | [Control Flow](docs/lang/04_control_flow.md) |\n| 05 | [Functions \u0026 Closures](docs/lang/05_functions.md) |\n| 06 | [Strings \u0026 F-Strings](docs/lang/06_strings.md) |\n| 07 | [Collections](docs/lang/07_collections.md) |\n| 08 | [Classes \u0026 Extend](docs/lang/08_classes.md) |\n| 09 | [Enums](docs/lang/09_enums.md) |\n| 10 | [Interfaces](docs/lang/10_interfaces.md) |\n| 11 | [Generics](docs/lang/11_generics.md) |\n| 12 | [Error Handling](docs/lang/12_error_handling.md) |\n| 13 | [Memory \u0026 Ownership](docs/lang/13_memory_and_ownership.md) |\n| 14 | [Unsafe \u0026 Pointers](docs/lang/14_unsafe_and_pointers.md) |\n| 15 | [Modules](docs/lang/15_modules.md) |\n| 16 | [Concurrency](docs/lang/16_concurrency.md) |\n| 17 | [Extern \u0026 FFI](docs/lang/17_extern_and_ffi.md) |\n| 18 | [GPU \u0026 Inline Assembly](docs/lang/18_gpu_and_asm.md) |\n| 19 | [Compiler Error Reference](docs/lang/19_compiler_errors.md) |\n| 20 | [Advanced Patterns](docs/lang/20_advanced_patterns.md) |\n| 21 | [Operator Overloading](docs/lang/21_operator_overloading.md) |\n\n---\n\n## License\n\nTauraro is dual-licensed under your choice of:\n\n- **MIT License** — see [`LICENSE-MIT`](LICENSE-MIT)\n- **Apache License, Version 2.0** — see [`LICENSE-APACHE`](LICENSE-APACHE)\n\nYou may use, distribute, and modify Tauraro under the terms of either license.\n\n\u003cdiv align=\"center\"\u003e\n\n\u003csub\u003eBuilt with ❤️ — Python syntax · C performance · Hausa soul\u003c/sub\u003e\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftauraro%2Ftauraro","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftauraro%2Ftauraro","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftauraro%2Ftauraro/lists"}