#🪅-progaming

1 messages · Page 47 of 1

formal belfry
#

i was being sarcastic lol

hoary sluice
#

progaming

hoary sluice
#

not new

#

has been meta since '91

formal belfry
#

servers

valid jetty
#

@hoary sluice i have the thinkpad

placid cape
supple whale
#

me rendering a cube at 3.4k fps on my phone

valid jetty
#

i got it for £500 i think it was worth it

#

it looks nice on zed too

nimble bone
#

how

frosty obsidian
hoary sluice
hoary sluice
deep mulch
#

@frosty obsidian what if i called the library "pipette"

deep mulch
#

my compose color picker library

dense sand
#

very cool

valid jetty
#

i haven’t configured it properly yet

frosty obsidian
#

oh that wasn't a dig on you

#

just something i notice

valid jetty
#

lmao

frosty obsidian
#

i think whoever picked those icons just grabbed random stuff from google

deep mulch
#

wing hates me

valid jetty
#

i had to uninstall haskell because i ran out of storage

valid jetty
frosty obsidian
#

im referring to the nerd font devs

valid jetty
#

oh xd

deep mulch
#

@frosty obsidian hi

frosty obsidian
#

i really like that color display

deep mulch
frosty obsidian
#

nick@arch

deep mulch
#

fake

formal belfry
deep mulch
#

idk

frosty obsidian
#

thats a very blue/purple color scheme

deep mulch
#

i just do easily

#

its dynamic

valid jetty
#

lmao the thinkpad came with a bulky charger and i thought i was gonna have to take it around with me but the port itself is just usb-c 😭

#

not sure if having a less or more powerful charger can break it

#

the plug i use has a transformer built in but idk if its the same size

deep mulch
#

probably doesnt matter

valid jetty
#

yea ok

deep mulch
#

usb c negotiation so good

valid jetty
#

the speakers on this absolutely suck compared to my macbook

#

shouldve expected this tbh

deep mulch
#

@valid jetty

frosty obsidian
#

haven't fixed the value bug yet i see

deep mulch
#

dont know how

frosty obsidian
#

just fix it

deep mulch
#

how

frosty obsidian
#

code

deep mulch
#

tried

#

@frosty obsidian I plan on releasing soon

#

tomorrow or Saturday

frosty obsidian
#

5 years

deep mulch
#

nop

#

I forgot minky was in my room

frosty obsidian
#

hes starving

#

you trapped him

deep mulch
#

yop

static ibex
#

can anyone take a look at my settings code?

#

whenever i use it whether enabled or not vencord just doesnt appear

#
const settings = definePluginSettings({
    showHeader: {
        type: OptionType.BOOLEAN,
        description: "Desciption Here; 🔐",
        default: true
    }
});
#

whenever i use this it just fucks my vencord

#

and is just the default stable discord

#

instead of discord with vencord

#

dk whats wrong with it

#

enabled/disabled boolean setting

fleet cedar
static ibex
fleet cedar
#

Gesundheit

hoary sluice
hoary sluice
#

theres phone chargers with 120W that are tiny and the thinkpad prob needs like 90

hoary sluice
valid jetty
#

fine ill get kde plasma

#

ive been told by just about everyone

valid jetty
#

there i got plasma

hoary sluice
hoary sluice
#

16 is rarely enough for me

valid jetty
#

gnome had it built in

hoary sluice
valid jetty
#

yea

hoary sluice
#
  1. thats really slow
  2. plasma has it but idk where
valid jetty
#

i found it

#

fuck i cant move apps between desktops very easily

hoary sluice
#

install catppuccin qt

hoary sluice
valid jetty
#

ok i did that

#

perf seems like its about throttled to 1/3 of full when on power saving mode

valid jetty
dense sand
#

this is some good code™️

#

I want to do some memory measurements to see how hungry i am

jade stone
#

always running out

#

@deep mulch somehow vscode managed to drop the path delimiter after my username on all my extensions 😭

valid jetty
#

16gb was enough on my macbook it will be enough here too

elder scaffold
#

i have 16gb and I dont think it ever ran out

hoary sluice
#

i cant run my voice assistant on my laptop

#

it requires ollama, rasa, and a speech to text, zed, r-a and qt creator running and i always have discord open so my cpu and ram struggle a lot

jade stone
hoary sluice
jade stone
hoary sluice
jade stone
#

snapdragon x elite chip

#

@hoary sluice enlighten me on how no graphical output, no usb input, no keyboard input, (guessing no trackpad input, havent gotten far enough to test that yet) means "supported"

#

i know there is no keyboard /usb input because grub displayed graphical output, but didnt accept any keyboard input

#

and once it booted (via grub default choice timing out) screen went black and theres no graphical output

hoary sluice
#

what distro did you try

#

cause linux works perfectly fine on raspberries so i dont see why it shouldnt work on other arm platforms

#

and from what im reading with the right setup it works

jade stone
hoary sluice
#

mint fedora and nix dont have good arm support

median root
hoary sluice
#

did you try the ubuntu 24.10 arm concept

median root
#

which is built for arm

hoary sluice
jade stone
#

and i wouldnt call needing a concept build good support

hoary sluice
hoary sluice
#

its just an arm build

jade stone
hoary sluice
#

what laptop are u using

jade stone
#

while it might technically load, i wouldnt call that "support"

