#dev-general

1 messages · Page 473 of 1

quiet depot
#

java is a very simple language in comparison

cinder flare
#

So many symbols?

#

Have you tried Haskell

#

lol

ocean quartz
#

Kotlin is nice, it can look really nice, but it can also be horrible to read
Specially if you infer too much

quiet depot
#

star I don't think haskell is comparable

#

because mainly enthusiasts seem to use it

#

that's not to say it's not used in real, important projects

#

it's just mainly used by enthusiasts it seems

cinder flare
#

I dunno I am quite a big fan of type inference. it seems like a lot of people aren't

ocean quartz
#

Type inference is nice, but Kotlin can infer too much

old wyvern
#

Im not against type inference, but rather how most kotlin codebases end up being

cinder flare
#

Like what?

old wyvern
#

Clustered

quiet depot
#

what's the benefit of type inference over just saying the type?

cinder flare
#

Terseness, assumption by the compiler, nicety to write

quiet depot
#

terseness?

old wyvern
#

Also, kotlins inference isnot as poweful as haskells

cinder flare
#

Like how impressed I was when Rust figured out the type of my data structure from the first thing I put into it

ocean quartz
cinder flare
quiet depot
#

I'm not sure how I feel about the compiler assuming what I'm doing

#

instead of me telling it what to do

cinder flare
ocean quartz
#

You can't

cinder flare
#

is that supposed to be a class?

ocean quartz
#

It's an Object

cinder flare
#

wdym

old wyvern
#

Also, extension functions abuse is very common

#

People thrownit all around the place

#

Not saying its a bad thing

cinder flare
#

It seems like you'd have more context to go off of than just that single function

old wyvern
#

But rather, people don't care to follow conventions

cinder flare
#

Yeah very true

#

I am quite fearful to take my class in C/C++ and see what code I have to deal with lol

lost forge
old wyvern
#

From what I've people end up overcomplicating a similar segment comparitively when comparing the same applet written in java than to kotlin

cinder flare
#

Hmm I can see that

ocean quartz
# cinder flare wdym
class GitHub{
  companion object : Factory {
    fun create(): GitHub {
      return GitHub()
    }
  }
}

fun install(feature: Factory) {
   feature.create()
}

install(GitHub)
old wyvern
cinder flare
#

People abuse the power they have

old wyvern
#

And you end up with a function that you cant find the docs

#

Hence my opinion

cinder flare
#

But maybe that's a trivial example

#

I'm going to be honest I don't have much Kotlin experience, but from the programs I've written I tend to quite like Kotlin

#

Though I also tend to write less OOP kind of stuff lol

old wyvern
#

Yes , thats what I said Star, kotlin is very nice to write, short and to the point

#

But some of those aspects ruin the other side

quiet depot
#

@cinder flare have you applied for dev role?

cinder flare
#

So then, what are your thoughts on Rust?

cinder flare
old wyvern
#

I havent tried rust enough to comment

quiet depot
#

right it's just

old wyvern
#

Just started like 2 days ago

cinder flare
#

Ah same kind of

quiet depot
#

if i'm going to force you to volunteer to review role requests

#

i need to know u can actually code

cinder flare
#

i mean I have a github

#

just not any active projects 🥲

quiet depot
#

what's ur gh?

#

found it

cinder flare
#

linked on my profile

#

lol

quiet depot
#

ballroom dancing

#

nice

cinder flare
#

yes

old wyvern
#

ballroom dancing?

cinder flare
#

i gotta swap some of those lang labels

#

rust needs to be more up and typescript needs to be less up lol

