#programming
1 messages · Page 68 of 1
god bless tailscale dns, I love being able to just http://ouppy and pull up random grafana dashboards on my laptop
how 
You know how most domain names have dots? Well, it works kinda like a folder tree, and com is the top directory of the com TLD
you can add records to a tld the same way you would to a “subdomain of a tld” commonly referred to as a regular domain name
see this
the concept of a valid domain is somewhat misguiding
since what is and isnt is dependant on your dns provider
punycode emoji
I think we're talking about two different kinds of valid here no?
like is this actually spec compliant
in terms of "valid" domains as in, what can you register, https://com/ could never be registered
i could have what 
ah yeah, you couldn't register that but theoretically speaking a browser would be able to resolve that if someone added records onto com
the com tld itself is managed by verisign, so perhaps they internally have the domain https://com/ or https://com.com/
but yeah
what you “internally” have does not matter, it depends on what the dns server says
it's just like email adresses. Trying to validate them, really validate them against the specification is insanly tricky (and pointless)
foobar@[192.168.2.1] is a valid email adress
so if public dns servers don’t say that com resolves to A 10.10.10.10 it may as well not be a thing
seems like the definition of "valid domain" is unclear in this conversation
who here has actually read rfc1035 or something
i have it open
sadly I have in the past
que suerte
random somewhat-related fun fact: comparing or hashing URLs in Java causes DNS lookups 
Oh thats spanish
so many langs have url objects that do dns lookups its annoying
I was trying to translate it as french and was very confused
I'm building a mini LM just cause I want a break from my large LLM and idk if 3.96M params is a lot cause I'm used to working with my large LLM (175.6B params)
num_layers: 16
num_heads: 16
embedding_dim: 128
vocab_size: 3152
3.96M params is very tiny, that's not gonna be able to do much
are u guys talking ab domains?
I'm aware, I just want to take a break from my giant LLM and work on something tiny
shit im late 
But now I know, thank you /gen
whats the expectations
Well, even on the size range of tiny language models, 4M params is tiny
For comparison, NeuroSynth-BETA-X series is 100M params
Just to be able to finish sentences that are cut off
end my suffering
Fair enough
4m is good enough
For just basic autocomplete
yeah superbox said "com" is a valid dn 
it is
it is technically valid but cant be accessed
Alr
so it's valid, but can't be accessed mhm
does anyone know why gdb asm layout always displays a repeated add instruction 
Chat i swear the chemical composition is insane of this
How is
Fluoride gel of 25 grams almost 20 bucks
Elaborate
you don't know what i mean?
i do not (though admittedly i also don't use gdb usually, or at least not directly)
sorry what is a "Domestic sludge"
it's always there 😭
the NIST reference materials
an infinitely repeated add instruction at the end of any program i look at
"standardized poop"
expiration and storage details, and instructions for use
you can even buy standarized bars of chocolate
Also, xyz domain is usually cheap
sounds like gdb not being aware of some byte pattern past the program and it interpreting it as assembly but i don't think i've ever heard of this specific one
the same thing appears in yt videos too though
asm tutorials having the same non-existent add instruction
gdb is silly
what's the actual instruction (the whole thing)
Because gdb hates you specifically
because executables have padding in them and gdb is dumb (i think they have a mode specifically for this problem)
there's disassemble <function> i guess
I'm allergic
Also
Anyone down for 80 hour work weeks

"padding", suuuuuree. gdb is trolling me, there are an infinite amount of those non-existent adds showing up
maybe, who knows
should have included DWARF in the binary
80 hours/week? As in, more than 10 hrs/day? Wtf
would the debug sections actually fix that
i'd hope so since it presumably gives gdb extra info so it knows when to stop 
idk even know what the debug SHTs are, there doesn't seem to be a debug section header type
i'll have to compile a program with debug sections and check their sh_type
i do have a program that doesn't have the fake adds in gdb, but i don't see any debug sections in the section header table
It better be, im poor (for now)
Well, apple developer is yearly fee. So there's that
Apple not only fucking up customer but also developer
alright, sh_type = SHT_PROGBITS (0x01)
I wonder who this is 
Anyways the website wont load well on this croatian wifi, how mush does the plush cost?
i see, the program has eh_frames, which are based on DWARF or somthn
Ah its 30 bucks
daily reminder that javascript sucks
massive difference depending on shipping
mine for example was fairly okay at like a few bucks, came out to 38.83€. But people in Canada have insane shipping cost if I recall
yeah, basically any site someone talks about on stream will be bought and used for shady shit. it sucks
it was bought back in april it's not even from the stream mention
Here is some totally normal c++ code that certainly doesn't include any warcrimes or scuffness whatsoever 
#include <utility>
namespace clas::clas
{
class classs {} classs;
template <typename cllass=decltype(classs)>
class clas : public ::clas::clas::classs {friend class classs; public: enum class calss { clas, classs, clasclass }; union {class ::clas::clas::classs clas; enum class calss cals;} clas;};
using clasclass = std::pair<class ::clas::clas::clas<class classs>, class ::clas::clas::clas<class classs>>;
clasclass classclas;
class ::clas::clas::clas<class classs> claas(class ::clas::clas::clas<class classs> clas)
{
auto classs = decltype(clas)::calss::clas;
return classs == clas.clas.cals? ::clas::clas::clas{clas}:clas;
}
int main()
{
::clas::clas::classclas = {::clas::clas::claas(::clas::clas::clas<class classs>()), ::clas::clas::clas<class classs>{}};
return 0;
}
}
int main() {return clas::clas::main();}
it does, but mobile doesn't support it (if you're on mobile)
return classs == clas.clas.cals? ::clas::clas::clas{clas}:clas; is definitely my favourite line
Its all class? Always has been
i think it's vanor
Vanor this you?
He wouldnt mind being pinged would he?
One way to find out really
finished my 286 commit rebase. fml
I hope you guys are having a better day :D
cause I started that one uh... 5 hours ago
No, we only come out once every blue moon
R u being lockdown😭
Its just a slow evening ig
In a dream, you're telling the story.. to yourself.
Yet you still fall for all the plottwists???
what

