[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
▼ Settings Mobile Home
/g/ - Technology

Name
Options
Comment
Verification
4chan Pass users can bypass this verification. [Learn More] [Login]
File
  • Please read the Rules and FAQ before posting.
  • You may highlight syntax and preserve whitespace by using [code] tags.

08/21/20New boards added: /vrpg/, /vmg/, /vst/ and /vm/
05/04/17New trial board added: /bant/ - International/Random
10/04/16New board for 4chan Pass users: /vip/ - Very Important Posts
[Hide] [Show All]


[Advertise on 4chan]


File: 4maids-11.png (562 KB, 850x820)
562 KB PNG
What are you maids working on?

Last thread: >>109992750
>>
>>110023625
Work is taking away my motivation to work on any side projects.
>>
I really enjoy the maids aspect of the threads. I want to keep this going. I'm a cute maid myself. I think that shows in my code - it shows my cuteness.

Recently I made this simple library of functions for plotting 'graphics' in the terminal with ansi control codes. It's a good bit of fun
>>
Is this the 'no AI' general?
>>
>>110023736
if you have something interesting to say, say it
if its just regurgitating pr known to be false, keep walking

half of this general uses ai in one way or another but this is the thread to talk about skills
not advertisement, or hype

but were not rude to actual anti ai people, i guess
some people really do program for the love of it
>>
>>110023768
fuck off with your "skills" wanking, this is a thread for people to share projects and things that they're working on, coding and writing, and talking about programming in general, whether or not AI is involved. fuck off out of here with your obnoxious e-penis ruler. you remind me of the kid at school who'd stand next to the other boys at the urinals and try to look at their dicks
>>
File: months-4.png (28 KB, 965x87)
28 KB PNG
>>110023789
have you seen vcg?
i do lurk there bc i count on them to be an aggregate of news concerning vibeshittery

its a fucking marketingfest interspersed with projects that take months
i assumed i was talking to one of them
>>
>maidnigger hijacks and ruins yet another thread with his schizo delusion
why can't you just fuck off to some trooncord or groom children in your local park or playground
>>
File: talkingtoamaid.png (422 KB, 980x868)
422 KB PNG
>>110023728
>I'm cute
No the fuck you're not.
>>
>>110023866
at least xir has cool legos
>>
>>110023887
lewd handholing with the legos (uwu)
>>
File: fixed.png (267 KB, 980x1250)
267 KB PNG
>>110023866
We are all cute maids here, newmaid.
>>
Why are pure functions so satisfying?
>>
>>110023950
im not a maid, asswipe
>>
Red pill me on Go.
Is it worth learning, is the dependency management and static binaries worth it?

In before Google, as if Bell Labs and Unix was any less jewish.
>>
>>110024002
If you're like
>luv me some C, hate me some free()
then sure, go ahead. Otherwise a fucking waste of time.
>>
>>110023979
Nobody wants used up state
>>
>>110023809
I think they're just retarded over there. If you know what you're doing, vibeshitting a TTS app shouldn't take months. They probably forgot to make sure the clanker tests shit properly, and now they're crying. Their fucking fault of not gating the clanker with clean lints, tests and benchmarks and doing mutations so it doesn't write dumb `true == true` tests.

Why would one waste time talking to people who wouldn't have known how to code themselves out of a wet paper bag if you took LLMs from them?
>>
>>110023950
You are a disgusting pedophile.
>>
>>110023836
Single scissors are not gay. Everybody running with them like retards is. Or putting them away somewhere, forgetting you've done that, then stepping on them months down the line and needing your leg amputated. That's pretty gay, if you ask me.

I'm using a fucking compiler so it can tell me when I'm being retarded, instead of letting myself blow off my face just because I have too much ADHD. There's a reason people wrote C instead of still keeping track of register allocation and calling conventions manually. I'm just following that to the ultimate conclusion of offloading as many guardrails against my retardation on the clanker (deterministic) as I can.
>>
>>110024125
obsessed
>>
>>110024085
eww, imagine talking to them
no, i just monitor the situation
but theyre also kinda worthless to be quite honest
last time i looked one of them was discussing his playthrough of a gacha game
hopefully it was at least somewhat ai related

>>110024126
thats a way of seeing things
i would also think this way if i didnt deem that the cost to have that is too great for the improvements offered
also bc i have something like only 30 klocs of code to get right
its only perf critical, not security critical
not internet facing
not anything, just endpoint program
actually, also involves firmware etc
but its its just notmyproblem(tm)

so yeah, this is well manageable
i dont need any bells and whistles at this scale
im not writing 1Mloc frameworks

even though
still
id say rust is just fucking undercooked
all the information you need to ascertain the correctness of a program can be read from c-style syntax
you dont need 36.000 annotations and type systems and other assorted thingamajigs
if your language needs em, that means its a beta and needs to be yet refined
>>
>>110024225
Right, I'm not saying it's impossible to write correct code without offloading all those guardrails on the compiler, it's just more effort and mental overhead. Which I fucking hate. I went into computers to solve problems once and then have the clanker to keep solving them for me. It's also why I use NixOS. Yes, it's more effort up front, but then I fucking don't have to worry about shit anymore. Of course YMMV, but it's why I like bondage & discipline in programming. I know I'm not an ubermensch who can preternaturally avoid segfaults, I'm just a shmuck with a bit more IQ than average.

>if your language needs em, that means its a beta and needs to be yet refined
See, this is why Carol is structural and welded to its IDE — you can't hide unnecessary shit with a text-based language as easily. Because I do think those "type systems and other assorted thingamajigs" are needed, but having them in your face with a shitload of syntactical noise is also not the way.
>>
>>110024310
>Of course YMMV
you mean YMM5
this is why we need compilers
>>
>>110024355
see, now you're thinking with portals

well played xD
>>
>>110024310
iunno, man
its all tradeoffs
between high performance languages its just moving complexity/difficulty around

like- OOB/segfaults.
ok. but also you already do your pointer arithmetic during the design stage, so its not something on top of what youre already doing to be oob-free
whats left? ub?
ub is contrived as fuck, i never have to think about it and i do use c in quite hacky ways sometimes
then threading? the sop is usually to cut up your workload and work with thread-local buffers so that you dont need synchronization mechanisms, or at least limit them

async may tricky because youre building from the ground up
and i wont discount it
but yeah, tradeoffs
when it comes to low level hacky shit where the user knows what they want c is quite frigging good
it just gets out of the way + has the simplicity of a hammer, so gets out of the way cognitively too

>Carol
watisdat? first time i heard
>>
>>110024126
You would love Rust.
>>
File: 20261010_02h03m32s_grim.png (213 KB, 1920x1080)
213 KB PNG
>>110024430
I mean, I don't hate C. It's okay. Sure, the language itself is simple. But it also was designed in a time when computers were slow and every byte and instruction counted and that directly affected how "helpful" the language and the compiler could be. So I have to remember a lot of shit the computer couldn't for me back then. But we're not living in the 70s anymore, so I'd prefer something which gets the load off me.

>watisdat? first time i heard
Muh language. Posted it a bit these last few threads. TL;DR is what if you could have a language that lets you scale abstraction from machine code to high-level low-code-like graphical representations and back down again in the same language? If you could show some domain expert some visualisation speaking their language, they give you "okay" and you can trust that your implementation is correct, because proofs between the layers of abstraction ensure it? I wanted to write something like this for over a decade, but it wasn't really tractable for a single shmuck without LLMs. And people wouldn't want to have to deal with the shitload of required proofs without LLMs either. But now we have them clankers, so I'm trying to see if such a language would be viable or not. You probably won't be able to write a bootloader in it (though I'm keeping in mind a proof-language-like program extraction for such use-cases), but games and general systems programming should be in scope. The picrel is IDE mockup, I'm still mostly focused on getting the base implementation right.
>>
>>110024441
Yeah, I kinda like it. Getting an intuition for how to work with the borrow checker instead of against it is a bitch, but otherwise it has a lot of features I'd have liked out of a systems programming language. Shame it won't ever get proper HKTs, tho.

Unless you mean it as insult, in which case *shrug*, I still have my dick attached.
>>
>>110024592
No insult. I love Rust too.
>>
>>110024568
youre kinda starting with the ass end of things
you should set your design parameters in stone before you get hyped with mock ups
in other words: how its actually supposed to work
its kinda the equivalent of making the logo to be honest
>>
>>110024714
I did say
>I'm still mostly focused on getting the base implementation right
though. I've had the idea for over a decade and I've been making various prototypes for over half a year. So I do have a bit of an idea on how it should work*, not only fancy mockups, that I've only really started doing now —with the language being structural/graphical-first and enough of the compiler/elaborator, codebase store and runtime/VM done that it can run some simple programs, it kind of makes sense to start doing the mockups to figure out a roadmap that connects the two and proritise tasks based on that. Not doing them is like saying you can make a vertical slice of a game without a single concept art. Also, it kind of motivates a bit, when you can finally see what you're building towards xD

Also
>you should set your design parameters in stone
is not 100% possible head of time for what I'm doing, because a) a lot of this is complex shit I only vaguely understand and have to explore, b) at least some things I need are still open research problems (e.g. incremental typechecking with dependent types) xD But I am trying to structure things in a way that I can build towards them incrementally.

So, I get what you're saying, but I'm not THAT retarded. I think? Hopefully? xD

* — for example, the abstraction towers is supposed to be something called Bancilhon-Spyratos lenses that allow you to put things to the side as a "complement" when you're going down the abstraction levels, e.g. loop to it's assembly, and then put it back when you're going up, e.g. when debugging and applying that consistently for everything in language is supposed to make all the abstractions composable. I have also made sure that there is a way forward without rebuilding everything if I need something those particular lenses don't support (a structural edit needs to affect the complement, or when concurrent edits need merging).
>>
I use C because I like shooting myself in the foot. Think about it, what have your feet ever done for you? They carry you to places where painful memories are accumulated, and that's it! Feet are a parasite, nature is laughing at you. If you had any self-respect you would use C with "-Ofast -fdelete-null-pointer-checks -flto --no-warnings" and shoot that shit-eating grin off your feet's arrogant faces.
>>
elixir is such a weird programming language brah.
i miss javascript.
>>
>>110025024
Which part? The Erlang part, Clojure part or Ruby part?
>>
>>110025035
The Erlang part I'm assuming.
>>
>>110024947
C++ is the footguns language. C is simple and easy.
>>
File: maidcard.png (163 KB, 1320x1208)
163 KB PNG
>>110023707
>Work is taking away my motivation to work on any side projects.
really? most of my actual work is just prompting. ai took a lot of my motivation away when I realized most of the fun projects I want to do are just a single prompt. but I feel like a lot of the pure knowledge stuff is still fun and interesting now.
>>
>>110024947
Sounds like you lost your feet to the diabeetus and are /coping/.
>>
File: gopher_maid.png (1.91 MB, 1122x1402)
1.91 MB PNG
>>110024002
Well, here's the points that sold me:

1. Typed
2. Simple and Easy to Read
3. Garbage Collected ( no manual memory management )
4. Standard library has everything for Web and Agorithms
5. Not an OOP language
6. Fast compiles

It's definitely more verbose than Python, but once you get the hang of it its pretty natural. You really don't need many ( or any ) packages to do most things. The standard library has web stuff built in. For database stuff you have sqlc.dev which gives you bindings directly for SQL. For web junk I use echo.labstack.com There are some game libs and SDL/opengl bindings too, and they're okay.

The negatives are exacly what you already know probably. It's verbose, and there's lots of manual error handling ( no try catch or throw ) Most of your functions return as a res, err and continue with a if err != nil { handleError() } song and dance. The generics are also dumb, but I don't use them. They do give you nice build in helper things though like slices.Sort or slices.SortFunc that you can use on any slice/array. The last part is the Go Channels and Go Routines which is their concurrency junk. It's not bad, but its not great. As a normie you really don't touch them since if you have to do TCP or Websockets you can just grab a package imho.

Just keep this single website open and its pretty much the only reference you'll ever need:

https://gobyexample.com/
>>
>>110023728
wat os is this. looks comfy
>>
>>110025149
What a coincidence. I was wondering if that car was the one that was supposed to hit me. The one that turned aggressively. And since you already know, the traffic signal was indicating that I had the right of way. The car illegally turned. People do that.
>>
File: file.png (61 KB, 874x305)
61 KB PNG
Very popular. I dunno why I'm hitting these 429s I always politely back off
>>
File: file.png (52 KB, 661x553)
52 KB PNG
Fixed. This is what I'm working on now.
>>
File: file.png (186 KB, 1508x668)
186 KB PNG
>Hyper-literal Talmudic logic
>>
The Talmud is opinion. Literally.
>>
>>110025785
>It's not bad, but its not great
Huh, why? To me it's like the only thing that go had gotten right in all this Rob Pike autism.
>>
my project has gotten big enough to the point where navigating things and just keeping track of whats where takes a mental overhead. I'm losing clarity in what's happening at the elementary level.(800loc)
>>
File: ai maid cuz i cant draw.png (2.01 MB, 1280x720)
2.01 MB PNG
anyone here working with pascal?
i need some help in compiling a delphi project in lazarus- its not a code i wrote myslef, i found it online when i looked for a wrapper for a .dll file
>>
>>110025785
This feels kinda /comfy/.
>>
File: code-gbemu.png (3.44 MB, 1974x5000)
3.44 MB PNG
>>110026944
>(800loc)
Lol.
Kek even.
>>
>>110027181
>nano
I'm not trying to insult you or anything but people really do this?
>>
>>110027241
thanks I gave this picture to an llm and got a rust rewrite out of it
>>
>>110027256
Seems unlikely.
>>
started using
gcc -fanalyzer
a lot more recently and it's kind of wild how different it feels in my head to read deterministic output vs clanker telling me something is wrong. I guess you can make the clanker output more rigid with better prompts but there's still always this "is this even correct?" thought in the back of my head when reading it's output. (goes without saying that the clanker is a lot more effective in finding more abstract issues etc)
>>
What's a good format for debug messages?
>>
>>110027326
>what the fuck?
>what the fuck2?
>what the fuck; %d
>>
>>110027343
for me it's
!!!!!!! here !!!

but I guess that's more printf debugging and cowabunga oriented programming than debug messages
>>
>>110027181
this IS comfy, whats the font?
>>
>>110027241
Did you get the sound fixed? I think this was the last thing I heard you raging about
>>
>>110027250
Nano is all I need.

>>110027393
Ubuntu
https://fonts.google.com/specimen/Ubuntu
>>
>>110027482
No, and right now I am working more on getting my PS3 stuff ready for AoC.
I have seemed to save almost all of the frametime I need to get channel 3 samples generated before the end of the frame, but I still want to do a full overhaul of that.
But what I am working on right now is aligning all the routines so that dual issue works more often and rearranging loads to ensure that I'm not using the register immediately afterward (causes a stall).
Then I want to write a renderer for VPU1 so that I can offload a bunch of CPU time onto that, which may also fix the horizontal bar artifacts.
>>
File: anu-bonk.png (629 KB, 942x886)
629 KB PNG
https://github.com/tbware/anu-b-gone
Exorcise that stupid furry whore from your browser
>>
File: dipsy.webm (2.99 MB, 640x360)
2.99 MB
2.99 MB WEBM
>>110023728
This is very cute! What language is this?

>>110027008
I would help, but I don't know anything about Prolog or Delphi.
>>
>>110027837
>waaaaaaaaaaaaaaah an anime girl
Return to Reddit. There are some heckin updoots for you there.
>>
>>110027859
>Why yes I love every website being slowed down by vibe coded JS slop because it has a waifu logo
>please ask me if I'm a bot again mommy
Bottom behavior.
>>
>>110027879
You are a Redditor.
>>
>>110027898
You don't use ublock and probably watch 30 second ads as a hobby
>>
File: asuna3.jpg (150 KB, 850x583)
150 KB JPG
>>110023625
I am working on porting more of the TempleOS GUI to MAIDS. Once I have windows working, the OS is probably done and at that point just needs bugfixes/performance increases and I can start more seriously on my GOFAI projects. I don't think/know if there is anything else from TempleOS worth porting over for my project.

I am also debating not porting over the GUI, because computers went wrong when they started giving them GUIs. TempleOS has, possibly the best GUI ever built, so it is kind of a toss up. Do I avoid having a GUI, or do I port over the best one?

>>110023728
I really like how this looks. It is very cute <3 <3 <3

What are you going to do with it?

>>110023994
Then why are you wearing a maid outfit and posting in a maid thread on a maid board?

>>110024125
You seem upset. Hopefully this cute maid will help cheer you up!
>>
>>110023625
eli has never written a line of code in his life, he also pretends to be an avide anime watcher but he's only watched English dub. He also wears maid dresses with soiled diapers. Do not interact with him in any manner.
>>
File: miku2.png (343 KB, 1024x1024)
343 KB PNG
>>110028165
>only watched English dub
You should only watch English dubs. Japanese VAs add nothing irreplaceable and reading subtitles means you can't work on something else while the show plays. The only reason to watch the subtitled Japanese version would be if the English one is censored, or had bad localizers who invented lines which weren't there. You don't even have to watch the subtitled version to know if censorship or bad localization happened, because more intense weebs will scream about it and alert you.
>>
>>110028279
Eww.
I didn't expect a maid to have such a bad opinion.
If you need to do other stuff while the show is playing the obvious solution is to learn Japanese.
>>
File: miku.jpg (628 KB, 850x1095)
628 KB JPG
>>110028307
>the obvious solution is to learn Japanese.
I didn't think of this. I should do it, so I can go to Akibahara and see maid cafes and talk to maids and do heart hands. What is the best way to learn Japanese?
>>
>>110024918
ill be honest with you
i struggle to understand why banchilhon-spyratos is even a thing

yes, sure, you dont want to throw away all of the implementation when you change a top-level detail
i dont understand the need to have that formalized.

also things sound like youre more creating a graphical programming interface than a language proper

care to expand on what is an expected abstract view to a hello world, for instance?
because your picrel only shows a data plot. its hardly something special, or even semantics related


>>110028142
>Then why are you wearing a maid outfit and posting in a maid thread on a maid board?
im not wearing your tutu. fuck you

>b-but muh op picrel
dont care. get rekt + pound sand
>>
So do y'all autists still don't understand that any implementation can only ever be as good as its interface, or do I need to start talking about malloc again?
>>
>>110028702
this makes 0 sense to me
explain.
>>
I used to be the world's #1 monad skeptic but Rust made me see the light.
>>
File: even_llms_know_that_one.png (123 KB, 1160x870)
123 KB PNG
>>110028722
You literally could've just copy+pasted the post into google and gotten a proper explanation.
>>
>>110028702
I am never using malloc again when I have arenas
>>
>>110028786
Now you only need to unlock bigger page sizes, too.
>>
>>110028770
I wanted an actual answer and not an AI hallucination, though.
>>
>>110028802
First: it's LLM, not AI, retard.
Second: it's right despite being an LLM.
>>
>>110028770
*rolls eyes so hard the intention bleeds into adjascent parallel dimensions*
sure, but in the end you can be picky about interfaces only when you have alternatives, or youre writing them yourself
its very important but its so generic

>you could have googled it
id rather ask a human
>>
File: 1633500456078.gif (1.84 MB, 245x210)
1.84 MB GIF
>>110028824
>you can be picky about interfaces only when you have alternatives
Yeah, because you totally don't have these on the big fours.

It's getting real tiresome with autists.
>>
File: slav-jak-tired.jpg (32 KB, 500x667)
32 KB JPG
>>110028865
im literally working with one rn. open cl.
spir-v is too low level, cuda is proprietary and vulkan, opengl & co arent exactly designed for compute

all you can do then is write your own abstraction layer
>>
>>110028814
Yeah, there's nothing wrong with malloc's interface.
>>
>>110027854
cute webm
>>
>>110028920
Dude, graphics is fucked beyond ANY repair.
You have vkCreateBuffer and vkCreateImage only ever creating one resource, but then they introduced vkBindBufferMemory2/vkBindImageMemory2 because the fuckers realized that binding memory to resources one call at a time is fucking retarded?

Yeah, no, don't even bother. The best you can do is openly call out graphic vendors in the hopes of shaming them in front of their customers, and then call it a day.
>>
>>110028931
Autism
>>
>>110028968
Na.
The problem is with everything else.
Malloc allocates the requested memory and provides all the metadata required to use it safely, but other functions don't use it.
Malloc's interface is simple and effective. It is better than the implementation behind it.
>>
>it's a struggle to just load a github repo file now
>>
>>110028955
wow. that sounds bad. now i understand better where youre coming from
in opencl at least they tried to keep things as low level as possible so there just isnt that many interfaces they could fuck up. theres no graphics pipeline, you just compile kernels, attach buffers, then enqueue them

but yeah, they kept thins as low level as possible
like- if you want to query a property of a device, you have to literally poll the device for it. theres no higher level machinery with a couple handles you could use to access a god-object
you would have to build something like that yourself. its annoying and redundant, but certainly not as bad as dealing with the complexity of a graphics pipeline, on top of incompetent interfaces...
also why i go with opencl, obv, and not vulkan, or opengl
>>
>>110029012
Wrong.
You can't group allocations together to free them all in one go later, and you can't allocate virtual address space (which is dirt cheap on 64-bit architectures) to avoid copies later on during resizes.

You have no idea what you're even talking about.
>>
>>110029024
The problem isn't keeping things as low-level as possible. In fact, if we already have to pay the costs for a mode switch or a bus transfer, we want to make sure that we get as much shit down as possible.

Which is also why vkBindBufferMemory2/vkBindImageMemory2 doesn't really do much if the driver is so shoddily written that its loop is executing in userspace.
>>
>>110028477
>i dont understand the need to have that formalized
Because otherwise shit's gonna fall apart. You gave to hold all the rules in your head and apply them consistently all the time or things just explode. Or usability is ass, because you don't have a guarantee things compose together (you can find some studies on e.g. MPS saying that was the biggest problem with it). Or both. It's like, why don't people write in assembly anymore? Because ain't nobody want to keep register allocations and calling conventions in their head while programming. Because ain't nobody want to need to care that somebody made different decisions about those in their library. Because it's irrelevant for 99.9% of daily programming and you have to interact with it only very rarely. And the formalism is there so that you don't have a whole new honking programming language each time you want to abstract over some semantics. You take the language you want and extend it with what you need. And the laws and proofs show you whether it works or not. And now that everybody and their dog is putting clankers in their codebases, we increasingly need more automated assurance that whatever clanker had done is correct (hence proofs) and legible (hence composable abstract representations via those laws).

I may also just have autism.

>also things sound like youre more creating a graphical programming interface than a language proper
Both, really. There isn't really a language I can use off the shelf as the target for this "graphical programming interface", so I just had to write my own. There are a few that were "close enough", but would require forking and enough changes, that I might've also written my own from scratch. Also, autism.
>>
File: 20261010_17h08m43s_grim.png (110 KB, 1653x971)
110 KB PNG
>>110028477
>>110029227
>care to expand on what is an expected abstract view to a hello world, for instance?
That'd be boring, you already know all that — IRs, assembly, debugging, profiling. The other direction is more interesting. Say, you see this shit in picrel. Eww low code programming environment for low-skilled retards hired to cut costs, amirite? Except those environments are usually whole separate honking applications and if you want to do something they didn't anticipate, you are usually hosed. Not here. There is some weird problem with delivering messages to finance. You ctrl+click this fucking flowchart node and lo and behold you go to the code defining this task in the flowchart. You ctrl+click the code responsible for sending the messages, click through once or twice and you see it's some fucking minor programming mistake. And you just, like, patch it. And your fucking low-code retards can continue doing their thing without shelling loads of money for an ad-hoc support contract to the low-code devenv supplier. And IMO that won't work without proof and laws ensuring those abstractions and projections compose together. It's already a crapshoot with people sticking to contracts. Clankers are gonna be even worse.
>>
How the hell do I actually start understanding Rust's borrow checker fully? I've been coding in it for 6 years and I can write Rust easily, but ultimately I don't have the kind of deep understanding of the borrow checker that would allow me to speak with confidence if something would be allowed or not by the borrow checker without testing in a case of any complexity. Where are the rules of the borrow checker?
>>
my interpreter is 2x slower than python.
I can't take this anymore
>>
>>110029227
>>110029249
Maybe you're right and it's dumbshit nonsense, but I won't know for sure unless I try and see for myself, so might as well implement it ¯\_(ツ)_/¯
>>
>>110029272
https://craftinginterpreters.com/
>>
>>110029257
>only one mutable OR many immutable references at a time
>functions borrow the entire struct and fuck you over
it's not that hard
>>
>>110029257
Do you know any programmers in real life?
>>
>>110029296
Yeah, right, you forgot at least about variance and lifetime extension. There's probably more shit to get subtly wrong
>>
>>110029018
You ware not kidding, yikes!
>>
>>110029296
It is harder than that. I don't understand what HRTBs really mean, for example. I understand they mean "for any lifetime", but that doesn't mean much to me and I don't know when to use them. So far I've been using HRTBs when it's unclear to me what lifetime should some reference have, and it works, but I don't really understand anything
>>
>>110029227
>Because it's irrelevant for 99.9% of daily programming and you have to interact with it only very rarely.
That's how you get boot times of 15 seconds and more.
>>
>>110029316
>>110029351
great, I know way less than I thought
>>
>>110029351
>HRTBs
Rank really only means how many "for all" quantifiers you range over — so higher rank means you just can add more life time bounds your statement has to hold for all values of. Kind of like a factory functions transforming lifetimes into lifetimes? E.g. if you have a callback and have to say "whatever is the lifetime of the shit that comes into this function, it has to live at least as long as the internal state is accessing" or something. I have a feeling I'm just restating what you know, buy I'm not really sure there is all that much more to it.
>>
>>110029352
That's also how you get software that does not blow up because some library decided to look at the registers funny, thougheverbeit. It's best if we just had both, but alas. One of the things I hope for Carol is that it would make it easier to check if you're not doing dumbshit poorly performing thing with proofs and ease of going back and forth between the code you write and what the machine ultimately sees. I dunno, maybe it's impossible, but we'll see.
>>
>>110029652
>because some library decided to look at the registers funny
Yeah, because we totally need to make bootcode interactable with external code. Or just normal code. Or inlined code.

And the funny (miserable) thing is that the last two are totally in the scope of compiler code generation, yet compilers to this very day fuck it up.
>>
File: komerina.jpg (270 KB, 850x1059)
270 KB JPG
>>110029652
How/where are you incorporating proofs?
>>
>>110029701
Sure, bootloaders maybe no, but that's not the only thing you write in systems programming languages that you might also not want to be dogshit slow?
>>
>>110029737
Sure, but again, the last two ones are totally in the scope of compiler code generation, which actively suck at it. In fact they suck so hard at it that Linux just kind of gave up when it came to coming with an ABI that would preserve at least some SIMD registers during function calls; they are all just volatile across the board.

>who uses SIMDs though
Alright then, what about pushes and pops during non-inlined (but still visible at compile time) function calls in loops? Each call requiring endless pushes and pops for values that don't get changed anyway (loop invariant code hoisting). It's madness.
>>
>>110029709
Right now it's just mostly stealing Agda from https://hazel.org/ (it's one of my more prominent inspirations) for well-formed structural edit actions (which is then extracted to the Haskell part of the compiler) and similarly for the lenses and their complements to support lawful projections. But the ultimate aim is to self-host that at some point, so the language is dependently typed, and has the usual trifecta of universes, multiplicities and implicits, so that writing proofs will be both feasible and not dogshit slow and I can restate all those proofs in Carol at some point. And then by providing some trusted base of code that you can then reliably compose together you can build programs whose correctness you can ascertain at a high-level and be sure it holds all the way down to what runs in the VM.

That said, this is the part of the language that I wouldn't really be able to implement without a clanker no matter how much time I invested into it (I'm not dumb per se, I just never managed to figure out how to learn hard stuff reliable without ADHD fucking me up, and type theory is one of the victims), so I kind of hope I can keep it correct enough for long enough until I can make a sensible vertical slice demo and it entices someone smarter than me in typology to help me out xD
>>
>>110029088
>Which is also why vkBindBufferMemory2/vkBindImageMemory2 doesn't really do much if the driver is so shoddily written that its loop is executing in userspace.
naah, things cant be that bad