quiet depot
gusty glen
#
val ACCEPT_ALL = Predicate<out Any> { true }``` how can I create a predicate that accepts everything?
old wyvern
#

Ohh

cinder flare
#

dang your dark mode is so light

old wyvern
#

I thought that was some expression

cinder flare
old wyvern
#

English comes up with all sorts of things

#

🥲

quiet depot
#

ur not using official theme

cinder flare
#

yeah I am?

#

i think?

quiet depot
#

wtf am i using then

cinder flare
#

i clicked the little dark mode boi

old wyvern
#

There are 2 dark themes piggy

static zealot
#

one less dark

cinder flare
#

oh you're using dark dimmed

static zealot
#

one dark dark

cinder flare
quiet depot
#

it wasn't always like that

#

that's new

static zealot
#

well not really new

quiet depot
#

new for me

static zealot
#

they added the dimmed one like 1 week after

#

the dark one

#

1 or 2 weeks later

quiet depot
#

it says i'm using default dark

static zealot
#

I think

cinder flare
#

you most certainly are not

#

even look at the little previews

quiet depot
#

ye I think I had an extension installed too

#

i removed it

#

looks like urs now

cinder flare
#

ahha

#

you were the one who was modified after all!

quiet depot
#

yes

cinder flare
#

bro don't dox me like that

#

but yes

quiet depot
#

u doxed urself

#

it's on ur github

cinder flare
#

ik 🥲

#

i realized I should probably separate online stuff from a real job stuff

#

and also having two accounts was a pain in the ass

quiet depot
#

I always imagined when the time came I'd just rename my main account to my irl name

cinder flare
#

wait

#

your real name isn't PiggyPiglet?

#

i feel betrayed

quiet depot
#

it's actually PiggyPigIet

cinder flare
#

oh

#

well, job done then

quiet depot
#

nah

cinder flare
#

you can see my quality web design in dog

obtuse gale
cinder flare
#

Poing is also a classic, my first real foray into C++ land

#

also I just unprivated HotelMan

quiet depot
#

dog?

cinder flare
#

yes dog

quiet depot
#

o

#

i am blind

obtuse gale
quiet depot
#

a woman that stands outside of a motel

cinder flare
#

HotelMan is some extra work I did because I was bored for my CS 3200 - Database Design and Management class that is a Swing-based frontend for our database

#

I did literally all of the coding parts

#

my team was not very helpful

obtuse gale
#

Classic

quiet depot
#

star is this dog thing on gh pages

cinder flare
#

yes

quiet depot
#

ah i found it

cinder flare
quiet depot
#

what was this project for

cinder flare
#

I made the Appointments page and my personal page - found at the bottom - as well as standardizing the style for everyone and fixing their crappy stuff

#

this was the final for IS 2000 - Web Development

quiet depot
#

my god

cinder flare
#

i recommend you try submitting and using the price calculator

#

the two mandatory javascript functions someone had to write, which obviously fell to me lol

quiet depot
#

your email form doesn't even have a filter

cinder flare
#

yeah i don't know what's up with that

#

i mean it doesn't actually do anything, so maybe that's why

#

I think if the button actually POSTs, it does checking cause it uses Bootstrap

quiet depot
#

why this website so wide

cinder flare
#

wdym

quiet depot
#

it's a lot of effort to move my eyes from one side of the screen to the other

#

this is why newspapers and things are done in columns

#

and most sites have huge borders

cinder flare
#

dude I only made Appointments and my personal portfolio

#

both of which are not very wide

quiet depot
#

ah okie

cinder flare
#

I just standardized and cleaned up the rest of the shit, this was a group project after all lol

quiet depot
#

well tell ur friends that

#

did it have to be a group project?

cinder flare
#

this is literally their first time making websites lmao

quiet depot
#

or was it just easier

cinder flare
#

yes

quiet depot
#

oof

cinder flare
#

4 person groups

#

you can see all of us on the Staff page lol

quiet depot
#

how do I see your personal portfolio?

cinder flare
#

go to Staff and click on my name

quiet depot
#

ah ok

#

woah

old wyvern
#

Group projects suck 🥲

quiet depot
#

colour scheme change

cinder flare
#

or at the bottom of Appointments

#

yeah

quiet depot
#

shit's looking like github now

cinder flare
#

the personal bois were our separate projects

#

yeah I definitely did take heavy inspiration from github for that one lol

quiet depot
#

man if I do web dev in uni

#

shit's gonna slap

cinder flare
#

I kind of hate web dev

#

so uh, good thing this is over

old wyvern
#

Link piggy

#

Stars one

quiet depot
cinder flare
quiet depot
#

i hate web dev too

#

most people hate web dev

#

but it pays good and I'm personally, good at it

cinder flare
#

ah see I don't know if I really am

#

compared to these scrubs, sure

quiet depot
#

I mean I'm not very good at designing

cinder flare
#

I also don't think I have the heart to actually do it lol

quiet depot
#

but I can turn virtually any design into a functional site

old wyvern
#

Which one is the one that looks like github?

cinder flare
#

my personal page

#

on Staff, bottom left

quiet depot
static zealot
quiet depot
#

erm

#

not great at things I don't know

#

like c

#

c++

#

rust

#

kotlin

#

go

cinder flare
#

lists every lang besides java

old wyvern
#

Much better

quiet depot
#

hey

static zealot
#

well I'm not good at things you're not good either. but I'm also not good that you're good too ...

quiet depot
#

I'm not very good at english either

cinder flare
#

awww

old wyvern
#

The first ones were... Yea

quiet depot
#

as in the subject that's assessed in school

old wyvern
#

Mobile

quiet depot
#

I can speak the language

old wyvern
#

Friendly

#

🥲

cinder flare
#

yeah we did have to make a responsive design lol

#

but we were graded basically individually so 😉

quiet depot
#

lol

static zealot
#

I can't even speak the language 🥲

quiet depot
#

what are the chances

#

I also know someone called stephanie ellis

#

definitely not that person

#

but exact same name

old wyvern
#

Maybe

cinder flare
#

that's pretty funky

old wyvern
#

Maybe piggy is actually from america

cinder flare
#

cause that person is kinda cute ngl

#

yeah that'd be weird

quiet depot
#

at least you used bootstrap

old wyvern
#

Maybe he lives next door

cinder flare
#

yeah dude bootstrap slaps

#

i was so thankful when we graduated from Notepad++ to Bootstrap lol

old wyvern
#

Elm-Bootstrap slaps better

quiet depot
#

wat?

#

did you use some bootstrap client thing?

#

what's with this btw

#

the cedar dog in the top left lol

cinder flare
#

no I just mean that we had to write our websites from scratch in Notepad++

#

then we were finally allowed to do whatever we wanted and reuse stuff like Bootstrap

old wyvern
#

Bootstrap studio comes with students pack right?

#

Is it any good?

quiet depot
#

I'm assuming you didn't write this front page

cinder flare
#

yeah no

quiet depot
#

how hard is it to align bloody images

cinder flare
#

for reference, someone did that like 4 hours before it was due

#

and I did not care enough to try to fix

quiet depot
#

bootstrap literally has things for this

cinder flare
#

HTML has things for that lol

quiet depot
#

this site could've been done in 100% bootstrap, not custom css needed

#

apart from ur personal page

cinder flare
#

you had to have custom CSS

quiet depot
#

ah

cinder flare
#

the requirements kinda sucked ngl

#

like an image on every page

#

that's why appointments has a random dog picture lol

quiet depot
#

just chuck these everywhere

cinder flare
#

lmao

static zealot
#

lmao

cinder flare
#

i tried asking y'all for help on the day it was due

#

but i was ignored 🥲

quiet depot
#

lol

pale shell
#

What's the purple thing

cinder flare
#

a world border, duh

pale shell
#

???

static zealot
#

couple weeks ago I finally started working on my website again. I literally changed 1 word and stopped again lmao

cinder flare
#

minecraft?

pale shell
#

The earth doesn't have borders?

cinder flare
#

world border?

static zealot
#

my website is like super plain rn. it needs some accents

cinder flare
#

lol

static zealot
pale shell
#

Oh ye mc has borders KEKW

static zealot
#

I kinda copied yours

#

lmao

quiet depot
#

bruh

#

link

static zealot
cinder flare
#

see i copied github

#

so we're all top-tier web devs

static zealot
#

the projects part

cinder flare
#

ooh that has a nice style

static zealot
#

or was it funnycube? I forgot

#

which one I copied

pale shell
#

Nice lorem lipsum

cinder flare
#

those gradient underlines are... unique to say for sure

quiet depot
#

it doesn't look that similar

cinder flare
#

it has the same kind of vibe

static zealot
#

well the projects part

cinder flare
#

top left stuff, big banner thing

static zealot
#

that's what I copied

pale shell
#

I might make a super basic website

static zealot
#

also it looks bad on phone

#

lmao

#

on some phones

pale shell
#

Looks good for me

cinder flare
#

what doesn't man

static zealot
#

the text goes over the light gray

cinder flare
#

phones are shitty at displaying websites

pale shell
#

Oh wait ye

static zealot
quiet depot
#

my site works fine on phone

static zealot
#

lmao

pale shell
#

Yeah I noticed that

cinder flare
#

well when I make it really small on my computer it doesn't go far enough

pale shell
#

Let's say i just had a stupidly basic website with the basics what's needed would that do?

static zealot
cinder flare
#

yes

static zealot
#

and you can test multiple phone models

cinder flare
#

i was quick

gusty glen
#

how can I call nullableObj::class? I only know how to do that in kt with javaClass, like nullableObj?.javaClass

static zealot
#

Galaxy S5 for example breaks

#

it

pale shell
#

I can't design sites, and I can't afford the $2000 to get one custom made

static zealot
#

some with wider screens work fine

cinder flare
#

hey you got a 99 on performance though

static zealot
#

yeah I know lmao. I tested that. It used to be 100 but I added some js shit and it went down to 99 I think

old wyvern
#

A bit broken blitz

cinder flare
#

ah very sad

old wyvern
static zealot
old wyvern
#

Ah

#

xD

static zealot
#

the rest is fine

#

just that

cinder flare
#

oh no your pink buttons are not sized appropriately

static zealot
#

I was even thinking of making it straight bcz I literally spent 2 dayts on that shit

old wyvern
#

I need to start working on mine, always end up procrastinating

cinder flare
static zealot
old wyvern
#

💀

cinder flare
#

Have I passed the gauntlet @quiet depot

#

am i allowed to bully people yet

static zealot
cinder flare
old wyvern
#

Imma try to use Elm for mine

static zealot
#

the same one piggy uses

#

I think

cinder flare
#

so that its easier to click

old wyvern
#

First Elm proj 😌

cinder flare
#

and not misclick

static zealot
#

ah

#

well if I don't forget in the next 4 months I'll do it

#

xd

cinder flare
#

nice

#

open source? maybe I can PR lol

quiet depot
static zealot
#

ye its github

#

pages

#

just custom url

cinder flare
quiet depot
#

I don't think my fontawesome icons get that issue

#

no I mean where is that error from

static zealot
#

yeah yours are bigger

quiet depot
#

ah ok

cinder flare
#

oh from Chrome Lighthouse

static zealot
#

and spaced

#

apart

#

there's still a lot to improve tho

cinder flare
#

yeah but it's looking quite nice already!

static zealot
#

Its just not very colorful. I need more purple and maybe a bit of yellow or orange

#

but just a bit

quiet depot
#

star I'm looking at hotelman

#

no

#

it doesn't pass the test

cinder flare
#

no?

#

it was code given to me

#

look at the first commit

#

i had to try to fix it

#

and also it was when I tested positive for the 'rona so maybe it was messing my code up lol

#

hmm maybe that's why I had it privated haha

static zealot
#

🥲

#

oh extensions

#

apparently

cinder flare
#

also I don't see how I could've fixed that lol

#

besides like, not using Swing

quiet depot
#

yeah ik swing doesn't give a lot of leeway for cleanliness

cinder flare
#

gotta commend the effort though

static zealot
cinder flare
#

i didn't even get extra credit for doing this

#

i just felt like it cause I was bored

#

but i mean, clone it and give it a try

#

it is pretty good I think for my first time ever using Swing and making a UI

quiet depot
#

gotta get that 100 seo blitz

cinder flare
#

yeah blitz you have like 3 easy things for SEO that you just didn't do

static zealot
#

well I just didn't really care lmao xD

#

I spent most of my time doing css stuff

quiet depot
#

inb4 the performance drops when you add images

static zealot
#

it was very very bad before

old wyvern
cinder flare
static zealot
#

yeah I know. I remember it recommending JPEG instead of PNG and stuff

quiet depot
#

idek what a progressive web app is

#

use webp

cinder flare
#

yeah me neither

#

but it sounds cool

static zealot
#

also best practices could be 100%

#

well now I'm just going to drop DeluxeMenus stuff and work

#

on this shit xD

cinder flare
#

ayyy

static zealot
#

good thing I found about Github Pages otherwise this would have been one of the lost projects as well 🥲

cinder flare
#

dude seriously

#

it's so convenient

#

did you see Poing Pig?

static zealot
#

yeah its great

cinder flare
#

i quite liked that one

static zealot
#

btw

#

did you see my 404?

#

its also great

cinder flare
#

and WinSetup if you ever need to setup a Windows 10 🥲

static zealot
#

this is stolen btw. well techincally not stolen since it was posted online

#

for everyone to grab

cinder flare
#

i was gonna say, it seems like you put 10x the work into your 404 page than your actual page haha

pale shell
#

I don't like when it goes to black text, I can't even see it.

static zealot
#

which sucks

pale shell
#

I'm a bit worried that I am gonna p2w on a server 🥲

static zealot
#

well techincally it works

#

I guess

#

and I've got no clue why

cinder flare
#

did quite a bit of that, including independently inventing /tpa lol

static zealot
#

yo @quiet depot someone said you can open projects (folders) in sublime like you can with VS Code. is that true? I can't find it

#

maybe its a plugin or something. hmm

cinder flare
#

i thought that was like 90% of the appeal of Sublime

#

then VSCode added it after

static zealot
#

I'm so fucking blind...

#

its literally under Open FIle

#

File*

#

and its called Open Folder

#

if only I could see lmao

cinder flare
#

yeah question: why not VSCode?

static zealot
#

bcz sublime fast and doesn't take 2 years to start. only thing I like about VS Code over Sublime is the open live webserver with 1 click

#

that's great

#

its a plugin but its still good

cinder flare
#

oh i forgot you don't have an SSD lmao

static zealot
#

... 🥲

cinder flare
#

VSC opens instantly for me

old wyvern
#

Sublime 😌

quiet depot
#

big = multi megabytes, maybe gigabytes

#

sublime says no problemo

#

vscode says

#

@static zealot u can just drag a folder into sublime

#

and it'll open it

static zealot
#

ah Ic

gusty glen
#

thanks kotlin?

static zealot
#

well I mean I opened the project

#

and now I don't want to do

#

anything

#

so.. xD

#

just another day

quiet depot
#

my open folder aint white

pale shell
#

Brainfuck

#

Oh no gl piggy

quiet depot
#

i just opened a random folder to demonstrate it

pale shell
#

Oh

static zealot
#

or something

quiet depot
#

yeah it's material theme

static zealot
#

oh Ic

pale shell
#

Ew

static zealot
#

well I opened VS Code anyways

pale shell
#

Themes 🤮

quiet depot
#

smh

pale shell
#

I use the best intellij theme

#

Nobody can beat my theme

static zealot
#

white theme? xD

pale shell
#

No

#

Default dark mode

#

Yo piggy or funny if ya see this, how does one get the Helpful role? I help people and I boost :p

lost forge
pale shell
#

Oh.

#

Okay, so at first. You go to Google and search "Why haskell is overrated and why you should use Kotlin"

#

Yeah, I've not slept

lost forge
#

Lol, I'd have the papi badge, but my spigot linking and github linking glitched out, so I needa re-link them eventually.

pale shell
#

Wait i could get the GiveawayHost badge

#

Who do I contact?

lost forge
#

Most likely funny

ocean quartz
#

Bill Gates blurryeyes

pale shell
#

Should I msg Barry boi

lost forge
#

or wait for piggy

pale shell
#

Idk where piggy went

ocean quartz
#

Cube is on right now, just talk with him here

pale shell
#

Cuboid, can I please make an offer of a giveaway? frogblush

lost forge
#

Better to do it as an internal class, not a seperate .jar

pale shell
#

Okie ty

#

questions if I already added it

#

Oh wait.

#

Oh no

#

You gotta do it for each msg right....?

lost forge
pale shell
#

Oh sick, less effort to install than expected ty

#

I'll get that implemented sometime by the end of this summer

quiet depot
#

what do u want to give away

gusty glen
#

thanks to type erasure, now I cant make some clear messages for secret-cfg

cinder flare
#

aw man

ocean quartz
#

Reified types blurryeyes

cinder flare
#

it'll still be good though, eh?

gusty glen
#

yes it'll

gusty glen
ocean quartz
#

Fair

sweet cipher
oak raft
#

what jetbrains ide would I use for c++

quiet depot
#

clion

oak raft
#

Thank you

obtuse gale
#

the satisfaction

#

literally me when all tests pass

hot hull
cinder flare
#

that is clean

#

is that TOML?

#

or HOCON?

hot hull
#

hocon

cinder flare
#

pretty smooth

#

are there any config formats that support like interval notation? like 1..50?

hot hull
#

doubtful

young kettle
#

Hey. Is it possible to make primed tnt into a projectile instead of an entity

#

The cannons plug-in only allows projectile items like snowballs, eggs etc to be shot properly

jovial warren
lost forge
#

Yeah, it would be best to avoid using ..

lunar cypress
#

in terms of data, ranges are just sugar for [from, to)

quiet depot
#

simply search for an exact match first

lunar cypress
#

so it doesn't really make sense to have them in a config/data format, especially because this doesn't exist in all languages the format might be implemented in

jovial warren
#

@old wyvern does slimjar work fine yet btw?

old wyvern
#

Yes

jovial warren
#

or at least, is it usable?

old wyvern
#

yes it works

#

Would you like me to publish it, or do you just wanna clone and use local?

jovial warren
#

publish pls

old wyvern
#

Aight, Imma add one more things before publishing, as cant change after that

#

oh btw @quiet depot did you see the gradle project name convention?

quiet depot
#

no

old wyvern
quiet depot
#

good

old wyvern
#

Apparently they do specify 'kebab case'

quiet depot
#

so ig it's official

#

it's called kebab case

old wyvern
#

yup xD

quiet depot
#

well that's one debate put to rest

old wyvern
#

lol

quiet depot
#

now what is a programming language again?

old wyvern
#

Well, in the simplest sense, id say something that can be used to specify instructions in

quiet depot
#

were you here for the discussion about this yesterday?

old wyvern
#

Yes

#

Partially

#

I was here for the first half

quiet depot
#

ah

#

where are those naming ocnventions yugi?

old wyvern
#

On the gradle website

#

Lemme find the link, one sec

old wyvern
#

yup

lunar cypress
#

kebab-case best case

#

I'm hungry now

old wyvern
#

lol

lunar cypress
#

unfortunately there is no really good kebab in this part of germany 😔

prisma wave
#

Emacs Lisp

boreal needle
#

emacth

jovial warren
#

hey any of you ever made IntelliJ platform plugins before?

#

getting a bit confused on where the main class or the entry point is meant to be

jovial warren
#

anyway, slimjar time

#

this better work Yugi otherwise I'm gonna have your head

#

@old wyvern where is it published btw? or does that also take time?

#

because if it takes any more time then I'm just putting it on Maven local

#

also, does slimjar support API dependencies?

old wyvern
#

Put it on maven local for now, Im adding some stuff to suppourt relocations be shareable with isolated containers

old wyvern
jovial warren
#

what's the local version gonna be? since isn't 1.0.0 gonna conflict with the Gradle plugins version?

old wyvern
#

Matt worked on that, Ill need to ask him

old wyvern
#

just change the id to a test variant

#

thats what I normally do

jovial warren
#

also, where can you even add repos that are accessible to plugins? buildscript?

old wyvern
#

Yes

jovial warren
#

which task is it?

old wyvern
#

Come in vc, share share

jovial warren
#

publishSlimjarPluginMarkerMavenPublicationToMavenLocal?

old wyvern
#

one sec, lemme get another mic

#

@jovial warren one min

boreal needle
#

just finished my coursework and i actually want to cry

#

its taken so long

#

but im sat here looking at a 100% passed test plan

#

:'D

hot hull
#

just drop out

boreal needle
#

with 2 weeks left?

#

no thanks

hot hull
#

oh lol

jovial warren
#

thinking about downloading dependencies at runtime, I could probably come up with my own solution like what LuckPerms does, but the thing is with Krypton is that I have the advantage of controlling how I load the entry point

#

so I can just make a new class loader, download the JARs into a folder, add them as URLs, then use that loader to load the main class

old wyvern
#

Bardy

#

Does the actual current krypton on master even compile for you?

jovial warren
#

the tests won't compile, but the main should

old wyvern
#

I tried pulling from upstream and just building the basic stuff but seems some implementations are missing in your test DummyWorld

#

Alright

jovial warren
#

you figured out the issue with slimjar yet?

old wyvern
#

yea mostly

#

Thats what im working on

#

Just had to leave for an issue with a professor not adding my attendence earlier

jovial warren
#

ah right

quiet depot
#

what's the point of attendance checking at uni

old wyvern
#

We have to maintain 75%

#

Otherwise we get debarred

#

Im at 74% cause the professor forgot to send my on-duty list

quiet depot
#

ok, that explains 1 class

#

what about the rest?

#

what's going on

old wyvern
#

The rest is fine

#

I just have an issue in that single course

prisma wave
onyx loom
#

😌

old wyvern
#

😌

prisma wave
#

xmonad is written, configured and extensible in Haskell
i am going to orgasm

lunar cypress
#

how did you of all people not know xmonad?

prisma wave
#

i3 propaganda

potent glen
#

Is this the wrong channel?

potent glen
#

Whoops.

#

My bad

old wyvern
#

👍

foggy pond
#

It's pretty crazy how different it is to learn to program in any language in university compared to YouTube tutorials 😂

#

It seems like nobody who makes YouTube tutorials has learned from any course but instead learned from other YouTube tutorials

#

Just teaching bad practices over and over again

hot hull
#

Well by that you're insinuating that the professors teaching you know shit as well

foggy pond
#

Idk I just wish someone who actually studied Java in university or something made some proper Spigot tutorials for example 😂

#

Maybe I'll do it myself when I am a few years into uni, but idk it's surprising nobody has done it yet from what I saw

hot hull
onyx loom
#

they deserve the death sentence

half harness
#

still not done

onyx loom
#

wait

#

didnt he say this like a week ago too?

hot hull
#

Some girl named Alyson apparently

onyx loom
#

@prisma wave sup there buddy

forest pecan
hot hull
#

The variables are in spanish

#

my brain

prisma wave
#

yo

foggy pond
#

Maybe he just doesnt feel like doing it anymore which is fair enough

forest pecan
#

variables must always be english and english is the dominant language for coding

#

whether you like it or not

half harness
onyx loom
forest pecan
#

where do they use !english

hot hull
#

Indeed Pulse

quiet depot
#

there's no guarantee what you learn in uni is of any quality either

forest pecan
quiet depot
#

it's probably more likely for that to be the case

#

but I honestly wouldn't bet on it

onyx loom
#

can u guarantee quality from anywhere?

forest pecan
#

fro me!

quiet depot
#

u can guarantee quality from me

#

usually

#

maybe 50% of the time

foggy pond
#

My lecturer is somehow some 84yo dude who was around when computers were born pretty much

quiet depot
#

max

onyx loom
#

anyone with dev role = quality teaching fingerguns

hot hull
#

Was gonna say, you'll probably have more luck in here

foggy pond
#

Idk why he is still teaching

forest pecan
#

guarantee 120% quality from kangarko

hot hull
onyx loom
#

wow ☹️

foggy pond
#

But yeah I think he knows what he talks about (Even tho it is pretty ancient standards that he's given out)

quiet depot
#

keep an open mind

forest pecan
# hot hull kneecaps bye bye

‘Purpose’ Available Everywhere Now!
iTunes: http://smarturl.it/PurposeDlx?IQid=VEVO1113
Stream & Add To Your Spotify Playlist: http://smarturl.it/sPurpose?IQid=VEVO1113
Google Play: http://smarturl.it/gPurpose?IQid=VEVO1113
Amazon: http://smarturl.it/aPurpose?IQid=VEVO1113

Director: Brad Furman
Production Company: Happy Place
Producer: Roge...

▶ Play video
hot hull
#

bruh

stuck harbor
#

ew

forest pecan
#

lmao

hot hull
#

I will shoot you

forest pecan
#

lol

stuck harbor
#

you have summoned me by posting bad music

#

my lofi vapourwave heart will kill u

forest pecan
#

1 to the 3 to the 1 to the 3

onyx loom
#

🤨

prisma wave
onyx loom
#

just admit it, theyre never coming 😫

stuck harbor
onyx loom
#

yes

#

i can

forest pecan
stuck harbor
#

in the 1800s: mine mine mine mine

onyx loom
#

LOL

forest pecan
#

lol

stuck harbor
#

rule brittania 😉

hot hull
#

Oh yea did I mention, the plugin's class I showed above was made using eclipse

forest pecan
#

i doubt even eclipse can cause that to happen

stuck harbor
#

sublime text > emacs > intellij > vim > eclipse

onyx loom
forest pecan
hot hull
#

Can someone shoot me

forest pecan
#

i wont shoot you

#

you can shoot yourself

#

🔫

hot hull
#

bet

steel heart
#

Lombok good tho

prisma wave
#

incredible

#

tcp server in haskell

#

it works

wicked hare
#

nice

prisma wave
#

minecraft server coming soon

wicked hare
#

:0

remote goblet
#

brister

#

what the fuck

#

@prisma wave you better fix this right now

#

where is your tf2 profile picture, this makes me incomfortable

prisma wave
#

no

#

it's hot

hot hull
#

He has become a weeb

prisma wave
#

yep

remote goblet
#

fuckin weeeeeeeeeeeeeeeeeeeeeeeeeb

#

still makes me uncomfortable tho EmiCross you without your tf2 pfp is just awful

prisma wave
#

@old wyvern how to do enum in haskell
i have data PacketType Int = Handshake | Request | Response | Ping | Pong doesn't work

need to think about how to structure packet type + packet data with enum style data representation

jovial warren
#

lol

#

just have a state enum and store the packet maps in lists

#

actually the lists won't work for your immutable whatever the fuck

#

packet state should probably be an enum though

#

then you need some way to lookup the packet ID to get the corresponding packet object

prisma wave
#

no

#

what

#

consufused

jovial warren
#

ignore that

#

have a packet state enum

prisma wave
#

that represents what

jovial warren
#

the state

#

idk what else you want me to say

#

you should know the 4 packet states

prisma wave
#

Oh right

#

That doesn't actually fix my issue

jovial warren
#

what is your issue?

prisma wave
#

I want type safe types for all different packet types

#

Although I'm not sure this is possible

#

Handshake = { version :: VarInt, address :: String } etc

#

but no i am not sure this is possible

#

shame

#

HOLY CRAP

#

haskell on top

ocean quartz
#

Ooo the material icon for Haskell on this extension is actually quite hot

prisma wave
#

beautiful

old wyvern
prisma wave
#

oh right enum is a class

old wyvern
#

mhm

prisma wave
#

it probably doesn't need to be an actual Enum

#

this ADT structure seems to work

old wyvern
#

Yea extending that only adds a way to index them

prisma wave
#

not very important here

old wyvern
#

I see

prisma wave
#

i'll derive Show and Eq though

old wyvern
#

Alrighty

prisma wave
#

man this is so cool

#

did you know apparently you can derive Functor

#

no idea how that works

old wyvern
#

xD

ocean quartz
onyx loom
#

ah u have a different one to me

ocean quartz
#

Which one do you have?

distant sun
#

does it not lag for you?

onyx loom
#

material atom icons

distant sun
#

yup that

jovial warren
#

I was just thinking of what to do and went "hey, let's add support for the teleport command, why not", then saw that

ocean quartz
obtuse gale
#

I have been pinged

jovial warren
#

the only issue with the material icons extension is that large amounts of files will freeze your browser

obtuse gale
#

Summoned

#

Invoked

jovial warren
#

yeah look at that mess

obtuse gale
#

Called for

prisma wave
#

"java is simple"

onyx loom
#

said nobody

jovial warren
#

🥲

prisma wave
#

"FP is too confusing"

onyx loom
#

said everybody 🥲

obtuse gale
#

Yeah the command tree for teleport is extremely wide

jovial warren
#

you know what was worse?

obtuse gale
#

You can do all sorts of fancy things with it tho

#

Execute

jovial warren
#

that was all in one line

obtuse gale
#

Oh

#

Yeah

jovial warren
#

I had to separate that manually 🥲

obtuse gale
#

Have you seen the execute command tree?

#

Glhf

jovial warren
#

looking now

prisma wave
#

holy shit

#

new monad discovered

#

wow

#

this is a good day

jovial warren
#

just gotta remove the like 10 redundant casts that CFR has very kindly left me

#

oh btw, do you know how to set executes for commodore-file @obtuse gale? or is that not what it's for?

old wyvern
prisma wave
#

not sure how it works yet

desert ginkgo
#

Hi, i am triying compile guild plugin but when run my server with the jar appear this issue, can you help me

11:42:14 ERROR]: Could not load 'plugins\guilds-3.5.5.9-DEV.jar' in folder 'plugins'
org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError: org/bstats/charts/CustomChart
    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:141) ~[patched_1.16.5.jar:git-Paper-553]
    at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:397) ~[patched_1.16.5.jar:git-Paper-553]
    at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:305) ~[patched_1.16.5.jar:git-Paper-553]
    at org.bukkit.craftbukkit.v1_16_R3.CraftServer.loadPlugins(CraftServer.java:389) ~[patched_1.16.5.jar:git-Paper-553]
    at net.minecraft.server.v1_16_R3.DedicatedServer.init(DedicatedServer.java:212) ~[patched_1.16.5.jar:git-Paper-553]
    at 
jovial warren
boreal needle
#

rn its a mess

old wyvern
#

traumatic brigadier memories

forest pecan
#

looks like brigad 2

boreal needle
#

i mean

forest pecan
#

lmao

boreal needle
#

thats basically what it is kek

#

idk why i thought it was a good idea to write this but here we are

ocean quartz
#

I really dislike builder syntax for commands 😩

boreal needle
#

whats wrong with builders >:(

ocean quartz
#

Not builders in general, specific for commands, it can get too clustered

boreal needle
#

yeah ig thats fair

#

thats one thing with mine

#

the builders are optional

#

you can just extend stuff

forest pecan
#

🥲

#

i mean commodore tho..

#

lmao

ocean quartz
#

I personally like annotations

gusty glen
#

in secret-cfg, should the lists returned by getStringList be mutable or not?

#

I'm divided on this one

forest pecan
boreal needle
#

i need mah argument parsing

forest pecan
#

oh wait i thought commodore supported that

boreal needle
#

nope

forest pecan
#

wait i feel like we should make an api

#

which allows you to do that

boreal needle
#

thats what ive just done

forest pecan
#

no, like in files

#

not in code

boreal needle
#

ig its not real brig

#

oh right

forest pecan
#

lmfao

boreal needle
#

brig itself does it

#

just not commodore

forest pecan
#

brig supports files?

boreal needle
#

files?

#

wdym

forest pecan
#

i don't think you quite understand

#

What i was referring to was allowing to set the builder structure in an actual file and parsing it

boreal needle
#

ohh right

forest pecan
#

rather than writing it in code..

boreal needle
#

i get you now

#

is 1248 a lot of lines for something like this

obtuse gale
#

I'm sure you can do it somehow but it's not what Luck had in mind when he designed the parser

jovial warren
#

ah right

spiral junco
#

*typing noises*

#

bruh

boreal needle
#

watch emily write an essay on how she simps for lucko

spiral junco
#

lmao

obtuse gale
# forest pecan What i was referring to was allowing to set the builder structure in an actual f...

I would imagine it something like this

​time {
  set {
    day >TimeCommand::setDay;
    noon >TimeCommand::setNoon;
    night >TimeCommand...;
    midnight;
    time brigadier:integer >TimeCommand::setProvidedTime;
  }
  add {
    time brigadier:integer >...;
  }
}

That would look with reflection for SAM Command implementing methods in that class for that method name (ofc you can replace > with w/e token, I just thought of it)
CC @boreal needle @jovial warren

hot hull
#

ew

obtuse gale
#

Ew your face

forest pecan
#

only if method references were parseable 🥲

obtuse gale
#

Just.. parse them yourself?

#

That's the whole idea of parsing

forest pecan
#

you would have to use reflection to invoke the method

obtuse gale
#

Well yes no shit Sherlock

forest pecan
#

mhm

obtuse gale
#

Given that Command is a functional interface you can probably use LambdaMetafactory & MH

forest pecan
#

yeah

obtuse gale
#

Or provide it to the parser

gusty glen
#

what is the diff between LambdaMetafactory and method handles in general?

jovial warren
#

oh btw, floating point comparison question: how am I meant to find out if two values are greater than a specific number from each other

#

nvm, my logic wasn't flawed because of floating point, it was flawed because I had abs(location.x - oldLocation.x) > 8 && abs(location.y - oldLocation.y) > 8 && abs(location.z - oldLocation.z) > 8 (PacketOutEntityPosition only takes coordinates up to 8 blocks from the previous)

#

package org.kryptonmc.krypton.command.argument.arguments.coordinates jesus fucking christ that package

#

also, someone please tell me what the fuck local coordinates are (denoted by the caret "^" symbol)

#

oh that's what they are, it's based on left, up and forwards positions from where the player is

hot hull
#

argument.arguments

#

:why:

jovial warren
#

¯_(ツ)_/¯

#

seems to be my pattern now

#

I've put it in command anyway, so now it's org.kryptonmc.krypton.command.arguments.coordinates

#

I think the longest package we have is org.kryptonmc.krypton.command.argument.serializer.brigadier

#

actually no there's definitely longer ones than that

hot hull
#

why is the package plural tho

#

I dislike that a lot

jovial warren
#

because it contains the arguments

old wyvern
#

bardy, fixed, might still need some tweaking here and there tho

#

but for the most part

jovial warren
#

so the command package contains the stuff for commands and the commands package contains the actual commands

old wyvern
jovial warren
#

😌

#

also, Mth.cos((rotation.y + 90.0f) * ((float) Math.PI / 180)) what

old wyvern
#

Ill wait till I test stuff out before PRing

#

What all did i need in the directory btw?

jovial warren
#

what?

hot hull
#

Bardy, I use impl for that, makes more sense to me to have it that instead of command.commands

old wyvern
#

I need world or some config right?

#

atleast thats what I remeber from running it last time

jovial warren
#

you need a world in the root folder yeah

old wyvern
#

Anything else?

jovial warren
#

nah

old wyvern
#

Alrighty

jovial warren
#

just a world, just give it some regions

#

it will refuse to load any chunks that have no data lol

old wyvern
#

Ill continue checking what all needs to be changed tmr

#

Now gotta study for tmrs exam

jovial warren
#

I'm actually confused on how this works

obtuse gale
#

Is that the transformation from local coords to absolute coords?

jovial warren
#

this is from LocalCoordinates btw

#

I guess

obtuse gale
#

Yep

jovial warren
#

is that what this does?

obtuse gale
#

Yeah, that's the LA involved

jovial warren
#

the what?

old wyvern
#

linear algebra

jovial warren
#

this is where my knowledge of maths starts to run out lol

obtuse gale
#

Imagine it like this

#

You are the player, you have a POV of the world in Minecraft ofc

jovial warren
#

emilyy esta escribiendo... xD

obtuse gale
#

You for yourself, relative to you, are always at 0,0,0 xyz and 0,0,0 ypr, but the absolute coordinates are something else; when using commands with ^ ^ ^ as location, you are transforming it relative to your local coordinates, your x, y and z are relative to your position (x/y/z) and direction (yaw/pitch/roll) in the world

So for instance:
^ ^ ^5 is from your local coordinates, 5 blocks forward
If your absolute coordinates are 200,50,300 and you are looking up, then that means 200,55,300 because you are looking up, if you were to look towards +x then 205,50,300 ; if you're looking 45° between x and z then that means 202.5,50,302.5

jovial warren
obtuse gale
#

Basically: matrix transformation

#

3D :zoom:

stuck harbor
#

mafs

jovial warren
#

right, now time to try and learn this by example

#

actually, this is using trigonometric ratios here, meaning it's getting some form of angle

#

actually I'm confused

#

gimme a picture or something

#

I need to be shown how this works

#

and I need to know how to name the floats properly

#

and how to comment this so it's understandable for others

#

@obtuse gale I need example pls 🙂

obtuse gale
#

Huh?

jovial warren
#

I need to see something

obtuse gale
#

Uh I'm not on PC rn

jovial warren
#

also, you told me what it does, not how it does it

obtuse gale
#

I would draw this in 2D planes so you could understand it better but yah, not on pc lol

jovial warren
#

fair

obtuse gale
#

The relevant ones (for your case) are probably the first 5 episodes or so

jovial warren
#

alright

#

oh also, what's an anchor argument?

obtuse gale
#

feet/eyes I believe

jovial warren
#

ah okay

obtuse gale
#

I don't know how it works lmao I never got it to work

#

I've seen the code for the argument type and it supposedly does what I think it does

#

But I never got it to work for whatever reason

prisma wave
#

@old wyvern okay similar problem, i have ```hs
data OutgoingPacket
= Response T.Text
| Pong