Ahh yes, the ultimate enemy of CodeParade. The traditional rendering pipeline
Where he tried to use that same rendering pipeline for non euclidean game and 4D-5D game
isn't the pipeline in opengl dynamic
as in you can change the shaders
whereas in vulkan the entire pipeline is static
Kinda, you have to enable an exstension
Wut?
So no compute shader?
If you enable that one exstension you can use a vertex shader with multiple different fragment shaders
no i meant you can't just swap out the shader freely, you have to redefine the entire pipeline
i could be lying

no, static as in you have 1 pipeline per shader
not really a big deal
Ohh, got it
if you want another shader you just use another pipeline
Btw, new acerola video

Tried to copy the link, copied the discord message
Uhhh
To try everything Brilliant has to offer for free for a full 30 days, visit https://brilliant.org/Acerola/ or scan the QR code onscreen—or you can click on the link in the description. You’ll also get 20% off an annual premium subscription. #ad
Generating entire worlds sounds like so much fun, but where do you even start?
Topics covered: D...
E
Also, I have decided that cross-platform mobile development is a nightmare anyways. So I decided to ditch that
good choice
are you also packaging natively for mobile
I can only wish you good luck in that endeavor
truly
Maybe, I'll see
Mobile can do c++ compiled shit right???
With sdl
Yes
The funny internet man delivers good content as always lol
Real chads implement it themselves
You know what? Ironically I think doing a game engine will be easier than making a GUI app for some data
ooh terrain
speak for yourself
I have no motivation so i keep just finding the most roundabout way of doing simple things
I don't even have one 
@wary rover you may be interested in this mechanism https://www.youtube.com/watch?v=-QTkPfq7w1A
How an unlikely physics paradox controls these counterintuitive structures. Use code veritasium at https://incogni.com/veritasium to get an exclusive 60% off.
If you’re looking for a molecular modeling kit, try Snatoms, a kit I invented where the atoms snap together magnetically - https://ve42.co/SnatomsV
▀▀▀
A huge thank you to Paul D...
my neck hurts
there's no way
how is the 5050 still worse than the 2060
Bros did 0 upgrades
wtf 
I find it funny how
Nvidia had to discontinue the good 3050
To sell a shitty 3050
With 6gb
Meanwhile chinese hardware modder are pulling all of those VRAM to make some unholy GPU frankenstein
Waste of sand
Grab the GN Original Modmat in limited reprint now! https://store.gamersnexus.net/products/modmat or our Copper-Plated Mule Mugs: https://store.gamersnexus.net/products/gn-copper-plated-stainless-steel-mule-mug-thermal-conductivity-of-copper
NVIDIA announced its new RTX 5050, which we think furthers NVIDIA's manipulation of the consumer with exp...
😭😭
i thought they just cut off/desolder the gpu die
and solder it onto a custom board
and source the vram themselves?
Yep
That too. They basically made custom PCB and get the component from existing GPU because it is cheaper than buying the GPU with more VRAM in the first place
it wouldn't make sense otherwise becaue like where are they getting the other half of the vram from
It is one thing with yesterday cursed mathematical curve, it is another thing entirely when said curve is actual physical / empirical phenomenon
you get two 4090s, you have 2 gpu dies but vram for one only
Yep. But I think with enough time they could find a way to get VRAM IC too
i'm saying they 100% do source it themselves
I mean their homebrew x86 CPU is now around 5-3 years behind
oh you mean domestic production
Yes
i don't think they're banned from buying vram modules
But I don't think they're readily available either
self awareness
Halting problem be like
That video has misinformation.. all 4 glasses i have don't do the snapping
Glasses?
👓
It is there but it's subtle. Otherwise if the hinge is free-rotating it wouldn't feel comfortable when you put it on. If it doesn't lock, then either the hinge is broken or it is a design decision (which I can't fathom why)
Well i have 2 raybans 1 ralph lauren and 1 DbyD. None of them have it, they rather go for the stiff hinge approach where it doesn't move much cuz you move, cuz the hinges are stiff, well except my raybans.. they tend to get unstiff pretty quickly, but i don't really find them uncomfortable
Yeah, stiff hinge could also be an option than locking one
My raybans are really loose atm tho, as i said before and those are the ones i wear the most, since those are my regular glasses
The other 2 are sunglasses
that shouldnt be embedded in there
hm
i can save bytes
nvm i already strip it on release builds
specifically ReleaseFast it appears
i do not strip it on ReleaseSafe
safety 
Any moving mechanical part will eventually experience wear and tear. Even the snapping hinge will eventually lose its snappiness. Just a matter of how many cycle it will take.
its not really unsafe to do the extra stripping i do on ReleaseFast
it just may have unintended effects that i havent tested
also prevents you from objdumping the binary
that made it fit on the screenshot 
user@linux ~/c/lily-0.2.0 (0.2.0)> objdump -d out/x86_64-linux/main
out/x86_64-linux/main: file format elf64-x86-64
what a great disasm
2... it took 2
how long does this take btw
perf stat it perhaps
Due to how stiffness is usually achieved, I am not that surprised
Wait
also it doesnt work when reading from a file 
50x less branches and 20x less cycles would do that
i saw it
main := fn(): u8 loop {
chr: u8 = 0
out := arch.sys.read(arch.sys.fd_stdin, &chr, 1)
if out == 1 {
_ = arch.sys.write(arch.sys.fd_stdout, &chr, 1)
} else if out == -1 die else if out == 0 return out
}
read a single char unbuffered
so fast
i have many talents
it makes sense that async reading 1 file is slower than sync reading it anyway
when you have to hit a note 2 seconds after you see it, you learn to see the future
right
39136 /usr/bin/tee
i dont see why tee is so large 
after all mine only 261 bytes
idk how to fix reading from files, worst case i'll write some assembly for synchronizing threads and use blocking reads
probably nothing to do with what man tee says 
wow this is a fun tool
surprising that tee actually seems slower at reading files than this
its totally the overhead from starting the binary
try larger files
that's cheating
dd if=/dev/random of=/dev/stdout bs=1M count=1024
i dont know what you mean 
Why stdout. Use it as the name it should be. Disk Destroyer
dd stands for "convert and copy a file"
you can remember it by the easy acronym dconvert dcopy
dd stands for no one, it is a command
please dont get nerdsniped into beating gnu yes performance
i can do this one
TIL this thing exists on my system
Why
its useful
main := fn(): never loop {
_ = arch.sys.write(arch.sys.fd_stdout, "y\n".ptr, 2)
}
how do i measure y's per second
i should use io_uring to write y's concurrently
thats not what concurrency is for
each file is still sequential
for bigger writes use bigger buffers
im not going to post the results of this

