awesome-repositories.com
博客
MCP
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
borgo-lang avatar

borgo-lang/borgo

0
View on GitHub↗
4,640 星标·67 分支·Rust·5 次浏览borgo-lang.github.io↗

Borgo

Borgo 是一种静态类型语言和编译器,可将高级语法转换为 Go 源代码。它作为转译器,旨在利用 Go 运行时,同时引入以代数数据类型和基于结果的错误处理为核心的类型系统。

该语言的特色在于用 Result 和 Option 类型替换了 Go 的多返回值,并使用专用运算符进行简洁的错误传播。它实现了具有穷尽模式匹配的求和类型,并提供了一个为现有 Go 包生成绑定的工具,自动将多值返回转换为这些更安全的类型包装器。

该系统包含用于并发编程的原语,利用类型化通道和后台任务来协调异步进程。其类型系统进一步支持结构化接口实现、自动集合类型推断以及用于在结构体上组织方法的实现块。

Features

  • Go Target Transpilers - Functions as a statically typed language that transpiles directly to Go source code for ecosystem interoperability.
  • Go-to-JavaScript Transpilers - Transforms high-level source code into compatible Go code to leverage the Go ecosystem and runtime.
  • Algebraic Data Types - Implements sum types and enums with associated data and enforces exhaustive pattern matching at compile time.
  • Concurrent Programming Languages - Provides a language designed for coordinating asynchronous processes using typed channels and background tasks.
  • Concurrent Thread Execution - Spawns lightweight goroutines to execute functions concurrently without blocking the main thread.
  • Go-Compatible Language Runtimes - Provides a language and transpiler that allows leveraging existing Go packages and libraries.
  • Go Library Interoperability - Automatically converts multi-value return types from imported Go libraries into safer option and result types.
  • Channel-Based Concurrency - Provides typed senders and receivers to pass data between concurrent processes while maintaining synchronization.
  • Multi-Value Wrapping - Converts Go's multiple return values into single Result or Option types to eliminate nulls.
  • Result Types - Replaces multiple return values with typed result and option containers to simplify error propagation.
  • Source-To-Source Transpilers - Transforms high-level language syntax into compatible Go source code for compilation via the Go toolchain.
  • Statically Typed Compilers - Implements a compiler that transforms high-level syntax into type-safe executable code.
  • Algebraic Data Types - Utilizes algebraic data types and exhaustive pattern matching to build robust and type-safe applications.
  • Concurrency Design Principles - Manages background tasks and data exchange using channels and lightweight threads for asynchronous processing.
  • Question Mark Error Propagation - Provides a concise syntax operator to automatically bubble up errors through the call stack from Result types.
  • Optional Value Types - Manages missing values or errors using explicit wrapper types instead of relying on null pointers.
  • Error Handling - Replaces multiple return values and null pointers with result and option types to reduce runtime crashes.
  • Concurrent Task Groups - Enables waiting on multiple channel operations and executing logic based on which process completes first.
  • Automatic Type Inferences - Automatically determines the types of lists and maps during declaration to eliminate explicit type specifications.
  • Implicit Interface Implementations - Supports structural interfaces where types satisfy requirements based on the methods they implement without explicit declarations.
  • Package Binding Generators - Includes an importer tool to parse external packages and generate necessary type and function declarations.
  • External Library Interoperability - Parses external Go libraries to automatically create necessary type and function declarations for interoperability.
  • Type Methods - Allows grouping related functions into implementation blocks with shared receivers to organize behavior on structs.
  • Structural Type Validations - Ensures types satisfy required method sets to enable polymorphism based on behavior rather than explicit inheritance.

Star 历史

borgo-lang/borgo 的 Star 历史图表borgo-lang/borgo 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Borgo 的开源替代方案

相似的开源项目,按与 Borgo 的功能重合度排序。
  • gcanti/fp-tsgcanti 的头像

    gcanti/fp-ts

    11,523在 GitHub 上查看↗

    fp-ts is a TypeScript library that brings pure functional programming patterns to the language through algebraic data types, type class abstractions, and composable combinators. It provides foundational data types like Option for optional values, Either for typed error handling, and Task for lazy asynchronous computations, all designed to make invalid states unrepresentable and side effects explicit. The library is built on category theory concepts, offering type classes such as Functor, Applicative, Monad, Semigroup, and Monoid with lawful instances for common data structures. The library di

    TypeScriptalgebraic-data-typesfunctional-programmingtypescript
    在 GitHub 上查看↗11,523
  • c3lang/c3cc3lang 的头像

    c3lang/c3c

    5,147在 GitHub 上查看↗

    c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static libraries, or dynamic libraries using an LLVM backend. It implements a system based on result-based error handling, scoped memory pooling, and a semantic macro system. The compiler provides first-class support for hardware-backed SIMD vectors that map directly to processor instructions and enables runtime polymorphism through interface-based dynamic dispatch. The project covers a broad set of low-level capabilities, including manual and pooled memory management, inline assembly inte

    C3c3compilerlanguage
    在 GitHub 上查看↗5,147
  • dry-python/returnsdry-python 的头像

    dry-python/returns

    4,310在 GitHub 上查看↗

    Returns is a functional programming library for Python that provides type-safe containers for managing state, error handling, and optionality. It serves as a monadic container library and a type-safe error handling framework, replacing traditional try-catch blocks and null checks with Result and Optional containers to treat exceptions as data. The project is distinguished by its use of a specialized Mypy static analysis plugin to validate functional pipelines and emulate higher kinded types. It provides mechanisms for isolating side effects through IO containers and offers a framework for typ

    Python
    在 GitHub 上查看↗4,310
  • purescript/purescriptpurescript 的头像

    purescript/purescript

    8,832在 GitHub 上查看↗

    PureScript is a statically typed, purely functional programming language that compiles to JavaScript. It is designed as a cross-platform frontend language for building safe web applications, utilizing a static type system and a JavaScript compiler to ensure program correctness across browser and server environments. The language is distinguished by its emphasis on mathematical purity, featuring a robust type system with first-class support for monads. It provides a sophisticated toolset for static verification, including algebraic data types, type classes, and automatic type inference to reje

    Haskellalt-jshaskelljavascript
    在 GitHub 上查看↗8,832
查看 Borgo 的所有 30 个替代方案→

常见问题解答

borgo-lang/borgo 是做什么的?

Borgo 是一种静态类型语言和编译器,可将高级语法转换为 Go 源代码。它作为转译器,旨在利用 Go 运行时,同时引入以代数数据类型和基于结果的错误处理为核心的类型系统。

borgo-lang/borgo 的主要功能有哪些?

borgo-lang/borgo 的主要功能包括:Go Target Transpilers, Go-to-JavaScript Transpilers, Algebraic Data Types, Concurrent Programming Languages, Concurrent Thread Execution, Go-Compatible Language Runtimes, Go Library Interoperability, Channel-Based Concurrency。

borgo-lang/borgo 有哪些开源替代品?

borgo-lang/borgo 的开源替代品包括: gcanti/fp-ts — fp-ts is a TypeScript library that brings pure functional programming patterns to the language through algebraic data… c3lang/c3c — c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static… purescript/purescript — PureScript is a statically typed, purely functional programming language that compiles to JavaScript. It is designed… reasonml/reason — Reason is a strongly typed functional language and multi-target compiler designed to produce either JavaScript for web… dry-python/returns — Returns is a functional programming library for Python that provides type-safe containers for managing state, error… typelevel/cats — Cats is a Scala functional programming library and type class library designed to implement algebraic patterns and…