hoary sluice
# jade stone no, what im saying is that i would not call linux "supported" if - you need to f...

this is a poor approach to foss, especially to an operating system on a very much new platform; there arent enough people using it to warrant a lot of work to be done on ensuring full support, but there is enough support to get a working image, every distro works if you put in enough time into making it work, but thats unneccessary, because the people at qualcomm and canonical already put in the work into supporting snapdragon x elite

#

idk why you dont want to call this support

#

you have multiple linux distros running on your platform

#

with you needing to do barely any work

#

you can get nix working on it if you put in a few days or weeks of effort, but you could also just use ubuntu with nixpkg

jade stone
#

im going to try installing what distros i can tonight, and ill let you know if i manage anything

jade stone
hoary sluice
#

sure

jade stone
hoary sluice
hoary sluice
jade stone
hoary sluice
#

the concept of a distro is pretty abstract, its just what kernel is used and what apps are preinstalled

jade stone
hoary sluice
#

whether that effort is pointless or not is a different question

#

its hard to get an os running on a new platform, people did the work and now theres support

#

its probably easier to install the ubuntu image, change the gnome theme, install nix on it, change the neofetch ascii art and call it nixos

valid jetty
hoary sluice
valid jetty
#

oh

deep mulch
#

@frosty obsidian they're adding VerticalSlider ButtonGroup and a drag handle thing to compose m3

#

something called a FloatingToolbar

#

also lots of references to something called an override

jade stone
#

@hoary sluice either i cant find the official debian image you mentioned, or it has the same issues as all the other arm isos

#

@hoary sluice the ubuntu concept ISO has the same issue

eternal wigeon
#

Anyone here ever wrote a tampermonkey script? how do i made a 1 click install link for my tampermonkey script? just opening the .js link from github doesnt seem to prompt the install page to appear

jade stone
#

and it needs the userscript header

eternal wigeon
#

i think thats how the script i copied used the updateurl and downloadurl

#

idk how to get direct download link url to a github file, that is the url from when you click 'raw' to view the raw file

eternal wigeon
#

i thought this was a question

#

thanks, let me try

eternal wigeon
deep mulch
#

@frosty obsidian compose-pipette

deep mulch
#

@ornate quiver does android studio hide all the useful tool windows for you

#

like logcat, device manager, build will be hidden for me every single time

#

its so so annoying

ornate quiver
#

no?

dense sand
#

Android studio is ass

ornate quiver
#

so true

dense sand
#

Im actually thinking of making a phone app, but im pretty unsure of which framework to hse

#

I want to use the material components tho

#

Perhaps flutter could be a great choice, but i dont want to learn a whole new language

#

On the other hand, i found android studio overly complex with all their shit, but thats like 2 years ago

deep mulch
#

it genuinely pisses me off so much

#

im expecting it to always be there 1 click away

ornate quiver
#

as might as we all hate react native it might be the best option if you're lazy and already know react

dense sand
#

Does support the material design though

ornate quiver
#

compose does
I have no idea about RN

dense sand
#

I kinda fell in love with it as it looks good in google ecosystem

ornate quiver
#

then again you could just go for no framework at all and just use views directly
I know there's material component libs

dense sand
#

Ill take a look at the jetpack compose, thanks blobcatcozy

#

Ohh its similiar to compose multiplatform

ornate quiver
#

it's the same thing

deep mulch
#

yop

dense sand
#

Ahh

#

And i do this in android studio or is intellij sufficient

deep mulch
#

cool I updated and now I ksu just won't install despite flashing with no errors

frosty obsidian
#

but intellij will still work fine

dense sand
#

VLAs seems to be pretty interesting topic in C

fallen nebula
lavish cloud
#

Does anyone know how the hell to use windows WH_KEYBOARD_LL because for me it only works while my app is focused for some reason

formal belfry
#

simply don’t use win32

lavish cloud
formal belfry
#

skillz

placid cape
#

141 wow

#

nice

formal belfry
#

hardstuck 130 for almost a year

#

lol

#

my raw is crazy though

#

i also have 116 in c++ xD

frosty obsidian
fallen nebula
frosty obsidian
#

it just adds some extra tools

#

the underlying software is the same

lavish cloud
#

It's def a worse experience though

#

Especially when using Compose Multiplatform

#

But even just for android-only

frosty obsidian
#

my experience has been fine

hoary sluice
frosty obsidian
#

yeah

#

except fleet

#

coincidentally fleet sucks

hoary sluice
#

jetbrains try no to make an ide for literally everything challenge (impossible)

frosty obsidian
#

you can make your own jetbrains ide actually

lavish cloud
#

Luanalysis was amazing but isn't updated in like 3 years

frosty obsidian
#

update it

lavish cloud
#

People have been working on that

#

For about half a year at this point

frosty obsidian
#

probably having trouble with jetbrains' own language support system

lavish cloud
#

At least it's not as bad as LSPs

frosty obsidian
#

LSP is at least standardized and works across editors

lavish cloud
#

But it's slow, lacks context, ignores type stubs, needs to be installed separately from plugins for some fuckin reason, and some more issues I can't remember

dense sand
#

language support was never suppose to be client-server thing 😭

frosty obsidian
#

its a compromise

astral rock
#

might just be dumb but what do I do here

fleet cedar
#