how do you optimise the outputting of y\n aside from buffering
write more of them at once
that's cheating 
im gonna make an 8kb buffer and spam those
ok now im also at 500M
$buf_size := 4 * 1024
main := fn(): never loop {
buf := target.alloc(buf_size).?
target.memfill(buf, "y\n".ptr, buf_size >> 1, 2)
_ = arch.sys.write(arch.sys.fd_stdout, buf, buf_size)
}
there you go

ignore the memory leak
the kernel wants to give me 8KiB of memory 500 million times a second
erm why not just move it before the loop
that's cheating
at some point you gotta learn to cheat 
also wait a minute im not allocating the buffer 500 million times a second
otherwise my pc would explode
you're doing it 128k times a second or something

dangerous yes function
its not dangerous its just a good test for the oom killer 
Thats a lot worse than me
its ok i would just have to move the allocating outside the loop
but then its no fun
i dont think my system has an oom killer
i am the oom killer
konii thats a big responsibility
konii-oomd
oom killer, with oom pronounced as uum
electron
electron
electron
discord, vscode
i have zero electrons 
clearly you should delete those
ermd, it's an oomd that plays erm sfx when it reaps a program
reminds me of https://github.com/storax/kubedoom
(and psdoom)
this is chaotic
oops wrong kubernetes pod

