{"id":31021329,"url":"https://github.com/beyondmagic/g7comp2025","last_synced_at":"2025-09-13T11:18:22.534Z","repository":{"id":313694128,"uuid":"1045797023","full_name":"BeyondMagic/g7comp2025","owner":"BeyondMagic","description":null,"archived":false,"fork":false,"pushed_at":"2025-09-07T22:18:15.000Z","size":25,"stargazers_count":1,"open_issues_count":6,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-07T22:23:50.816Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BeyondMagic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-27T18:13:55.000Z","updated_at":"2025-09-07T22:18:18.000Z","dependencies_parsed_at":"2025-09-07T22:23:52.131Z","dependency_job_id":"74190a6f-a8c2-4eaa-9ffd-4239a3db5829","html_url":"https://github.com/BeyondMagic/g7comp2025","commit_stats":null,"previous_names":["beyondmagic/g7comp2025"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/BeyondMagic/g7comp2025","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeyondMagic%2Fg7comp2025","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeyondMagic%2Fg7comp2025/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeyondMagic%2Fg7comp2025/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeyondMagic%2Fg7comp2025/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BeyondMagic","download_url":"https://codeload.github.com/BeyondMagic/g7comp2025/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BeyondMagic%2Fg7comp2025/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274955460,"owners_count":25380665,"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-09-13T02:00:10.085Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","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":[],"created_at":"2025-09-13T11:18:21.460Z","updated_at":"2025-09-13T11:18:22.524Z","avatar_url":"https://github.com/BeyondMagic.png","language":null,"readme":"# Projeto: Transpilador de C para Lua (Flex + Bison + C)\n\nObjetivo: construir um compilador que lê um subconjunto de C e transpila para Lua, usando Flex (léxico) e Bison (sintático) em C.\n\nResumo do MVP de linguagem suportada:\n- Tipos: int, float, bool (true/false), char (como número), string opcional.\n- Estruturas: declaração de variáveis, atribuição, expressões aritméticas/lógicas, if/else, while, for, função (definição/chamada) e return.\n- I/O: mapeamento simples printf/puts -\u003e print; scanf opcional.\n- Saída Lua: usar local para variáveis, funções Lua equivalentes, operadores com mesma semântica; arrays opcionais como tabelas.\n\n```\n.\n├── lexer/        # regras léxicas (lexer.l)\n├── parser/       # gramática e ações (parser.y)\n├── src/          # main.c, AST, tabela de símbolos, gerador Lua\n├── tests/        # entradas C e saídas Lua esperadas\n└── Makefile\n```\n\nAmbiente rápido (Linux):\n```nu\nsudo apt update\nsudo apt install -y flex bison build-essential git\n```\n\nBuild local (exemplo mínimo):\n```nu\nflex lexer/lexer.l\nbison -d parser/parser.y\ngcc -o c2lua lex.yy.c parser.tab.c src/*.c -lfl\n./c2lua \u003c tests/exemplo.c \u003e out.lua\n```\n\n# Documentação de cada sprint\n\n- [1ª sprint](./docs/sprints/1.md);\n- 2ª sprint;\n- 3ª sprint;\n- 4ª sprint;\n- 5ª sprint;\n- 6ª sprint;\n- 7ª sprint;\n\n# Testes\n\nA pasta `tests/` contém arquivos `.c` de entrada e os correspondentes `.lua` esperados. Use `diff` para comparar a saída gerada com a esperada.\n\nPadrão de nomenclatura: `descricao_curta_teste.c` para entrada, e `descricao_curta_teste.lua` para saída esperada.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbeyondmagic%2Fg7comp2025","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbeyondmagic%2Fg7comp2025","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbeyondmagic%2Fg7comp2025/lists"}