{"id":19649857,"url":"https://github.com/soegaard/super","last_synced_at":"2026-02-21T23:04:12.389Z","repository":{"id":52485458,"uuid":"520661972","full_name":"soegaard/super","owner":"soegaard","description":"Adds syntax to racket languages","archived":false,"fork":false,"pushed_at":"2022-08-17T09:43:43.000Z","size":20,"stargazers_count":11,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-25T16:03:52.814Z","etag":null,"topics":["racket","syntax"],"latest_commit_sha":null,"homepage":"","language":"Racket","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/soegaard.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}},"created_at":"2022-08-02T22:04:25.000Z","updated_at":"2023-06-16T07:22:09.000Z","dependencies_parsed_at":"2022-09-15T03:42:07.361Z","dependency_job_id":null,"html_url":"https://github.com/soegaard/super","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/soegaard/super","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soegaard%2Fsuper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soegaard%2Fsuper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soegaard%2Fsuper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soegaard%2Fsuper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/soegaard","download_url":"https://codeload.github.com/soegaard/super/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soegaard%2Fsuper/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29696918,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-21T18:18:25.093Z","status":"ssl_error","status_checked_at":"2026-02-21T18:18:22.435Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["racket","syntax"],"created_at":"2024-11-11T14:55:49.352Z","updated_at":"2026-02-21T23:04:12.344Z","avatar_url":"https://github.com/soegaard.png","language":"Racket","funding_links":[],"categories":[],"sub_categories":[],"readme":"# super\n\n## Introduction\n\nThe `super` language is a meta-language that adds features\nto an existing racket language.\n\nUse it as:\n\n    #lang super \u003clang\u003e\n\nwhere \u003clang\u003e is the name of an language like racket, racket or similar.\n\n\n\n## Field and Method Access, Method Calls\n\nIn a super language identifiers with dots can be used for field access\nand for method calls.\n\n    1. o.f                       access field f of object o\n    \n    2. o.f1.f2                   access field f2 of object o.f1\n    \n    3. (o .m a ...)              invoke method m on object o wth arguments a...\n    \n    4. (o .m1 a1 ... .m2 a2 ...) same as ((o .m1 a1 ...) .m2 a2 ...)\n    \n    5. (o.m a ...)               invoke method m on object o wth arguments a... \n    \n    6. (o.m a ... .m1 a1 ...)    invoke method m1 on resultof object (o.m a ...) with arguments a2 ... \n\nSee `test-object-notation.rkt` for an example.\n\n## Indexing with square brackets\n\nIn a super language the reader reads an expressions of the form\n\n    id[expr ...]      (no space between the identifier and the bracket)\n\nas \n\n    (#%ref id expr ...).\n   \nA default binding for `#%ref` is provide that allows indexing for\nvectors, lists, strings and bytes.\n\nThe default bindings is defined like this:\n\n    (define-syntax (#%ref stx)\n      (syntax-parse stx \n        [(#%ref x:id index:expr)\n         (syntax/loc stx\n           (let ([i index])\n             (cond\n               [(vector? x) (vector-ref x i)]\n               [(list?   x) (list-ref   x i)]\n               [(string? x) (string-ref x i)]\n               [(bytes?  x) (bytes-ref  x i)]\n               [else\n                (error '#%ref (~a \"expected a vector, list, string or byte string, got: \" x))])))]))\n\nSee `test-ref-expressions.rkt` for an example.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoegaard%2Fsuper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsoegaard%2Fsuper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoegaard%2Fsuper/lists"}