wont even fit in one disc sector.....
yippie
not yippie
it should be smaller
why is there a memcpy in here
oh its my programming
nevermind carry on
if anyone is interested in the asm for whatever reason
ever since i started handling alignment in memcpy it's gotten a bit larger

also forgot to mention but if you use separate home and / subvolumes i recommend setting the compression on / to zstd:15 and on /home to regular zstd, since / is written to relatively rarely
maybe your / is rarely written to
if you have /var you can create a separate subvolume for that too
bwa
either way personally i just use zstd:15 even at /home (or, well, did, before i switched to bcachefs)
Im working on some things in python
And i will propably publish them
But i have to lvl up first
Becouse I can't add picks or files
Why...
I was just getting started on the undo-redo solution that I thought of, only to find out that once again it has already been done for me.
time to figure out how to use this properly I guess.

Attempting to add voice cracks to tts (plugin) as a fun little side project and like 80% of the time it just makes a "hhhhhhhhh" sound instead of what it needs to do
womp womp !
Oh that, yeah
you can use node as a backend for tauri iirc
but no one does and you have to ensure the user has node yourself
the whole point of tauri is swapping node for rust

No better than what python does IIRC. They also have a framework that ships a (watered down/portable) python interpreter intallation
electron ships chromium and node, tauri doesn't ship anything
you get a native executable
that renders the os webview
I wonder what is the best way to handle native GUI app. HTML and CSS prevalence I think partly can be attributed to the ease of learning on how a GUI could be designed
for web devs i would say react native if it supported linux
No, like, have you seen QML? A DSL to make QT GUI
i have unfortunately
That sounds horrendous
Yeah, I am wondering how would an optimal GUI DSL looks like. Does separating markup, styling, and function really is the way to go or is there a better ways to do it
but also it's not much different from flutter and dioxus and i imagine many others
Because HTML+CSS+JS fits exactly that pattern so maybe I am biased because of it
asking for an optimal gui dsl is like asking for an optimal programming language
its dependant on usecase
jsx 
No. Vue SFC ftw
fake words
no
I'm sorry but for/if as attributes is NOT it
as a compromise everyone should just use lisp
But why? Do you want to manipulate the markup during a loop?
which one
why should you not be able to? also you absolutely can with ifs
emacs lisp
that'll teach them to never again replace scheme with js in browsers
One of the best or worst parts about scala depending on who you ask is how easily you can make DSLs with it 
Wtf I can't English
rewrite gnu coretils in hblang
no. posix bad
I am in the camp that markup should not be changed (added/removed) during iteration. The state to render the markup is what should be changed. If a data should not be visible then filter it before attempting to display it
look i already hated scala at first sight many years ago and avoided it like the plague, now you're telling me people are putting dsls in, seemingly often too?? absolutely disgusting
if only comptime didnt stack overflow when i throw basic monads at it
stop doing recursion then 
scala is beautiful its my favorite jvm lang
wrong reply but ok
You configure sbt through scala too 
https://git.ablecorp.eu/chayleaf/hblsp/src/branch/trunk/json.hb theres like 0 recursion in here
one would think it's clojure or something
my lord i havent read this in a while
Seq := fn($A: type, $B: type): type return struct {
Res := ParseResult(SeqRes(ParseRes(A).Out, ParseRes(B).Out))
parse := fn(allocator: @Any(), data: []u8): Res {
res := json.parse(A, allocator, data)
if !res.inner.is_ok {
return Res.err(res.inner.expect_err("error in Seq"))
}
left := res.inner.unwrap()
res2 := json.parse(B, allocator, left.data)
if !res2.inner.is_ok {
return Res.err(res2.inner.expect_err("error in Seq [2]"))
}
right := res2.inner.unwrap()
return Res.ok(right.data, .(left.res, right.res))
}
}
no wonder the compiler is having a heart attack
i dont blame it
i do
the compiler should go on strike for this
compiler is always wrong
only 1 accepted compiler so its right by definition
the customer is always right
imagine if compilers were just tiny people who translated your code to asm
you dont want me to implement a lisp vm and make the lsp in that
please 
first async monads in json parser, then lisp vm


