v1.0.2 MIT License Go 1.21+

Modern Pascal.
Compiled to Go.

Kylix 融合 Pascal 的清晰语法与现代语言特性,编译为高性能 Go 代码。
配备完整 IDE 工具链、Web 框架、ORM 和标准库。

hello.klx
program Hello;
begin
  var name := 'Kylix';
  WriteLn($"Hello ${name}!");
end.

经典 Pascal,现代灵魂

在保留 Pascal 清晰语法的基础上,注入现代语言的强大特性。

🎯

类型推断

编译器自动推导变量类型,减少样板代码。

var x := 42;
λ

Lambda 表达式

简洁的匿名函数,支持闭包和高阶函数。

(x: Integer) -> x * x
🧬

泛型

类型参数声明,编写类型安全的通用代码。

TList<T> / TPair<K, V>
🔀

模式匹配

强大的 match 表达式,支持通配符和条件守卫。

match x { 0 => 'zero', _ => 'other' }

Async / Await

基于 Goroutine + Channel 的异步模型,高效并发。

async function FetchData(): String
🌐

Web 框架

内置 HTTP 服务器、路由、中间件、JSON 处理。

app.get('/api/users', handler)

Pascal → Go,一目了然

Kylix 将 Pascal 源码编译为可读、可运行的 Go 代码。

📄 Pascal 源码 (.klx)
program WebApp;
uses web;

var app: TServer;
begin
  app := web.createServer(8080);

  app.get('/hello',
    procedure(req: TRequest; res: TResponse)
    begin
      res.json(record
        message := 'Hello, Kylix!';
      end);
    end);

  app.listen();
end.
🔧 生成的 Go 代码 (.go)
package main

import "kylix/stdlib"

var app *stdlib.TServer

func main() {
  app = stdlib.CreateServer(8080)

  app.Get("/hello",
    func(req *stdlib.TRequest, res *stdlib.TResponse) {
      res.Json(struct {
        Message string
      }{Message: "Hello, Kylix!"})
    })

  app.Listen()
}

9 个命令,覆盖全流程

从创建项目到编译运行,再到格式化、REPL 交互、LSP 智能服务。

# 创建新项目
kylix new myapp

# 编译 & 运行
kylix build              # 编译为 Go 代码
kylix run                # 编译 + 运行
kylix run --keep         # 编译 + 运行(保留 .go 文件)

# 开发辅助
kylix check              # 语法检查(不生成代码)
kylix fmt                # 代码格式化
kylix fmt -w file.klx    # 原地格式化

# 交互 & 编辑器
kylix repl               # 交互式 REPL
kylix lsp                # LSP 语言服务器

# 信息
kylix version            # 显示版本
kylix help               # 帮助信息

3 步上手

一分钟内从安装到运行你的第一个 Kylix 程序。

# 1. 克隆 & 构建
git clone https://github.com/astra-zhao/kylix.git
cd kylix && go build -o kylix cmd/kylix/main.go

# 2. 创建项目
./kylix new myapp && cd myapp

# 3. 运行
./kylix run
# → Hello, Kylix World!

开箱即用的能力

12 个标准库模块,覆盖 Web 开发、数据处理和系统交互。

🌐 web

HTTP 服务器、路由、中间件

uses web

🗄️ orm

MySQL / PostgreSQL / SQLite

uses orm

📋 template

模板引擎、布局、片段

uses template

📦 container

依赖注入容器

uses container

⚙️ config

环境变量配置管理

uses config

🛡️ middleware

CORS / 认证 / 限流 / 日志

uses middleware

✅ validation

请求数据校验

uses validation

🔄 autoconfig

多源自动配置加载

uses autoconfig

📁 sysutil

文件 I/O、目录、路径工具

uses sysutil

📊 jsonutil

JSON 编解码、类型安全访问

uses jsonutil

📅 datetime

日期运算、格式化、解析

uses datetime

🔍 regex

正则匹配、查找、替换

uses regex

深入学习

从入门到精通,完善的文档体系助你快速上手。