Skip to content

Instantly share code, notes, and snippets.

View eprosync's full-sized avatar

BlueShank eprosync

View GitHub Profile
@eprosync
eprosync / gc.txt
Last active September 18, 2025 15:19
Just a casual write up on what to possibly do with current GC magic.
Proposal for an Updated GC, for the current 2.1.0-beta3 stable under gmngc.
Generational Tri-Color GC, a non-copy GC with a rememberance and deferral set. uhhh... I might be wrong in a bit about the "non-copy" part.
# Added Struct Format
GCState->tiers[TIERS] - List of collectable objects graded per tier.
GCState->currentwhite[TIERS] - Current white color per tier.
GCState->deferral[TIERS-1] - Deferral linked list, objects marked already black are to be scanned in the higher tier cycle.
GCState->remembered[TIERS-1] - Used as a reference link between two different tier objects. (TBD)
GCheader->tier - Current tier this object is in
@eprosync
eprosync / mono.lua
Last active September 1, 2025 19:35
Something about accessing mono via lua
local mono = {}
_G.mono = mono
function mono.initialize(module)
mono.module = module
-- You could use FFI here but for now FFI isn't cross-compatible with memory
local subroutine = {}
mono.subroutine = subroutine
@eprosync
eprosync / interserve_starfall.lua
Last active August 4, 2025 17:17
Interserve for Starfall - Supports Live Loading, Concept Version
if SF and SF.Libraries and SF.Modules then
local Libraries = SF.Libraries
local Modules = SF.Modules
local function SF_Lib(name, callback)
Libraries[name] = true
Modules[name] = {
[name] = {
source = "interserve",
init = function(instance)
@eprosync
eprosync / interserve.lua
Last active August 4, 2025 02:29
Interserve - Initial Concept Version
--[[
Interserve - Abusing HTTP to get around net.* limits.
Initial Concept Version, do not use on production servers.
Contact: https://github.com/eprosync
Prerequisite: https://github.com/eprosync/interstellar_gmod
]]
local interserve = {}
_G.interserve = interserve