they arent async in json parser 
what's the assembler then
mhm
hi does anyone want me to send them a copy of yes for linux x86_64
this is just yes and totally not the entire coreutils believe me
dubious 1.41 MB file
its yes
i believe you
do you have one for darwin ppc64
absolutely not
rewrite it in rust 🚀 🚀 🚀 🚀 and watch the binary size increase blazingly fast 🚀 🚀 🚀 🚀 🚀
wait someone compile uutils
how big is it
fake programmer
for completely unrelated reasons heres another yes i wonder why its of a different size
also who says I can't both be on my bed and on my pc at the same time 
hmm
i dont trust it
My cat only weight 39K
its yes
12M on windows
Nah, she's good
a
How long until we reach the GB mark
unzip -p totally_not_a_zip_bomb.zip | cat
brb gonna go implement yes with precisely zero branches and one too many assumptions about how much people say yes

ok but you need to beat 500M y per second
thats what im getting from hblang-yes


program simple, but effective
how are you benching it
i would tell you if my computer wasnt being repossesed by 5 mosquitos

smh konii that's what happens when you miss your computer payments
its ok you can killt hme
it was like yes | pv -l >/dev/null
they wont take your money if they're dead
they dont bite me because im barely a living creature
but they do spook me
ive placed some blue lights outside to draw them away but its having a bad effect on the local bug life

oh thamks you spider web
this is not the same output
Now pv is something I've never heard about and it didn't exists on my system
Unlike yes
oops i destroyed a mosquito with the power of the sun

idiot bug flew into the radiator
do not ask why i have a radiator on in this weather

Why do you have a radiator on in this weather?
for frying mosquitos
3 down 2 to go
Hmmm, free protein
i will employ ballistics
larger scale is needed for that
you wont get much protein from just a couple mosquitos
imagine having to deal with mosquitoes
i live in south africa (lie)
Siberian mfker
ive misplaced a mosquito
i live in siberia
this is deeply unsettling
and i do have to deal with mosquitoes
Antartic mfker
but also in the city they wont bother you nearly as much as if you go into the fields
londom also has no mosqutioes
when i was in vietnam in december i wasnt bothered by a single mosquito which i found weird
too many emissions, they cant use CO2 to find people and just die

i thought i relocated mosquito 5 but it fled

fugitive mosquito
do you have your windows open
i cannot reach them
guarded too well
i found hit and lost the fugitive mosquito
good luck
if I leave my window open on the wrong day I get a dark haze on my ceiling due to bugs
sometimes there are none sometimes there are unending volumes
add a window screen ?
this is what i was doing
best investment i've made, my window is just perma open during summer 
i have a screen on one of the windows but i never open that one, for some reason mosquitoes do not like me
@tender river
pipe python stderr to dev null
besides i have ac 
The window on my room goes directly to the kitchen stove
this is all the proof i needed that python is faster than C
the 6 second bench
what am i looking at
i guess i could run it through steam-run
idfk
I used to write something much simpler and it worked
and then when I added another option it didn't
yemen
im stupid
hi stupid
sometomes nix-ld just doesn't work 
hi 
its a static binary
anyway steam-run doesnt affect performance
i know this is probably unrelated but i hope you're aware you're making a full copy every time you do ...docsOptions
seems the computer is the problem
It doesn't work anyways so I'm probs gonna delete it
i ran it through ld-linux.so by habit but i forgot that nix's ld-linux.so is just a shim that complains that this is a bad binary
i propose a solution: nuke nix. dockerOS when?
So LXC?
it is a bad binary, its 500 bytes of pure ELF malice
its called ostree
white
ostree 
we don't need ostree when we have glorious docker
one giant docker compose for the whole system 
why
Sam is gone for a day and look what happened
the docker compose in question
services:
system:
build: .
We have Nix at home. The Nix at home:
yes
looks like that is indeed the answer
i wish i never picked up NixOS, ignorance is bliss 
I guess I have an excuse to run harmful files online now 
bwabwabwa
i wonder what i should do
guess i'll start another language
(i have a bunch of stuff to do at home but im not at home atm)
ok smart konii give me another idea
something something hblang
how am i supposed to implement an lsp without string constants smh
you have string constants 
lily.{log} = @use("lily")
X := "a"
main := fn(): uint {
log.print(X)
return 0
}
if only this worked....
orm
(also you should push lily at some point)
0.2.0 branch
it exists
but im sitting on changes yeah
should i send prs to 0.2.0 or trunk
0.2.0 has no features yet
so trunk i guess
i really should have moved trunk to 0.1.0 and started working on trunk
i'll just keep the extra functions in my tree until you're done
oops
not too late for that
Screeps
its $3.5 do i look like a millionaire to you
And demolish Shiro while you're at it
Well, there's always spacetraders.io too
i like how openai made chatgpt prompt the user
Huh? What did they do now?
I'd like to see you try*
-# *I have no units capable of combat
im so silly i cant believe the kind of ideas i have
SAT solver: the game
time to see how my screeps are doing 
They're all dead
You've failed them as their overlord
such a funny paragraph
Chay, what is your opinion of this language? Will it be the next big thing?
https://github.com/TempTempai/AWA5.0/blob/main/Documentation/AWA5.0 Specification.pdf
my opinion is that im tired and wanna sleep 
My opinion is Awa
make sure to get your screeps going before bed so they make progress overnight