>>110029249
>pln
poland mentioned <3

>And IMO that won't work without proof and laws ensuring those abstractions and projections compose together. It's already a crapshoot with people sticking to contracts. Clankers are gonna be even worse.
>Maybe you're right and it's dumbshit nonsense, but I won't know for sure unless I try and see for myself, so might as well implement it

now that you mentioned the clankers it adds another dimension to things
but i still dont think a formal approach really is needed
the thing kinda boils down to "when doing high level changes, touch only whats represented at your current level of abstraction"

its a hunch though. and one informed by a general dislike of formalisms. like you said, the best choice would be to test things out
>>
>>110028955
just sub-allocate the buffer?
>>
>>110030279
from what i gather this shouldnt be an issue except you have to manipulate these objects in the context of a graphics pipeline
so your stuff might be on the gpu allright, but you dont have the handles for it cpu-side
unless you hack vulkan and just rewrite stuff, and/or add your own handles
>>
>>110030329
>you dont have the handles for it cpu-side
what do you mean? not only do descriptors let you bind specific regions subject to alignment restrictions but theres vkgetbufferdeviceaddress
>>
>>110030337
so the other anon is freaking out over nothing?
ok. his grievances really sounded surreal, to be honest
>>
>>110030344 cont.
but what do i know?
ive doen a little bit of opengl, glsl
i know you have compute in vulkan
and thats it. didnt go further because opencl is purpose made for compute, so thats what i went with
>>
>>110030344
well idk this was a problem with opengl so they added a gen multiple buffers, so maybe there's some point? not sure
>>110030363
ive done a little compute in Vulkan and its decent, but you're scraping the barrel in terms of functions in your shaders, e.g. if you want double precision sine you better write it yourself
plus things like opencl i imagine do quite a lot for you
>>
>>110030268
>naah, things cant be that bad
Oh you sweet summer child. :^)