You're probably building from the wrong dir

astral rock
#

ok then

astral rock
#

so what now

royal nymph
#

follow the docs and you won't run into issues

astral rock
#

I am literally on docs

lavish cloud
#

I will kill the person who designed winapi

royal nymph
lavish cloud
supple whale
#

you have no idea how much i relate to this

#

i've been emulating on android

#

and fuck dx

#

fuck winapi

#

proton helps

#

but fuck me

#

dx game: 20 fps min settings

#

vulkan game: ultra settings 60fps

lavish cloud
#

Horror

supple whale
#

i'm just trying to turn my phone into a steam deck

#

but android being arm64 becomes a problem rapidly

quasi rain
#

Is JavaScript a good choice for first language wires

quasi rain
spark tiger
#

also you’ll be able to write “blazingly fast 🚀” in your project description

quasi rain
#

Uh k

nimble bone
#

its @vital plume

spark tiger
#

true

ornate quiver
#

blazing fast memory vulnerabilities 🚀

formal belfry
#

rust mid

#

rusts eco system is the only thing holding it together

fleet cedar
formal belfry
#

memory leaks are not that bad

#

maybe if you have 4gb of ram xD

ornate quiver
#

does anyone know how to launch a url via firefox as a popup
ie, you can't navigate and the address bar is hidden

#

the closest is --kiosk which launches it as a fullscreen app

royal nymph
#

so oddly specific

#

cant u use webview or electron

ornate quiver
#

minimum effort
how would electron work tho

royal nymph
ornate quiver
#

actually hold on --kiosk works if i make a hyprland rule to then unfullscreen it

royal nymph
#
import webview
webview.create_window('Hello world', 'https://pywebview.flowrl.com/')
webview.start()
ornate quiver
#

huh interesting

royal nymph
#

it's that simple in most languages

#

python just the easiest

deep mulch
#

@ornate quiver im scared i need to take a mobile app development class

#

theyre gonna be teaching like android app development with java 8 and views and deprecated apis and using eclipse i bet

#

i wonder if i can somehow skip it

ornate quiver
#

HUSK

#

zt would be the smartest in the class already

frosty obsidian
#

no way they'll force eclipse

#

no one on earth uses that for android development

ornate quiver
#

ancient outdated classes do

frosty obsidian
#

if his school is so outdated that it uses material before android studio was a thing then zeet should drop out

#

i can at least understand eclipse being forced for a more general java course but definitely not one for android

deep mulch
#

so many recompositions happen in my color picker sample and i have no idea why

frosty obsidian
#

id say theres an 80% chance its xml/views based though

#

there is a chance it could be react native too

deep mulch
#

its redrawing the sweep gradient circle every time the color changes even though the gradient hasnt changed

deep mulch
#

i will never use react native

frosty obsidian
#

you hate that its a realistic possibility

deep mulch
#

very bad

nimble bone
#

it is becoming the future of mobile apps

#

remember companies are lazy

#

why hire swifties and kotlinions when u can just repurpose ur webdevs

jade stone
#

@deep mulch i will react you to produce 1G fe/t

deep mulch
#

web devs worst kind of dev

frosty obsidian
#

if the class isn't required for your degree then i probably just wouldn't take it

deep mulch
#

it's required

frosty obsidian
#

guh

deep mulch
#

@frosty obsidian you will be required to write an operating system

frosty obsidian
#

probably not

#

its just cpp

#

they're not teaching low enough level to make an operating system

deep mulch
#

they will

#

you will learn SIMD and avx

frosty obsidian
#

maybe in my own time

#

but not from school

deep mulch
#

@frosty obsidian you will figure out why my code recomposes so much

frosty obsidian
#

nop

deep mulch
#

gu

#

I don't think I can release yet there's bugs I found

#

and so many unnecessary redraws

jade stone
frosty obsidian
#

don't let perfect be the enemy of the good

deep mulch
#

if I do this right it'll be really pophlar I think

#

since all the other options suck

#

so I wanna get as much right as I can before release

ornate quiver
#

I will use in aliu manager

#

there's no good color picker

frosty obsidian
#

yeah didn't you want to make the app icon background customizable

ornate quiver
#

ye

deep mulch
ornate quiver
frosty obsidian
deep mulch
#

let me husk

frosty obsidian
#

nop

dense sand
#

is there anyone who used s3 client(for minio specifically), is there any way to attach "metadata" to the file? in javascript, preferrably with bun s3

ornate quiver
#

enough husking

deep mulch
#

nini

ornate quiver
#

nini

hoary sluice
#

@formal belfry is this real mantikafasi

jade stone
ornate quiver
#

mantika alt

runic sundial
#

this is a new one

#

STACK

#

SMASHING

#

devilish FIENDS

#

Do I SERIOUSLY need to handle this edge case

#

brug

hoary sluice
#

the compiler people love giving funny names to mundane errors

fleet cedar
#

More commonly called buffer overflow

runic sundial
#

oh i know what it is

#

and why it's happening

fleet cedar
#

Guess it gets a cooler name since it's more dangerous than a heap buffer overflow?

runic sundial
#

It's because I'm shrinking the size of this struct as an LLVM pass

fleet cedar
#

Since the memory layout is more predictable

runic sundial
#

glue-on-roach

#

Needed this 💎

#