awawa
Happy birthday 😄
sorry this language is written in typescript

mrr
p mrp meow
i have been seeing too much bayesian theory recently
my head hurts
everything seems to be some kind of intractable distribution

celebrate shiro day
no 
little known fact but every shiro day is funded by shiro
please donate

It's also everyday so it's very expensive
guys it happened

#programming when the Sam is gone
I didn't intend to write THE, but that works out fine too lol
Yeah seems about right that as soon as he leaves this place becomes lively
But also increasingly cursed
No need to dumb down how cursed we are being
Although to be fair, he did post cursed c++ too
I did my fair share of cursed today, but it is outside the field of programming for the moment
Since I decided to mash theoretical physics, magic, and extra dimensional horrors into one project.
Oh yeah, eventually I'm making this into a game engine
Ahh, fighting the traditional rendering pipeline too I see
4D engine can also be used for NDimension btw
I'm not trying to expose the extra dimensionality of it much. What I am using it for is some convenient values and a very very fun way to bang my head against the wall.
We love walls of text
"Convenient value" and "higher dimension" shouldn't belong in the same sentence 
Yeah, I'm so fricked
not celebrate shiro day ?
That's normally done in the general chat whenever a wild Shiro~ spawns
My usual dose of insanity
you will now have to live with this cursed knowledge https://hackage.haskell.org/package/plugins-1.6.2.1/docs/System-Eval-Haskell.html
You have no idea how much this made me age
I'm in gen Z smh
I'll take it
endless bug bashing in my screeps ai
builder ai was pretty buggy but thats a given since its the most complex
added some more statistics to track our energy expenditure too, not just gain
oh oh i have a fun programming problem
given a room with some impassable terrain and a few fixed exits along the extremities, it begs the question of where the best place might be to construct fortifications
there are probably chokepoints which would be more strategic and resource effective
in the past, my algorithm was to lean on pathfinding for this task
denote that a successful path ends within 4 tiles of any room exit tile
and then attempt to find such a path starting from the room controller
if it can be found, then place a wall on the end tile
otherwise we have all the required walls 
this builds nice rectangular boxes around the map exits at a certain distance but its not super efficient
Depends on the fortification overall cost. Not just in terms or resource but also to build it at that place (if its not done instantly)
the answer is, it's complicated
Indeed 
walls can technically be built "instantly"
but at 1hp
they must be repaired up to whatever health you desire
and then maintained, as they slowly lose hp over time naturally
What is a good heuristic to determine the importance of passable terrain I wonder
all good questions
actually
i just had a genius idea
holy crap
brain blast
here's the idea
Is it graphs