>>110030279
What do you mean by "sub-allocate"? You have a resource which you have to create in the first place, and on top of that also have to destroy it.

The actual device allocation? Yeah, that one is actually *supposed* to be done for bulk, but you still need to know alignment and aligned size for each resource, and for that you need to create the resource in the first fucking place.

Jesus Fruitcake Christ.
>>
>>110030451
to begin with you could just allocate a large amount of memory and then assign it as need be, you should have some idea of how much space things will take anyway - there are already various properties, and I think Vulkan guarantees it doesn't randomly differ for a different buffer so you can store that information
https://docs.vulkan.org/spec/latest/chapters/resources.html#resources-association
>The alignment member is identical for all VkBuffer objects created with the same combination of values for the usage and flags members in the VkBufferCreateInfo structure passed to vkCreateBuffer.
I think if it was a problem needing to generate multiple buffers then they would have addressed it by now
>>
>>110030422
>things like opencl i imagine do quite a lot for you
im not really not sure about this
maybe its because im not knowledgable enough but from what i saw, opencl just exposes various primitives, and allows you to write kernels in basically c. thats it

but also this means you dont have a graphics pipeline in the way when you just want to compute some stuff using the myriad cores you have in your gpu

you can have profilers, debuggers, etc, but these things are dependent on the package provided by the vendor
opencl is just the common standard, and an extensible one, so even opencl-specific things are dependent on the specific device youre working with

