#programming

1 messages · Page 32 of 1

fast pagoda
#

python fart.py gives ytou both prints

#

import fart would only print the top level line

olive sable
#

brother what are these examples?

fast pagoda
#

it's called comedy i use it when i teach my beloved defensive driving course, comedy driving

sage crag
#

right, because

#

ew

#

i hate python

opaque sigil
#

tldr: put anything you don't want to run when the file is imported under the if __name__ == "__main__"

amber fractal
olive sable
opaque sigil
#

that's fine, just a lil fun fact

rough bloom
fast pagoda
#

we just be yapping about python's goofy structure traditions

opaque sigil
#

could be useful if you ever feel the desire to turn your game engine into a "proper" python library

olive sable
#

this conversation has felt like being shoved in a pit by your brothers, like that one bible story

fast pagoda
rigid snow
#

you know what that means? if you package your python app into a zip and prefix the zip with a python shebang IT BECOMES A FUCKING SELF-CONTAINED EXECUTABLE (still requires you have python tho)

fast pagoda
#

listen we all have too much python floating around our noggins which makes one a lil crazy

opaque sigil
#

how do you prefix a zip Hmm

opaque wharf
#

The sun has rise, it is time for me to sleep folks. Goodbye

olive sable
#

wait so what were we talking about?
src folder?

fast pagoda
#

yes i believe that's how this all got started lol

fast pagoda
#

iggly just was expressing that he would love for your main to be in a src folder

#

and then that happened

amber fractal
olive sable
#

cant i just shove the entire project into a src and be done with it?

rigid snow
opaque sigil
#

oh

fast pagoda
#

diabolical

amber fractal
rough bloom
opaque sigil
#

somehow i knew it but was hoping for a different answer

fast pagoda
opaque sigil
#

shebangs are pretty cool

rough bloom
fast pagoda
#

it really works just fine unntil you decide it's time to put it in pypy!!!~1

olive sable
rough bloom
#

I was just referring to the source code parts though (the parts that are meant to go into src/)

amber fractal
#

Someone is doing a build command in the "source directory" hence why i suggested it

fast pagoda
#

also once you get in the habit of running a lot of tests and stuff having the "expected" structure prevents you from having 12 hour "WHY WONT THE TESTSS PASSSSSS" sessions like i did many of

olive sable
#

if i do this i would like it to be like that for the entire history, howe can i do that?

opaque sigil
#

uh oh

rough bloom
#

just don't kek

fast pagoda
#

it's not worth it at this point lol

amber fractal
#

I'm on just don't

fast pagoda
#

next project

rough bloom
#

Git history modifications are rare and are practically never supposed to happen
if possible just move everything in a new commit
the large file thing was an exception because it's impossible to remove otherwise

fast pagoda
#

start a new one

#

freesh repo yall

amber fractal
rough bloom
fast pagoda
#

that is very true

fast pagoda
amber fractal
olive sable
#

nah its fine, im just not feeling well today. ill put it in a src folder

fast pagoda
#

that is in fact why i know iggly's name

#

