# farcs **Repository Path**: seizedays233/farcs ## Basic Information - **Project Name**: farcs - **Description**: farlang,far-lang编程语言,像Kotlin,Scala一样运行在Jvm上的语言! - **Primary Language**: Java - **License**: MulanPSL-2.0 - **Default Branch**: dev1.1 - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2025-04-16 - **Last Updated**: 2025-04-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### far语言 > Far,一款旨在简化学习曲线、提升开发效率的全新编程语言,专为那些渴望避免复杂语言学习负担的开发者而生。和Kotlin,Scala一样运行在Jvm,凭借 JVM 强大的生态,快速满足业务需求,提升服务竞争力。 > 无论是游戏开发、AI 工具创建,还是 API 搭建,Far 以 JVM 为依托,用简洁语法为你开启高效编程的大门。 --- ## 参与far开发 ### Far语言项目目前需要完善的模块,诚邀大佬们参与 > 参与贡献 --- ##### far1.0之后不再更新虚拟机,精力将放在生成JVM字节码和生成LLVM中间码。 - far编译器(编译器分几个模块 词法,语法,语义,字节码生成) 欢迎有兴趣研究JVM字节码和ASM框架的大佬参与 - far虚拟机(已暂停) - far调试器(已暂停) - vscode 调试器 DAP插件(已暂停) - 语言特性策划(重要) - 文档介绍,demo编写 > 参与可以细化,拿虚拟机来说:比如可以具体到string的实现、int的实现,甚至只负责单个的内置函数的实现都可以 ### 代码导航 > Jvm 字节码生成 - src/main/java/com/faros/cmp/visitor/jvmbyte > 运行库 - src/main/java/com/faros/lib ### 计划 https://gitee.com/grateful/farcs/blob/dev1.1/farlang/doc/version-todo.md --- ### 开发环境 - jdk21 - IntelliJ IDEA 2024.2.3 (Ultimate Edition) - maven3.9.8 > 注意idea setting中的maven的runner要设置为jdk21,否则还是用JDK1.8在运行maven,编译JAVA21时会报错。 #### 启动VM参数 - 启动类 com/cn/fyt/cmp/App.java - 加载其他目录的Jar包 java -cp ".;./lib/hutool-all-5.7.6.jar" App #### maven编译参数 ```js mvn -DskipTests=true package ``` --- ### 项目结构 - far-cc far语言编译器 - far-lang far demo - far-common 通用库 ### 目前语法支持 https://gitee.com/grateful/farcs/blob/dev1.1/farlang/doc/index.md --- ### 项目贡献者 Fang.j ### 群组 - QQ群 809575724 - 微信群 vip6060688 注明far ### 基于far开发应用 https://gitee.com/grateful/farcs/blob/dev1.1/faros/doc/start-dev.md