to fix an issue where the IR

#

Would just

#

"Lmao, skip the GEP"

#

"Faster this way idk"

ornate quiver
#

new ff profile, .desktop entry that launches spotify.com in that ff profile in kiosk mode in a new window, then unfullscreens it via hyprland

#

works really well

#

dont have to install native app

#

im gonna switch over to eww from waybar i think

deep mulch
#

love

lavish cloud
deep mulch
#

insane

lavish cloud
# runic sundial why

Because then I can rewrite my interpreter/compiler in Kotlin (blessed) instead of python

runic sundial
#

Like

#

LLVM is in C++

#

You're going to write, JNI, for that?

#

Handling the fucking nightmare tier of nested pointers?

#

Auto gen bindings? Sure.

#

Any form of fluency?

#

k

#

not happening

#

Just use a native lang

#

Rust or Cpp whatever

#

Tidy

deep mulch
lavish cloud
#

Honestly if knative got CPP interop I'd be more than happy

lavish cloud
dense sand
#

@runic sundial your c++ looks fancy

hoary sluice
lavish cloud
#

I'd rather become a webdev despairL

hoary sluice
#

you need to jump

lavish cloud
#

I tried rust and quit

hoary sluice
#

you can use rust for webdev

lavish cloud
#

You're making it worse

hoary sluice
#

it was never bad

dawn ledge
placid cape
#

like kotlin multiplatform

placid cape
frosty obsidian
#

not enough to make a language

#

unfortunately

#

but its most of the way there

placid cape
#

you can create your own :D

hoary sluice
placid cape
#

@valid jetty when linter for elle?

placid cape
lavish cloud
formal belfry
#

state saving / restoration

spark tiger
#

do y’all think he likes dynamic arrays?

spark tiger
#

yet another js bundler released

jade stone
#

guys its blazing fast

#

did you know its blazing fast ™️

#

they got an AI chatbot
husk1husk2
husk3husk4

spark tiger
# jade stone

LMAO THEY PUT THEMSELVES INTO “WHO IS USING” SECTION

placid cape
#

when new runtime 😦

jade stone
placid cape
#

bun does a great job ig blobcatcozy

#

still isn't fully compatible but a lot of things work

#

idk about deno

#

but deno literally broke their initial goal by implementing npm and node support husk

jade stone
ornate quiver
#

@deep mulch @royal nymph could you guys take a quick look to make sure i didnt do something stupid

jade stone
#

lol they dont even say it toll

#

yop

spark tiger
jade stone
#

missing quite a few things

placid cape
#

I don't know what's the trend but

#

Why the fuck are runtimes bundling sqlite ?????

#

Are they playing "who's the biggest bloatware" competition?

jade stone
placid cape
#

But the thing is that it's not..

jade stone
#

eh

#

who knows then

ornate quiver
#

sqlite is pretty lightweight and suuuuper useful
in a sense it might be bloat for 99% of apps but you could say the same for the rest of the stdlib...

frosty obsidian
#

the entire node ecosystem is full of bloat anyways

jade stone
#

tbh i cant be bothered to learn sql

#

ill just use some orm

spark tiger
#

lc.g orm

visual shellBOT
jade stone
#

tl;dr use some sane API instead of writing sql

placid cape
jade stone
#

guh?????? why did discord just mark every message in this server as read

placid cape
#

it's unnecessary to bundle sqlite into runtime, it can be an external dependency

#

by this logic we don't need npm and we can bundle everything to runtime

jade stone
#

node and deno so sane

placid cape
jade stone
#

this seems like a neat feature tho

spark tiger
placid cape
#

runtime should only contain engine to run the js and modules for interacting with the os

frosty obsidian
#

sqlite is probably built in because unlike other databases, it only exists as a library

jade stone
dense sand
frosty obsidian
#

and it being written in C adds challenges for third party library devs

#

possible certainly but not easily

jade stone
#

tbh i might start using bun for some things

#

looks neat

#

but also so husk

spark tiger
#

what is bun used for

jade stone
nimble bone
spark tiger
#

why’s it hidden

jade stone
spark tiger
#

nah i mean like is it some plugin or

jade stone
#

vp hide media

elder yarrowBOT
formal belfry
#

rust rust rust rust rust rust rust rust

formal belfry
ionic lake
formal belfry
#

man...

#

github is a great website

dawn ledge
#

is that githubs fault tho?

formal belfry
#

yes

placid cape
lavish cloud
#

Gm

spark tiger
#

i just saw it on hn

hoary sluice
#

@valid jetty should i absolutely never use unwrap in prod or is this acceptable

impl From<&str> for Command {
    fn from(s: &str) -> Self {
        match s.to_lowercase().trim() {
            "AC" => Self::Cancel,
            "AI" => Self::StartRecording,
            "AT" => Self::StopRecording,
            x if x.starts_with("C") => Command::Config(x.strip_prefix("C").unwrap().to_owned()),
            other => Command::Unknown(other.to_string()),
        }
    }
}
fleet cedar
#

if-let-guards when

x if let Some(x) = x.strip_prefix('C') => Command::Config(x.to_owned())
hoary sluice
fleet cedar
#

"Soon" as in "open since 2018 with little news"

jade stone
#

Tokyo night variant

hoary sluice
#

evil

dawn ledge
hoary sluice
jade stone
#