i think if theres something that opencl "does for you" is that it exposes the compute of a device so that you can run c on it.
with a couple caveats, but even these are dependent on your specific machine
for example, you could run opencl code on a cpu, and then you'd be wrting pretty much vanilla c, almost 1:1
when writing opencl for a gpu if you want to take advantage of the architecture you have to use parallelized core and you have peculiar things like a handle for retrieving your position in the work within the kernel
like instead of having an iteration and taking the value of i (your iterator variable)
you do get_global_id() because instead of iterating through your work-items, you pass one such work item to each one of the cores of your machine
and so the kernel doesnt "know" which work item it is. unless you call get_global_id, it returns the index of the work item
>>
>>110030561
you have no idea how verbose Vulkan is
>>
>parallelized core
parallelized *code
>>
>>110030548
>to begin with you could just allocate a large amount of memory
... did you not fucking read what I wrote?
>The actual device allocation?
What we're talking about here is FUCKING RESOURCE CREATION! RESOURCE CREATION != BINDING TO FUCKING MEMORY!

First you have to create all your fucking resources, to even know how much memory you need to allocate, and then you can allocate the memory, and then you can bind your resources to it. But no matter how you slice it, you still need to create the resources first, and that's where we start to have issues.
>>
>>110030577
no, i dont
and apparently for the better, kek
i dont have much sanity left to lose...
>>
>>110028770
So skill issue isn't an excuse for double frees and memory leaks.
>>
>>110030548
Oh, and also:
>I think if it was a problem needing to generate multiple buffers then they would have addressed it by now
Dude.
They already introduced vkBindBufferMemory2/vkBindImageMemory2. Binding resources to memory *has already been recognized as an issue*. Considering that re-binding isn't possible, *why wouldn't resource creation/destruction*?!
>>
>>110030607
Well, if you keep at using malloc/free, no, it's not.
>>
>>110030584
>>110030614
I'm saying you can re-use a buffer for multiple things at the same time, also once you've created a buffer and tested it once you then know the requirements for that whole class of buffers
BTW, the main reason for the x2 functions is actually for pNext where it wasn't supported before, I don't think the stuff about multiple calls vs arrays was a big deal
>>
>>110030669
>I'm saying you can re-use a buffer for multiple things at the same time
Only if the stuff in it never fucking changes. Changes are that you're just going to scrap it at the end of the frame.

... actually, y'know what, scrap it, we don't even know if scrapping the buffer is being done at the end of the frame because Vulkan is so shitty at resource de-allocation that there are guides for programmers to *delay* de-allocation to points in time where it's "more convenient":
https://vkguide.dev/docs/new_chapter_2/vulkan_new_rendering/
>>
>>110030700
>Only if the stuff in it never fucking changes.
No? You can update the contents of the buffer. It's only a problem if it needs more memory or you need a different type of buffer, but that's something you already need to manage, you shouldn't be destroying everything and recreating it each frame.
Btw I'm pretty sure creating or destroying a buffer is a CPU only thing. So it's perfectly reasonable to not want it to delay your frame
>>
>>110030725
>No?
How? No, name the actual API calls.
>>
>>110030747
vkCmdCopyBuffer
>>
>>110030749
So since when is a copy a modification?

Also:
>creating or destroying a buffer is a CPU only thing
If that was the case, then why can I only create and destroy a buffer 60 times in a millisecond?
>>
>>110030774
>So since when is a copy a modification?
*a = b
Btw you can also write into it from a shader on the GPU (e.g. GPU-driven rendering), or you can have mapped memory (e.g. write into your mapped buffer directly via void*, copy it to an unmapped GPU buffer).
>If that was the case, then why can I only create and destroy a buffer 60 times in a millisecond?
I don't know but it's probably a malloc/free each time if you don't specialise allocation callbacks. I think graphics people re-use them more with "need more memory" as a worse case scenario.
>>
>>110030774
>>110030790
if i may chime in with a bit of theory crafting (since opencl is also a khronos thing and also gpu-at-least-oriented)
the buffer is actually an abstract object in opencl
i suspect its the same in vulkan

thats because the gpu is basically a computer within your computer
and so the abstraction not only allows for normalization of procedure between various models, manufacturers
but also creates some leeway for the hardware to actually fit the call into *its query, and then get to execute it

youre asking a thing that has its own ram, its own "os" to listen, and allocate and copy stuff on its end, or destroy it
the resulting delay is probably because of the roundabout bw the cpu (host) to gpu query, then gpu (device) executing and passing its status back to the cpu