(it's neuro-samantha vedal btw)

rigid snow
#

initial commit
+184,972 lines

fast pagoda
amber fractal
fast pagoda
#

i laughed irl at that

olive sable
#

so like these ones into a src folder?

amber fractal
#

:yep:

fast pagoda
#

p much yeah

rough bloom
#

why the models and other assets evilAAAAA
they aren't source code

amber fractal
#

updating .gitignore as well (very fun)

fast pagoda
#

and then in hogwarts after the owls you're allowed to put them in src/gameengine/main.py

#

well dont put a hyphen i actually hate that

olive sable
fast pagoda
#

i know this was discussed but i just was like wtf is this despair

fast pagoda
opaque sigil
#

yeah file explorer has git integration now

fast pagoda
#

and rising up like a phoenix from the ashes 6 days later

olive sable
opaque sigil
#

well sort of

fast pagoda
opaque sigil
#

you need a dev drive or onedrive for it

fast pagoda
#

yeah i know that's why it caused me despair

opaque sigil
#

idk if there's other ways to get it

rough bloom
fast pagoda
#

i think?

#

absolute i guess

olive sable
rough bloom
fast pagoda
amber fractal
fast pagoda
#

yeah i was gaming

rough bloom
amber fractal
#

It's an open project neuroGun

olive sable
#

what do yall want from me aquacry
i dont even know why im doing this in the first place

opaque sigil
#
sys.path.append(str(Path(__file__).parents[1]))

my favourite python snippet

rough bloom
rigid snow
#

yup the whole point of having a src directory is to only have code in it

olive sable
#

im sad

fast pagoda
#

for some of us

amber fractal
#

Yep, I am personally fine with everything you said

#

I just wanted to commit my env in a fashion that actually works (for those dying due to python packaging)

olive sable
#

today was not the day to restruxcture the file system

#

im having a moment

#

brb

fast pagoda
#

it's never the day

#

it's always a dark, dark day

olive sable
#

ill be back in 20

fast pagoda
#

im looking through some of my git trees to find this cursed system path runner

#

and boy am i usually just cooking

amber fractal
rough bloom
#

I must go eep
gn chat goodnight

fast pagoda
amber fractal
#

Reasonable crashout

fast pagoda
#

batch prompt got fked up

#

looked at the log for it

#

gpt4.1 nano sitting there rating 'nan' a 1/5 over and over

#

bro wtf was i on structuring echo's llm client when i started

final river
#

i made my bot talk with my testing bot

fast pagoda
#
├── .gitignore
├── DEV
│   ├── update-release.py
│   ├── update_file_version.py
│   └── README.md
├── RELEASE
│   ├── README.md
│   ├── VERSION
│   ├── requirements.txt
│   ├── run.py
│   └── run_gui.py
├── src
│   ├── __init__.py
│   ├── channel_config.py
│   ├── discord_bot.py
│   ├── gui.py
│   ├── llm_client.py
│   ├── main.py
│   └── utils.py
├── VERSION
├── pytest.ini
├── requirements.txt
├── run.py
├── run_gui.py
├── run_tests.py
├── sarcasticlaude.png
├── src            # duplicate directory as shown
│   ├── __init__.py
│   ├── channel_config.py
│   ├── discord_bot.py
│   ├── gui.py
│   ├── llm_client.py
│   ├── main.py
│   └── utils.py
├── tests
├── update-release.py
└── update_file_version.py

behold, the most production ready directory tree

#

everyone knows you need 30 copies of everything

#

idk why i had 2 src

#

or eve how

final river
fast pagoda
#

maaaan every time i get done tuning echo and i think he's doing great

#

i watch neuro and i'm like

#

how

final river
#

although i am a complete amateur at the same time neurOMEGALUL

fast pagoda
#

arent we all

#

(no)

#

i am though

#

i mean id consider myself one still

#

cosmically

final river
#

im practically helpless without AI when it comes to programming

fast pagoda
#

some folks deliberately force themselves to take like weeks off at a time from the vibe

#

it's really easy to let techjesus take the wheel if you get lazy so i dont think that's a bad approach

final river
#

thing with me is that i picked programming up around the same time AI was really picking up

#

so its like a really bad habit that i formed really early

fast pagoda
#

that is rough

final river
#

and i have zero formal education

fast pagoda
#

i do wonder what kids today will see programming as

#

it's only gonna get less and less needed to have the human in the loop

final river
#

i really wanna properly learn to do it without AI

fast pagoda
#

you can learn from AI as well if you treat it like the extremely good tutor it can be

#

rather than just leaning on it for the answer

final river
#

yeah true

#

usually when i go to it though i just want the code for the new command im making and i want it now

fast pagoda
#

you should look into some of the more game-ified sort of code tutor ai projects ive seen pop up

final river
#

should probably start by just not using it whenever i wanna make a new thing for my bot

#

cuz thats what i really enjoy coding

fast pagoda
#

yeah try to figure it out first at least

#

then if totally stuck

#

"halp" but not that much

#

"give me a hint" lmao

#

i bet that would actually work

final river
#

probably

fast pagoda
#

it is hard to not consult the oracle when they're right there

#

they're also not the oracle as much as they seem to be

final river
#

true

fast pagoda
#

they will recommend some bonkers stupid stuff if you dont know what you're looking at

final river
#

im so happy i dodged the AI shit with art

opaque sigil
#

go use some weird, obscure language and the AI won't be able to do all the work for you even if you wanted

final river
#

i got into that right before AI art started being any good at it

opaque sigil
#

time to learn hblang glueless

fast pagoda
#

i mean if you're doing python or react chatgpt will do that in its sleep

final river
#

yeah my bots are 100% python neurOMEGALUL

fast pagoda
#

python is kinda the move for AI stuff tho

#

especially as a beginner

#

ai helping/ultra vibe coding or not

#

you can do like julia

#

but i mean

#

no

unkempt citrus
#

Julia slander

olive sable
#

i am alive

fast pagoda
#

i should've said R

#

danngit

unkempt citrus
#

ggplot > matplotlib tho

olive sable
fast pagoda
#

go apparently isn't half bad for it but it's still in the "yo this is for running on a cluster dawg" in my head

#

which makes sense given the entire purpose of golang but still

opaque sigil
#

oh god just the thought of all the matrices that need to be gc'd

fast pagoda
#

python we dont do dat here baybeee

opaque sigil
#

yeah cause you're not running any actual python code neurOMEGALUL

olive sable
fast pagoda
#

python for gradio and file operations and then a whole bunch of not python to run the models

opaque sigil
#

no, talking about using go for ML stuff

olive sable
#

ah

#

i may also be gc'ing lots of matrices

#

each frame

opaque sigil
#

probably

#

but i don't think there are that many matrices involved right

#

at least big ones

olive sable
#

i think most of them are class variables now

opaque sigil
#

actually wait

#

you're using numpy

olive sable
#

but it didnt used to be like that

fast pagoda
#

could be numba

#

oh that was not the right type of decoration

olive sable
#

numba doesnt work in browser

fast pagoda
#

oh was that the result of that conversation, i couldnt remember

#

that does make sense tho

#

always with the dang browser env

olive sable
#

lemme double check tho

fast pagoda
#

i would think the main suffering point using not-python for ML would be training

olive sable
fast pagoda
#

because that's when you're gonna be needing to do your phat gcs

#

no numba Sadge

#

you CAN write cuda kernals in numba and use that to run your model

#

so that's one way to be a gigachad if using py anyways

#

not useful in your case sam i just was mentioning it

#

i love js
also i know dlx is supposed to mean like "DownLoad eXecute" but dlx is my least favourite command

#

it does NOT roll off the tongue

#

oh this is eslint 9 still sucking

#

mfw it's configured to import its own self-professed deprecated libs and doesnt launch in a fresh copy because of it

#

nice

olive sable
#

what the diffrence between cpython and cython?

#

the names are cofusing

fast pagoda
#

cpython is the regular interpreter for python

#

so vanilla python that's what you're using

#

cython on the other hand is actually a different language

#

it's like a hybrid of c/c++ with python syntax

#

so you get the big chillin vibe of writing python without the shit performance

opaque sigil
fast pagoda
#

was installing deps for this thing i started today and it was complaining that 8.x is deprecated

#

and i was likle

#

ok fine

#

ill try it

#

nope

opaque sigil
#

9 is basically a complete rewrite from what i remember

#

with new config requirements

#

cba

fast pagoda
#

while still using your python syntax and env w/e

opaque sigil
#

cython is weird

fast pagoda
olive sable
#

so will it work with my python code?

#

probably not?

fast pagoda
#

it would yes

olive sable
#

ahhh

opaque sigil
#

maybe

olive sable
#

so it will?

fast pagoda
#

it CAN

opaque sigil
#

not guaranteed

fast pagoda
#

i guess i should say

#

lol

opaque sigil
#

i personally wouldn't expect it to work solely due to the fact that i couldn't get pypy to work

#

but hey

#

worth a try

fast pagoda
#

you basically compile some of the python ahead of time when writing it (via pyx cythonize) so instead of trying to do like numba where it's JIT

#

it's just already compiled

opaque sigil
#

but i guess since cython targets cpython

olive sable
#

how do i even use it? the tutorial i found imports it but cant i just use it in cmd?

fast pagoda
#

it is a separate thing

#

but you can use it in cli yes

#

once you have it configured

#

uhhhh you also kinda inject it into your package build toolchain as well

#

which you dont use

#

so that might be a pain

#

but i THINK for just like a one off you can just do it manually ahead of time

#

you can compile it during execution too apparently huh
seems like less of a pain than i thought
that's what i get for never looking into it beyond "wait so u have to compile it first nah bro it's python i can't be doing all that" meanwhile out here having ci build run on commits anyways which could easily do it apparently

#

you can compile it in a jupyter book lmao

tight tinsel
#

good morning programmming

olive sable
#

hi neuroWaveA

fast pagoda
#

morning bread man

#

well

#

bread person

#

bread boss

#

leavened saint

olive sable
#

i think pygbag compiles to cython anyways for running in the web???

fast pagoda
#

average eslint 9 experience @opaque sigil

opaque sigil
opaque sigil
#

btw iirc biome had a command to import from eslint

#

unless i'm tripping

fast pagoda
#

alr im sold i am looking it up now

#

i tried

opaque sigil
#
biome migrate eslint --write
biome migrate prettier --write

yeah

fast pagoda
fast pagoda
#

didnt even have to look it up

#

my life is full of wonder

olive sable
fast pagoda
#

so

desert wave
#

biome doesn't properly support vue rip

fast pagoda
#

from what i'm reading

#

it's normally just cpython -> wasm

#

even when packaged by pygbag ahead of time, that just gets put in a package with a little c pymain that handles the "compile" step but thats still cpython

#

tfrom waht i'm seeing

#

i dont see how you couldnt just go ahead and do some cython in there for stuff ytou want to optimize for speed before it ever hits pygbag though

olive sable
#

ahhh

#

i readnt

fast pagoda
#

i missed it at first too

#

you had me questioning my entire life till the 3rd try of reading it

olive sable
#

why did they make it like this?

fast pagoda
#

python

olive sable
#

it does support cython via a wheel tho

fast pagoda
#

i mean really a lot of it is probably trying to keep it pythonic in form for people

#

but then allowing it to be adjusted to your desired neurotic neuron level if you so desire

fast pagoda
#

and then you can compile that into wasm

#

and then you can stuff that in your project

olive sable
#

wouldnt all of them benefit?

fast pagoda
#

and pygbag will just take it

#

not necessarily no, people overestimate how much slower python is (or isn't) for anything that isn't very heavy on compute

#

most of the time in execution is probably not really waiting for the python itself after it's been turned into C by CPython at runtime

#

well, not really C, it turns it into bytecode

#

sorry for just lying randomly there for a second

#

but yeah i mean CPython itself isn't THAT BAD at its job, it's certainly better than it used to be

olive sable
#

from the devs disocord about cython in web faster

fast pagoda
#

yep

#

that lines up with what i'm seein

olive sable
fast pagoda
#

it's one of those things where it's up to you as the 1337 hax0r to be like "my extremely huge programming gigabrain has determined that if i take THIS MODULE HERE and transpile that shit to c then to wasm and then include it, it'll be faster than not doing that"

olive sable
#

why is chatgpt not the first result when searching chatgpt?
i dont carte about the openai website

tight tinsel
fast pagoda
#

it's the 2nd one

and the answer is because i am always actually trying to find platform.openai.com when i search it and ive just done it so many times that it caused the entire engine to do this

olive sable
#

i dont think ive ever noticved that websites had indented other links

gritty dust
#

Couldn't find something to roast marshmallows with so my dad had this large bamboo pole for plants lol, I have a plan

fast pagoda
#

is that an RTX 5090

gritty dust
#

You see programming gives problem solving

#

Heh

fast pagoda
#

yeah so see charles cheese here just compiled that stick to cython before using it

olive sable
#

RTX 5090 with included 12V HP live footage

gritty dust
#

Sam what are you programming rn?

olive sable
#

game engine still

#

kinda

gritty dust
olive sable
#

idk

fast pagoda
#

we almost drove him insane earlier

gritty dust
#

How

olive sable
#

i had a moment

fast pagoda
#

schizoing about directory structure that just didnt matter at all for what he's doing rn

olive sable
#

something about importing for no reason

olive sable
#

just dont import it

gritty dust
fast pagoda
#

cant have packaging issues if you never package it

#

wake up sheeple

gritty dust
nocturne olive
tight tinsel
#

im gonna treat myself to a proper breakfast fo my birthday

gritty dust
tight tinsel
#

cant be eating whatever slop I normally eat

fast pagoda
#

kek looking at this pygbag repo is something

fast pagoda
#

happy bday though

olive sable
#

any mods? modCheck

fast pagoda
#

where's shiro when you need a catgirl

gritty dust
olive sable
#

code green, get this man a birthday hat

olive sable
gritty dust
tight tinsel
#

mods, surgically attach a birthday hat to his skull

gritty dust
#

They're probably in general

fast pagoda
#

i looked it didnt seem like it

#

not from a quick scroll anyways

tight tinsel
olive sable
#

its a birthday cake emoji, not hat. im getting dementio

fast pagoda
#

i put on my robe and wizard hat

amber fractal
#

Get this person a birthday

tight tinsel
#

shadow wizard programming gang

gritty dust
#

Ping a mod

tight tinsel
#

we love causing bugs

fast pagoda
#

without eslint rn i cant even see what nightmares lie ahead

olive sable
#

vanor is eeping

#

so uh

gritty dust
#

@hazy patio

#

Get this man a birthday re

#

Rle

#

Role

olive sable
#

if you dont mind

tight tinsel
#

aint neur way

fast pagoda
#

almost pinged temmie

gritty dust
#

It's bwaaperson's birthday

fast pagoda
tight tinsel
#

got close to the actual emoji

olive sable
#

i only know vanor so its scary to ping the other ones

#

vanor was one of us a long long time ago

#

then they took him neuroAwareA

gritty dust
#

Crazy he went to the dark side

olive sable
#

ou were supposed to destroy the mod team, not join them!

safe path
#

im still here smh

olive sable
gritty dust
#

AHHH

fast pagoda
#

i have temmie on my next of kin

gritty dust
#

Mod

#

HELP

fast pagoda
#

because he talked to me about sonic once

olive sable
#

CODE RED

tight tinsel
#

scatter

olive sable
#

while you're here vanor, its bread's birfday

fast pagoda
#

"where mod"
"mods r dead"
"CAN we PLEASE get a mod up in heyuhh"

#

mod arrives

gritty dust
olive sable
safe path
#

role to arrive soon ™️

gritty dust
olive sable
#

thanks vanor

fast pagoda
#

do you still have no contorl over borthdays because of shiro

tight tinsel
#

yippie

gritty dust
#

Yo Sam can I help with the game engine next week

sage crag
#

ourple

olive sable
#

i have exams next week tho so wont be working on it myself

gritty dust
tight tinsel
#

thanks vanor heart

olive sable
#

this saterday is a cheat day, ill be studying tomorrow

fast pagoda
#

got eslint working

sage crag
#

what is this vile stain

opaque sigil
#

unexpected any

fast pagoda
#

i cast so much to any

#

it's unreal

sage crag
fast pagoda
#

and then i always get blasted for it

sage crag
fast pagoda
#

i want to so bad tho

#

idk why

#

i got into this thing where im like

#

i MUST CAST A TYPE NO MATTER WHAT!!!!!!!!!!!

#

so if i dont really know i just put it to any

#

and then im like why

#

2 seconds later

opaque sigil
#

at least do the as unknown as type evilSMH

desert wave
#

at work I have it set that you can compile stuff with any in dev, but you can't commit it, has to be a defined type (or explicitly disable the rule with a note saying why)

olive sable
#

im vibe coding some cython

fast pagoda
olive sable
#

yep

fast pagoda
#

because i cant ever remember what it type it actually is

#

so then i end up with like one side set to a phat json and the other one set to something else

#

and then it's REALLY mad

#

part of it is that i have some intellicode thing somewhere in this editor that will just be like "yo u could cast this to any buddy r u really gonna not do that" and so i am just staring at it like ....... i shouldn't

#

and then i get crunk and do it anyways

#

it's kinda extra stupid with this literally being typescript

#

that's kinda like

#

the point

hoary lion
fast pagoda
#

ICANT peek has the type very obviously, so does just hovering over the data variable
im good at this

#

now anyways

olive sable
# fast pagoda "that right there looks like some C alright, send it"
# cython: boundscheck=False, wraparound=False

import numpy as np
cimport numpy as np
from libc.math cimport sin, cos, sqrt

def normalize(np.ndarray[np.float32_t, ndim=2] vec):
    cdef int i, j
    cdef int n = vec.shape[0]
    cdef int d = vec.shape[1]
    cdef np.ndarray[np.float32_t, ndim=2] out = np.empty_like(vec)
    cdef float norm

    for i in range(n):
        norm = 0
        for j in range(d):
            norm += vec[i, j] * vec[i, j]
        norm = sqrt(norm)
        for j in range(d):
            out[i, j] = vec[i, j] / norm if norm != 0 else 0

    return out


def create_from_eulers(np.ndarray[np.float32_t, ndim=1] eulers):
    cdef float sP = sin(eulers[1])
    cdef float cP = cos(eulers[1])
    cdef float sR = sin(eulers[0])
    cdef float cR = cos(eulers[0])
    cdef float sY = sin(eulers[2])
    cdef float cY = cos(eulers[2])

    cdef np.ndarray[np.float32_t, ndim=2] mat = np.empty((3, 3), dtype=np.float32)
    mat[0, :] = [cY * cP, -cY * sP * cR + sY * sR, cY * sP * sR + sY * cR]
    mat[1, :] = [sP, cP * cR, -cP * sR]
    mat[2, :] = [-sY * cP, sY * sP * cR + cY * sR, -sY * sP * sR + cY * cR]
    return mat

looks C enough

fast pagoda
#

that there is some honest to goodness cython, it says so at the top

#

i think it's competition ready

hoary lion
#

how better is it than just regular numpy?

olive sable
#

idk

fast pagoda
#

well depending on the circumstances, numba (which is JIT compiled numpy) is pretty significantly faster

#

IN SOME CASES

#

and cython should be faster still

#

numba is limited in that it has to be numpy arrays

#

that you are working on

#

if it's not a numpy array numba does nothing

#

it is definitely case-to-case though

#

apparently if you combine it

#

cython -> numpy

#

that's when you're cooking with gas

olive sable
#

chatgpt ded o7

fast pagoda
#

1250x faster than <?>

fast pagoda
#

and you are like in some customer service position

amber fractal
#

Python is slow mhm

fast pagoda
#

and you just forget how to use your hands

#

and can't type

#

so the person has to leave the chatroom

#

python do be goin slow

sage crag
#

why use python for anything when hblang is so cool FOCUS

amber fractal
#

Mabe

sage crag
#

pypy is nice though

fast pagoda
#

that's why i only use FORTRAN 66

opaque sigil
#

fortran ReallyMad

fast pagoda
opaque sigil
#

because of you i have to deal with moving from row major matrices to column major

fast pagoda
#

at least it's yelling at you the whole time

#

so it's clear it's hostile

#

right from the jump

amber fractal
#

python doesn't have it either but that's what I'd want to switch to

knotty current
#

morbing neuroWave

#

also @olive sable apperantely the game engine is one file XD

olive sable
#

i know

amber fractal
#

olive sable
#

i made it

knotty current
#

that is going to make it both easier and harder for me to naigate XD

olive sable
knotty current
#

also the textures are kinda hard coded

olive sable
#

kinda, but not really

#

change them here

knotty current
#

hardcoded as in the paths are written inside the code itself

olive sable
#

yep

knotty current
#

i know i can change the code ofc

fast pagoda
# opaque sigil at least do the `as unknown as type` <a:evilSMH:1369030779363000482>

only 19 more anys to go
just to confirm because my typescript is much less certain than python and it actually matters more in the literal type script

i would use never if the variable or w/e should "never" happen, it should be unreachable or if it's returning something, something has gone horribly wrong

and then unknown is just like if it's coming from outside the file or something but we do in fact want to make sure it's an appropriate type before actually executing on it, so unknown makes that check extra strict

#

which this one is actually a case of unknown but i put the screenshot with never so that's nice

#

oh there's an ESTreeNode type nice that is huge you learn new things every day

opaque sigil
#

never is weird

fast pagoda
#

ya that's why im a bit liek hmmm

opaque sigil
#

idk if there's any legit usecase for it other than conditional types

fast pagoda
#

as far as i understand it's like only something that should not have a type assigned at all

#

well it shouldnt even be there

#

the conditional should not result int hat

opaque sigil
#

you'd use it for functions that don't return ig

fast pagoda
#

like it's throwing an error and giving nothing back at all

opaque sigil
#

Mhm

fast pagoda
opaque sigil
#

and yeah, unknown is just a better any

#

since any simply disables the type checking

fast pagoda
#

any but with a check later instead of a "yolo"

opaque sigil
#

yup

fast pagoda
#

well you see

#

i am stupid

opaque sigil
#

called out neurOMEGALUL

fast pagoda
#

and didnt immediately know the type

#

so i just put any

#

like a boss

opaque sigil
#

also you know there's an option for disallowing any right

fast pagoda
#

yeah this eslint had it already cuz it sure let me know

opaque sigil
#

no i meant in the tsconfig

fast pagoda
#

oh really?

#

i should do that

jagged turtle
#

if you know the range of types it can be

#

or something

olive sable
#

yep, cython does be faster

opaque sigil
#

noImplicitAny alongside strict should do the trick

jagged turtle
fast pagoda
opaque sigil
#

if you feel like suffering here's the tsconfig i use for pretty much everything xdx

{
    "compilerOptions": {
        "module": "ESNext",
        "lib": ["ESNext"],
        "target": "ESNext",
        "moduleDetection": "force",
        "strict": true,
        "esModuleInterop": true,
        "moduleResolution": "Bundler",
        "allowImportingTsExtensions": true,
        "noEmit": true,
        "noImplicitThis": true,
        "noImplicitAny": true,
        "strictNullChecks": true,
        "noFallthroughCasesInSwitch": true,
        "noImplicitOverride": true,
        "useUnknownInCatchVariables": true,
        "noPropertyAccessFromIndexSignature": true,
        "skipLibCheck": true,
        "alwaysStrict": true,
        "verbatimModuleSyntax": true,
        "incremental": true,
        "noUncheckedIndexedAccess": true,
        "types": ["bun-types"]
    },
    "include": ["**/*.ts"],
    "exclude": ["node_modules", "dist"]
}
jagged turtle
opaque sigil
#

i was thinking about that but i'm lazy

fast pagoda
#

this level of rigour you only learn by never professionally programming and just being a super epic guy that writes dumb stuff for his own entertainment and learns when stuff breaks horribly

olive sable
#

i could make rayintersectaabb in cython now neuroHypers

fast pagoda
#

the type safety language is not the greatest choice to go type unsafe turns out

opaque sigil
#

at some point the game engine is just going to be 99% "python" neuroHypers

#

tbf type safety in ts is an illusion anyway

fast pagoda
#

that's what happens when someone remembered performance is a thing while already writing a python project

#

it becomes just C with a funny wrapper

fast pagoda
fast pagoda
#

it really should only benefit for very small parts anyways

jagged turtle
fast pagoda
#

mann i have never written a vscode extension before and that's what this is

#

i got yeeted into this

#

by myself

jagged turtle
opaque sigil
#

the only times i've dealt with vscode extensions was some driveby PRs for adding support for variable expansion in settings

fast pagoda
#

it's some garbage but it's meant to be the be-all-end-all of codemap//graph//visualizer things

i dont really know where im going with it to be entirely honest i just got really pissed at several of the ones on the store being horribly broken or just dogwater

opaque sigil
#

aaaaaaany day now ReallyInnocent

fast pagoda
#

no support for u

opaque sigil
#

(i ended up just bundling it myself and installing it that way)

fast pagoda
#

time to fork it

#

kek

fast pagoda
#

nah i never post anything online unless i am actually proud of it because i can't handle criticism

jagged turtle
#

also do you bundle your code or do you just use tsc and leave it at that

jagged turtle
opaque sigil
#

criticism implies people look at the code

#

nice one

fast pagoda
#

im open to suggestions due to how not-typescript-certified i am but i hadnt really crossed the bridge on that part yet

#

started this today and i figured there must be some specific way to package a vscode ext

opaque sigil
#

they have a cli

fast pagoda
#

yeah i do know about the code install or w/e

fast pagoda
#

oh yeah that's what i currently have it as

#

well im using pnpm actually

#

but yeah

jagged turtle
#

unless you're using something like esbuild

opaque sigil
#

is it time to shill bun

fast pagoda
#

fugg i have always used pnpm for node pkgs because i cant use the default that's cringe

#

right now in my package.json i have the scripts like this

#
"scripts": {
    "vscode:prepublish": "npm run compile",
    "compile": "tsc -p ./",
    "watch": "tsc -watch -p ./",
    "pretest": "npm run compile && npm run lint",
    "lint": "eslint src",
    "test": "node ./out/test/runTest.js",
    "package": "vsce package"
  },
olive sable
#

ye some dont benefit from cython. the 2nd one gets worse performance there

fast pagoda
#

it says vsce right there clearly that means itll just work (why would the compiler need to know where the packages are they're all in node_modules still amiright fellas)

#

i think it SHOULD work fine if it's a .vsix already tho so it should only affect someone who went to clone the whole repo instead of just installing that

opaque sigil
#

as long as you put the entrypoint in the package.json i think vsce should do the bundling on its own

fast pagoda
opaque sigil
#

i thiiink

fast pagoda
#

"main": "./out/extension.js", is my main entry in the package.json

jagged turtle
#

tsc doesn't do anything to fix that I'm pretty sure

fast pagoda
#

right but to my knowledge if it's a .vsix it won't matter cuz they dont ever see the packages anyways, theyre bundled if needed

#

and then i think npm itself CAN install a pnpm package

#

it just complains

autumn ore
#

Hey programmers

jagged turtle
fast pagoda
jagged turtle
autumn ore
fast pagoda
#

so i need to do some adjustments in my package it looks like, i was following a different random blog

autumn ore
fast pagoda
#

probably slap it to esbuild for sure

#

based on this other guy with the skateboard

jagged turtle
fast pagoda
#

or i could just use npm which i definitely have

autumn ore
#

Oh

jagged turtle
#

so would recommend

#

used to use webpack but it's old so 🤷‍♂️

fast pagoda
#

as long as esbuild is better than its sibling eslint 9 which has already made me very upset today

#

i actually dunno if theyre even related in any way other than the name

jagged turtle
fast pagoda
#

yeah i use pnpm because at some point i heard it was faster

#

so i was like

#

well

jagged turtle
fast pagoda
#

i gotta go fast

opaque sigil
#

esbuild is actually good at its job unlike eslint

fast pagoda
#

that's the kind of thing i'm happy to be wrong about assuming then lol

jagged turtle
#

unless you bundle

#

using smth like esbuild

jagged turtle
fast pagoda
#

i will say i got eslint 9 working actually and it's been fine since

opaque sigil
fast pagoda
#

i was mega mad at it because they changed like

#

everything

#

and then they misconfigured their own linter

#

it was crashing ootb

jagged turtle
fast pagoda
#

because it was trying to use some old relic from >8

#

<8 derp

jagged turtle
#

not on you ofc

#

I meant the devs

autumn ore
jagged turtle
fast pagoda
#

this one should be epic

autumn ore
knotty current
#

neuroMad why conda affecting my C libs ARRRRGH

fast pagoda
#

ohh this one is the one where i had a bunch of interface exports and i put at least one any in EVERY ONE because i was like well there might be weird types here :)

#

so they all end in this crisp <string, any>;

opaque sigil
jagged turtle
#

lmfao

fast pagoda
autumn ore
#

:essaying:

knotty current
#

now i need to use system libs and pacman is jank af when installing python libs

jagged turtle
#

I'm surprised it fits

fast pagoda
#

is it a code assistant like, extension

fast pagoda
#

i am taking a break from my other foray into js/typescript/everyone's favourite react which is meant to be a kinda janky ass code canvas with like 4-5 agents at once so this interests me

#

the canvas im planning on using is monaco for that

jagged turtle
#

wait did I reply when I wasn't supposed to

fast pagoda
#

no

jagged turtle
#

oh

fast pagoda
#

NOOO you were supposed to destroy the type errors, not join them

jagged turtle
#

linting errors in your linter config makes a lot of sense

fast pagoda
#

im sure it's from me frantically changing every option trying to get the linter to not crash on launch

ivory tiger
#

Just in general anyone worked with next js. Just wondering if anyone worked on improving build/dev times for it

jagged turtle
fast pagoda
tight tinsel
#

pip install malware

fast pagoda
jagged turtle
fast pagoda
#

so it should be interesting

jagged turtle
#

found it again

ivory tiger
#

My project takes 5 minutes to build

fast pagoda
#

jaysus

ivory tiger
#

Not even the tests

jagged turtle
fast pagoda
#

what are you building it with

jagged turtle
#

or like external modules

knotty current
#

@olive sable you developed the game engine on windows right?

olive sable
#

yes

real pebble
#

I tried testing a feelings matrix on a primal instinct and emotion module based of biological function

After being given the stumli input of being placed in an unfamiliar place it initially showed fear yet immediately switched to rage, should I be worried lol

ivory tiger
#

Docker so slow cuz of that but I'm like caching the node modules Already

fast pagoda
#

bill gats told me that windows is the best dev platform because you have wondows and also wsl

#

worst of all worlds

faint sandal
#

disgust

fast pagoda
#

docker

found your problem

#

nothing else matters

jagged turtle
jagged turtle
fast pagoda
#

probably docker

#

because docker sux

#

and ruins everything

ivory tiger
#

There is a known issue in windows (10) I think where wsl crashes u have to restart pc

fast pagoda
#

lol oof

ivory tiger
#

And yea cuz of docker desktop

fast pagoda
#

man uninstall docker it's malware

#

worst thing to ever happen to programming

jagged turtle
#

also does anyone know how best to communicate between a vsc extension on the UI side and one on the workspace side

ivory tiger
#

It's pretty helpful tho but if you don't scan the images you use then yes it can be dangerous

jagged turtle
fast pagoda
jagged turtle
#

same goes for ssh and containers

#

and tunnels too

fast pagoda
#

yeah that's true

#

i just generally dont use them much

#

but yeah wsl local vscode is literally just a tunnel

jagged turtle
#

well I am trying to figure it out right now for sandboxing reasons

fast pagoda
#

but i think you can basically just declare the other side as a dependency

#

from each end

jagged turtle
#

for different sides

jagged turtle
#

so

fast pagoda
#

yeah that element of it makes it even more horrible lol

jagged turtle
#

also pretty sure it would try to install both of them on the same environment but I haven't tested that

fast pagoda
#

i think you might have to use like

#

binary data send

#

lol

jagged turtle
#

why? because we can and therefore we should

fast pagoda
#

oh nvm im reading teh wsl bridge thing and it actually just tunnels it

#

for you

#

if you export any method through like activate() it will be rpc proxied to the ui

jagged turtle
#

oh so it'll run through the UI and then when it gets received it just relays to the workspace side?

fast pagoda
#

you would have to account for the path weirdness between them if you ever try to pass like a link to a file

jagged turtle
#

well here's the problem

fast pagoda
#

yeah you put like"extensionKind": ["workspace"]

#

and "extensionKind": ["ui"]

#

it's just in the manifest

jagged turtle
#

we're trying to process actions internally

#

or whatever

#

basically the problem with ui-side extension is that say if neuro wants to run pip install malware it gets ran on the main machine not the remote

jagged turtle
#

Actually that might be solved if we can somehow switch back to using VSC-provided shells instead of user-specified shells

fast pagoda
#

this page goes into a lot of that

olive sable
#

so ye most of these are good, ill be doing this in cython now neuroHypers

fast pagoda
#

nice speedups

#

8x

amber fractal
fast pagoda
#

5x

#

2x

#

we take those

amber fractal
#

Waiting for increased fps PauseSama

fast pagoda
#

needs 3000 fps

olive sable
#

gpu bound so no new fps

#

gotta improve shaders for that

knotty current
#

meanwhile me banging my head because conda is being a stupid piece and refusing to let me use my system C libs

#

i think ima fork the codebase and make it more linux friendly XD

fast pagoda
#

and then there's a message passing api too

jagged turtle
#

why do they have to make it so complicated

fast pagoda
#

i dunno they have like 30 options and they all look like some form of a pain in the ass and very specifically targeted

olive sable
#

collision only drops 300 fps now instead of the 1500 i had before

#

thats the only part where im cpu bound

fast pagoda
olive sable
#

gotta refactor the filestructure now cuz i have a bunch of new C files

opaque sigil
fast pagoda
#

hope you're not using any electron apparently

jagged turtle
#

though because of web version we're trying to limit node API usage as much as possible

fast pagoda
#

thiiis is kinda why i decided to just try and slap monaco into some "bespoke" frankenframework of my own dastardly design

#

instead of messing with a whole extension

#

and having to live in that box

#

doesnt work for what you're making though obviously

fast pagoda
jagged turtle
#

this is the most pain js/ts experience I have ever had

fast pagoda
#

at least it looks pretty while ruining your life

jagged turtle
#

but ig pain makes you come out stronger?

fast pagoda
#

a wise pair of cyborgs named thomas bangalter and guy manuel de homem christo once said something like that

jagged turtle
#

I think I asked ChatGPT for a solution once and it said you can just register internal commands and call them which would execute on the remote machine

fast pagoda
#

surely it's got the secret

#

i will ask o3 hold on

olive sable
#

guys, main.py needs to be in root folder for web to work

#

i tried putting it in a src folder, does not work

jagged turtle
#

oh

#

I see

fast pagoda
#

it's likely because your entire setup has been built around it being there this whole time

#

unless that's just some issue with the pygbag or something

olive sable
#

no its jsut not allowed

fast pagoda
#

i did mention that usually the pain with python directory layouts is just some gremlin in a basement declared that their very specific idea of the layout is the only real one

#

ol gerry gymbag seems to have ideas

olive sable
#
89: missing requirement(s)```
fast pagoda
#

symlink it Kapp

olive sable
#

symwhat?

fast pagoda
#

symlink - basically an alias but for a file location - you can have a file stored in one location but also have a link to it in another that kinda just looks like the file is at that other location to whatever is accessing it

#

so you could be in a terminal in ur project root and do mklink main.py src\main.py

#

and i would expect it to fool it

olive sable
#

mklink is not recognized as a ....

fast pagoda
#

powershell me brotha

olive sable
#

it is powershell

fast pagoda
#

it should wrk

olive sable
#

yet it doesnt

fast pagoda
#

oh mklink is actually the cmd syntax lol

olive sable
#

also not working in cmd

fast pagoda
#

boilerplate example

#
New-Item -ItemType SymbolicLink `
         -Path  "projectdir\main.py" `
         -Target "projectdir\src\main.py"
olive sable
#

how about i just dont put it in src

fast pagoda
#

hey it's your project that's always been an option
but then you're letting terry "stinky gymbag" vedalson, the dev behind pygbag, tell you what to do

#

do you want that

olive sable
#

i really dont care tbh

fast pagoda
#

terry wins again, it's over fellas and fellettes

olive sable
#

the only reason i was even trying to make it work was cuz iggly asked if i could

fast pagoda
#

(seriously though i just figured that might be hard since i further figured you'd already moved it all)

#

so wanted to see if there was a workaround ya kno

#

honestly at this point it sounds like specifically for pygbag-land you were 100% already using the right folder structure

#

which is funny in a cosmic sort of way

opaque sigil
fast pagoda
#

i have a sort of grandpa's fondness for powershell

#

swing and a miss on the way they structured the syntax at the end of the day though

#

someone really decided

#

hey let's just use .NET in a cli

#

everyone loves .NET

opaque sigil
#

i do really like powershell for more complex things

fast pagoda
#

i use it a lot for file ops and such

opaque sigil
#

having to parse text for info is insane in 2025

fast pagoda
#

yeah it does the vast majority of that sort of thing for me

#

if it can

opaque sigil
#

i'm just glad i can hop between wsl and native windows and use the same commands for the most part now neuroHypers

fast pagoda
#

have a lot of random .ps1s all over the place for tiny QoL operation things

fast pagoda
#

UNTIL it suddenly is not working in a very obfuscated and irritating sort of way

#

couple weeks ago i had some MCP servers i was running through node on wsl but able to use just fine in the host windows

#

they just stopped work

#

randomly

#

and i never got them to start working again somehow

opaque sigil
#

iirc they removed some networking settings a while back

fast pagoda
#

had to nuke that WSL and install a fresh one lUL

#

well a lot changed from WSL1 to WSL2

#

for sure but idk what else since

#

all i know is if you're having issues with wsl

#

if ur running docker's evil code

#

it's probably docker's fault

opaque sigil
#

okay just checked, they removed bridged networking in march which should've ended up in the stable release in late april

fast pagoda
#

that would line up

#

a bit too close for my liking

opaque sigil
#

i'm pretty sure you'd have to explicitly choose that over the default NAT networking though

#

i like using mirrored cause i'm lazy and would like things to just work

fast pagoda
#

i think i have it on mirrored mode

#

yeah

#

so nvm i dont think it was that

opaque sigil
#

tbf the latest stable release has been kinda fucky for me too, it refuses to boot half the time

#

so i just went back

fast pagoda
#

win11?

opaque sigil
#

yea

#

well, wsl

#

not the native os

fast pagoda
#

oh

#

strange

#

the nice thing about it for me is that it has that virtualized free ez fix for stuff

#

delete and remake

#

lol

#

so i never have problems with a wsl install for more than like 2 seconds before im like

#

it's impossible i give up

#

and just replace it with a new one

olive sable
#

i need a .so file, not pyd

#

linux returns a .so file, windows gives a .pyd for some reason

fast pagoda
#

muh pc is minig bitcoins now >:(

#

jk

final river
#

vedal would be proud of my latency

olive sable
fast pagoda
#

prease hold

olive sable
#

edit the file location to be correct tho

jagged turtle
fast pagoda
#

forgor args 1 sec

olive sable
fast pagoda
#

where the hell did it export to lol

#

copying build/lib.linux-x86_64-cpython-313/mathutils.cpython-313-x86_64-linux-gnu.so -> it just said that and ended

olive sable
#

idk

fast pagoda
#

lemme find it

olive sable
#

thanks

fast pagoda
#

oh and that was cp313 so if you need another python version i can always just make uv use a different version and recomp

jagged turtle
fast pagoda
#

it definitely cooked something at least it's a lot of yapp

#

and a further message not specifically about wsl but applies to just remotes in general

#

these are md format so if u hate the formatting it's actually quite nice if you slap it in vsc

#

which im sure you know

#

but

midnight sigil
fast pagoda
#

welcome to sloppa hours

#

long and short of it was about this table

olive sable
#

im going to bed

#

goodnight

fast pagoda
#

gn sam

autumn ore
jagged turtle
#

because we don't and use stuff internally

and also how do you consume your own apis in this case

fast pagoda
#

there is an API (or there should be) but you are saying you have made the design choice not to utilize it correct

#

according to what i can find just sending a workspace command should get routed ```typescript
// UI-side component
vscode.commands.registerCommand('myext.uiCommand', async (data) => {
// Execute command on workspace side
const result = await vscode.commands.executeCommand('myext.workspaceCommand', data);
return processResult(result);
});

// Workspace-side component
vscode.commands.registerCommand('myext.workspaceCommand', async (data) => {
// Process data with full workspace access
const files = await vscode.workspace.findFiles('**/*.ts');
return analyzeFiles(files, data);
});

#

but i do not know the extent to which your use case would need more capacity than like a command being executed

#

i am seeing some stuff about literally basically turning it into a language server type implementation

#

which came from copilot i guess

#
#

whoa

#

that is fking weird

hoary lion
#

Daily bwaa'd

jagged turtle
#

I just need to figure out whether or not we can just parse stuff out then or do we just give the actionData packet verbatim

#

though maybe I should focus on one thing at a time

fast pagoda
jagged turtle
#

so for now back to docs I go

fast pagoda
#

gemini's table of horrors

#

i did have gemini create a wonderful web page just for you

#

because it's funny

jagged turtle
#

I'll probably just focus on writing docs and finishing web version first

jagged turtle
#

saving those rn

fast pagoda
#

lol

#

i like to consult the slop council when i can't find a good answer for something

#

so they just firehose you with infinite slop until a nugget catches your eye

#

i cannot possibly believe

#

that ME

#

I

#

have a type error

hoary lion
#

classic

gritty dust
stark needle
#

Morn

tight tinsel
#

good morning shadow

stark needle
hoary lion
fast pagoda
#

in typescript

gritty dust
#

Gotcha

fast pagoda
#

im a genius

#

well that was a few too many at once i guess

hoary lion
#

tmrw task list:

  1. understand conformer -> implement in jax
  2. understand RVQ -> implement in jax
stark needle
#

i'm still working on

#

my 50M param llm

#

lmao

hoary lion
#

Still?

stark needle
hoary lion
#

find a new hobby pls 😭 let that half the size of encoder gemma go

#

or at least increase the params

stark needle
#

it's literally

#

free performance

hoary lion
#

will we have near 100% accuracy if we increase the param to 150m