Rust confuses me. I want to learn it, but I still haven't found a good explanation for borrowing

#

I will learn it sometime in the future blobcatcozy

hoary sluice
jade stone
#

(Also the build times suck ass lol)

hoary sluice
jade stone
hoary sluice
#

giant skull emoji

hoary sluice
#

build after clean takes around 3 minutes for me

#

normal build takes a second

#

project isnt that big tho

dawn ledge
fleet cedar
#

References are domesticated pointers

hoary sluice
hoary sluice
#

no clean

#

debug build

valid jetty
jade stone
valid jetty
#

there should never be a case where you panic with no reason

hoary sluice
#

debug build

hoary sluice
hoary sluice
jade stone
#

toll

In my experience, rust builds take anywhere from 5-30 minutes for small - largeish projects

valid jetty
#

elle takes about 30 seconds to do a clean debug build

hoary sluice
#

whats a small - largeish project

valid jetty
#

@hoary sluice you should try to build elle

hoary sluice
hoary sluice
valid jetty
valid jetty
hoary sluice
valid jetty
#

and the size of the target folder?

hoary sluice
#

i didnt push any of the models

#

1.8g

#

elle takes 4 seconds

#

debug

valid jetty
#

and release?

hoary sluice
#

release takes 9.44s

valid jetty
#

wtf

hoary sluice
#

i mean your only dep is levenshtein

valid jetty
#

yeah

#

16k lines of pure rust code with only rust’s stdlib

#

and levenshtein is a single 60 line file lmao

hoary sluice
valid jetty
#

i could embed it straight into the repo and then build with rustc instead of cargo tbh

hoary sluice
#

icps takes 0.87s/2.3s after clean

hoary sluice
#

@valid jetty do u use gay indents

valid jetty
#

not really

hoary sluice
#

@valid jetty how do i run 'cargo run' by pressing a keybind

valid jetty
#

nnoremap?

hoary sluice
#

in zed

#

i figured it out now

#

@valid jetty press alt shift t, type echo hello and press alt enter

dawn ledge
#

rust is getting the nodejs treatment
500 deps for a simple function

hoary sluice
#

do u see any output

hoary sluice
dawn ledge
#

sure

hoary sluice
#
[dependencies]
async-trait = "0.1.87"
bytes = "1.10.1"
config = "0.15.9"
cpal = "0.15.3"
directories = "6.0.0"
futures = "0.3.31"
futures-util = "0.3.31"
hound = "3.5.1"
notify-rust = "4.11.5"
regex = "1.11.1"
serde = { version = "1.0.219", features = ["derive"] }
serde_json = "1.0.140"
thiserror = "2.0.12"
tokio = { version = "1.44.0", features = [
    "fs",
    "io-util",
    "macros",
    "rt-multi-thread",
    "sync",
    "net",
    "time",
] }
tokio-tungstenite = "0.26.2"
reqwest = { version = "0.12.12", features = ["json", "stream"] }
url = "2.5.4"
whisper-rs = "0.14.2"
#

these have their own deps

dawn ledge
#

the largest rust project ive compiled is zed on linux
they had 2k

hoary sluice
#

compiling zed requires shutting down everything and going outside for an hour

dawn ledge
#

i always no_default_features = True my deps

#

was half an hour for me but true

#

had to touch gr*ss

fleet cedar
#

Gross

hoary sluice
#

gruzmother

placid cape
placid cape
dawn ledge
#

comparing compile times accross different languages is kinda dumb

#

not all function the same

#

go doesnt do borrow checking

spark tiger
#

i mean if we ain't building it from scratch w/ all the dependencies

formal belfry
#

why is it so indented

#

reveal that fn right now 🔥

hoary sluice
#

voice backetd

formal belfry
#

rust

#

i haev a 20thousnad line divine compiler

#

the difference between a professional and an amateur is that you write your own compiler

fleet cedar
#

I'm more of a decompiler fan

formal belfry
#

why is it 90% if/else statements 😭

spark tiger
formal belfry
#

🗣️

fleet cedar
#

Is this like, c

formal belfry
#

no

#

its holy c

fleet cedar
#

Cursed

formal belfry
#

almost 10k loc

placid cape
#

just saying

formal belfry
hoary sluice
formal belfry
#

no

#

terry davis opinion on minecraft

formal belfry
frosty obsidian
#

insane

placid cape
ornate quiver
#

fireship slop

hoary sluice
#

@valid jetty notice whats wrong?

valid jetty
#

loveeeeeeeeeeee

#

to_lowercase -> matches uppercase characters

#

intelligent

hoary sluice
ornate quiver
#

wait why does strip_prefix return a result????

#

huh

hoary sluice
#

its cause rust doesnt want unpredictable stuff

ornate quiver
#

guh??

hoary sluice
#

a function shouldnt either do something or do nothing without you knowing

ornate quiver
#

whats the error type

hoary sluice
#

its an option

valid jetty
#

you .to_lowercase it

#

it can never match AC or AI or AT or C

#

because thats uppercase

royal nymph
#

fireslop

#

slopship

hoary sluice
#

i alr fixed tne lowercase thing

#

rosie you need sleep

torn seal
nimble bone
#

@solid gazelleship

#

fres will make js youtube channel named Fresship

spark tiger
#

wtf is this microsoft slop in my discord devtools isob

