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

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

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

amber-lang/amber

0
View on GitHub↗
4,731 星标·121 分支·Rust·LGPL-3.0·5 次浏览amber-lang.com↗

Amber

Amber 是一个将高级源代码转换为 Bash、Zsh 和 Ksh 可执行 Shell 脚本的转译器。它为 Shell 脚本生成提供了一个类型安全的环境,允许进行静态类型验证并创建独立的可执行脚本。

该项目通过包含 Tree-shaking 导入优化的编译过程来减小输出体积,并使用基于模板的脚本包装来添加自定义页眉和页脚。它利用基于模块的依赖解析系统,通过可见性控制来管理跨多个文件的代码复用。

该语言涵盖了广泛的自动化能力,包括全面的文件系统管理、进程控制以及通过 HTTP 进行的网络通信。它提供了用于文本处理、数据操作、日期时间管理和系统内省的内置工具。

该工具集包含一个用于逻辑验证的集成测试运行器,以及一个从源代码注释自动生成 Markdown 项目文档的工具。

Features

  • Source-to-Shell Translation - Translates high-level source code into executable Bash, Zsh, and Ksh scripts for automation.
  • Shell Script Transpilers - Translates high-level source code into executable Bash, Zsh, and Ksh scripts for cross-shell compatibility.
  • Shell Command Execution - Provides an operator for running system commands with integrated failure halting.
  • Standalone Scripts - Generates self-contained executable scripts that function independently without requiring a compiler at runtime.
  • Source Code Module Imports - Manages code reuse through a module-based system for importing and exporting functions and variables across files.
  • Basic Data Type Definitions - Includes a type system for managing primitive data types such as text, integers, floats, and booleans.
  • External Module Imports - Implements mechanisms for loading functions and variables from external files to reuse logic across the project.
  • Static Type Validation - Identifies bugs and type mismatches during the build process before the generated shell script is executed.
  • Executable Entry Points - Provides a dedicated code block for handling arguments and exit codes during direct execution of scripts.
  • Shell Compatibility Layers - Generates scripts compatible with Bash, Zsh, and Ksh using portable shebangs.
  • Shell Script Compilers - Transforms high-level source code into executable Bash, Ksh, and Zsh scripts.
  • Type Validation - Provides a system to validate that passed values match supported data types at runtime.
  • Tree-Shaken Imports - Includes specific functions from a module while automatically omitting unused code during the compilation process.
  • Compile-Time Type Validation - Features a type system that identifies bugs and type mismatches during the compilation process.
  • Out-of-Bounds Protection - Deno Shell support for storing, retrieving, and slicing values with out-of-bounds protection.
  • Compiler Configurations - Provides settings to adjust compiler behavior, including function-level restrictions and warnings regarding global state.
  • Dependency Verification - Verifies the presence of required external commands in compiled scripts to prevent runtime failures.
  • Documentation Generators - Extracts triple-slash comments from source code to automatically generate Markdown documentation.
  • Child Exit Status Retrievals - Provides a utility to retrieve the exit status of the most recently executed failing function.
  • Execution Modifiers - Ships with modifiers to suppress command output or bypass failure checks during function calls.
  • Compile-and-Run Workflows - Allows source code to be compiled to a shell script and executed in one integrated step.
  • Shell Script Wrappers - Injects custom header and footer files into the compiled shell script output using templates.
  • Dead Code Analysis - Analyzes control flow to identify unreferenced declarations and variables that should be constants.
  • Command Failure Enforcements - Enforces strict error handling by preventing compilation if potential command failures are not handled.
  • Script Footer Templates - Injects custom header and footer files into compiled output using environment variables and template tags.
  • Symbol Visibility Controls - Provides visibility keywords to control which functions and variables are exposed to importers in other files.
  • Variable Exports - Enables exposing specific variables to other files to facilitate shared state access.
  • Symbol Re-exports - Allows importing symbols from one module and making them available for export through a single entry point.
  • Object and Array Destructuring - Implements the capability to unpack array elements into separate individual variables.
  • Failable Functions - Supports marking functions as failable to trigger specific shell exit codes upon failure.
  • Text Interpolations - Supports embedding variables and data types directly into text literals.
  • Type Casting - Supports explicit conversion of values between different data types for compatibility.
  • Union Types - Allows function parameters to accept one of several distinct member types via union types.
  • Arithmetic Operations - Supports basic mathematical calculations including sums, differences, products, and remainders.
  • Job Lifecycle Management - Provides capabilities for tracking process IDs and managing the lifecycle of background jobs.
  • Dynamic Arrays - Provides resizable array implementations that manage element storage dynamically.
  • Error Propagation Systems - Implements mechanisms for passing command failures back to the calling context for robust error handling.
  • Reference Argument Passing - Supports passing variables by reference, allowing functions to modify original values instead of copies.
  • Public Visibility Declarations - Supports declaring variables as public to expose them across multiple files.
  • Variable Usage Analysis - Performs static analysis of control flow to identify unused declarations and constants.
  • Automated Test Execution - Provides a recursive execution engine for test blocks to verify behavior under different conditions.
  • Built-in Testing Frameworks - Ships an integrated testing environment as part of the language core to validate logic via test blocks and assertions.
  • Integrated Logic Testing - Ships a built-in runner for validating the integrated logic of different system components.
  • Value Equality Assertions - Provides utilities to check boolean conditions or value equalities and trigger error codes.
  • Built-in Unit Tests - Includes a built-in runner for writing and validating individual code functionality via test blocks.
  • Shell Script Validators - Includes a linting tool that reports validation issues for the compiled shell scripts.
  • Tree-Shaking Optimizers - Optimizes output size by omitting unused library functions from the final generated shell script.

