#dev-general
1 messages · Page 363 of 1
oh you have no idea matey
I would kill to watch vk and Ruan both slowly burn alive in a fire
you need help
as I said, I have 0 respect for those sorts of people
u do u 🙂
I respect people who are nice
You're gonna hate me, but LiteBans is kinda decent.
man all they've done is made premium plugins holy fuck
yeah the plugin is decent
Ruan, however, is a dick head
If you're actually serious this is fucked
and the API is useless
lol
am i nice 🥺
okay maybe that was just a little too far
just shows how insanely strong my morals are though
"morals"
thinking premium plugin developers deserve execution isn't moral
no, it's not just because they make premium plugins
some premium plugin developers I respect
Maxim Van de Wynckel for example
Ome_r being another
what have they done
they are twats
ur a knob 🙂
Apart from make shit plugins
ur a twat 🙂

"Decompiling is not an option, I've made sure of that :)"
what a fucking dick head
to put a smiley face like that
lol
?? man
I've just thought about how stupid that sounds that I'm making a big thing out of a smiley face lol
maybe that's not enough to have them burn in a fire
sure proprietary sucks but if someone doesnt want their work being leaked that's fair enough
I got one more for Ruan though
sigh go on...
apparently using the API to execute raw queries is "sufficient"
and that he's such a lazy shit that he doesn't want to make the API better because it means he gets more issues
which he probably won't anyway
I might actually go ahead and make that extension like I said there
🤨
or just make my own punishments from scratch
which is what I've kinda been working on
I mean, it's not that hard tbh
again i dont see why having a shitty API makes someone literal scum
it's the responses he gives
his responses seem fine
"I don't want to design things in a way that makes people more likely to contact me" this just sounds like laziness to me
meh
i can understand it
getting hundreds of dumb questions a day sounds pretty annoying
true
okay, maybe I should take Ruan off the hit list
vk though, that scumbag can literally rot in hell
i dont think either of these people have done anything that warrants their death...
like he is literal scum
evidence?
do it
do it and I'll believe everything you're saying
lets see what illegal activities hes been doing to warrant a death wish from BomBardyGamer who is clearly a high court judge!
stfu
if you unironically think someone should die i'd expect at least some evidence...
no u
alright, maybe he shouldn't die, but rot in hell after death, definitely
🤨
ah yes, that makes the situation better
yeah thats much better
Don't worry, he just doesn't like the API 🙂
ah yea yea
makes sense right?
Yup, shitty person
gaby still mad :kek:
He can take a long walk to a green place 🤣
Also, whats so good at litebans @jovial warren
yeah openbans when??
Whats that
open source version of litebans that Bardy keeps insisting he's working on lol
"working on"
you know what else he's working on?
ezblocks /s
Krypton, a Notchian Minecraft server implementation made in Kotlin
from
scratch
In case you guys didn't know
:)
oh damn that sounds pretty cool!
Did you know 2b2t is the oldest anarchy server in minecraft?
😮
if im looking at this punishments plugin correctly i dont think hes gonna continue this
Too busy hiring a firing squad to execute vk
Nah he’s going himself
in kotlin if I iterate thru a list using for (item in List) it just skips the loop if the list is empty right? It doesn't error or anything else?
it would be unbelievably stupid if it did
that's what I thought. I was checking if its empty before and I thought, why would it error? when it can just skip so I asked to make sure
I'm looking for contributors for a free api and framework I'm developing with SimplexDev, a development group dedicated to producing premium spigot plugins
It's a core and I would greatly appreciate community contributions.
I have 5 other developers on the team
I'm not looking for any commitment, just any sort of contribution is welcome so long as it expands on any section that we provide
#816184747024711693 maybe?
for loop instead of foreach 😩
forEach doesn't have continue. so it can suck a dick
Can’t you just return?
No
wait for real?
return in a foreach is equivalent to a continue
oh fuck
as the caller will keep calling the function
welp that's good to know. Yesterday fefo said the same but then he changed his mind as well lmao
and I assume return will just exit the function right? it's not a break or anything
From what I understood, return just exits the entire function and return@forEach will break the loop
also that was like a week ago lmao
oof
Inverting binary trees is not as scary as it sounds.
#benawad #coding #faang
Checkout my side projects:
If you're into cooking: https://www.mysaffronapp.com/
Join the Discord: https://discord.gg/Vehs99V
Patreon: https://www.patreon.com/benawad
Follow Me Online Here:
Twitter: https://twitter.com/benawad
TikTok: https:/...
is there a way to detect whether certain commands can be executed by using sudo and what cannot
Just another tutorial on how to use Google.
You Suck at Coding: https://www.youtube.com/playlist?list=PLN3n1USn4xllZEdX7a7GQul2GWrag_XAy
#benawad #google
Checkout my side projects:
If you're into cooking: https://www.mysaffronapp.com/
Join the Discord: https://discord.gg/Vehs99V
Patreon: https://www.patreon.com/benawad
---...
does Runtime.getRuntime execute commands based on the users permissions though?
or based on non-sudo permissions
i think that depends on the user running the sudo command... maybe??!!?
yeah, so what about its conventions do you like?
God I hate timezones
Gotta wait for this bri ish cuck to wake up ||that cuck being Ori||
Pls help
idk waat i did wrong
i was coding a tutorial for yt
this is my code
package me.wettle.tute;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.plugin.java.JavaPlugin;
public class Main extends JavaPlugin {
public void onEnable() {
getCommand("hello").setExecutor(this);
}
public void onDisable() {
}
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
if(command.getName().equalsIgnoreCase("hello")) {
if(sender.hasPermission("hello.use"));
sender.sendMessage(ChatColor.AQUA + "Hey!");
}
return false;
}
}```
Did you add your command to plugin.yml
if(sender.hasPermission("hello.use"));
this does nothing btw
yes
It is in /pl but the command isn't working
return true, and fix the permission check
kk
I'm having an issue with the multiplier part in the autosell plugin
id also make it so you do if the label equals hello 
Indeed
help
3 buttons, need to get custom object based off button clicked
whats the best way to do that? I'm tryna make it so I can just have one listener for all buttons
I could just have a switch thing but i feel like theres a better way for some reason, i want to be able to add more shapes if necessary
idk wgat im expecting tho tbh
Why same listener for all three?
I believe that can only do what the JVM can do
Which depends on who owns the java process for that JVM
That is a horrible name
I'll just stick with the name Punishments, which is what I already have
Do I hook up my second monitor
no
leave it unused
hell, kick it
why not
I mean I can do that to the tv
d;spigot potioneffecttype%bad_omen
public static final PotionEffectType BAD_OMEN```
oof.
lol
lol
d;spigot potioneffecttype%heroofthevillage
public static final PotionEffectType HERO_OF_THE_VILLAGE```
\o/.
great descriptions
Lol
Krypton docs coming soon™️
When I have time to make the system that can actually read KDocs lol
dw
I spend too much time working on Krypton lol
pig tf
i despise vk's practices too but let's not go any further than that
here's a nice image for a topic change
yeah I’m done wasting my time talking about that piece of shit now
I was talking about Krypton being under MIT
mit is nice
also, might make my own place to find Krypton plugins at some point, but with the difference being that I want you to be able to upload different versions for all the platforms so you can choose which one you want on download
that would be cool imo
also need a place to track metrics
i made a metrics thing with rpf once
but it was a bit mind boggling
frankly i couldn't understand how it worked myself
a.k.a bStats but for Krypton and not so unreliable it’s almost useless
could use prometheus
but prometheus won’t really work here
I might actually add a module system for Krypton, since I want extra features without the extra size if you don’t want them
I basically need bStats for Krypton
but not as shit in terms of reliability
I mean, I need to design a homepage first
if anyone here knows frontend better than I do and wants to help out, lmk lol
don’t you get your designs from cube? lol
yes
cube designs the sites and you make them
do you care about Krypton? 🙂
lol
ok basically I hjave to make something that when a user clicks on a button it lets them input the dimensions of the shape on the button they pressed
I would ask cube myself, but he wasn’t taking commissions
but i want it to be fairly easy for me to add shapes in future
whats the best way to do this? (Windows forms app with VB)
imagine accidentally switching language mid sentence
yes
when youtube showed the entire number, it was always a match
what's even more impressive is the age of that video
2009
11 years later people are still keeping it going
also, if you do get cube to design my site, ask him to remake my logo so it’s not trash lol
I mean, you can take all the time you want lol
(preferably I want it this side of Christmas, but I won’t rush you lol)
nah m8
I could be teaching by then
sounds like a you problem
I would pay for a commission for a web design, but last time I asked for the price for a site with 2 pages I got $40
that's actually quite cheap
I would make one myself, but I don’t have design skills
when I'm forced to design something, I usually follow a strict process
teach me the ways senpai
you wanna move to the UK?
😮
nah you should move here
- Find similar sites by searching "cool insert type sites reddit"
- Look at similar sites
- open paint and make a mockup
- create
- ask cube for opinions
- start from scratch with the brand new site design cube made for me
actually wait no, stay in fucking Germany, the UK is shit compared to there
nz cool
if u get nz citizenship u can travel between aus and nz without a visa or anything, no restrictions
the only nature you’ll find in the UK is idiots pushing you around rushing to work and polluted air that kills a few thousand a year
- wym nothing else
man, if only I had cube to ask for opinions
you realise new zealand is next to a fuck ton of paradise polynesian islands right?
also this big island called australia
bruh
trash
I mean, better than the UK, but still trash xD
also 4h is wrong
lol
you’d get ousted by all the hard brexit supporters within days efe
pitch forks in hand
nah I’m kidding
come and visit the UK, yes
come and live in the UK, no way
€114? that’s nothing lol
come here then
bardy, as a bri'ish person
I’ll come and find you lol
can you please answer why so many bri'ish people move to aus
I’m messing that sounds creepy
because they wanna get away from this shit heap
efe I live just north of London, I could actually come and visit you if you come to London lol
no jokes
the fuck is this https://paste.helpch.at/tayejusumi.hs
it’s a 20 minute train to St. Pancras from where I live
come and book a hotel in north London lol
and the city i'm in happens to be the most isolated city in the world
how is scotland huge
go near St. Pancras, but not too near, since you’ll end up paying an arm and a leg
London, do it
as I said, come book a hotel near St. Pancras
but not in it, since you’ll end up paying an arm and a leg a night
idk much about nz, apart from they pronounce "deck" like "dick" and they all fuck sheep
kiwi
kiwi accent
not new zealandian
lmao
you think nz is hot
k then
we get those temps every summer where I live
yes
yes
it's not
Can't wait for summer 😔
what?
yes
frosty why
oh right
forgot that summer just means slightly lower than room temp for you
So I can get wasted and regret it the day afterwards
Nah summer is like 30-35°C
We've got perfect temps
Except winter, where it was like -10
where they just have one big holiday
holidays are way more organised down here imo than northern hemisphere schools
we get 2 weeks between each term, and 6 weeks at the end of the year (december to feb)
Oh y'all got end of term in december?
we get 2 weeks for Christmas and easter and 6 weeks in summer too
because christmas is our summer
Yea makes sense
but we get an extra week in between terms called half term
way better than having summer in the middle of the year imo
There is no time to wait! Ask your question @obtuse gale!
I mean ain't our fault y'all live upside down
You've got no current active reminders.
bardy we actually get like 18 weeks off
wait what
in upper years students also get 2 weeks off during exams
and then after the second set of exams, they usually don't go back
I can't remember how long we get off, since it feels like vacation even when I am in school
this might be wrong actually
not sure
either way like 16 weeks min
I mean, because this is my final exam year and there’s literally no point in me being here after I’ve finished my exams, we break up on the 27th May
I finish on the 27th May and get until the start of September
imagine having a life
You think it helped you, but it didin't
I’ve spoke to people and they say that me spending all my time programming is sad
Bardy, I love how people say that, and then literally work in a fucking fast food place for a living
I regret living, yet here I am lmao
desperate for what
for the good kush
all the time :dab:
no matter who they may be, we’re humans, we always have these times where things aren’t so good
too much is unhealthy of course, but so is not enough
when i make a kotlin project, i can choose application or console application whats the differences
I mean, I realise I’m giving you the whole “it’s okay because everyone else suffers from it” BS, which doesn’t help me at all (not sure what it’s like for you), but I guess it’s all I can do
the good kush
reading wikipedia articles*
it’s good, until it doesn’t go your way, then it’s the worst
LMAO
#off-topic emotional people it's time for yugi's c# enlightening
and I’ve had it twice, once I got hated by quite a few people and called a stalker, and once I pushed people away and I’m still trying to build up a friendship with her
off topic now
what do u like about them
Im not saying I like those specific convention over java's ones, but that it doesnt bother me to use them
It bothers me, as compared to java’s, they’re atrocious
they don’t do a sufficient job is making code clearer
iirc
some conventions, such as the IInterface one, are also completely illogical
I feel like that is a bit biased since most of us here are familiar with Java mostly
now just to add onto this, this is an observation I made a while ago, so it might be wrong
yeah it is a lot of personal opinion
but there is a little bit of fact
Can you elaborate on how you feel it doesnt make it clearer?
I’ll try to keep to the fact
That’ll take a min, I’ll have to refresh myself with the docs
Sure
well
the lack of variety in naming convention for different language features certainly can’t be helpful, e.g. constants, classes, methods, all using pascalcase
and here’s why i hate i https://www.spigotmc.org/threads/basics-of-coding-clean.496365/#post-4117945
Now, some people will claim that having 8-character indentations makes the code move too far to the right, and makes it hard to read on a 80-character terminal screen. The answer to that is that if you need more than 3 levels of indentation, you're screwed anyway, and should fix your program
``` hehe
bloody torvalds
Well ofc. But, you shouldn't expect another language to have the same conventions as Java itself tho. In C# you'd use camel casing for fields, pascal case for methods, properties, classes, upper snake case for constants.
As for the "I" prefix for interfaces, this convention doesn't particularly ruin readability in any form, but I do admit, it is redundant. It also seems so be something that even quite a few Java developers seem to randomly use.
Go conventions are clearly the best
hehe
I could see you also not liking haskell's bracket and statement end style in a similar way if you were to just consider it in a similar fashion
{
;
;
}
nobody actually does that though ... right...?
I dont mind
I mean it isnt a requirement there ig anyway