#

i literally just pressed ctrl c

#

why did it appear

spark tiger
#

chat is this real

lavish frigate
#

Real sadly

atomic brook
#

So i can finally just get autocompletion from lsp without waiting for an eternity?

valid jetty
dense sand
#

im thinking of sending gc to waste in my jvm and just letting the user manage their objects on their own

#

not sure how good of an idea it is tho

atomic brook
#

Java user will never manage their memory

valid jetty
#

people make it sound more complicated than it is

fleet cedar
#

Writing a gc isn't hard yeah

#

Writing a good, efficient one,

valid jetty
#

@dense sand if you want i can write a basic gc in C and litter it with comments so you can understand how it works

valid jetty
#

however if your plan is a generational allocator with multithreading then it becomes a lot harder

dense sand
valid jetty
#

hm

#

what does your heap look like

#

if your heap has an alloc and free method then the gc should derive easily from there

dense sand
valid jetty
#

when you run the marking algorithm and that segment is not marked

formal belfry
#

💀

deep mulch
#

@valid jetty hiii

fleet cedar
valid jetty
#

@dense sand naive impl

// assuming allocator contains a typical dynamic array of Regions with buf len cap
// where a Region is a struct that holds a size, buffer, and marked bool
void collect(Allocator *allocator) {
    // unmark all regions
    for (int i = 0; i < allocator.regions.count; ++i) {
        allocator.regions.elements[i].marked = false;
    }

    // mark reachable regions
    // youll have to define these roots manually based on what youre doing in your jvm thing
    // if it was just a basic gc for a language you would put the top and bottom of the stack here
    mark(allocator.start, allocator.end);

    // free unreachable regions
    for (int i = 0; i < allocator.regions.count; ++i) {
        if (!allocator.regions.elements[i].marked) free(remove_element(allocator.regions, i));
    }
}
#
// takes an arbitrary allocator and the start and end of the region to scan for pointers on our heap
// this is a seperate function from the collection itself because the simplest way to do this is recursive
void mark_thingies(Allocator *allocator, const uintptr_t *start, const uintptr_t *end) {
    // get a mutable copy of the ptr so you can add to it
    uintptr_t *current = (uintptr *)start;

    while current < end {
        uintptr_t ptr = *current;
        
        // basic restrictions to skip over pointers which are obviously invalid
        if (ptr != NULL && ptr % sizeof(uintptr_t) == 0 && ptr > 0x10000) {
            // check if ptr is within our heap
            for (int i = 0; i < allocator.regions.count; ++i) {
                Region *region = allocator.regions.elements[i];
                if (region.buffer < ptr && ptr < region.buffer + region.size) {
                    // mark region and then recursively call the marking function for this buffer
                    // the simplest way to think about this is: you allocate struct A, and that has struct B inside
                    // the only place where struct B will be reachable is through A, so it shouldnt be freed until A is freed
                    region.marked = true;
                    mark(allocator, (const uintptr_t *)region.buffer, (const uintptr_t *)(region.buffer + region.size));
                }
            }
        }

        current += 1; // ptr arithmetic, adds on sizeof(uintptr_t)
    }
}
#
void *alloc(Allocator *allocator, int size) {
    // collect if too big
    if (allocator.total_size + size > allocator.threshold) {
        collect(allocator);
    }

    // add to the list of regions
    self.total_size += size;
    Region *region = new_region(size);
    push_element(allocator.regions, region);

    return region.buffer;
}
#

idk how your heap is set out but if its one big continous buffer you can just iterate by pointer size through it until the index is bigger than the pointer youre searching for

#

and then to free you add that region to a freelist instead

valid jetty
#

ie (in a systems gc), the stack, static variables/fields, etc

ornate quiver
#

@dense sand what if you just make everything rc

jade stone
#

INSANE

spark tiger
jade stone
formal belfry
#

is that the github app? looks like a commit

spark tiger
#

i asked it to move the button to the left and it just did display: none

formal belfry
#

oh : ) xDD

formal belfry
#

llms like enforcing their own agenda more than yours

#

dont trust them

spark tiger
#

FUCKING WHAT

formal belfry
#

its struggling with css and html thats not a good look

#

css and html are so basic : )

spark tiger
#

my teacher deadass told me to use react for my small site for school project

austere anchor
valid jetty
#

gives you an approximate range of the stack by taking their difference

#

and then you use that as your initial mark

austere anchor
#

actually this is a gc so a heap but

valid jetty
#

iters by ptr width

#

then the things it finds are also recursively scanned

austere anchor
#

how does it know whether or not the thing it's currently looking at was not already unused?

valid jetty
#

wdym

austere anchor
#

like it finds a match right

#

and it marks it

#

but like

#

how does it know that "match" isn't just an already-inaccessible pointer that just happened to be in memory at that time

#

basically why does it not just mark everything thus becoming useless

formal belfry
# spark tiger FUCKING WHAT

I tried copilot for a bit and it made me realize how crucial actually researching and asking around is for learning

valid jetty
#

if the pointer lasts maybe 1 extra collection because it just happens to survive thats not relevant thats an implementation detail of the stack on unix systems

jade stone
#

i use the tabout plugin in all my editors, and it takes over it

#

so instead of tabbing out, i autocomplete some random, broken shit

#