i think. i'd wager.
>>
>>110030832 cont
and so maybe to avoid a costly synchronization
the round trip is synchronized with the framerate

this would make sense to me
>>
>>110030832
>>110030854
I don't think vkCreateBuffer itself does anything GPU side, I think it's basically just a CPU record and that creating it does some validation and allocates on the CPU. When you pass a buffer to vkDoSomething it's probably just using extra data from that record instead of the buffer handle I would imagine.
But speaking of synchronisation, I could imagine some OS synchronisation. I know Windows doesn't like it if you submit something and it takes longer than 2s.
>>
>>110030268
>poland mentioned <3
The presentation backlog has examples of how Carol could potentially also be used as an interactive workbook in schools. One of those literally has „Litwo ojczyzno moja, Ty jesteś jak zdrowie” because it compares how poetry works in languages with vowel length (Japanese and Homeric Greek) and how Shakespeare and Mickiewicz tried to emulate it xD

>now that you mentioned the clankers it adds another dimension to things
Originally it was just for humans, because when I've first seen https://worrydream.com/LadderOfAbstraction/ I was like "why the fuck are programming languages are not like that???". I can program without it, mind you, but I've grown to like highly interactive development over time. But yes, turns out all this tower of abstraction and lawful edits come super useful with clankers.

>the thing kinda boils down to "when doing high level changes, touch only whats represented at your current level of abstraction"
Well, yeah. But you have to be sure those abstractions are solid. And sure, what we have between machine code and high level languages is mostly solid. But my bet here is that we might want to build even more high-level abstractions to, among others, deal with clankerisation of software. I hardly ever read what my clankers spew out, because it's just so fucking much. I kind of get by by getting a lot of BSDM programming going (proptests, NixOS-VM-tests-based system tests, mutation testing, Agda proofs, blind model-based reviewers etc), but ideally I would like to stop doing that by hand and rely on my language to handle that shit for me, so I can just write code and trust it. So you're kind of right, except I just think this sentence has a second part — "unfortunately we will have to raise the level of abstractions to scale with the clankers".
>>
Is anon using vkCreateBuffer, or vmaCreateBuffer which does extra work like allocating? It could be vmaCreateBuffer that is creating the bottleneck, or it could be the CPU side allocation of the buffer structures (in which case maybe customise the allocation callbacks).
>>
>>110030268
>>110030933
>its a hunch though. and one informed by a general dislike of formalisms. like you said, the best choice would be to test things out
I do have the opposite hunch, but I also have the exact opposite bias. Comes with autism territory, I suppose xD But yeah, all that is left is to just implement and see (:
>>
>>110030888
>I don't think vkCreateBuffer itself does anything GPU side,
>When you pass a buffer to vkDoSomething it's probably just using extra data from that record instead of the buffer handle I would imagine.
yeah, thats exactly what i was suspecting, too
the buffer is just an id, basically
vulkan probably works with internal record-keeping, some of it probably offloaded to the vendor themselves, with a norm, interface, standard, that ties it all together
you give it synchronization points, and the framework takes care of the rest in the backend

in opencl you have to deal with that by hand, youre literally moving buffers around, literally queuing requests into device queues

it works, id expect this gets replicated in vulkan, but abstracted

vulkan aint all bad by the sounds of it
they at least tried to make something
you may possibly hate it, but at least they tried

opencl is for another purpose, but there all the stuff they tried to abstract away becomes evident
have a look (and this went through an abstraction layer, but the functionality is basically the same. i abstracted bookkeeping and error handling, basically. beyond that, its raw opencl. the project was developing that lib, thence its a mere hello world)
>write buffer
>read buffer
>enqueue kernel
>finish (synchronization)
>>
>>110030965
>it works, id expect this gets replicated in vulkan, but abstracted
its not abstracted
https://docs.vulkan.org/refpages/latest/refpages/source/vkGetDeviceQueue.html
https://docs.vulkan.org/refpages/latest/refpages/source/vkQueueSubmit.html
>>
I love Rust.
>>
>>110030971
yeah.
i think its just the nature of the problem that just imposes a certain solution

in graphics oriented frameworks you deal with all this plus the whole graphics pipeline and the probably honest but maybe misguided attempts at abstracting this stuff

you cannot imagine the amount of respect i have for you, graphicsfags
opencl is a namedrop on g
but its actually easy as fucking ass compared to vulkan or opengl

you graphicsfags dont get enough limelight
the unsung heroes of the programming world
>>
>>110030989
>I love cocks but I would never ever ever keep mine
>>
>>110030933
>One of those literally has „Litwo ojczyzno moja, Ty jesteś jak zdrowie” because it compares how poetry works in languages with vowel length (Japanese and Homeric Greek) and how Shakespeare and Mickiewicz tried to emulate it xD
wat?
that was interesting as fuck
tx for the braincookies

>"unfortunately we will have to raise the level of abstractions to scale with the clankers".
kinda this
i too have thought about this stuff

but the conclusion i got to was to improve the clankers
i figured out, more or less, a model where you could verify C

because tooring is a faggot and he should be dug up, mulched down and used a pig feed because of the damages hes been doing from beyond the grave
generations of programmers who work off bad bases because of the fact tooring worked with an idealized machine that doesnt even map to a modern computer because instead of moving the read/write head by only one index
we have fucking ram with arbitrary length jumps
its in the name
random access memory

but also all his theory hinges on a contrarian program
also btfod bc ram
because thanks to the properties of ram, we can do exit() and bypass whatever might contrarianize our output
impossible in a tooring machine
completely trivial in an actual computer


if anybody likes tooring, its ok
lets remember that did his best before modern computers were a thing, and hindsight is 20/20
my problem is that some "people" hold onto theories that are built upon old assumptions, ones that dont even work anymore
>>
I fucked up. I am sorry.
>start cool project
>hit some roadblocks
>get lazy like a POS
>ask AI for help
>sends me in direction that feels okay-ish
>run into next problems and realize that the shit AI wrote is horrible to debug
Fuck me man.
I tried to give AI a chance and it produced working code faster, but if you don't rely fully on it, it is still utter bullcrap. I hate it so much.
>>
>>110031116
>random access memory
so-called because when you access it it takes a random-ass amount of time
>>
>>110031150
its ok
this is how you gain experience

you know what?
actually try to make things work with ai so you will not only learn its limitations, exactly
but you will also learn an efficient way of using it

but you see
aislop != human code
we've been telling you. but experiencing it yourself is better
prodigal son and such
>>
>>110031055
Jeet, STFU.
>>
>>110031163
kekd audibly
>>
>>110031190
I have experienced this before last year. But they said we have super intelligence now :(
>>
>>110031197
i denounce vishnu, the talmud and the Rust programming language
>>
File: thumbs-up.jpg (14 KB, 250x203)
14 KB JPG
>>110031205
its all pr.
always is

but then theres a new technology and the question
>how you can make it work for you

truth is always in the in-betweens
>>
>>110031221
>>how you can make it work for you
For me apparently it is just using it as a chat, mainly as better search engine and for SMALL snippets where I am not inclined of copy pasting them fast af
>>
>>110031232
thats how i use it too
kinda minus the chat but only kinda because out of boredom i sometimes make it spew random shit to entertain me

>minimum working examples so that you hit the ground running
i think thats a sane cutoff
this is how i use ai-gen'd code

if i coudl do slop i would
but im trying to fit something you need a server rack for, into a consumer machine

so slop it aint

plus theres a serious question whether slop even makes economical sense (because you can feed it pseudocode of various degrees of abstraction, and take care of correctness this way)
>>
dont tell normies how to use ai btw
let them be fucking retarded and non-competitive

but theres ways to extract value from it
this also goes to all you lurkers
FUCK the normies
the value of lurking here is the fact that normies dont know
>>
>>110031207
There are muslims in india so you're still a jeet.
>>
godess of the night
the end
but what is unsaid- shes also the goddess of rebirth
shes the cycle
the ouroboros

also i wanna see her feet but i suppose its beyond mortal ken
>>
>>110023625
I swear to fucking god somebody end this autismal fuck's life so the spam stops
>>
>>110031568
What spam?
>>
Meh at least they deleted everything
>>
UH OH BOSNIAN GENOCIDE XDDD

I don't believe it, jannies doing their jobs for once
>>
>>110031592
miracles happen i guess
>>
>>110031592
They removed the polACK spam too
>>
>>110031603
i dont mind it, it was barren trash

the carol-poster is a polack too btw
>>
>>110031616
They only removed the post, nobody caught a ban
>>
>>110031625
thats actually elite jannying
>behave, kids
>>
File: IMG_4395.jpg (14 KB, 275x373)
14 KB JPG
>>110031592
>-2 poles
> -1 bosnianbvll
It’s the UPA once again bros
Bandera is a janny
>>
>>110031642
bandera is a twink
just look at how he tries to look serious
>>
>>110031603
>They removed the polACK spam too
Uh, no, I'm still here, enjoying the righteous slaughter
>>
>>110031651
I really don’t care that much about him, but the other anon posted the "le remove kebab face" which is basically our Stephan Bandera equivalent
>>
>>110031666
wwe poles rersponded to genocide by just evacuating the undesirables from our lands because were civilised
also we could afford doing that because we were just that dominant over the unruly hohols

we could become uncivilized somewhere in the future though
because we poles do have a fuze somewhere in the circuitry

please dont break it, we like being considered as westerners (for now)
>>
>>110031679
He still killed a lot of people though
>>
>>110031666
Don't worry, I don't mind bosnians in general, just that one fucker
>>
>>110031692
and?
we could kill all of ukraine now
and we dont because were a christian nation
hohols better remember this before they menace theyll burn our shit bc of 500+
or that one of their generals says theyll send drones onto our cities if we ask for our loan back

people just dont fucking realize things
it is what it is
hohols dont know how to act civilised.
>>
>>110031697
I’m "that fucker" lol
>>
>>110031706
I don’t want to cause this thread to get purged once again
So just keep with your code stuff gn
>>
>>110031731
yeah i will
thats what i do and this is what i want for dpt

dont make me go there because i have alot of things to say
>>
>>110031708
Well, then I do mind you, fuck your retarded spam, still got more lines of working code clanker'd than you BTW

>>110031706
>hohols dont know how to act civilised.
Eh, they're just kinda like us 20-30 years ago, more civilised than russians, not quite "western". Give them that much time and maybe they'll learn xD
>>
>>110031744
Don’t care about your trans code bro
>>
>>110031752
Huh, so you finally admit vibeGODs are trans? Checkmate, retard
>>
>>110031744
>Give them that much time and maybe they'll learn xD
tf do we need em
give me russian petrol instead

they started the war
they started with racism
they show unironical nazi fucking symbols

no compromise. either recalibrate your mental retardation or youre not a pole
katyń was 10.000
galicja was 300.000
>but the ruskis

no, the ruskis are ok compared to hohols
>>
File: vibeCAR.mp4 (1.39 MB, 720x1280)
1.39 MB
1.39 MB MP4
>>110031769
If you are trans and you use vibeTOOLS for coding stuff then it’s transgender code
Anyway I’m sleepy gn
>>
>>110031744
>give em time
we brought em to our heart and the best thing they found to do was to bite into it
its a nation of ingrates
fuck em.
send em back so they all die on the front for a bump on energy proices in the west

technological af btw
>>
That's a lot of deleted posts
>>
>>110031870
50 posts of off topic political nonsense.
>>
>>110031870
i really dont knwo whats the actual thought behind it
im just happy jannies interevened to reset the thing

ill stop woith my ukraineshit now, lets have a nice dpt
>>
>>110031878
>its only a problem when politics go against my opinions
commit kys w/a bottle
but post code before that
>>
>>110031775
Not saying we need them, just that being in russian sphere of influence does shittify your brains — it helped us a lot to have gotten rid of them. And yes, Wołyń was bestial but Katyń was worse for the health of the nation, killing all those well-educated people so it'll be easier to install communist retards, so I have no love for ruskies either.

Anyway uh, yeah, code good, /pol/ bad xD
>>
>>110031878
Political nonsense? It was bosniak vibe nonsense
>>
Erlang is the best programming language. Learn Erlang right now!
>>
>>110031884
I don't have an opinion about this topic. There is no opinion it could go against. I don't know enough about it to have one, and there is no force on earth that could compel me to care about eastern Europe.

Also, politics are off topic, even if you agree with them.
>>
>>110031904
Why would you learn Erlang if there's Elixir?
>>
>>110031890
>russian sphere of influence does shittify your brains
geopolitically, and technologically
we need the fucking intermarium so we dont get westerners or araps or africa, possibly, to dictate terms to us

the eu wants to commis sepulchre using a blunt piece of brick

good for them, whatever.
we have great potential in being the crossroads bw the east and the west
all of us, the inetrmarum

we need a "central european union" of our own
first- poland, chechs and slovaks
then lets include belarussians
because they have rifdiculously low standards of living
then tyhe balkans
but we give saudi turkish nationality to bosnian vibeshitter just for keks
and then were a market even heavier than china, and everyone has to play by our rules

we win just by virtue of resilience while the rest of the world burns
and we can really do that because poland is unironically a technological powerhouse
just look at our history.
>>
>>110031926
>but we give saudi turkish nationality to bosnian vibeshitter just for keks
Okay, where do I sign?
>>
>>110031890
>>110031926
>we need the fucking intermarium so we dont get westerners or araps or africa, possibly, to dictate terms to us
and ofc rashans too
the only guarantee of independence is strength
we cannot rely on anybody
we have great specialists though
romania is nr1 in maths
slavs are nr1 in programming
and all of us created great tech

we can make it
we can even become guarantors of peace on the planet, were that powerful
thats our potential, at least

remember
half of the world belongs to slavs, alone
its not without reason
>>
>>110031934
just join my party when the time comes
this *will be a major programme point>

>>110031908
youre not wrong
but you cant really discriminate politics from technology nowadays
>>
>>110031956
This is going to sound somewhat mean, and I apologize for that, but I can't think of any other way to describe it. You know how Indians and Pakistanis hate each other, and this baffles people, because from the view of an external observer, there is no meaningful difference between an Indian and a Pakistani? That's also how everyone outside of Eastern Europe sees Eastern Europe. Nobody outside your part of the world can even tell you apart.
>>
>>110032022
third party here: can confirm
>>
>>110032022
yeah, it could sound mean if i expected of you to get into the intricacies of our shit
but also
the fuck do you care?

the vulgarity was for dramatic effect
i wanna say i really do understand you dont care
i kinda dont care about other nations either
which is normal

were whites, y'know
were capable of empathy and such. not saying that coloreds arent, but thers the iq metrics, and the cutoffs, and such things.
a 50 iq person cant feel empathy bc they just dont have enough ghz to simulate the feels of their fellow being
sorry reddit

the bias comes from our delay in westernization
but it turns out that westernization means dismantling your social construct
the result is that nowadays people from the west praise polan when i remember it as the place where people steal the gasoline from your car's tank
yes, its not a parable, it is something that happened to pops when he came back to polan, but with foreign registration plates

thats perestroika for you. people were poor, me included for a while (best memories btw. traumatic intelligence and such, develops lateral thinking bc you learn to invent toys from random shit you find in the street etc. useful now, i guess. i do think i use today some inventivity i developed from back then. its not really a trauma for me though, i literally owned nothing and i was happy)
>>
>>110023855
Because of the poor moderation multiple generals have been hijacked and since the current moderator doesn't seem to post here he doesn't do anything to fix it.
>>
>>110029030
>You can't group allocations together to free them all in one go later
What is a loop?
>>
File: file.png (25 KB, 858x106)
25 KB PNG
are you fucking serious...
>>
>>110031925
Elixir is horrible, why does it even exist.
>>
>>110032195
webshit
>>
My job is webshit because there are no other jobs. I swear /g/ does nothing but gatekeeping and teach worthless things you'll never use at work, much like college.
>>
>>110032228
>t. muh jerb
in my cv im a construction worker.
this thread is about craftsmanship in programming, not slop. ai generated or otherwise.
talk good shit
or ask question on how to do things
>muh js
what about it?
>>
/g/ keeps whining about malloc being slow yet big projects like Lua written in C use pretty standard C code with malloc and free and everything.
>>
>>110032277
write a generic heap implementation that has to do everything malloc does and still be fast and you'll see why arenas are superior even if the gains are statistically marginal
>>
>>110032277
in what universe is malloc slow?
>>
>>110032269
At least js is not C. You have to be a masochist to use C. At least use C++.
>>
>>110032307
Idk ask the /g/schizos.
>>
>>110032311
if you see the 1's and 0's anything BUT c is masochism
i just want to fuckign write an algo
i dont give a shit about registers
i dont give a shit about bells and whistles
i just want certain ones to turn into zeroes and vice-versa, mang
>>
yes, c is to asm like python is to c
i dont fucking care
c scratches the right itch in the right way
>>
>>110028955
>the fuckers realized that binding memory to resources one call at a time is fucking retarded
That's not the primary reason why those functions were introduced
https://docs.vulkan.org/refpages/latest/refpages/source/VK_KHR_bind_memory2.html
There was no pNext to chain anywhere in the originals so they couldn't be extended. These can through the input structs.
There's a lot of extensions like that.

>>110030888
Not necessarily representative of the official drivers but you can look at the Mesa Vulkan drivers for different hardware to get an idea of what goes on.
On Nvidia it looks like in addition to CPU bookkeeping they also reserve some kind of virtual address on the GPU but I'm not 100% sure.
https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/nouveau/vulkan/nvk_buffer.c
>>
File: pixel_go_maid.jpg (320 KB, 640x427)
320 KB JPG
>>110026645
>>It's not bad, but its not great
>Huh, why? To me it's like the only thing that go had gotten right in all this Rob Pike autism.

Go's concurrency is excellent for web and server stuff. But mostly I just do basic ass hobby programming and I'm too used to the usual async/await and event loop primatives every other language uses.

For anyone else interested:
https://gobyexample.com/select

Cocurrency model comparison:
https://hakia.com/engineering/concurrency-models/
>>
>>110032394
You'll never fit in with your strangers on /g/.
>>
File: gto-smoke-cross.png (527 KB, 471x515)
527 KB PNG
>>110032448
imagine wanting to fit in
>>
>>110032460
Sounds like you.
>>
>>110032405
do you mean the nvkmd_dev_alloc_va? this seems like its about sparse binding or replay though
>>
File: something.jpg (253 KB, 860x912)
253 KB JPG
>>110032516
the one and only i guess
>>
>>110031568
>spam
Retard.

>>110028279
Based.
>>
File: 1788584670118412.png (3.83 MB, 1254x1254)
3.83 MB PNG
>>110031150
Re.
I did some more refactoring (without AI) and feel almost comfortable again. Feels good.
I think I will try one week without meth. Maybe this helps, too
>>
>use ai to see what the hype is all about
>it's only good at one off functions and nothing else
Wow man, I must be one of these Luddite's because I'm capable of writing my own functions.
>>
>>110032662
theres also harnesses but its eesentially the sh&atbots reprompting themselves until the shit compiles

you can also get a lets say 95% reliable test coverage

one could make llms work
its gonna be fukken slop though
thers applications where slop suffices though
and i guess this is where were at currently
>>
>>110032662
Yes.
Well, you can get something functional out of it, but if you want to adjust it or make it better you are lost. Only then you realize how much fucking shit it produces. This is no biggie for js CRUD apps tho, so the absolute majority thinks it's great
>>
>>110032662
>>110032697 cont
its still dpt though
if we allow too much llmtalk were gonna dilute actual craftsmanship
which you need to be able to do a good job with llms anyways
>>
>>110032697
>you can also get a lets say 95% reliable test coverage
This is the worst fucking shit, too.
It makes absolute ZERO sense to let that random machine write a unit test. It absolutely misses the fucking point. Why does no one of the faggots that hype that know about the halting problem?
>>
File: (you).gif (188 KB, 512x512)
188 KB GIF
>>110032093
>an OP image I don't like means the thread was hijacked
All generals will undergo the maidification process.
>>
>>110032720
>It makes absolute ZERO sense to let that random machine write a unit test.
no, i mean you write the tests your own or at least audit every single line of it

what i mean is that
->in 95% of cases the llm wont LIE to you about passing tests
im talking about using LE agentic workflow
with an llm at its core ....
>>
>>110032528
>do you mean the nvkmd_dev_alloc_va? this seems like its about sparse binding or replay though
Yeah true.
>>
C officially lost to C++. Now C++ is used for drivers and even the fucking C compiler.
>>
Were it not for LLVM then C++ would be officially marked for deprecation.
>>
File: modern-sepples.jpg (149 KB, 800x533)
149 KB JPG
>>110032802
c++ is to c like drugs induced braindamage is to c
>>
>>110032832
>muh bloat
A lot of people don't believe having a lot of features is a bad thing.
>>
>>110032861
im a grug
i wanna unga bunga your computer

so i use c
but the sepples commitee went too fucking far
c++ is literally a cautionary tale
as to why its vital you stick to primitives
lest yeah, like sepples, you end up with 6 gorilion interfaces
one for scratching your ass
but an entirely different one for wiping it despite the minute difference bw both actions
>>
>>110032405
>There was no pNext to chain anywhere in the originals so they couldn't be extended.
Extension? What the fuck are you smoking? vkBindXXXMemory2 isn't about extension, it's about giving applications the ability to tell the driver to bind multiple resources in the same call.

Also, what the fuck is this cope about
>it's might just be work on the CPU side, bro
? Even if that was true: there'd still be prologue and epilogue overhead involved, and in the worst case scenario multiple mode switches.
>>
File: IMG_2107.jpg (67 KB, 640x699)
67 KB JPG
Judging from the Java/JS thread I'm betting all of you don't understand a thing and are just making shite up.
>>
>>110032861
>>110032878 cont
to be entirely honest, doe
c went the other direction
with everything being a fucking file descriptor

both aproaches are autism. im sure something exists in between
>inb4 muh rust
total crab stew + gyozas
>>
>>110032394
>c scratches the right itch
That itch must be masochism.
>>
>>110032994
The obvious solution is Rust. Just git gud and the borrow checker won't harass your skill issues.
>>
>>110032994
>c went the other direction
>with everything being a fucking file descriptor
That's not a C thing, that's a
>we need to give applications controlled access to kernel resources
thing.
The funny/fucked-up thing is that *no* kernel does it properly - i.e. allowing you to allocate multiple resource slots in one call, and separating allocation and creation (which is why file handle creation to this day blocks the thread like a motherfucker), but that's a story for another time.
>>
>>110032995
once you get your codebase down
its as high level as python
only with types

this is an opencl program
yes, it would be 1klocs wo abstraction
BUT
with the adequate abstractions, even something as verbose as opencl becomes well manageable

half of the appeal of c is that youre free to build your own interfacing
which is also why most people hate it because they expect generic solutions

its not the usecase or c
thats why nobody cares in c-land
thats why nobody develops high level abstractions for c
and since theres really not much high level shit for c
then people who stick to it/want it dont need it to begin with
and so it becomes a self reinfocing loop of autism
>>
>>110033027
id wager nobody cared because if you talk to the os youre already assuming its gonna be slow

there exist batch processing though
theres batch processing with read
and im sure theres more examples to be found
but it have to dig in the docu to give you exact details

but its is a thing what you say
others thought about it, and there exist some solutions at varying levels to mitigate that

its not solved though, ur right
>>
>its not solved though, ur right
i think the core of the problem is that poosix says theres read(), full stop
and ythen oses prance around like on loonis the ability to queue multiple reads to take full advantage of the architecture of an ssd (as far as i understand things, it also has a queue, and you want to saturate it, then let firmware deal with the details)
and the exact interface is os-dependent
>>
>(as far as i understand things, it also has a queue, and you want to saturate it, then let firmware deal with the details)
big caveat:
this is for the scenario of maximizing throughput
i didnt research other scenarios
prolly cache can also come into play in different applications
>>
>>110033073
>id wager nobody cared because if you talk to the os youre already assuming its gonna be slow
... you have no idea what "slow" even means, do you? There's a difference between waiting 50K cycles (which is already quite perverted, but hey, it's not my fucked-up kernel code implementation) and waiting 5M cycles.

On an SSD.

And yes, there have been usecases for non-blocking file handle creation since the early 90s. Why, do you think, did they even come up with libaio/SGLs in the first place, if not for servers?

>theres batch processing with read
I mean, we *were* talking about file creation here, but, sure, let's talk read operations:
>ReadFileScatter/WriteFileGather
>only ever all reads or all writes
>no error code per operation
>only on one file, never multiple ones
>also bypasses the page cache because asynchronity is implemented via DMA engine

It's all so tiresome.
>>
>>110033142
>only on one file
no, on multiple files
im coming from a scenario where you traverse the contents of a drive, basically
>its all so tiresome
you didnt normalize that knowledge, fag
+ were legitimately entering specialist knowledge
its not 7th dan blackbelt stuff, but its the entry level of that category nonetheless
>>
>>110033142
Oh, and the reason I bring up Windows is because if there's *one kernel* where you'd expect async operations it's the one build from the ground up with GUIs and message processing in mind during an era where cooperate multitasking was still a thing. You did not and still do not want the thread that's pumping your messages to be blocked by some nonsense I/O.

And even *they* fucked it up. At least POSIX had the excuse of only ever wanting to replicate a system that was running on 1970s hardware because autists hate change (and boy, have users been paying the price for that), but Microsoft had no such fucking excuse.
>>
>>110033161
>no, on multiple files
MY POINT EXACTLY!
What *good* is that shit supposed to be?!

>were legitimately entering specialist knowledge
Since when is knowing that mass storage is fucking slow "specialist knowledge"?
>>
>>110033185
nah, not that
knowing how to exploit an ssd to the fullest AND which interfaces to call to get there

the mere fact that in the backend you have a queue in between your call and its execution
you aint gonna deduce that from reading the man for read()
>>
>>110033238
>knowing how to exploit an ssd to the fullest
Yeah, that'd require io_uring or I/O Rings, which I didn't even mention - and even that one is fucking iffy.

(Also this isn't a problem since SSDs. NCQ has been an AHCI thing since 2004, and TCQ since before both NT and Linux came out. The "specialist way" should've been the standard way, or at least the way that you would optimize for after you bothered with your POSIX backwards compatibility layer for legacy software.)
>>
>>110033267
>mfw io_yuri
>>
>>110033267
>>110033314
on a more serious note-
yeah
were all gimped by an interface that larps as if it were in the 70s because poosix
>>
Tabby now has proper Hashmaps.
>>
>>110033321
Ackshually Microsoft (wisely) wanted to make POSIX a userspace interface the same way Win32 is today. Yeah, those CreateFileA/W calls? Trigger NtCreateFile internally, after and before much other nonsense overhead. MS wasn't tethered to some outdated interface nonsense for their kernel.

And yet they nailed that shit shut at the kernel interface level.

This isn't a POSIX thing, it's an autism thing.
>>
>>110032078
>the bias comes from our delay in westernization
>but it turns out that westernization means dismantling your social construct
As someone from the west, your analysis is correct. We broke all the rules, then we discovered why there were rules, but it was too late to put the toothpaste back in the tube. The gigantic economic advantage the west had 40 years ago was also entirely squandered, particularly badly in the US. We shipped all the actual manufacturing and other useful things overseas, and now our whole economy is usury, porn, gambling and drugs.
>>
>>110033371
>now our whole economy is usury, porn, gambling and drugs
And LLMs, don't forget those.
And not only is their ROI still very much in doubt, but if you got rid of them and everything being done and worked for in their service we'd already be chest-deep in a recession we'd have no good way out of.

tl; dr: we're so fucked.
>>
>>110033371
>>110033396
you gotta hit the bottom to be able to bounce back
>>
>>110033415
Even a dead cat will bounce if it falls from a great enough height.
>>
>>110033358
either way, its gay that the comitee who is supposed to take care of this shit
actually needs to get circumvented for things to work.
>>
>>110032721
i think i'm a maid now.
>>
>>110033423
kek, youre not wrong.
>>
>>110033430
Hot
>>
>>110033427
The committee doesn't care about kernel interfaces, it cares about portability with systems that don't belong to the big fours, meaning it's mostly stuff being done in userspace.

And let me tell you, userspace is *not* where you solve that shit, because otherwise you end up with braincancer like aio (not to be confused with libaio, which is an actual Linux kernel interface), where you have to use a fucking userspace thread and pread/pwrite:
https://codebrowser.dev/glibc/glibc/rt/aio_misc.c.html#handle_fildes_io
>>
>>110033469
>The committee doesn't care
This
>>
>>110033469
im too drunk rn
i cant read the code
ill come back in a few hours, gotta catch some zizz
have a preemptive you nonetheless
>>
>>110033516
tl; dr:
>plenty of mode switches
>allocations and deallocations
>locks and releases
>and of course, blocking

>im too drunk
So am I.
>>
>>110033469
The committee just wants more features and retro compatibility which is what the big boys want because they have billions of lines of code.
Which is why they approve things like the retarded module spec the big boys wanted.
Unfortunately it's a miasma of unfixable shit and all the big boys are in the process of maintaining and bailing asap.
This is their fault for demanding and being consented, like toddlers. And Bjarne's fault, for not actually designing shit and saying no, instead saying yes to make his baby more popular.
>>
Claiming to be drunk is just a cope for embarrassing yourself on an anonymous basket weaving forum.
>>
>>110033565
The virtual memory schizo is actually drunk/medicated at the moment, otherwise we would be on another tirade by now.
>>
>>110033559
Bjarne wants his shit to run everywhere though. He's not interested in superior technological solutions, otherwise he would've already committed suicide upon seeing the mess that are directory iterators.

All for the sake of portability, of course.

>>110033565
Yeah, unless you're not only coherent, but actually require the booze because you just fell into yet another withdrawal session. Then the booze is actually helping you because your heart isn't racing hardcore techno music.
>>
>>110033577
Nigger, this entire fucking thread has been nothing but a tirade.
It's just that this time it's about async I/O.
>>
>>110033588
>Bjarne wants his shit to run everywhere though
This is not because of simplicity's sake, giving freedom of device to the users, or any noble intention or design goal whatsoever.
It's a child trying to have his toy take over the world. It's an ego thing. Best portrayed when he yelled at Ritchie after Ritchie complained about the language and thus damaged the brand of the toy.
Having Rust eat C++ greenfield (and brownfield) space because of his neglect is exactly what he deserves.
>>
>>110032919
>vkBindXXXMemory2 isn't about extension,
Just look at the page I linked
>This extension provides versions of vkBindBufferMemory and vkBindImageMemory that allow multiple bindings to be performed at once, and are extensible.
You'll see this a lot in Vulkan. A 1.0 function is updated in such a way where seemingly all that was done was moving what used to be positional arguments into a struct that also has a pNext. This is so that future extensions can add functionality via that pNext chain instead of adding a new command.

>it's about giving applications the ability to tell the driver to bind multiple resources in the same call.
It's unlikely that that was the primary motivation since that's not something an application would ever be bottlenecked by. No one is binding tons of resources every frame and even if they were there's probably very little most drivers could do to speed that up given a batch over just one at a time.

If you don't believe me look at the Mesa implementation, literally just calls the single arg version in a loop:
https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/nouveau/vulkan/nvk_buffer.c#L280
>>
>>110033670
>It's a child trying to have his toy take over the world. It's an ego thing.
... yes. Yes, that's what I've been trying to convey this entire time:
>He's not interested in superior technological solutions

>>110033671
>It's unlikely that that was the primary motivation since that's not something an application would ever be bottlenecked by
So I dunno if you actually looked at actual Vulkan engine code, but I have. Not only do a lot of them do a lot of resource preallocation (because during so during rendering is miserable), but also, again, a lot of in-between deallocations, because, again, doing it in the middle of frame rendering can lead to stuttering. When your time budget is less than 7 ms every microsecond counts.

>Mesa implementation
Isn't Mesa that abomination that implemented Vulkan on top of its already crappy kernel abstractions? Yeah, I wouldn't consider them experts in graphics rendering, if you catch my drift.
>>
>>110023625
4MAIDS
Not one not two not three not five 4MAIDS
>>
>>110033735
Also:
>When your time budget is less than 7 ms every microsecond counts.
That's also why they introduced timeline semaphores that allowed developers to track specific pipeline stages.

Minuscule improvements? Maybe, but it's still better to get shit done while the GPU is busy with other stuff than to do it after the frame has been presented, because at that point your time budget may have already been significantly reduced for the next frame.
>>
>>110032307
It sometimes is. I was writing a parallel parser of Ninja build definitions, because I wanted to parse AOSP's build in under a second. The allocation churn was so big that switching to mimalloc and/or arenas produced significant speedups.
>>
>>110032277
You sure you want me to talk about Factorio?
>>
oh ffs you idiots have woken up the Factorio schitzo.
>>
>>110033906
Jokes on you, I am always awake.
>the benefits of hyperthyroidism
>>
>Thread options are talk about shittily written c or watch creepy jeets textually masturbate to c.
I hate this stupid language so much I'm tempted to replace it with C++ or unsafe Rust in my personal work.
>>
>>110033735
You're not contradicting what I'm saying and you're also making stuff up. Binding resources is not a cause of frame stutter. Renderers alias everything via render graphs so it's all prebound during load time where disk -> RAM -> VRAM latency is already dominating.

>>110033807
That has nothing to do with why they introduced timeline semaphores. You could already "track specific pipeline stages" prior to their introduction. TImeline semaphores were introduced to make implementing DX12 fences easier in layers like Proton.

I'm sure you know way more than the Mesa developers though.
>>
>>110033596
It's mellow. It's a welcome improvement over wishing death to people every post.
>>
File: potato_schnapps.png (12 KB, 879x180)
12 KB PNG
>>110033950
>>Thread options are talk about shittily written c
Depending on how far down you fall the rabbit hole you'll realize that ALL C code is shittily written. By default.
>>
>>110033964
>Binding resources is not a cause of frame stutter.
Source? Because I could barely bind 60 resources in a fucking millisecond on my machine.

The rest of your post is on hold until you're actually benchmarked this shit.
>>
>>110033965
Autists aren't people though. Wishing death on autists is like thinking about purchasing disinfectant.
>>
>>110033950
I like C.
>>
>>110033965
This only happened because the bosniaschizo somehow found this thread. Can't have that shit here
>>
>>110034021
Nah, it's called summer vacation.
>>
>>110034028
Ah. Well. There's really only one solution for that - https://youtube.com/watch?v=WIEqJksalpU
>>
real maids should be able to code these aglos from memory!
quick sort
min heap
topo sort
union find
trie
you are a real maid... arent you anon?
>>
>>110034563
i don't "do" algorithms
>>
>>110034563
I'm gonna go take a dump, and then I'm gonna flop four, because that's a better use of my time than accommodating autists like you.
>>
Migrate when ready.
>>110034710
>>110034710
>>110034710
>>
>>110034710
>404 Not Found
Bravo, Flavo.
>>
>>110034771
Mods deleted it.
At least we now know whos behind turning /dpt/ into a fetish thread.
>>
This is a pedophile take over.
>>
It's got nothing to do with turning /dpt/ into a fetch thread and everything to do with /dpt/ not being on page 10 in auto sage mode.
>BUMP LIMIT
>IT'S CALLED BUMP LIMIT

... please someone get that reference.
>>
>>110034817
it's a term from krautchan newfag
>>
I'll be in bed before this hits page 10.
A none pedophile needs to get off their fat fucking are and have a bake loaded in the chamber.
>>
>none pedophile
Sweet, I'm out.
Peace!
>>
>it's funny to be a pedophile
Why is 4chan like that?
>>
>>110034822
>krautchan
does this shithole still exist? These were the worst of the worst people
>>
File: random-number.png (37 KB, 816x297)
37 KB PNG
>>110033981
>>
new:
>>110035373
>>110035373
>>110035373



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.