Actually they're not really a convention in Go, more of a requirement
go is regular CamelCase, isn't it?
yup
sometimes
No
camel for private, pascal for public
i forget
UpperCamelCase is for public, lowerCamelCase for "internal"
ohhhhh yeah
Casing is the access modifier there
nah it's kinda cool
meh i dont like making the name affect the bloomin' visibility
yeah that's stupid
😖
Now you dont care about pascal cased functions when it came to Go? 🥲
torvalds quote time: To call a global function foo is a shooting offense.
torvalds has such strong opinions in this doc about linux coding styles
huh
sadge
Infinitely jump of a building
Because Go good
C# on the other hand
What in the bloody hell is the "error" here?
xD
That "All rights are reserved"?? 😂
that's it. your permission to click on buttons in unity is revoked
lmao
on a depressing note: microsoft might be buying discord
The first rule of C is don’t write C if you can avoid it.
sadge
😮
Discord to replace skype atleast then?
they're just gonna run it into the ground as well
hehe
discord going to shit if that happens
10 billion is 10 billion in the end
meh i would take any terms
right so
u need to dump it to a file sometimes
but keep it in memory also
memory is volatile
so u wanna dump shit outta it when ur about to shutdown
store in cache then save on disable or autosave or whatever
^ I do both
oh no
on a fucking production server
oh no
ew
oui
apart from class, i don't like classes
but you know that
use gson to push to json
sometimes
yeah?
weak
sheesh
This, this is the sad part
it really isnt
also
events
how many should i use
rn i have 8 in this small ass plugin
so im not sure
elaborate
Nah, no such thing as overdoing it if it's cleanly made
k
how so?
oh hell yeah
i just noticed
its been 1 year since the first UK lockdown
anniversary time
not in the UK
u nerd
shut
ill send u a copy of pax brittanica
well did u invade half the planet, hm?
i think not
👀
'future'
we don't understand that here sir
hm?
oh also efe
how many universities in the top 10 globally do u have?
sucks to suck
we have them all
all of them
lol yeah
oxford
cambridge
ucl
icl
London good
oh yeah because California is in the UK lol
have u ever been there?
I literally live a 20 minute train journey to St. Pancras away
wonder where Oxford and Cambridge sit on those lists
1 and 3
anyone want be friends chat
I swear those universities are the only things Oxford and Cambridge are known for lol
Oxford is one of the best universities
why else would u go there?
oxbridge is shit
man
apparently in the world
with pleasure
formula
look for a pattern
100 + (n-1) * 200
the number
The value you're switching
the number
base case
That method name tho
should be @NotNull final
i don't see many finals there efe
thats not very kotlin of you young man
so kotlin never <o/
no need
currentLevel, currentLevel+1
why tho
well yea if you use +1 why don't you just do that inside the event lol
++
who
useless methods good
oh btw guys, are chunks cacheable?
methods should be short and simple
ha gae
sus
hello folks
I'm having some trouble with my code
I'm quite new so sorry if it's weird
what am I doing wrong?
according to the stacktrace you sent:
java.lang.NullPointerException
at net.argonnetwork.FirstProject.registerCommands(FirstProject.java:43)
you have a NPE happening on line 43 of your FirstProject class
public void registerCommands() { getCommand("reclaim").setExecutor(new ReclaimCommand()); getCommand("spawn").setExecutor(new SpawnCommand()); getCommand("Staff").setExecutor(new StaffCommand(this));
those are the ones
which one is line 43
Last one
getCommand("Staff") is probably returning null
probably because you capitalized it
I suppose you forgot to put "staff" in your plugin.yml commands section
true
that would do it
If you think this is pain, then sheesh
Let's not 
This is as simple as it gets
efe just whip out your graphing calculator, enter the numbers you want, and make it create a formula to match that
make it yourself smh
oh btw guys, do you lot think I should add a services manager into Krypton to allow you to pass instances back and forth between plugins (e.g. an API)?
I mean, Bukkit and Spinge both have a services manager, so it’s not all that bad in terms of ideas
Why hardcoded formula tho
Yes!
I really should use Bukkit's services manager more often ngl
RSP over static anytime
What's a service manager?
a manager which makes using api's from different plugins easier
Oh alright
will probably be Bukkit’s with more Kotlin things
I hate the fact that I'm gonna have to use kotlin if I wanna make krypton plugins ;C
Yeah but probably worth it
e.g. server.servicesManager.providers[LuckPerms::class.java]
not true, but will be made much better for Kotlin users
That's why the have
I will add limited Java compatibility, but it may look horrible in Java and I won’t go out of my way to make things better for Java users
Exactly my point
Imagine writing plugins
Yugi, where's my terrain visualizer
I mean I've done jack shit since the last push so :kek:
My uni is killing me with the amount of stuff to do rn
I have my project review in 3 days and we havent even started making the game
Bruh then start
haha just dewit
No but's
make it in F# with monogame
Unity is being shit
Unity is being a complete asshole
👏mono👏game#
agreed
unity bad
correct
Ok games started to atleast run now
What game you making
yugi use C
I mean, what happened to you liking Kotlin anyway @hot hull
we all love C
also, I might just make my own world generator from scratch anyway, since I kinda wanna learn this myself anyway
Where's the fun in not dying
You could hit a few cloths and die i guess
but currently you just get negative points
🥲
lol
smh
That character was drawn in the one and only, PAINT
As it should have been
in Kotlin btw
😌
die
and open-source
yes
have the generation run in sql
We boycott krypton if no haskell suppourt
about time an open source world generator existed
There's plenty OS ones tho?
no?
uh yes?
👀
Frosty I found your senpai

huh?
all of the algorithms, all there
it might be better to write things like world gen in Java actually, since you have better control over things like variable types, and bit shifting
e.g. bytes work much better in Java, since a lot of things that exist for bytes in Java just don’t exist in Kotlin
or rust
or rust
If you control the C code, is there any benefit to that?
Yugoslav People's Army?
it’s a matter of whether JNI’s performance is actually worth writing it in C
What is it that you consider writing in C specifically
if its good native code it will definately run faster than just normal java
mmhm
perlin, simplex and octave noise algorithms
use wavefunction collapse tho
and anything else that might be nice for me to do natively
sql! sql! sql!
woot
wat
oh btw, you know you also need to assign temperature values to your map for biome generation?
My phone updated and now all apps keep crashing lmao
well yea Bardy
and then you need a seperate map for structures, dungeons, etc
and then your 500 different block populators
yep
all I need is all of the heightmaps and the block states for each chunk section
I’ll handle lighting lol
will probably use Starlight tbh
oh the things I need
you need to be able to take quite a few params and turn them into numbers lol
ofc!!
wdym?
oh nvm
If you meant that the player isnt actually movign at all, yes
except for left and right ofc
Yeah
Also random question but
final File app = new File(diskPath, "/Applications/VLC.app");
app.setReadable(true);
app.setExecutable(true);
app.setWritable(false);
or
final String[] command = {"chmod", "-R", "755", "/Applications/VLC.app"};
final Process proc = RUNTIME.exec(command);
return proc.waitFor();
should i use the first one or second one?
This is assuming my os is always mac
(only in this case)
proc ew
I have to use process for unmounting and mounting commands
use non abbreviated variable names
I swear, I should write up an entire convention at this point, I mean, I do enough complaining about other conventions
The official Bardy conventions lol
Single line if statements good
Expression functions good
Non abbreviated variable names good
Prefer properties over getters and setters everywhere (Kotlin)
Use 4 spaces for indentation
and the list goes on
well that is different from google's style guide already lol
Single line if..... Die
Jump off a clip
🥲
example
if condition then 🥲
It's ok when Haskell does it 🙂
class MyClass {
val myValue = false
}
Exactly
oh yeah that's aweful
If you use horizontal alignment you should jump off a cliff though
That hurts to look at
Facts
Please burn my eyeballs
These are my conventions lol
I see,
They belong in the trash can
I think that not having that space just looks awful
I just don't like it
The class and the declarations aren't friends
shower thought, matter is just vertices, edges and sides of a structure with an arbitrary number of dimensions called the universe, energy is just tension in the folds
It was pretty painful writing in piggy's conventions for DocDex lol
I just don't like not having a space at the top
my conventions are superior
No
What
no
Wait like you split lines every two parameters?
If declaring your parameters goes over the maximum line length you set in IJ, you should have one per line
yes
1 parameter per line, or sort them evenly based on what makes sense per line, or all of them on one line if it's fitting
when declaring parameters yugi
for example, certain parameters may match together
not when calling a method
But that still looks a bit off right?
E.g. ```kotlin
data class Person(
val name: String,
val age: Int
)
That is superior
🥲
Really readable
public void something(String s, Integer i,
Long l, Double d)
that feels wrong lol
Conventions that only one person uses sounds like a bit of an oxymoron...
Piggy your parameter conventions are actually cursed
looks like this:
public final class Person {
public Person(@NotNull final String firstName, @NotNull final String middleName,
@NotNull final String lastName, final int age) {
}
}```
Ill have a look at thag once i get on pc
I mean, I abide by Kotlin's official conventions, since they are open enough
It looks weird on phone
what the hell is that pig#
what's wrong with 2 space indents tho
Turn your phone sideways Yugi
Then you get to see that curse
disgusting
2 spaces only works for html, css, and sometimes js
Yeah pig you are about the only one who uses those cursed params
Wouldnt it be better to have 1 perline in this case?
why 2
Similar to what you would do for long parameters in kotlin
lmao
because 2 will very rarely go past the border
and 1 takes too much space
2 is the perfect number
Lol
my face after looking at lombok ridden code...
could probably blend in with the tomato stand
Delombokify 
Lol
Replace Lombok with Kotlin 
Not nulls??
not nulls go on parameters and return types
It also doeson fields
Or kotlin infers the type as a platform type
not in my code
🥲
oh boys my VPS is back
also everything is final
except inherently final things, and things that shouldn't be final design wise
such as exceptions in try/catch
smart casting in java
final everything!
how i use enum from one module in another?
i don't annotate generics (because it's too ugly)
why not try catch lol
You might wanna add NotNulls and Nullables to fields too tho, atlest if you want kotlin to play nicely with it later on
caught exceptions are guaranteed to be not null and final
Yeah please use nullable annotations to stop Kotlin converting stuff to platform types
does kotlin ignore getters?
and my access modifiers?
if kotlin ignores my explicit private keyword then I couldn't care less about supporting it
that's a sus design choice
Oh true it might infer from the getter
the only public fields I have are constants
will kotlin convert constants to platform types without a notnull?
It infers nullability from getters yeah since that's what it calls
ok well then it's fine, as all getters are annotated accordingly
Might, havent checked yet
The compiler remaps getters to properties for access in Kotlin
Then when it does compilation, it maps all properties to getters and setters
The Kotlin compiler is insanely smart
It makes the Java compiler look like it hasn't been updated since the 90's
Why so?
