)]}'
{
  "log": [
    {
      "commit": "dc6d8f6f5a59956fb65dd84b065c16a4290dcbee",
      "tree": "6d5086d7146fe6017e6218c4a48ed1b91072ad49",
      "parents": [
        "5337c2bc7ab93112e7edd4c772d98987ba596e49"
      ],
      "author": {
        "name": "Sketch🕴️",
        "email": "skallywag@sketch.dev",
        "time": "Sat Feb 28 20:45:13 2026 +0400"
      },
      "committer": {
        "name": "Sketch🕴️",
        "email": "skallywag@sketch.dev",
        "time": "Sat Feb 28 20:45:13 2026 +0400"
      },
      "message": "lexer: recognize identifiers, comma, and equals tokens\n\n- Add identifier scanning: starts with letter/underscore, continues with\n  letters/digits/underscores. Produces Ident tokens.\n- Add comma and equals to single-char token switch.\n- Add isLetter() helper.\n- Add 9 new tests covering: single ident, multi-char ident, ident with\n  digits, ident with underscore, comma, equals, function definition\n  syntax, function call with args, multi-param func def, func call in\n  expression.\n"
    },
    {
      "commit": "cdbb189191d122228d802b9964101a751dd30931",
      "tree": "c1e1a9b48d7f8405e0fcb0a15e3285cf7b38e404",
      "parents": [
        "d04f362cd432ad643a69ca89f4aba57987b87170"
      ],
      "author": {
        "name": "Sketch🕴️",
        "email": "skallywag@sketch.dev",
        "time": "Sat Feb 28 19:10:35 2026 +0400"
      },
      "committer": {
        "name": "Sketch🕴️",
        "email": "skallywag@sketch.dev",
        "time": "Sat Feb 28 19:10:35 2026 +0400"
      },
      "message": "Add lexer: Tokenize function with full test coverage\n\nImplements lexer.Tokenize(input string) ([]token.Token, error)\n- Skips whitespace\n- Parses integer and decimal numbers (including leading dot e.g. .5)\n- Handles all operators: + - * /\n- Handles parentheses: ( )\n- Appends EOF token\n- Returns error on invalid characters with position info\n- 12 unit tests covering: empty, whitespace-only, integers, decimals,\n  leading-dot numbers, operators, parens, full expressions, no-space\n  expressions, invalid chars, multiple decimals (1.2.3)\n"
    }
  ]
}