however, the chat can be nice from time to time

hoary sluice
hoary sluice
hoary sluice
#

i can get behind asking a chat llm for debugging help

formal belfry
#

llms mid

#

if u ask an llm what 1+2 is, it will do a backflip and tell you its 4 because of ... and ...

spark tiger
#

might be a cursor bug or smth

hoary sluice
lavish frigate
# spark tiger ?

i have a full paragraph of rules on cursor for it to work pretty well

formal belfry
#

what 💀 u can give it rules

lavish frigate
#

yes

#

stuff like "dont unnecessarily try to add more packages" "avoid overuse of comments" etc

formal belfry
#

havent u seen that study where it says ai likes to force its own agenda 60% of the time or smthing

#

rules aint going to do nothing

placid cape
#

We're getting typescript in go Oh there's already a talk about it

spark tiger
#

i cba to do webdev

formal belfry
lavish frigate
formal belfry
#

microsoft engineers are such noobs

placid cape
formal belfry
#

is it not its own ai text editor?

spark tiger
lavish frigate
formal belfry
#

god

#

what is default 💀

lavish frigate
#

claude 3.5

formal belfry
#

they got the whole stack of ai on there that is crazy

lavish frigate
#

ah i am not sure what that is

hoary sluice
lavish frigate
#

thought there are a bunch of models in the settings

formal belfry
#

agent

#

they are calling ai "agents" now

lavish frigate
lavish frigate
formal belfry
#

can an ai make a kernel

formal belfry
#

🔥

lavish frigate
#

once you hit the limit on a paid account you are put into the "slow" queue where it may take longer to get a response

formal belfry
#

monthly quota 💀

#

can an ai make a 20,000 line divine compiler

#

what abiout a wayland compositor

lavish frigate
formal belfry
#

dont enable that lol

#

sus mode

#

we are in the age of ai... and we cant stop it

#

star wars is such a great series to watch

hoary sluice
#

@placid cape do u have wake word detecion yet

#

and async recording

#

im thinking about permanently recording and making a ring buffer so when you press play the start index is set and when you press play it returns the audio between the start and stop index and there a limit of 10 minutes per recording cause i dont think anyones gonna be talking to a voice assistant for 10 minutes

#

this way you can have multiple clients using a local recorder

#

doesnt really make sense but allows for it to share the same microservice trait as a remote recorder

#

it ends up using 38.4 MB

placid cape
#

there's also microwakeword which is probably better for you

hoary sluice
#

they have rust bindings

placid cape
#

didn't know about this one 🤔

#

looks good

hoary sluice
#

@valid jetty is allocating 3.84 MB on the stack a good idea

#

my stack size is 16MiB

valid jetty
#

what do you wanna put in there

hoary sluice
#

a ringbuffer with 1 minute of 16k recording

#

altho i just found out that the stack is only really faster for allocation not for reading of big data

valid jetty
#

yeah ^

#

i was gonna say

hoary sluice
#

man i love writing async wrappers for inherently sync code

#

(hate)

valid jetty
hoary sluice
fleet cedar
#

That sounds like a bad idea

dense sand
hoary sluice
# fleet cedar That sounds like a bad idea

i need to put a sync recorder (cpal::Stream) into an async function because the microservice trait is async and there needs to be an implementation of it which uses websockets and records audio on a remote host, and i think id rather make something thats inherently not async into async than the other way around

fleet cedar
#

Perhaps confusingly, the Sync trait has very little to do with async

hoary sluice
#
struct SingleThreaded<T>(T);
unsafe impl<T> Sync for SingleThreaded<T> {}
unsafe impl<T> Send for SingleThreaded<T> {}
fleet cedar
#

Have you considered using spawn_local instead

#

Or the corresponding function on whatever runtime you use

hoary sluice
#

the cpal::Stream is inside the &self which is passed to an async function

fleet cedar
#

Types that are !Sync can, by definition, not be accessed from multiple threads

#

Doing so anyway is ub

#

(Other than raw pointers and UnsafeCell, where the !Sync is just erring on the side of caution)

hoary sluice
#

its just inside &self

#

it records into a ringbuffer which is then read from

fleet cedar
#

Then split it up so you only pass the parts you need into the async fn

hoary sluice
#

if i can figure out how to do that

#

but chatgpt can!!

#

one struct has a producer for the ringbuffer and another has a consumer and is also Send + Sync

formal belfry
#

chatgpt cant

fleet cedar
#

I would not trust chatgpt with unsafe

formal belfry
hoary sluice
#

also its not like im blindly copying it

valid jetty
#

what the fuck was i writing in aoc LMAOOOO

#

huuusk

#

i fell off so hard theres no way i can do this now

fleet cedar
#

Which day is that?

valid jetty
#

first ss is day 20

#

second is day 24

fleet cedar
#

For 2024?

valid jetty
valid jetty
#

holy fucking shit

formal belfry
#

what is that syntax highlighting

valid jetty
#

its github with an arc boost

#

this is the most cursed python code ive ever written i feel

import sys

def can_fit(ls, ks):
    return not any(l == '#' and k == '#'
        for lr, kr in zip(ls, ks)
        for l, k in zip(lr, kr))

def solve(c):
    check = lambda i: [b.split('\n') for b in c.split('\n\n') if all(c == '#' for c in b.split('\n')[i])]
    ls = check(0)
    ks = check(-1)
    return sum(1 for l in ls for k in ks if can_fit(l, k))