Do you think the best way of encoding the packet id's is just something like ```hs
packetId :: OutgoingPacket -> Int
packetId (Response _) = 0x00
packetId Pong = 0x01
-- etc
```?
#

will probably do this for IncomingPacket too, as then I can encode the packet state too

#

unless there's a better way

old wyvern
prisma wave
#

ah yeah

#

alrighty ty

#
packetId :: OutgoingPacket -> (PacketState, Int)
packetId packet
  | Response _ <- packet = (Status, 0x00)
  | Pong <- packet = (Status, 0x01)
  | otherwise = error "Unknown packet ID "
``` so something like this?
old wyvern
#

You can directly match i think

prisma wave
#

how do you mean?

#

i dont think you can

#

but i might have done it wrong

pale shell
#

when you're so little xp away from next level

#

yo @prisma wave you doing packet shit now?

prisma wave
#

yea

pale shell
#

damn gl

#

I couldn't do that, its so complex

prisma wave
#

in haskell too i might add

pale shell
#

even more complex

old wyvern
#

nvm

jovial warren
#

Mojang be like: "let's just release all the obfuscation mappings for the entirety of Minecraft... but the maths... oh no! that stays obfuscated!" https://paste.lucko.me/HWKraDeCIj

old wyvern
#

You can probably use any implementation of a Quaternion bard

prisma wave
#

Handshake {} <- p = (Handshaking, 0x00) this is pretty cool

#

hslint is crazy