Skip to content

Instantly share code, notes, and snippets.

View eliasdorneles's full-sized avatar

Elias Dorneles eliasdorneles

View GitHub Profile
@eliasdorneles
eliasdorneles / filter_depth_pyreverse_packages_graph.py
Created January 31, 2024 12:48
Script to filter the packages graph generated by pyreverse on depth
import argparse
import pydot
def should_delete(node_name, max_depth=2):
return node_name.count(".") >= max_depth
def truncate_node_name(node_name, max_depth=2):
return '.'.join(node_name.strip('"').split('.')[:max_depth])
@eliasdorneles
eliasdorneles / pratt_parser.py
Last active July 23, 2024 15:47
A minimal implementation of Pratt parsing
from enum import StrEnum
class TokenType(StrEnum):
PLUS = "PLUS"
MINUS = "MINUS"
MUL = "MUL"
DIV = "DIV"
LPAREN = "LPAREN"
RPAREN = "RPAREN"
@eliasdorneles
eliasdorneles / awesome_audio_and_music_programmind.md
Last active December 4, 2024 23:21
Awesome Audio and Music Programming Learning Resources
@eliasdorneles
eliasdorneles / pratt_calc.py
Created August 6, 2024 20:39
Simple calculator demonstrating Pratt parsing
import re
from enum import StrEnum
class TokenType(StrEnum):
PLUS = "PLUS"
MINUS = "MINUS"
MUL = "MUL"
DIV = "DIV"
LPAREN = "LPAREN"
@eliasdorneles
eliasdorneles / send_chord.odin
Created May 14, 2025 18:39
Odin PortMidi 101
package main
import "core:fmt"
import "core:os"
import "core:time"
import "core:strconv"
import "vendor:portmidi"
main :: proc() {
if len(os.args) < 2 {