Skip to content
View metagn's full-sized avatar
  • turkey
  • 06:37 (UTC +03:00)

Organizations

@metagn-archives

Block or report metagn

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
metagn/README.md

If you want to support my work please consider sponsoring or donating via Buy Me a Coffee.

Active projects (currently working on or intend to maintain):

Projects
Nim personal contributions to the Nim programming language - previously full time
abyzou in development scripting language
margrave Markdown dialect
rot text data format
libraries under holo-nim general purpose library suite
- more projects under development
personal Nim libraries activity varies, see below
Nim libraries
category library description
language applicates first-class templates/symbols
language assigns overloadable pattern matching
language skinsuit stackable utility macros for object variants
language knot tie compile-time values to types under names
datatype manta runtime array types with destructors
datatype hemodyne stream-like dynamic buffers
datatype flop overloadable tagless invalid-state-based option types
datatype froth tagged pointer types with destructors
datatype sliceutils slice/range abstractions
datatype shorteststring word-size string
math cardia discrete math primitives
parser margrave portable and configurable parser for a dialect of markdown
parser rot text data format
macro nuance runtime support for untyped nim AST
sugar grab inline package installs (like Groovy @Grab)
sugar spread block syntax for calls/literals/constructors
sugar dirtydeeds sugar for partially applied calls
sugar lispnim lisp syntax for nim using nuance
network niv/websocket.nim (co-maintainer)
network funnycapitalism barebones Discord library
network etf erlang term format
language schemes (historical) syntax for state machines
wrapper nashorn (historical) nim wrapper for Nashorn JS runtime
wrapper nimedscript (historical) nim wrapper for EdisonScript in FL Studio

installable with nimble: nimble install <url>


Historical projects (archived or sporadically maintained):

project date
blog site builder for blog using margrave 2022-
fup1 tetris for web and desktop using SDL2 in Nim 2021
kismet first programming language, for embedding in the JVM 2016-
very old
project date
lolhr Discord bot account client UI to learn JavaFX 2018
technocracy visual demo for a game idea in Groovy/Swing 2018
wobby 2D platformer engine and level editor in Groovy/Swing 2017-2018
DiscordGroovy early library for the Discord bot API in Groovy 2016-2018

Links

Popular repositories Loading

  1. skinsuit skinsuit Public

    utility macros mostly for object variants

    Nim 23 1

  2. nuance nuance Public

    nim untyped AST node generation at runtime with custom line info

    Nim 21

  3. grab grab Public

    grab statement for importing packages in Nim, similar to Groovy's Grape

    Nim 16

  4. spread spread Public

    macro for spreading blocks into call parameters/collections

    Nim 14

  5. assigns assigns Public

    syntax sugar for assignments

    Nim 11

  6. applicates applicates Public

    generalized compile time routine and symbol pointers

    Nim 11 1