How to build a good package manager.

I'm working on a language called threadon. And i don't now how i can properly program a package manager.

My first idea was a central github repo with links to other github repo's which contain the package you're searching for.

There are two main problems with it

  1. If someone deletes his github repo with the package everything build on the package would collapse (like npm)

  2. I think it would be slow when the number of packages grows.

I had an idea to of selfhosting it but i haven't access to the router (My dad owns it i'm 13) and i'm sure downdetector on my package manager site would be worse then github 😄. Like i would probably run sudo rm -rf / --no-preserve-root on the wrong machine.

So my question is how can i build a system that can store up to 20 GB at minimum at packages without the risk of someone nuking his project).

reddit.com
u/AnoProgrammer — 3 days ago

Building a programming language.

Hey i'm writing a programming language (still in his early stages) named threadon.

I know i already posted about it in the subreddit but it is now in a far later stage.

it has a lot of special features already like unions

and i'm working on the

on event:

print("do something")

that checks continuously in the background if the statement is true. And i'm planning for full python compatibility (It can't use python classes right now)

It has a vscode extension too https://github.com/Threadon-Lang/ThreadonVSCode

I've two questions:

  1. what are some features that aren't widespread but work really good

  2. does someone wanna join and help programming it.

reddit.com
u/AnoProgrammer — 3 days ago
▲ 7 r/debian

Distrohopped to ubuntu.

I switched 1/2 months ago to Ubuntu. And to be fair. It sucks. I've never had one issue with Debian. But had one issue in three days on Ubuntu (Snap). But i'm to lazy to switch back. Does someone know a method to do it quick. And i've a lot of shortcuts and installed apps so reconfiguring that again takes a while.

reddit.com
u/AnoProgrammer — 4 days ago

I'm writing a programming langague. Anyone wanna join?

The language has a syntax like python and compiles like this

lexer -> parser -> coreIR (self made SSA like IR) -> LLVM IR

-> GPU IR

-> CUDA

a program looks like this

struct Z:
    z: Int32
struct Point:
    x: Int32 = 0
    y: Int32 = 0
    z: Z = Z(z=0)
def add(x: Int32, y: Int32) -> Int32
    if x < 2:
        result: Int32 = x + y * 2
    else: 
        result: Int32 = x + y ** 2
    MyPoint: Point = Point(x=0,y=0,z=Z(z=0))
    result += 2 ** 3 - MyPoint.z.z
    return result
value: Int32 = add(10,87)
value2: Int32 = value^

the repo name is https://github.com/vanopdorp/Threadon3.0

It is in it's early stages.
Does someone want to contribute. Write bug fixes, documentation, etc.
You need to have a bit of knowledge about compilers and programming language. 
The compiler is written in python but it is recommended that you've programmed in lower level languages like C++ before
u/AnoProgrammer — 12 days ago

Starting a research team

Companies like Google have internal research groups such as Google DeepMind and Google Brain. It made me wonder how an open‑source community could structure collaborative research in a similar way — not as a formal team, but as a decentralized team and trying to make next gen architectures.

I’m curious how others think such a community‑driven research approach could work, what challenges it would face, and whether anyone has seen successful examples of this in practice.

If you are interested and wants to join the team, send me a DM please.

For context: I’m an independent ML enthusiast, not affiliated with any company.

reddit.com
u/AnoProgrammer — 2 months ago

VarSave: save all your variables in a file and load it later

What This Project Does

VarSave (https://github.com/vanopdorp/VarSave) is a small but powerful utility that lets you store the entire runtime state of a Python program and load it back later.

It captures:

- all global variables

- all local variables

- all object instances

- nested structures (lists, dicts, sets, etc.)

- cross‑references between objects

With VarSave, you can pause a running script, save everything to a file, and resume later as if nothing ever changed.

The API is intentionally simple:

save_to_file(path)

load_from_file(path)

save_everything()

load_everything(data)

VarSave stores instances, not class definitions, so you must re‑define your classes and functions before loading a snapshot.

This keeps the system predictable and avoids version conflicts.

You can install it with:

pip3 install varsave

Target Audience

VarSave is designed for developers who want a lightweight way to checkpoint or persist the state of a Python program.

It is useful for:

- debugging complex stateful programs

- long‑running scripts that need “save” functionality

- educational or experimental projects

- prototyping systems that require runtime persistence

VarSave is not intended to be a full production‑grade persistence layer or database replacement.

Instead, it’s a practical tool for developers who want to quickly save and restore Python state without building custom serialization logic.

Comparison to Existing Alternatives

VarSave fills a niche that most serialization tools don’t cover:

Compared to dill

- dill can serialize objects, but VarSave manages the entire runtime, not just individual objects

- VarSave automatically:

- inspects the caller’s frame

- collects globals and locals

- restores them into the correct module

- rebuilds object attributes

Compared to databases or ORM systems

- VarSave is not a structured data store

- It is meant for runtime snapshots, not long‑term storage

- No schemas, migrations, or models required

In short:

VarSave is the easiest way to freeze and restore the entire state of a Python program without writing custom serialization code.

u/AnoProgrammer — 3 months ago