{"id":28145157,"url":"https://github.com/billiefu/yatcompiler","last_synced_at":"2025-07-23T06:34:13.301Z","repository":{"id":279936309,"uuid":"940498167","full_name":"Billiefu/YatCompiler","owner":"Billiefu","description":"This repository houses the course designs and corresponding implementations for the Compiler Construction Experiment (Java) course at Sun Yat-sen University, aiming to provide experimental approaches and implementation examples for students who need to complete related experiments in the future.","archived":false,"fork":false,"pushed_at":"2025-05-30T11:51:39.000Z","size":23501,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-30T16:03:48.223Z","etag":null,"topics":["compiler","java","sysu-course"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"epl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Billiefu.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-02-28T09:30:41.000Z","updated_at":"2025-05-30T11:51:43.000Z","dependencies_parsed_at":"2025-02-28T16:28:54.853Z","dependency_job_id":"7dc728be-264c-4855-9271-38d4f3d5c943","html_url":"https://github.com/Billiefu/YatCompiler","commit_stats":null,"previous_names":["billiefu/yatcompiler"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Billiefu/YatCompiler","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Billiefu%2FYatCompiler","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Billiefu%2FYatCompiler/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Billiefu%2FYatCompiler/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Billiefu%2FYatCompiler/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Billiefu","download_url":"https://codeload.github.com/Billiefu/YatCompiler/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Billiefu%2FYatCompiler/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266631531,"owners_count":23959419,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-23T02:00:09.312Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["compiler","java","sysu-course"],"created_at":"2025-05-14T22:14:10.598Z","updated_at":"2025-07-23T06:34:13.129Z","avatar_url":"https://github.com/Billiefu.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 编译器构造实验 Java Edition [SYSU CSE 2024-2]\n\n## 仓库说明\n\n本仓库存储了中山大学2024-2学期**编译器构造实验**课程的所有实验设计及对应实现代码。该实验课程项目由李文军教授设计并发布，目的是为了帮助学生更深入地理解计算机语言在解决日常生活问题中的应用。语言不仅是解决问题的一种思维方式，也是探索世界和改变世界的关键工具。作为人类认识世界的结构化思维模式，编程语言不仅是问题解决的认知框架，更是知识表达和系统创新的关键媒介。本实验项目首先通过引导实验帮助学生熟悉Java语言，随后引导学生在掌握Java的基础上，学习如何独立构建一个编译器，并利用该编译器结合语言解决更多实际问题。本实验项目仅为编译器构造实验课程中的一个版本，对于对C++语言版本感兴趣的读者，可参考YatCC仓库，并完成相应的实验任务。（[arcsysu/YatCC: 中山大学编译原理课程实验（完全重构版本） (github.com)](https://github.com/arcsysu/YatCC)）\n\n## 仓库内容\n\n* Java 程序设计语言编码规范\n* Lab01 计算个人所得税 PersonalTax\n* Lab02 议程管理系统 Agenda\n* Lab03 后缀表达式 Postfix\n* Lab04 基于表达式的计算器 ExprEval\n* Lab05 Oberon-0 逆向工程工具 ROSE\n\n更多实验内容将基于课程进度给出其设计及实现\n\n## 致谢\n\n本人衷心感谢 *李文军教授* 在编译器构造实验方面给予的指导。教授的指导不仅在本人学习编译器构造的过程中起到了至关重要的引导作用，而且对于本人掌握工程化思维和开发技能也产生了深远的影响。同时，对于未婚妻 *马玉洁女士* 的不懈支持与默默鼓励，本人亦深表感激。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbilliefu%2Fyatcompiler","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbilliefu%2Fyatcompiler","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbilliefu%2Fyatcompiler/lists"}