#dev-general
1 messages ยท Page 429 of 1
what's a type hint?
def blah(a: string)
It's not static typing afaik but it's enough that IDEs can produce an error
the problem I have with languages that force dynamic typing is that dynamic typing is an inherent property of static typing
so you should be giving your users a choice to use either
what I mean by that, is you can achieve dynamic typing in static languages
but you cannot achieve static typing in a dynamic language
Which?
Only one I can think of is typescript**
java can do dynamic typing
Replicating it in java is painful though
yeah, so that's a problem
but it's a problem that should've been tackled by these languages
not simply ignored
imo a better way is less restrictive type systems
frankly I'm not sure how it would be achieved
hopefully someone smarter than me in the future can figure out a way
well this is kinda what we tried to do with elara
where you can have anonymous interfaces, and any function just uses that interface as a type
elara ๐คฃ
that's one way
Yea I mean elaras way is nice, but getting it to work on the jvm properly is just hell
I'm not sure it's impossible
if you want you can put a contract
Not impossible, just unreasonable
invokedynamic exists specifically for dynamic typing on the jvm
Interop
true
add elara to graal
๐ฎ
I swear bm knows everything its kinda sus at this point.
yep
yeah he knows too much
literally everything
๐ค
bm how many references are there to a particular class (class itself, or it's path) in a urlclassloader
no cheat
you've got 10 seconds
bm what is 17264 * 234
ok so looks like he doesn't know everything
pretty sure it's 3
no cheat
Darn
Rip
I have a strong feeling it's 3
big
๐
When did the dev create the universe?
a while ago
What version are we on?
v2021
Prophet Monad
๐ฎ
how do we know Simon isn't the 2nd coming of Jesus?
๐ฎ ๐ฎ ๐ฎ
what language(s) were used when creating the universe? 
^^
Elara
but what was before 0 then? Beta?
Yes
oh yeah elara is a big one
what was the first version
Mhm
0.0.1 Alpha
BM when's that java tutorial coming? xD
Earth v3021
yes pls bm
๐ฆ
ok then remember ๐
ok
Bm whats the shortcut to switch between v desktops?
win + tab maybe?
when is soon
I don't actually use them so
2 months?
Probably less
Doesnt seem to be it
tomorrow ๐
It shows displays on win + tab
winkey + ctrl + arrow key i think
Not on windows dkim
fun fact virtual desktops originated in linux like over a decade before windows I think
๐ฎ
yeah like most things
Got everything setup ๐
D:
No you don't
ew imagine not having discord
you should've tried out sublime
ur making all the wrong decisions smh
Stop fucking screenshitting
๐ฅฒ
first u choose manjaro instead of neon
is that a red curtain
now ur using vscode instead of sublime
Ill use sublime for web dev piggy
use Emacs
Vscode has better integrations for haskell
๐ฅฒ
got bridget r u an emacs nerd now
Kinda
doesn't haskell have an lsp?
Maybe later
Yes
Rn vscode works
then how does vscode have better integration
the functionality is dependent on the lsp not the editor (so long the editor can fully support the lsp, in which case I think both sublime & vscode can)
lsp?
language server protocol
works flawlessly out of the box in Emacs
unless vscode has extras ontop of the lsp?
Not so much in vim
Seems to have integrated documentation which is nice, but that might be a lsp thing
โน๏ธ
Java bad
potato pc
I mean this works, dont think theres going to be a big diff with using sublime
Use electron
i actually like atom a lot for doing a lot of simple configuration stuff for repos
Atom looks really nice but boy is it slow and heavy
can't really understand atom's popularity
Dont make me switch to kwrite ๐ฅฒ
It's not very popular anymore Afaik
Piggy the popularity is just because of the looks, people loved how it looked when it was released
But it's way too heavy and slow so people stopped using it
but I swear it basically looks the same as sublime with material theme
haven't looked at in a while
but back when it was first getting popular
uh
Did sublime have material theme back then?
but why
well i was originally using brackets before i got my student dev package
for web dev
I remember trying Atom, Sublime, and Brackets, only liked how Atom looked, but then again i had no idea about material themes back then
notepad++ was the first editor I got and it served me very well
Brackets was the worse
So what do you use now Matt?
Why would anyone ever use brackets
lightweight
I use VSCode
i dont use brackets anymore tho
sublime was the first editor with a "material theme" afaik
Used to
Nice, if I knew how that stuff worked i probably would have stuck with Sublime
I remember trying atom back in the day because it does look nice
and then it started loading
and kept loading
and nah fuck that
lol
Lmao
Basically
I have just a lot of random editors installed on windows
^ thats me too
๐ฅฒ
Then you looked at task manager and it's using 6gb out of your 8gb of ram
honestly notepad++ is solid
does vscode consistently get new features?
autoremove that shit
Yeah
it's on its way to idehood
How do you mean?
Idek what all I have installed
I have a few jb stuff I should probably get rid of
apt autoremove ๐ฅฐ
Like rubymine
๐ฅฒ
yugi is that vscode thing you have installed on linux the same as regular vscode?
I used np++ every day till I discovered vscode
Yes piggy, just without microsoft tracking stuff or something
Basically a build of the open source version
it's the chromium to chrome
ah okie
Star recommended it yesterday
is that code-oss Yugi?
i still use chrome on linux
codeoss?
There are virus variants
chromium is the open source core behind chrome and I think electron apps
Yes but it's open source and Doesn't have a lot of the tracking stuff
Oh really?
Yes
yea
I tried many and ended up with vscode as well xad
that may be why
fyi chromium also doesn't have a lot of key chrome features
what does aur stand for? Arch user repository?
Yes
Yes
lucky guess
Isn't chromium a virus...? 
no
no lmao
No, there are people who use it to build viruses
Ah
Vscodium sounds like the name of a drug for web devs lmao
You can get malicious versions of chromium while installing random stuff
web devs need lots of drugs to enjoy what they do
I got one when downloading a game mod
how many grams you been smokin vscodium
ive been onto 10 pounds
wbu
Selenium uses Chromium lol
Alright because I suddenly found it installed on my pc one day and bitdefender told me it was a virus ๐
I'd need double the dose of a web dev to enjoy that stuff
what's selenium
triple dose. remember we must get higher tolerance
Or rather helps simulate a user
ohhh yeah I've seen that before
my friend is a web developer he can hack into your computer
๐
what
Helpchat hidden agenda
HelpChat propaganda?
Yes
helpchat is gonna become the next google
WHAT are they hiding FROM us!!!
there's a lot of hidden propaganda in helpchat
They are hiding secret haskell tech
see? even the supreme leader is admitting it
its standing by
tell us
crikey
(:
A missile?
Can he fix my fridge?
๐
oh btw yugi I had a look at Kubernetes and it looks perfect
Lmao I remeber the time one of the staf from my old school called me to fix their computer or whatever, it was infected by a randomware tf am i supposed to do, thats the first and only time i've ever experienced one
๐ฎ
I havent finished my course yet
Exams this week
So ill finish it next week
randomware
Ransomware*
does that have like a random chance of executing scheduled tasks or something?
okay it seems pretty straightforward
The guy just formatted and reinstalled windows later on after not being able to fix it
I guess for money we can run an ad on the loading screen or something
lmfao
Cuz if we end up using azure or aws that's gonna be expensive
And maybe donations
what are you up to
Clash remake
clash of clans or clash of code
Code
clash of coc
Yeah perhaps a premium mode: animated icon, more customisation in private games, etc
Yea sounds good
Remake clash as a discord bot, assign a channel to every participant
Yes
haven't stated yet but yeah
Lol
ofc api
pls non shit api
ofc
Lmao
xD
Open source too
Yes
pls not haskell
uhh
smh
๐ง
(:
we might use haskell somewhere in the stack
xD
Go also seems like a good choice though
The api is probably a rest endpoint so it shouldnt matter
Indeed
yes but it's about contributors
ic
you're serious about this bm?
using haskell is kinda like saying "please don't contribute"
I mean
imo at least
True but I think a small part being haskell should be fine
Agree
๐
Bm don't give up on your dreams you can do it
using haskell would just end this quicker ๐ฅฒ
They're not given up, just postponed
end the sufferring quick
lol
I think we need to figure out an architecture and stuff before we even think about languages
Ah yeah mb, you'll work on it tomorrow ๐ฅฒ
what have I walked in to
ur mom
smh
doing it for money
i would love to help but I'm currently being forced to sit through my math tutor summoning demons or something
smh pulse
bruh
what on earth
Wtf is that
๐
also, BM arenโt you in school rn
Greeks would run
as I said, if we used azure or aws that's gonna be expensive
Yes
||(n,n)||^2=n^2+n^2=2n^2->infinity
or GCP
what the fuck is wrong with that pic johnny
I mean bm we can just use a cheap tier initially and scale up later as needed
imagine not having a rpi
I dont expect a lot of users to instantly start using it
does ur teacher not know how to lift up their pen or something
man's stylus is broken
I canโt even read that
it being german and terrible handwriting doesn't help
bm are you looking for a host?
and I thought Iโd seen terrible adult handwriting before, jesus chris
Hetzner good
though I'm not sure whether pure notation is much better
God
can recommend Hetzner and OVH
Yeah
So many lines around
If this scales we'll need multiple
Kubernetes across multiple nodes
one of my classes at school is done remotely because it's very unpopular, my teacher writes with a mouse and it's more legible than that
Except a few who think writing on a whiteboard and streaming it though camera works
bm for a basic host
always look for uses first
Is that the same setup you sent me earlier piggy?
that vps link?
Yea
could be
ah
it's the one I use
you know all the mappings for both client and server are openly released as of 1.15.2 right?
The details are on my windows drive
That obfuscated thing is either a forge or Minecraft's net.minecraft.client
I interacted with it once
why can't you check your windows drive?
Shuting this down takes forever
EnumChatFormat is NMS
you can find the link in versions.json I think it is in your .minecraft folder
Oh I dont think I can mount without messing it up, I have fast boot enabled
oh
deobfuscate it
with the mappings
so you can keep your sanity
and not do a Bukkit and end up with NMS
you know that ain't bukkit right?
@prisma wave going back to the discussion earlier
that's forge
I think I mentioned all my reasons for python hate
do you think my hate is justified or not?
EnumChatFormat lol
what
just use the obfuscation mappings and patch Minecraft yourself if you want a modified client
donโt bother with Forge
youโll lose your mind
the official mappings still expose the donkey coding of vanilla, but itโs far better than NMS and forge combined
oh btw actually, fun fact: Spigot recently switched to using the same package layout as vanilla, instead of it all just being in net.minecraft.server
ok
textcolor?
Adventureโs one that supports RGB
rgb pog
I mean... so does chatcolor?
RGB is no valid excuse lol
also, &# > &<#>
wat
legacy component serialiser supports the former
I believe the latter is Bukkitโs
not at all lol
For legacy strings it does the ยงxยงrยงrยงgยงgยงbยงb but the ChatColor.of(String) method accepts #[0-9a-fA-F]{6}
I don't even think you can serialize to legacy
ah okay
Finally something good
Adventure doesnโt promote serialising to legacy, just allows it
ghost ping?
-_-
dkim was that you? -_-
also, Adventureโs not perfect, but itโs sure as hell better than itโs predecessors @obtuse gale
wait a fucking second yes it does lmao
the BungeeCord chat API is a mess and a half
i thought you had this channel selected-
it's a protected method though hm
o
I might make an Adventure extension for Kotlin that has constructor functions to replace the static interface methods
e.g. Key(namespace, value) instead of Key.key(namespace, value)
because static interface methods in Kotlin are ugly as fuck
sounds like a kt problem 
They are both horrible lol
I don't think you'll have much of an issue getting to understand how to work with it
Maybe the whole value/reference/pointer thing when passing data to functions, that gets everyone
The fact you ought to consider where to store each object you create, if you use new and store it on the heap or not, when to do it, how does the object lifetime affect the objects you use, if it'll be available when you return etc;
Copy constructors and move constructors ah sheesh
And heap loads of things I'm not mentioning
They are things that you don't need to think about when you're starting and you don't need to think about anymore once you learn them (you "just use them") unless you really get into to some intricate things
Oh and don't get near the lambdas ๐ they don't bite but don't get near them
Why
Just looked them up, im not sure I understand, what exactly is wrong with lambdas in cpp?
Yo anyone can do a massive favor and help me test my plugin n shit [You need to put it on a 1.16.5 server and some other stuff, might take a hot minute]
&?? =???? x = &x to capture local vars, i whatever i is??
huh?
As in like most other languages, where the compiler takes care of finding whats captured
I got you
Dm me the ip
This seems fine
Remence, I need your to install the plugin on your own test server and do some stuff on the web app
Sure
eh the thing is that lambdas by themselves are self-contained and have no relation to the outside world other than "it's a function", no access to other variables; then yeah & to capture all vars by reference and = to capture all vars by value
Alright ill dm u the stuff
Thats actually great
but it's annoying lol because then you can do that per-variable
Wait
Wdym?
What in the fuck
lgtm.
wat
Looks good to me.
ew Glare
int x = 5, y = 10, z = 15;
auto func1 = [&x = x, y = y, z = &z]() { return x * y * *z; };
// capture outside x by ref, y by value, z is a pointer to outside z (I don't see why this would be useful lol)
auto func2 = [=]() { return x * y * z; }; // capture all by value (copies, "snapshots")
auto func3 = [&]() { return x * y * z; }; // capture all by ref (uses the actual object)
auto func4 = []() { return x * y * z; }; // don't capture anything, x y and z don't exist, compile time error
auto func5 = [&x = x](int y) { return x * y; }; // capture x by ref, take an int param which I'll name y, different from the outer y since I'm not capturing it
I mean they are just fine really and I'm just ranting over the fact I understood jack about them when I first came across them
At the time I was too spoiled with how Java does lambdas lol
oh man I really need to go pee
it gives waaaay too much control
oh yeah and you gotta think about object lifetime unlike java ugh
segfault go brrrr
what's wrong with this tho?
Yea, personally I think this is fine
Ah fair enough
oh wait you can actually explicitly define the return type
[/* captures */](/* params */) -> /* return type */ { /* code */ }
lmao
How nice, everytime I open an old project it breaks cause gradle can't find a dependency, when I make a new project it works fine
yea that looks good
I just click the refresh project/reload dependencies things and it starts working lol
im not sure any of those are enough to hate a language but most of them are genuine criticisms I guess
Fefo, I've been spamming that shit non stop
hahaaha
gradle bad
might be coincidence but since the update I've had to always invalidate cache & restart every time i opened intellij ๐ข
I had no issues at all other than with 2 big projects but a single deps refresh and it was fixed 
u built different
if i only change build files should i still increment the version? im following semver
Delete your .idea folder
And reopen your project
unless it affects the end binary itself.. naaah I wouldn't lol
fair
Funny enough IJ 2021.1 for me made it so every time i turn on my pc the first time i open IJ everything is broken, like everything is red and even refreshing gradle doesn't fix, so I always have to invalidate cache and restart in the first run of the day ๐ฅฒ
Minecraft 1.17.2: switched to gradle
just dont shut ur pc down 4head
Ez
Might just be worth downgrading for the time being
i have that too matt
Frost
except i had it before too
Did you try deleting ide files first?
updating made it worse
damn I guess I'm special lol
itll get more stable as time passes
I have an rgb graphics card so lights too bright
Had the issue with one old version, but previous one had fixed it, now it's back
lmao
no but seriously, shut ur pc down, save the electricity bill 
is the point of a gpu not to make other things go rgb
eh
Why not make itself go rgb as well tho
what kind of person stares into their pc while you're working
its nice to have, kind of like an illumination in the background
thats called a lamp
lol
i get that we're programmers and that light is a strange concept to us
but its pretty good
Good idea
light mode ๐
ew
Um
i like being able to see
bm can I get rid of this weird window top on discord
thats given me an emoji idea
Looks kinda weird
the role colors look ew in light mode though
and the names are sorta hard to read
since they're all bright colors
which is why i usually use dark mode
Yeah, I know enough of the syntax for very simple things but the difficulty will probably come from memory and actually learning OpenGL. For some context this is for a school project where it has to be "suitably challenging", so trying to learn C++ and OpenGL seemed like a good challenge. I had a try earlier and managed to segfault on the 2nd tutorial so I think I'll be asking for help a lot ๐ฅฒ
what thing
make ur tutorial
gyuhaidjkaisdh
i'll give you $0.00 if you finish it this week
deal?
i will try
like I said there's only like 2 days a week I can even try to record so it's kinda tricky
๐คจ
That's the same across every app?
Yes
why so ๐ฎ
ooh ty looks good
with windows movie maker
im only at my mum's thursday-saturday, I've got commitments thursday evening, school on friday so the only available time is friday evening or saturday
And there's a toddler that could be sleeping nearby so I can't talk too loud
o
o
im intrigued by ur "commitments"
Hey Yugi, how's the new project coming along?
slimjar?
Working on it, it should be usable soon
๐
Yes
Now slimjar is also gradle-based, correct?
Yes
Perfect.
Might also add a maven plugin later on in case
๐ ๐
is yugi carrying the project? ๐ฅฒ
Not much atm
the "free market" has gone too far
I have a week of exams ahead
Do you have any ETA for the public testing phase?
o gl yugi
Well exams are much more important.
Anyone seen bm anywhere?
nope
no
nope
rip
ill let him know if I see him
Il try to get most of it ready by this months end glare
guess i'll send the $15 elsewhere then
That's fine
to me ๐ฅฐ
if you fix it take it lmao
gradle plugin? ๐ฅบ
you know what else has a gradle plugin
Shadow
no! what does?
๐
๐
proof?
Not working at all?
well it works 40% of the time
you are a liar
but i need it to be 100%
matt and yugi paying you to make pdm look bad
the missing 60% is a feature...
Grub didnt fuck itself
I mean PDM works 100% for me besides relocations.
lol
I didn't say I was happy.
Sad bm
Lmao
๐
If md5 wants to raise the jar limit again I won't even need to use PDM.
๐
4.5mb kek
do i do this: ```
gradle shadowJar
gradle pdm
Oh md added runtime dependency to bungee right?
use pdm
pdm build dkim
Have shadowJar depend on pdm
Oh btw Glare, I built my plugin with coroutines and stuff, and it was .. 4.6MB ๐ฅฒ
Just a bit off
sounds like you need pdm
or ```
gradle pdm
gradle shadowJar
Pdm sounds like it needs slimjar
shadowJar.dependsOn project.tasks.getByName('pdm')
Sounds like you need pmines 
Why are you using shadow with pdm dkim
๐
Because I don't PDM everything.
that's like using maven and gradle at the same time
i need to shade some setuff
Cursed
Literally only PDM Kotlin
anyways
Everything else I shade in BECAUSE I NEED TO RELOCATE
๐ฅด
sounds like bm not using Kotin, cursed.
NEED TO RELOCATE
oh boy
smh
Want to relocate*
admin is getting angry
Sadge
gradle shadowJar pdm doesn't work
glare what are u using pdm in currently? iirc ur using it in guilds?
dkim, I gave you the exact line to add to your build.gradle
just pdm jar-relocator and relocate yourself ๐
same with gradle clean pdm shadowJar pdm shadowJar pdm
imagine admins getting angry
Yeah I use it in that
B.A.A.S?
Barry's Auto Anti Shout?
๐ฎ
i did that
anti abuse system
Slimjar shall overcome pdm
Are you using shadowJar's minimize with that and still hitting 4.6MB?
i don't think so
where the B.A,B.M ?
appears to only put the dependencies.json in the jar 30% of the time
๐
that doesn't surprise me
bm can you help rq
What version of PDM are you using?
clean build usually fixes it tho
yes good question
probably
ok so bm, in the lore i got the text goes โก๏ธ but i want it to go โคต๏ธ
there's a kotlin function For this
Getting a copy of my dependencies.json that's generated to see if it's actually generating everything.
Probably something in commons-text too
windowed() 
Without minimize, I can check with in a sec
like, this, I wanna make it say
- Stone
- Cobble
- Diamond
- Emerald Block
instead, is that possible?
https://paste.helpch.at/uzequnubex.json
Looks fine.
LOL. I didn't realize it named them all maven#
i got https://paste.helpch.at/egofalukan.cs but i feel like its possible to do it another way
of course
Stream#map ๐ฉ
i'm trying to google atm to see where i'm being dumb (as usual)
Stream#map? Whats that
transforms a stream
yeah can be any collection
can it go into a nice looking list?
or not a collection at all
uh
what
List<String> looks pretty nice
no i mean a nice list in the lore
forEach?
String.join with \n as the separator
If that don't work just addAll to the lore list
you left me with this code btw bm ๐ฅฒ
btw elucidate, what else could u use a stream for
they can be infinite
like
99% of the time they're gonna be from a collection but you can also have infinite streams with a different source
whenever I guess
IntStream.range() is finite and uses no collection
yeah im looking into it now, the only thing outside of collections i could think of was String
SplittableRandom has a few methods that generate infinite streams of random numbers
d; SplittableRandom#ints
public IntStream ints()```
Returns an effectively unlimited stream of pseudorandom int values from this generator and/or one split from it.
a stream of pseudorandom int values
piss

I broke the list system i thonk 
trying to use gradle now, is there any way that i can process java templates? i had a class with ${project.version} embedded in a string
@version@
do i need to do anything special or will that just work
ReplaceTokens
yeah, that went wrong.
I believe just the default ReplaceTokens version thingy
or another method, cant remember what the other one was
ah cool thanks ill look into it
if i have a compile only dependency that i want to use in tests do i need to redeclare it?
oui
oof ok
ew
you could also make a custom configuration that does both
that's possibly too fancy tho
${projectVersion} better
so do i use @version@ or this other one
doesn't matter really
?tryandsee
no thanks
no only if maven
what did i just watch
so why did you suggest using an maven token?
i guess because it's also in gradle?
not by default with replace tokens
wdym
please consider i am very new to gradle
^
well by default nothing happens by default
you can define and use your own tokens
and what they'll be replaced with
with or without replacetokens
wat
I'll let you figure it out, I'm in class rn
okay whatever
you can use ${} placeholders just fine lol
ok
literally came in to say nothing worthy lmao
Me
๐คฆ
Matt what was the jar size?
gtg
Actually 2.5MB, but currently not using Coroutines anywhere, so I think minimizing removes it
Oof 3.9MB, still pretty good though
where does gradle put the output jar
build/libs
thanks
yw
I just went to the Material Theme UI reviews section and oh boy its a mess
let's just "know" where each element is
its down to 3/5 stars
Um
yeah you can figure out cause its a level-order traversal
i saw more good reviews than when everyone found it was premium
but yeah still wasnt too good
yeah some people left some ince reviews bet there's lots of revies that are basically just:
SUBSCRIPTION for merely a theme? No!
lmao
merely a theme
lmao
yeah I do think the subscription thing was weird
Star, would "mounted file system at /home is not responding" smell trouble?
what filesystem do you have mountd at /home?
As in?
The normal home directory
cat /proc/mounts
Theres a lot there
Wait why haven't I seen this before? https://i.imgur.com/QdPwYqj.png
hastebin!
What, the minecraft icon?
it shows it to me for every minecraft development project that's not spigot
is that for a spigot project?
its VoteParty
Lemme just make sure I didnt mess windows up or something
Me wondering why the consumer wasn't being applied ๐ฅฒ
huh
?paste
Paste Services
When asking for help with a config/menu/code issue please use one of these:
(However we do prefer if you used our paste :))
โข HelpChat Paste - Usage
โข Hastebin
hmm I wonder what's wrong there
The brain
lsblk yugi
What does that do?
Gimme a moment
Just checking if windows is having any trouble
If it accidentally mounted windows it would end up readonly
||a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z|| ||serverworldfiles||
unless you turn off hibernation, which I did since I like to use my windows files lol
packages go brrr
ok windows is fine
Yes
huh
Desktop icons take 5 seconds
With fast boot on, everything is instant
Otherwise I get the weird white icons for 5 seconds
I do
???
fast boot needs to be turned off if windows has to be properly mounted on linux
oh no
These are my commonly used files
Have you heard of sway
yeah I put my commonly used files in the documents folder
that's not what I meant