Star 历史

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

AI 搜索

探索更多 awesome 仓库

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

Start searching with AI

常见问题解答

amber-lang/amber 是做什么的?

Amber 是一个将高级源代码转换为 Bash、Zsh 和 Ksh 可执行 Shell 脚本的转译器。它为 Shell 脚本生成提供了一个类型安全的环境,允许进行静态类型验证并创建独立的可执行脚本。

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

amber-lang/amber 的主要功能包括:Source-to-Shell Translation, Shell Script Transpilers, Shell Command Execution, Standalone Scripts, Source Code Module Imports, Basic Data Type Definitions, External Module Imports, Static Type Validation。

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

amber-lang/amber 的开源替代品包括: gopl-zh/gopl-zh.github.com — This project is a Chinese translation of a comprehensive guide to the Go programming language. It serves as a… ballercat/walt — Walt is a transpiler and typed language that converts a JavaScript-like syntax into WebAssembly binary format. It… rust-lang/rust-by-example — This project is an interactive programming education resource and tutorial designed for learning the Rust programming… federico-busato/modern-cpp-programming — This project is a comprehensive educational resource and programming course covering C++ language semantics and… kaisery/trpl-zh-cn — This project is a localized educational resource for learning the Rust programming language, providing a comprehensive… oi-wiki/oi-wiki — This project is a comprehensive, community-maintained knowledge base and toolkit designed for competitive programming.…

Amber 的开源替代方案

相似的开源项目,按与 Amber 的功能重合度排序。
  • gopl-zh/gopl-zh.github.comgopl-zh 的头像

    gopl-zh/gopl-zh.github.com

    4,958在 GitHub 上查看↗

    This project is a Chinese translation of a comprehensive guide to the Go programming language. It serves as a localized educational resource and technical manual designed to provide guidance on language syntax, design, and software development. The resource covers a broad range of Go language education, including the implementation of programming patterns and system design. It includes translated lessons and examples that focus on core language features such as concurrency and the use of interfaces. The content spans various capability areas, including language fundamentals, data modeling, r

    Goprogramming-language
    在 GitHub 上查看↗4,958
  • rust-lang/rust-by-examplerust-lang 的头像

    rust-lang/rust-by-example

    8,026在 GitHub 上查看↗

    This project is an interactive programming education resource and tutorial designed for learning the Rust programming language and systems programming concepts. It provides a collection of runnable and editable code examples that serve as a practical reference for language syntax and implementation. The resource features an interactive code sandbox that allows users to execute and test code snippets in real time. It emphasizes the verification of technical accuracy by executing embedded code blocks during the build process to ensure all examples remain functional. The content covers a compre

    Handlebars
    在 GitHub 上查看↗8,026
  • ballercat/waltballercat 的头像

    ballercat/walt

    4,639在 GitHub 上查看↗

    Walt is a transpiler and typed language that converts a JavaScript-like syntax into WebAssembly binary format. It functions as a toolchain for developing high-performance logic for browsers and runtimes by translating typed source code into WebAssembly text format. The project includes a bundler-integrated loader that automates the recompilation of source files during the build process. It provides a linear memory manager used to define custom data layouts, structs, and memory allocators within a contiguous heap. The language supports defined function signatures, numeric types, and the abili

    JavaScriptcompilerjavascriptwebassembly
    在 GitHub 上查看↗4,639
  • federico-busato/modern-cpp-programmingfederico-busato 的头像

    federico-busato/Modern-CPP-Programming

    15,808在 GitHub 上查看↗

    This project is a comprehensive educational resource and programming course covering C++ language semantics and features from C++03 through C++26. It provides structured tutorials and technical guides focused on modern C++ development. The material offers specialized instruction on template metaprogramming, including the use of type traits and compile-time computations. It features detailed guides on concurrency and parallelism for multi-core execution, as well as a reference for software design applying SOLID principles and RAII. Additionally, it covers build performance optimization to redu

    HTMLc-plus-pluscode-qualitycompilers
    在 GitHub 上查看↗15,808
  • 查看 Amber 的所有 30 个替代方案→