#calypso #held #focused #functional #simplicity #language #imperative

calypso_common

此包在开发期间处于保留状态。更多信息请参阅 https://github.com/calypso-lang/calypso

1 个不稳定版本

0.0.0 2021年6月10日

4 in #held

MIT 许可证

2KB

Calypso logo

Calypso

CI Status License Discord Lines of Code All Contributors

Calypso 是一种以命令式为主,带有一些函数式影响的编程语言,注重灵活性和简单性。

请注意,此代码仍在开发中。欢迎(并鼓励)贡献力量,但不建议在生产环境中使用,除非你准备好了迎接一些严重的挑战。或者代码完全无法工作。

示例

以下示例是 FizzBuzz 的一个实现,它会一直运行到程序 CLI 参数中指定的数字,如果没有指定则为 100。请注意,这目前是伪代码,可能会发生变化。

import standard.process.Args

fn main(args: Args) ->
    args
    |> _.get(0)
    |> _.unwrap_or("100")
    |> uint.from_string
    |> _.unwrap_or(100)
    |> fizzbuzz
    |> _.each(&println("{}", &1))

fn fizzbuzz(max: uint): [string] ->
  1.to_incl(max).map(fn n ->
    case do
      15.divides(n) -> "FizzBuzz",
      3.divides(n)  -> "Fizz",
      5.divides(n)  -> "Buzz",
      _             -> n.to_string
    end)

兼容性

当前最低支持的 Rust 版本(MSRV)是 Rust 1.66.1。

Calypso 在以下平台上自动测试:

  • x86_64 linux, Rust 1.66.1
  • x86_64 linux, 最新稳定版
  • x86_64 linux, 最新夜间版

以及手动在 x86_64 linux 上使用最新稳定版本的 Rust 进行测试

Calypso 在以下平台上开发和测试:

  • Arch Linux,最新稳定版
  • 希望未来有更多……但目前我还没有基础设施来测试这些 :(

许可证

根据您选择以下任一项许可证:

任选其一。

贡献

除非您明确说明,否则您提交给本作品作为贡献的任何内容,根据 Apache-2.0 许可证的定义,应按上述方式双许可,不附加任何额外条款或条件。

crates.io 状态

我目前保留了一些与 Calypso 相关的包。实际上它们将被使用,但它们目前处于保留状态,以防止任何人出于恶意目的使用它们或混淆他人。

注意:版本号为 0.0.0 的包表示尚未发布。

包名称 版本 docs.rs 状态
calypso calypso calypso
calypso_base calypso_base calypso_base
calypso_error calypso_error calypso_error
calypso_diagnostic calypso_diagnostic calypso_diagnostic
calypso_filety calypso_filety calypso_filety
calypso_opt calypso_opt calypso_opt
calypso_parsing calypso_parsing calypso_parsing
calypso_repl calypso_repl calypso_repl
calypso_util calypso_util calypso_util

有关 SaturnVM 包的状态,请参阅 其 README

main 分支的文档可以在 此处 找到。

SaturnVM

SaturnVM是我为Calypso编写的虚拟机。它旨在基本独立,但目前可能存在一些与Calypso之间的连接或依赖关系。SaturnVM的最高层crate可以在libs/saturnvm中找到,而一些子crate可以在libs/下以saturnvm_*的名称找到。calypso_vm crate可能是一个针对Calypso的SaturnVM特定接口。

有关更多信息,请参阅其README

标志版权

该标志是从Freepik上的图片修改而来,图片来源Flaticon。原始图片可以在这里找到或在logo-base.svg中找到,该文件位于assets存储库中。

贡献者 ✨

感谢这些出色的人们 (emoji key)


HTG-YT

📖

Reza

🐛 ⚠️ 🚧

此项目遵循all-contributors规范。欢迎任何形式的贡献!

无运行时依赖