with open(sys.argv[1]) as f:
    print(solve(f.read()))
``` lmao
#

concise but at what cost

fleet cedar
#

But don't ask me to explain the code

valid jetty
hoary sluice
fleet cedar
#

The nested keypad one? ||```py
import functools as F
@F.cache
def G(s,N,B,H):
if-1==N:return 1
o=0;A=N-1,' ^A<v>',0
for c in zip('A'+s,s+'A'):p,P=map(B.find,c);x=P%3-p%3;x='>'x+'<'-x;y=P//3-p//3;y='v'y+'^'-y;o+=min([G(x+y,*A)][:P%3 or p//3!=H]+[G(y+x,*A)][:p%3 or P//3!=H])
return o
for N in 3,26:print(sum(int(k:=i[:-2])*G(k,N,'789456123 0A',3)for i in open("21.in")))

hoary sluice
#

lmao

#

i decided to keep mine at least a little readable cause its not meant to be golf

fleet cedar
#

Oh yes it is

hoary sluice
#

my repo isnt

placid cape
#

I remember it

valid jetty
#

yeah i know lol

#

it took me almost 2 hours to do that

placid cape
#

Yeah it was hard

valid jetty
#

1h46 and still got top 500 is crazy

placid cape
#

100th is 1h 1min 13s

#

oh I need to fix the "Showing stars for the year 2025"

#

I should start working on aoc again if I want to finish all years before this year

hoary sluice
#

this time im actually close

lavish frigate
#

why not rust is an understandable question but why not CSHARP?!?!??!

deep mulch
winged mantle
lavish cloud
hoary sluice
valid jetty
#

go is pretty sane

#

still garbage collected which means code is more concise and you have less of a risk of memory leaks but you can do a lot more things in parallel and its a lot faster than in javascript

#

a lot of things from checker.ts look like 1:1 translations of the js version and its still 10x faster

#

without any dedicated optimizations

#

so take that as you will

placid cape
#

it's a totally different language

valid jetty
#

lmaoooo

#

professional idiot

placid cape
dawn ledge
lavish cloud
unkempt shuttle
#

haha awesome

lavish cloud
fleet cedar
#

Mine would be rust and python, with a dozen single-percents

dawn ledge
#

chat

#

should i get into lang dev

#

i would love a zig + rust

unkempt shuttle
#

yeah do it

#

there's a channel for this in the rust discord server

#

have fun

dawn ledge
#

alright
another thing in my endless tasklist

placid cape
#

i hate that day has only 24 hours

dawn ledge
#

so TRUE

hoary sluice
#

this has been a thing for years why am i only now finding out abouti

#

it

unkempt shuttle
#

yeah it's been around for a long time

#

sillly

placid cape
#

Rust community ís insane

supple whale
#

doom 2016 and ethernal supports full vulkan

#

so i can raw-dog it on vulkan and run it on ultra at like 60fps

#

ghostrunner is like 40-50 fps

#

crysis 3 remastered is like 40-60 fps

#

most unity games run like shit tho, but unity can be ported to android with one click, most developers just dont do it

hoary sluice
#

@valid jetty @fleet cedar on a scale of 10 to 10 how horror is thishttps://github.com/eagely/voice-backend/blob/main/src/service/recording/local_recorder.rs

GitHub

Backend for my voice assistant diploma thesis. Contribute to eagely/voice-backend development by creating an account on GitHub.

#

tomorrow im gonna try again to make it safe

fleet cedar
#

.map(|n| n == device_name).unwrap_or(false).is_some_and(|n| n == device_name)

hoary sluice
#

ignore the eprintln

fleet cedar
#

And ```rs
pub struct UnsafeSendSync<T>(pub T);
unsafe impl<T> Sync for UnsafeSendSync<T> {}
unsafe impl<T> Send for UnsafeSendSync<T> {}

![husk1](https://cdn.discordapp.com/emojis/1311092203829067816.webp?size=128 "husk1")![husk2](https://cdn.discordapp.com/emojis/1311092218349621338.webp?size=128 "husk2")
![husk3](https://cdn.discordapp.com/emojis/1311092233520287765.webp?size=128 "husk3")![husk4](https://cdn.discordapp.com/emojis/1311092246405447801.webp?size=128 "husk4")
hoary sluice
#

i know

#

and i kinda dont care anymore

#

i spent like 4 hours trying to find another way

fleet cedar
#

Why not create the stream on the thread it lives in

hoary sluice
fleet cedar
#

What does that have to do with which thread creates it

hoary sluice
#

it doesnt rn but thats a problem for tomorrow

hoary sluice
#

i tried doing that

#

kinda

#

and thats what im planning on doing in the end

#

the good thing is now i have at least another 5 pages of content in the thesis

jade stone
#

reading the node ESM and CJS docs for fun blobcatcozy

formal belfry
#

its growing up rigyht before my eyes

#

🥺

#

1337

#

my divine kernel is 11337 loc, rightfully so

#

elite haxorrrr

#

im hacking the matrix

static ibex
formal belfry
#

gud

#

shit

mild yoke
#

We're so back

formal belfry
#

xD

#

chatgpt moment

royal nymph
#

the code is ai generated too lmao