heres my room for example
the idea is
find a thin segment of the impassable terrain
adjacent the area you want to close off
define a start node and end node nearly adjacent each other
then set up pathfinding costs such that the tiles between the end and start are impassable
normally passable tiles are extremely high cost
and normally impassable tiles are relatively low cost
then pathfind from start to end
So basically rather than checking out every advantageous combination, you pick one and then protect it
iterate over all nodes in the path found, and any that are in normally passable squares need walls put in them
in my room, that path might look like this
where it is happy to cover long distances over the impassable terrain to get to small gaps in the passable terrain
So invert path finding
yeah basically
would allow you to generate such a wall plan with a single pathfinding call
Then use an evaluating function or something to balance ratio of building to space protected?
thats a good question
every room has a room controller, so i would probably just search for the nearest wall to that
and then start my pathfinding from there
its a central important structure
seems reasonable enough to ensure it's inside the wall
if roads are constructed to the other important locations before the wall is generated, you can put ramparts (doors) over existing/planned roads to effect egress
actually thats a tricky question, how to know where to put doors to avoid cutting off exits from yourself
the doors are much more costly so you want to minimize them for sure
Designated target areas that must be possible to path find to
And if the proposed walls violate that its invalid and a door is required
minimal pathfinding calls would be ideal
pathfinding is pricy and im on a tight cpu budget
If you can map each stretch of wall, you could force one door in each stretch somewhere
Oh, I got the algorithm now. You should also define a max span/length since it will break apart in an open field
Or not if you do want to block the entry/exit as closely as possible
i don't follow, can you offer an example
Will there ever be a case of room with open side?
there are holes in the sides of rooms, these are how you navigate between rooms
im not sure if there are size constraints on them
Yeah, that's what I meant earlier by open field. Basically no terrain wall. But I doubt it will happen
i have found a small flaw in my plan
the end and start nodes are only separated by like 3 empty tiles max
so that'll be the shortest path most of the time
Then specify the minimum length required
You could also do a little trolling by considering the tile near start/end a very high value
true, maybe i can increase the price of empty tiles near the start/end
You'd define a space to wall length ratio in that case
And set a minimum
i dont think i can do that if i want to use the built-in pathfinding engine
it only offers facilities for specifying max size
maybe i should just set all structures as impassable
In graph theory, a flow network (also known as a transportation network) is a directed graph where each edge has a capacity and each edge receives a flow. The amount of flow on an edge cannot exceed the capacity of the edge. Often in operations research, a directed graph is called a network, the vertices are called nodes and the edges are called...
encloseAreaPath: function(room, startX, startY, innerDirection) {
const costs = new PathFinder.CostMatrix;
let terrain = room.getTerrain();
for (let x = 0; x < 49; x++) {
const xdif = Math.abs(x - startX);
for (let y = 0; y < 49; y++) {
if (terrain.get(x, y) & TERRAIN_MASK_WALL > 0
|| _.filter(
room.lookForAt(LOOK_STRUCTURES, x, y),
(struct) => struct.structureType == STRUCTURE_RAMPART
|| struct.structureType == STRUCTURE_WALL
).length > 0) {
costs.set(x, y, 1);
} else {
const ydif = Math.abs(y - startY);
//room.createFlag(x, y, null, COLOR_YELLOW);
costs.set(x, y, Math.max(20, 255 - 40 * (xdif + ydif)));
}
}
}
for (const struct of room.find(FIND_MY_STRUCTURES).concat(
room.find(FIND_STRUCTURES, {
filter: (s) => s.structureType == STRUCTURE_ROAD
})
)) {
costs.set(struct.pos.x, struct.pos.y, 255);
costs.set(struct.pos.x, struct.pos.y+1, 255);
}
let x0 = startX;
let x1 = startX;
let y0 = startY;
let y1 = startY;
switch (innerDirection) {
case 'left':
for (let dx = 0; dx + startX < 50; dx++) {
//room.createFlag(dx+startX, startY, null, COLOR_RED);
costs.set(dx+startX, startY, 255);
}
y0 = startY + 1;
y1 = startY - 1;
break;
case 'right':
for (let dx = 0; dx + startX >= 0; dx--) {
//room.createFlag(dx+startX, startY, null, COLOR_RED);
costs.set(dx+startX, startY, 255);
}
y0 = startY - 1;
y1 = startY + 1;
break;
case 'up':
for (let dy = 0; dy + startY < 50; dy++) {
//room.createFlag(startX, dy+startY, null, COLOR_RED);
costs.set(startX, dy+startY, 255);
}
x0 = startX + 1;
x1 = startX - 1;
break;
case 'down':
for (let dy = 0; dy + startY >= 0; dy--) {
//room.createFlag(startX, dy+startY, null, COLOR_RED);
costs.set(startX, dy+startY, 255);
}
x0 = startX - 1;
x1 = startX + 1;
break;
}
const path = PathFinder.search(new RoomPosition(x0, y0, room.name), {pos: new RoomPosition(x1, y1, room.name), range: 0}, {
roomCallback: (roomName) => costs,
maxRooms: 1
});
return path.path;

anyone majoring/working in data science ?
I have to get research papers and analyse them for my college project and Idk where to start
So if y'all know where to get new research papers and maybe some recommended topics to work on/analyse that would help me a ton
thank you, please dm me if you'd like to help !
Also Kaggle and Huggingface
Sci hub has a lot of papers
Also means opens a lot of headache
nah
its a huge enabler
it means i can run periodic expensive operations
even if they exceed my 30 CPU per-tick limit
good morning
gmgm
how are u shiro
not too bad 
confusing myself with the Algorithms
turns out pathfinding for creating walls is kinda awkward
units can walk along diagonals
and since two diagonals can cross without intersecting
filling a diagonal with walls does not prevent a unit from walking through said wall
need to modify the wall placement code to address this
that way it fills all the gaps
Hope you'll dreams of screeps 
Goodmorning 
can i self promote
i want stars 😭 on my repo
small project i made for fun im just starting out 😭
So...
Officialy according tonthe rules you cant
And rule 12 is no loopholes
But there is a loophole that people have use accidentaly
If you just talk about the topic of your repo, then posting your repo wont seem weird afterwards
The thing is, this ussualy wont give you stars
I still haven't terrorize your repo... yet...

oof
its just aesthetically pleasing i mean its nothing
it just prints a quote in your terminal

yeh
theres a bug it works with vs code
so i call it a feature
ccuz its a termminal in the end so
also forgot to mention, I just finished my data analytics degree
well hopefully anyway
woah congratulations
I should make a github actions that automate the whole process of terrorizing Sam repo 
just add sonar cloud with everything enabled
it'll be a nightmare
5950x - $276
7900 - $342
which one? what'd ya think?
already have AM4 mobos though. planning to get 2x32gb.
can u calculate the statistical probability with big data of me touching grass
Only with sufficient prior data
but based on your behaviour, it is very low, though with a very wide 95% CI

Can't wait to touch grass some day
why??? you dont have to have stars you know...
i mean everyone wants stars
who????
its like likes but on github
it pushes you in the recommendations algorithm and maybe search
thats it
for most people they wont get enough stars for it to matter
it will just be on their profile like "wow look this person has 5 stars on their project isnt that crazy" nobody cares
maybe employers do
(i dont think most employers care about github stars but maybe it can be a small bonus, not at the scale of 10 stars though)
its just vector maths,
if anything intersects the AB Vector from point A to B, then it shouldn't be allowed through.
AB is a multiplier so, if its a 2D vector, you can just tske the X coordinate and divide it by the X of AB vector with respect to A, if you do the same with Y and don't get the same result then you're not intersecting the wall and hence you're fine
if you are, then you need to be pushed away from the wall
was getting real close to completing implementation of auto-saving for forms even when incomplete so they can be returned to and completed later
then docker just decided that it doesn't FEEL like keeping my containers running
Time to restart ma PC
"ts pmo"💔
i have no idea where that dlmon4k react is
and it just sends me to random channels
discord has a flawless mobile app with no bugs whatsoever
Simple fact of life
Simple fact of life
Simple fact of life
bwaa
bwa
you can say that to most big-corpa mobile apps that connect to another server for text communication
like social media apps
I have decided yall need to see the black mountain
that's so pretty
I wanna jump in that water ngl

what if

Was a metaphorical piece of expressive art for all victims of the titanic that drowned and floated at the surface

And the artist wants to bring awareness to the cause by utilizing a well known online character
Theres no wifi in the mountains so ill be going dark again 
Wait, you're on Phase Connect discord too?
it seems so
i'm afking in vc rn
Ahh, I only hangout in awawaland so maybe that's why I never see you
Is this going to be the pitch behind the NIUH coin?
Enjoy the trip rather than playing with your phone at all times dude
yes
Is that your view? That’s pretty nice. I’d post mine too but I’m worried about getting doxxed. 
Only neuro could dox you from niche geographical feature
Or competitive geoguesser I guess
Nah my view is a panoramic view of the town I live in and ocean, along with easily identifiable hills. that would be easy af to dox 
he’s on vacation in croatia
Oooh
living next to the sea/ocean must be really cool 
No
In fact it has very high humidity
Hmmm, maybe because I live in the equator too
Yeah but like, here it's all year long
i don’t mind it
Either the humidity is high in sunny season or high af in rainy season
trust me it’s better to have high humidity when it’s hot than to have high humidity when it’s -15 celcius outside
I guess yeah, I lived there nearly my whole life tho, I moved from Hollywood when I was like 2 and don’t remember much of what it was like to live inland. It does get humid tho
because the humidity makes it feel like -30
if not worse
It depends where you live tbh
you don’t have -15 celsius outside in most places tbh
idk kilometers sorry
5 degrees
On the beach? Damn that’s cold af
It’s usually around like 70ish degrees where I’m at and it doesn’t change much from seasons.
Mhmm, here we experience 30°C daily (around 90F?)
i mean it’s 1300 km to the closest sea from where i’m at so i wouldn’t know







graph theory
