{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":695506446,"defaultBranch":"main","name":"lumina-lang","ownerLogin":"lloydlobo","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-09-23T11:56:52.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/76430758?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1695470252.0","currentOid":""},"activityList":{"items":[{"before":"bf3f293b1cfc4fcf2bb1f7ae559e3a10c3c80928","after":"dfca9a37741406599516977acc55ae8aa8a9eec8","ref":"refs/heads/main","pushedAt":"2023-10-22T12:07:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"feat(pkg): use user's .fmt.lum config to format","shortMessageHtmlLink":"feat(pkg): use user's .fmt.lum config to format"}},{"before":"b3a90d2ac725ee99b3165c76f2d1c1bd3771bb03","after":"bf3f293b1cfc4fcf2bb1f7ae559e3a10c3c80928","ref":"refs/heads/main","pushedAt":"2023-10-22T08:04:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"feat: read user's .fmt.lum config file\n\nNOTE: python formatter program still has to parse\nconfig file ident values (unimplemented)","shortMessageHtmlLink":"feat: read user's .fmt.lum config file"}},{"before":"122045022c30eb3d8518441c449767825e0d9b83","after":"b3a90d2ac725ee99b3165c76f2d1c1bd3771bb03","ref":"refs/heads/main","pushedAt":"2023-10-21T08:17:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"feat: add syntax highlighter extension support\n\nCredits to https://github.com/Zedritsch/hydrogen-vsc\n\nFIXME: comments aren't highlighing\nTODO: use different color for Doc comments `///`","shortMessageHtmlLink":"feat: add syntax highlighter extension support"}},{"before":"71e67b96121b2dd429beb680e790ddb9d09e0580","after":"122045022c30eb3d8518441c449767825e0d9b83","ref":"refs/heads/main","pushedAt":"2023-10-20T13:19:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"refactor: rename and abstract away repeated stuff\n\nNOTE: added code snippets from Jai lang as placeholders,\nand a guiding compass.\n\nNOTE: changed tokenizer to lexer","shortMessageHtmlLink":"refactor: rename and abstract away repeated stuff"}},{"before":"c8053462b6357b2391a09fa0e723331be86ffba5","after":"71e67b96121b2dd429beb680e790ddb9d09e0580","ref":"refs/heads/main","pushedAt":"2023-10-20T12:33:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"docs: document assembly codegen translations","shortMessageHtmlLink":"docs: document assembly codegen translations"}},{"before":"d58543514d2155a934d9397637c4e08aadd27318","after":"c8053462b6357b2391a09fa0e723331be86ffba5","ref":"refs/heads/main","pushedAt":"2023-10-19T12:13:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"build: create build system inspired by Odin\n\nNOTE: have to check the cache ability when we used CMakeList.txt\nwith cmake\nNOTE: we should workaround the unused functions escape hatch\nused in DISABLED_FLAGS for now","shortMessageHtmlLink":"build: create build system inspired by Odin"}},{"before":"2ce47235c805b7c10c4201de7793b2c9ded65399","after":"d58543514d2155a934d9397637c4e08aadd27318","ref":"refs/heads/main","pushedAt":"2023-10-19T08:04:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"feat: build a simple CLI formatter for .lum files","shortMessageHtmlLink":"feat: build a simple CLI formatter for .lum files"}},{"before":"6f367ca82a6abfdd397ba0e4b8aacf8213ef55aa","after":"2ce47235c805b7c10c4201de7793b2c9ded65399","ref":"refs/heads/main","pushedAt":"2023-10-18T05:33:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"feat: exit with assigned variables value from stack\n\nAssembly will make a copy of the value at register,\nthat is at an offset of the symbol order declaration.\n(yes, its hard for me to describe it as of now, in words)\ne.g.\na := 1\nb := 2\nc := 3\nexit(b)\n\nb is at offset of (1 * 8 bytes) from c.\nOur stack base pointer will copy the value of register\nthat holds b's value. so it will pop it and push it to\nthe top as a copy\n\nStack trace visualized\n\na := 1\n~ 1 ;; <- base ptr\n\nb := 2\n~ 2 ;; <- base ptr\n~ 1\n\nc := 3\n~ 3 ;; <- base ptr\n~ 2\n~ 1\n\nexit(b) ;; mov rax, 60\n ;; pop rdi\n;; copied by assembler generator instruction,\n ;; in g_gen_stmt() -> g_gen_expr()\n ;; in scope expr.type === int_lit\n~ 2 ;; <- base ptr - copied value - swapped\n ;; push QWORD [rsp + 8] ;; offset of (1 * 8 bytes)\n~ 3 ;; c is 1 offset from b\n~ 2 ;; copied from here\n~ 1","shortMessageHtmlLink":"feat: exit with assigned variables value from stack"}},{"before":"65bb66040c02c7452ae55532aaac476ebf68269c","after":"6f367ca82a6abfdd397ba0e4b8aacf8213ef55aa","ref":"refs/heads/main","pushedAt":"2023-10-17T21:59:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"test: fix perf elapsed time to accumulate for laps\n\ninstead of manually recording time elapsed for last\nrun, we record it with _elapse helper function.\nThis increments new elapsed time to previous one.\nNow, for example, for file I/O profiling, we can record\ntotal time it took, anywhere in the main function","shortMessageHtmlLink":"test: fix perf elapsed time to accumulate for laps"}},{"before":"de5348b51aa7851d7cce1a04980b10ea5da66b9b","after":"65bb66040c02c7452ae55532aaac476ebf68269c","ref":"refs/heads/main","pushedAt":"2023-10-17T12:22:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"test: implement actual tokenizer metrics","shortMessageHtmlLink":"test: implement actual tokenizer metrics"}},{"before":"f8fb152f42b7c3b4b78cf8395134149ddb0a7d8a","after":"de5348b51aa7851d7cce1a04980b10ea5da66b9b","ref":"refs/heads/main","pushedAt":"2023-10-17T12:15:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"feat: support single line comments & compiler profiler\n\nCompiler can now safely read comments in source code,\nwithout breaking assembler.\n\nUse simple time elapsed style profiler for checking,\nelapsed time and work done by compiler in the form of\nmetrics such as tokes processed, code lines processed etc.","shortMessageHtmlLink":"feat: support single line comments & compiler profiler"}},{"before":"1b1c38283e2f88fcde445171ad23c89123c86451","after":"f8fb152f42b7c3b4b78cf8395134149ddb0a7d8a","ref":"refs/heads/main","pushedAt":"2023-10-16T05:49:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"fix: replace hashtable with native array method\n\nuse array of `struct var` in generator to store all visited\nidentifiers information, such as stack location and their names\n\nhashtable impl was buggy on my part, maybe strdup for ident value,\ncould have fixed it, but for now don't need it. Because when\nwe introduce scopes, we may flush `m_vars` generator member, or\nflag it for other scope. fitting all the details in a key may,\nbe tough and prone to more collisions.\n\nTODO: impl generator parse expr with struct var array m_vars","shortMessageHtmlLink":"fix: replace hashtable with native array method"}},{"before":"e5e330aaf5ffe418827b536b3ffb4269a840131f","after":"1b1c38283e2f88fcde445171ad23c89123c86451","ref":"refs/heads/main","pushedAt":"2023-10-15T12:57:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"feat: compile immutable variables with :: syntax","shortMessageHtmlLink":"feat: compile immutable variables with :: syntax"}},{"before":"db82b073a13ee1df3c21647ca1f73ced5f72f896","after":"e5e330aaf5ffe418827b536b3ffb4269a840131f","ref":"refs/heads/main","pushedAt":"2023-10-14T13:19:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"feat: declare and assign variables with walrus operator\n\nalso semicolons can't be used anymore\nwe rely on end of line `\\n` now\n\nFIXME: use proper token type and parser structs for\nlet stmt/expr and semicolon to `\\n` replacement\n\nvariable declaration and value change with `:=` and `=`.\nWe declare any variable using \":=\" and later update\ntheir values using \"=\".\nThis is inspired by syntax of Go and Jai.\nNOTE: updating is not implemented yet","shortMessageHtmlLink":"feat: declare and assign variables with walrus operator"}},{"before":"a726120705b408eabafb3f09525839788be41f7b","after":"db82b073a13ee1df3c21647ca1f73ced5f72f896","ref":"refs/heads/main","pushedAt":"2023-10-14T10:50:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"docs: brainstorm language features","shortMessageHtmlLink":"docs: brainstorm language features"}},{"before":"e607bb7b571e24fd0a82698d1b893331fde9510a","after":"a726120705b408eabafb3f09525839788be41f7b","ref":"refs/heads/main","pushedAt":"2023-10-12T07:37:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"build: rename executable and add .c files\n\n- renamed `xo` to `lumina` with `.lum` file extension\n- in CMakeLists.txt added print.c file during compilation\n - we will slowly convert .h files to have .c too\n- add filename parsing to validate correct `.lum` src file\n to compile","shortMessageHtmlLink":"build: rename executable and add .c files"}},{"before":"984687c505ce639ed66ada4e58de8602833cc5da","after":"e607bb7b571e24fd0a82698d1b893331fde9510a","ref":"refs/heads/main","pushedAt":"2023-10-10T12:54:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"feat: impl ident associated value to exit","shortMessageHtmlLink":"feat: impl ident associated value to exit"}},{"before":"73f65e9268e65c93018ba224cd62901464fff8e0","after":"984687c505ce639ed66ada4e58de8602833cc5da","ref":"refs/heads/main","pushedAt":"2023-10-09T12:21:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"fix: remove uninitialized stmt in let branch","shortMessageHtmlLink":"fix: remove uninitialized stmt in let branch"}},{"before":"9b9b26cff833bd31f8922137c7638ce483751e75","after":"73f65e9268e65c93018ba224cd62901464fff8e0","ref":"refs/heads/main","pushedAt":"2023-10-09T08:53:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"feat: generate asm code if src has exit code","shortMessageHtmlLink":"feat: generate asm code if src has exit code"}},{"before":"47ba5bcca25ec8a99635381ffde455822246c4ef","after":"9b9b26cff833bd31f8922137c7638ce483751e75","ref":"refs/heads/main","pushedAt":"2023-10-09T06:01:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"feat: generate default asm file with exit code 0\n\n- if no `exit()` type of syntax is found is src file,\n generate default assembly file with syscall for exit code 0\n- for now using stack memory at 4096 to keep generation simple","shortMessageHtmlLink":"feat: generate default asm file with exit code 0"}},{"before":"e2cb931c9891229a48bedffcd3da3ac75dcd290f","after":"47ba5bcca25ec8a99635381ffde455822246c4ef","ref":"refs/heads/main","pushedAt":"2023-10-08T10:26:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"refactor: modify parsing memory allocation\n\nUsed ChatGPT with:\n - implementing anonymous structs inside, each node structs\n - fixing pointer weirdness insiden parser tree","shortMessageHtmlLink":"refactor: modify parsing memory allocation"}},{"before":"9aede7c666f1cc90bd439af8007a9a707bf273dc","after":"e2cb931c9891229a48bedffcd3da3ac75dcd290f","ref":"refs/heads/main","pushedAt":"2023-10-01T08:29:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"test: test for multiple token stmt","shortMessageHtmlLink":"test: test for multiple token stmt"}},{"before":"9bcf48ef944caf807b87e329fa761313d9d982a0","after":"9aede7c666f1cc90bd439af8007a9a707bf273dc","ref":"refs/heads/main","pushedAt":"2023-09-30T11:39:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"refactor: split main by feature modules\n\nAlso added test to verify the refactoring","shortMessageHtmlLink":"refactor: split main by feature modules"}},{"before":"c4f73f996f5d33c6cf7b76cfca7d9da4b74bb935","after":"9bcf48ef944caf807b87e329fa761313d9d982a0","ref":"refs/heads/main","pushedAt":"2023-09-28T07:39:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"style: use lowercase struct naming convention","shortMessageHtmlLink":"style: use lowercase struct naming convention"}},{"before":"a15708bacac6a9f0564651a063e6257a3e3bdfbd","after":"c4f73f996f5d33c6cf7b76cfca7d9da4b74bb935","ref":"refs/heads/main","pushedAt":"2023-09-25T15:13:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"chore: add grammar LaTeX docs","shortMessageHtmlLink":"chore: add grammar LaTeX docs"}},{"before":null,"after":"a15708bacac6a9f0564651a063e6257a3e3bdfbd","ref":"refs/heads/main","pushedAt":"2023-09-23T11:57:32.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"lloydlobo","name":"Lloyd Lobo","path":"/lloydlobo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/76430758?s=80&v=4"},"commit":{"message":"feat: initial commit","shortMessageHtmlLink":"feat: initial commit"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAADnOX5oAA","startCursor":null,"endCursor":null}},"title":"Activity ยท lloydlobo/lumina-lang"}