#programmers-off-topic
1 messages · Page 137 of 1
I just found it, do I look like a low-level (yes, it's low-level to me) coder?
I'm not saying impossible either
I ""know"" over 1000 kanji
I mean I posted my haskellified C# before I switched to Ocaml and they almost banned me from their discord.
public static Result<Expr> ParseIf(ParserState state) =>
Result.Ok(state.Advance()) // Consume 'if'
* ParseExpr(state)
>> cond => Expect(state, T.Then)
* ParseExpr(state)
>> thenBr => Expect(state, T.Else)
* ParseExpr(state)
>> elseBr => Result.Ok(new IfExpr(cond, thenBr, elseBr));
it looked like this
I just wouldn't describe it as "not that hard", especially if (admittedly I'm assuming this based on this server being english) you've only ever worked with alphabet-based languages
I find it very hard to believe that you would get (almost) banned for unreadable code
It was probably an exaggeration.
honestly I feel like they didn't even think that was C#. Like that code would never pass a code review
A Microsoft dev took personal offense to it which I wear as a badge of honor
-# good point, tone is hard to tell on the internet 😔
Did you reply with "I use Arch btw"?
No :) I should have
Resisting the urge to say i use arch btw
>> is >>= and * is <*> btw
or something, idr exactly
I wrote this code at like 4 am and then remembered Ocaml exisited
I used Arch until I accidentially the root directory.
Still never got to repair it.
yeah I remember your explanation
Yeah, I feel like part of using a language and expecting it to be readable to others is to follow that languages idioms where it is reasonable.
I remember seeing some heinous operator overloading crimes on the SFML forums ages ago.
I had to do this because I am NOT writing 20-30 lines of recursive parser descent functions with try/catch
that explanation also only makes sense to me cause I've used haskell lmao
It would be incredibly verbose
Normally I would never do this, I hate OOP and C# so I use it in a semi-functional way but I atleast dont do this insanity
I mean, there's a very similar way to do something similar but more typical-C#-like that would be less unclear to people. You'd just model it after Linq rather than operator overloading
It would look far more alien than this
is a clear pipe symbol
I guess that's ultimately the most important. Follow the conventions of the language or community you're in. LIke the modders here have a C# convention I don't entirely agree with but if I was making a mod I'd try to stick to that
I've never used haskell or ocaml or whatever, so that doesn't help
Can't say I agree. C++ was my first "serious" programming language, and I still feel like std::cout << "meow"; and std::cin >> var; was a sin
There are no variables, no for loops, and everyone writes 2 letter long names
(There are variables, but they live in IORef or State)
also you've now overloaded * to mean the <*> applicative operator but what would you now do if you want to add support for <* and *> which are also used regularly for stuff like this
write a custom transpiler that takes my custom operator overloading syntax and converts it to ape-like C# nested functions

I'll actually do it at some point
Its the one thing I hate from C# more than anything in the world
quite the point of functional programming 
haskell is a weird land
there are functional programming languages with pretty simple nice syntax and more "normal" coding conventions than haskell though
so I could do
#operators List, Maybe, Result {
#operator <*> infixr 9 $object.App
#operator <$> infixr 9 $object.Map
#operator <#> infixr 9 $object.Flip($object.Map)
#operator >>= infixr 8 $object.Bind
#operator >> infixr 8 $object.Seq
#}
public static void Main() {
var xs = [1, 2, 3];
var add_one = (x) => x + 1;
var new_xs = add_one <$> xs;
}
fixed my worst issue with C#
yes but i use C# for certain projects
like my app I am developing (cross platform drawing app)
Can you even call it C# if you're adding new operators and stuff and just transpiling into plain C#. That's closer to a new-but-similar language meant to run on the same platform (ie. the .net runtime)
If I remember right that's even how C++ began (as "C with classes") - it transpiled its custom stuff to C, and then that got compiled to assembly
forcing another (wildly different) language's syntax onto C# to me is just a recipe for nightmares
No, it would be like TS is to JS
I would probably call it H#
I could probably add discriminated unions in less time than it takes Microsoft to do it too lol
This transpiler would be childs play compared to the language I am developing currently
why are you using C# and not F# anyway
dead language sadly
F# still gets updates every release cycle
10.0 was released three months ago.
It probably is easier to add a new feature to a still-in-development language/runtime than a long-established one that has become huge and needs to worry about backwards compatibility and such, yeah
it benefits from also being a .NET language so all the performance work done in .NET transfers to F#
The compiler errors are gonna be funny
Not really, it will transpile to C# function chains
Templates are great! They're also an abomination
Its a deterministic 1:1 output
There are legitimately times that I've wanted templates in C#. Mostly before I knew much about generics, but even more recently there have been some cases (that I don't recall off the top of my head)
well okay maybe a bit more complex because I want to force typeclasses into it
type Shape =
| Rectangle(int w, int h)
| Circle(int radius);
#[infixr 9 `<$>` mapping=$.Map]
public List<A> `<$>`(..) => {}
#[infixr 9 `<$>` mapping=$.Map]
public Option<A> `<$>`(..) => {}
#[infixr 9 `<$>` mapping=$.Map]
public Result<A,B> `<$>`(..) => {}
typeclass Functor {
public `<$>`(..)
}
it'll look a bit like this unprocessed
Ill probably have to fake HKT but I could backport what Im going to do for my language and transform C# from a garbage tier language that is "fine" to a god tier one
good luck forcing typeclasses into a language not designed for them
I can create witness types
Mojang does it with Java
fun fact: most people actually do remember and read words as whole words (rather than sequences of letters) for the most part so you do remember thousands of visual representations of words too! (alphabets help a lot for dyslexic people and for people who are learning the language though because they help bridge the gap before you do remember all the thousands of words, because they allow you to use the sounds to reverse engineer the way to write the word)
Yeah, that's even the whole premise behind correct horse battery staple, right?
I more meant exactly what you said about the bridge the gap thing.
Same sort of reason why it's easier to remember a quote than "the amount of digits of pi that equals that amount of characters in said quote"
And even if you don't remember the exact words of the quote, it's easier to remember close to it. (ie. me and almost every quote ever)
(Or that's how it works for me)
(I found those "did you know you can read without vowels" things funny when I first moved to the uk because my first language is an alphabet but with limited and optional vowels lmao)
that's more to do with the fact we're very good at storing the meanings of things I think? rather than how we actually process text
I guess I assumed that's related to being able to recall words as whole words, rather than strictly how they are spelled
Like when multilingual people know there's a word for something in a newer language, but can't remember what it actually is
I think that's also more to do with semantic meaning? but idk
(also btw it works both ways, you can absolutely forget the word in your MAIN language
)
Semi-related, this is a fun concept, even if (from what I understand) it's less believed to be "determinism" but more about influencing it.
Linguistic determinism is the concept that language and its structures limit and determine human knowledge or thought, as well as thought processes such as categorization, memory, and perception. The term implies that people's native languages will affect their thought process and therefore people will have different thought processes based on t...
See I'm an american monolingual scrub, so I don't have experience with it personally. 😛
Well, unless you count not remembering what something is called and so having a hard time looking up how it works / how to do it / etc. (usually programming related stuff)
kanji is actually very logical
iirc this one is extremely controversial? but I do think the relativism version makes sense to me
english is very illogical and 'vibey' and i hate that
What’s illogical about English ?
literally everything
I didn't say it wasn't, tbf
but yeah, English as a writing system struggles because of how many influences it has
And more precisely ?
there is not a single logical thing about the english language
Ah, that clears it up then
you can look it up
https://en.wikipedia.org/wiki/Ghoti for example
but one example is like multiple versions of the similar concept with the same pronounciation that differ slightly
Aight
For example:
this part -> literally everything <- that part
Apparently
They’re nothing illogical about that
some of it is just the normal problems that all natural languages face tbh, I've always hated when people claimed English is particularly nightmarish compared to other languages because ngl it isn't in my opinion, it's somewhere in the middle
Yeah, I mainly meant the concept is fascinating.
And even if it's not strictly true in the determinism sense, I think the influence concept has merit. Anecdotal, but the whole reason I didn't transition until late college is I never even learned it was a concept to begin with. But when I did it was just so accurate to the feeling I'd had for so long that I couldn't quite name
Ahah funny
Is the illogical in the room with us right now?
please don't call other people fools for saying things don't make sense to them... we can keep this conversation impersonal
I dunno, I just found "how things work" to be fascinating in general regardless of subject.
Even if it's not correct or even real - like, I love thinking about how things work in a fantasy setting, for example
I read it as self-deprecating humor (which should still be discouraged)
I feel like any language that naturally evolved over a long period of time is going to have at least some problems on that front.
(Like iro said)
(in this case, the person doing the thing being joked about is not the person making the joke, so we should just be careful)
Bah, English language strikes again
Kinda like this quote, but it's originally about programming languages: "There are only two kinds of languages: the ones people complain about and the ones nobody uses."
hey, I disagree with this entirely
some are both!
Yes my bad
if you had to pick one thing to magically fix in one language, natural or programming, what would it be
Hmm. Does being able to say makGaem() and it automatically make a full sized game for me to play based on exactly what I want in that moment count?
the fix would be performed magically but would not make the language magic
Hmm
I can't really say I'd pick a linguistic language thing at all - like sure, there are problems, but I'm not sure what could be done that wouldn't also negatively impact other things.
Like, linguistic language isn't simply used to communicate things objectively, so we can't just remove ambiguity without taking away from those other aspects.
I found English fairly easy to learn, at least as a French considering it might be more difficult for people not using Latin alphabet.
Especially due to the fact that English is a gender-neutral language with fewer conjugations and inflections.
tbf, English and French are very close considering English kind of came from French 
All the romance languages are easier to learn starting from one going to another, compared to romance language -> other type of language. Right?
does English technically count as a romance language?
inb4 technically english is germanic
Hmm. Dunno
DAMN IT IRO
I'm not a linguistic nerd, that's one of my brothers 😛
but yeah, things like not having a grammatical gender system, having a very simple alphabet (not an abjad, no accents, no final letters), not being tonal etc make English relatively on the simple side imo
Yes most of Germanic language shares a lot a similarities
this answer is kind of cheating, but lang: english thing: orthography
I guess rather than romance languages, I meant whatever you call latin-derived ones
what’s your guys favorite orthography. mine is a toss up between cherokee and korean
Or are germanic ones not derived from that either
ngl I like Hebrew but I'm biased 
Tell me what an orthography is first
Oh
I once tried to learn Polish and got scared
You know, sometimes I feel like syllabaries are saner than alphabets
i do like a good syllabary
But I don't know how easily they translate to alphabet structure
they’re like puzzles
i don't have any particular beef with alphabets, except in english
(orthography is spelling)
You don't understand. I still want it to have the soul and heart of making it all myself, but be instantaneous.
i bardzo dobrze
that's what neuralink is for, right? /j
Like if you made a copy of me into a compressed time chamber in a producitivty-for-casey-focused alternate timeline, and then gave real me the end result.
dystopian? What's that?
Monkey's paw wish granted - GPT 6 or whatever
Are we still on gpt 5?
Yeah I guess 6 having makGaem() is a too optimistic. GPT 24
isn’t google’s new thing a video game-making AI
There's also that Roblox controversy
I remember reading something about the promises they're making to investors vs developers
I feel like y'all are skipping the two things where I said "yeah AI won't do it right"
The problem with LLMs is that they're still building against a programming language meant for humans understanding. What we need are languages that AI can used to communicate within itself that humans couldn't possibly understand. What could go wrong?
didn't one of the translation models pre-LLM-madness get shut down for that reason
I do it and it replies "go outside"
Have you touched your grass today?
Matt did u see matplotlib
See it? Where'd it go?
Did another thing happen re:the AI pull request?
oh i’m fully with you there lol i expect nothing but disappointment and wasted resources from it 😂
If AI can communicate in a language optimized for its own understanding, then maybe that Terminator future can finally be realized
(sorry atra)
you jailbird you
Matt, start here https://theshamblog.com/an-ai-agent-published-a-hit-piece-on-me/
Oh wow is judgement Day already upon us?
There's two followup articles to that one too
Mozart serially kills Godot.
Automod serially smites atravita.
(Godot has been pretty safe ever since I moved him to a higher shelf)
why does every AI write the same fucking way
once you start to notice the "this isn't <clumsy metaphor>, this is <even clumsier metaphor>" pattern that every LLMs are in love with you'll see it everywhere
heck even wikipedia lists it out: https://en.wikipedia.org/wiki/Wikipedia:Signs_of_AI_writing#Negative_parallelisms
It is strange to me that AI has developed it's own way of presenting things that is recognizably AI. Like are there examples of this in the material it was trained from, or how else did it pick up these patterns?
(very informative article btw; wikipedia presumably has to deal with a deluge of this stuff in edits)
I think it just picked up the true zero / origin of writing, but it’s so recognisable because there’s nothing else when AI writes
so it’s distilled
like influencer apologies always get accused of being ai because the other thing that sits near the true center of writing is pr speak
I'd change the spelling of the English language to be consistent, more in line with other Latin languages and it would affect all romanizations that are based on English as well.
another point to orthography 
In other words, what AI really needs to sound more authentic is just a little bit of chaos. Perhaps that's the "human factor"
(but also probably the ability to use things with intent - part of the reason ai writing feels so off imo is that it has a lot of the components that human writing has but they’re just thrown in there at a proportional frequency rather than being used with the speech flows and intentions that humans would use them in, because ai doesn’t have as much of an idea of WHY we do these things)
but also you just described the idea of “temperature” in llms basically
My general view of things is I want the backend to do as little as possible and only be responsible for persistent storage (database) and be the final decision maker for mutating that storage.
if I have 500 concurrent users, then if the frontend does the work I have distributed compute for $0, if the backend does all the work I have a more expensive compute bill.
it's perfectly logical when you understand it's largely the product of england being conquered by the owners of all of the language's parts. now why you think mandarin is remotely logical, clear, and understandable is beyond me
the language is also littered with loanwords as phoneticised with roughly matching phonetic symbols/groups and at least to the untrained ear has just as many near-homophones
compatibility and edge-case support will always ruin the most beautifully crafted codebase 🙂↕️
This is apparently roslyn
I haven't been on my computer since last night
What is it even doing to jump between 5 GB and 30 GB so much
Hope killing it didn't break anything
Global interpreter lock
does mandarin have global interpreter lock
Yes
Only one man can interpret mandarin at any point and I'm waiting for him to tell me what my grandmother told me for Lunar New Year
if i know mandarin-speaking grandmothers it was either 'happy new year' or 'are you married yet'
My favorite brit posted!
Well this is exciting! Here's a 3kW SMPS featuring interleaved totem-pole PFC using gallium nitride power stages and a phase-shifted full bridge (PSFB) with silicon carbide MOSFETs.
What happens when:
0:00 Introduction
0:10 What is this?
1:21 Performance comparison
2:25 Water cooling
3:19 Don't turn it on...
3:31 Take it apart!
4:05 First impr...
me? 
You're aussie.
RIP the lord of pie 😔
DH knows.
I know
One doesn't stop wishing someone RsIP just because they wished it once before
If I had 6 more hours per day I would love to grab an adjunct position at the local university
(@ Elizabeth)
This is new
i have been trying to learn taiwanese/southern min/hokkien/whatever you want to call it and the 9 tones are murdering me
there's probably some planet out there....
mandarin at least has a ~canonized orthography, taiwanese has "um well let's just write it down phonetically for a little bit cause we don't have characters for this one"
and several slightly different phonetic systems
and a ton of japanese loanwords that were originally english before they were japanese
It seems we'll need FTL for that though, since our solar system has "around an earth day, or much less" and "at least a couple months", with nothing* in between
* well, Pluto, but that's still substantially more than 30 hours
Yeah I don't want days that long for capitalism to abuse either
Today's troubleshooting nightmare -- I've been googling a problem, found a reddit post that looked like what I wanted, only to find it's the reddit post I made yesterday which still doesn't have the answer
book 3 of what
The books by She Who Shall Not Be Named
the wheel of time
(I figure you know, I just wanted to make that joke)
I mean I want the extra time so I can get a second job as an adjunct professor so
something something calaway's law
Capitalism
i simply won't stand for anyone saying mandarin is logical when 可 is 'maybe' and 可可 is 'chocolate' purely because it sounds like it
that character looks like a for sale sign
可售 ☀️
Well you gotta invent time travel first, which seems slightly less achievable than interplanetary flight and living
living seems fairly achieveable
Can't wait for the butter company to expand their business into chocolate for mandarin speaking areas, and their slogan is 可可可 rather than "Maybe it's Maybeline"
Unless there's new slang I'm not up on it should be 巧克力
but i am severely out of touch with any and all slang
my friend finally got pissed off w C# error handling like I did and asked me for my cursed monadic Maybe/Result type library. I plan to clean it up (remove the weird symbols, but keep them as options) and give it to him later
I mean it makes sense when you're working on a 1000+ line project split across multiple files
Is 1000 considered a lot
At 1000 lines I would be wanting a proper exception type too lol
Proper exception type?
Result/Maybe monad
I don't see what that has to do with exceptions
(I don't know what monads are, and haven't used anything in the sorts of languages you talk about it)
(Yes I've looked it up, I never remember)
My language I'm designing will rely on them to function
a monad is...a cat inside a burrito, i think
But about tacocat?
i do like tacos better than burritos
Justice for tacocats and purritos
but i think the burrito is meant to signify more wrapping
I didnt give him any metaphors when I was teaching him programming because I knew he would have hated it, so I just gave him the abstract, and mathematical/computation definition
casey, on the other hand, loves cats
A link to the official docs of a language I've never used or even used something of a similar paradigm definitely wouldn't help me 😅
Guilty as charged
It sounds like you're saying "objectively superior" when to me it sounds like the sort of thing that's often times preference, and many times simply people misuse one or the other
I sent the documentation, you can read how they work
from a glance at the wikipedia article somehow a monad is like a function returning a tuple <result, success state> and that is chill with being nested
idk no one is obliged to learn haskell
It essentially allows you to take a function wrapped in a container and apply it to a value wrapped in a container, and get a new value wrapped in a container back iirc
Its a design pattern and not really one "thing"
Or that may be applicative functor, I get the two mixed up and theyre basically just slightly worse monads
Docs for a language I've never used and never used anything that has a similar coding paradigm of. Like I said.
I'm not saying I expect you to explain it either - I'm not trying to be entitled to your time or anything. I just don't get how it can be strictly superior always.
Like, people abuse OOP, absolutely. Doesn't mean it is always bad
unrelatedly my coworker is on the verge of panic buying a table saw
How come?
Yes but why
I dont like OOP, at all. Even if I write it in I use classes as purely value data structuress
who can resist a cheap table saw??
(me, i can resist it, those things are death traps)
it also is like, a yard sale type situation, first come first served, and i feel like the urgency has sort of gotten to him
I want a cheap table saw
hopefully not a deathtrap table saw
Nah, just a table that's impossible to keep anything level on. My dad likes weird tables, and I dislike that dining table so much
~~It's not new, it's been here for years. But we've had weird ones before
It's like gnarled wood
sneak in with a power sander when he's not looking
That won't save it
and a mask, don't want to inhale all that wood dust
I should go down and grab a snack, picture incoming
Harder to tell without depth perception, so a video instead
Honestly we've had worse ones before
Its instinctively unintuitive when your brain operates on the concept of f : A -> B and c : B -> C being morphisms that can be composed to go from A -> C e.g f ∘ g (category-theoretic) to try and handle a world of mutable state and objects with properties that have no mapping in my head
aside from recursion, which i still struggle with I find Haskell/Ocaml as natural as driving a car and Java basically the equivalent of trying to fly a plane blind, while drunk
I didn't like OOP, until I found a language that used OOP in a way that felt more natural to how I think about it, and then after that I can use it a lot more effectively
OOP is not natural and never will be natural to how i think
I think in terms of categories (sets) and arrows (morphisms) between those sets
But that seems to be simply a matter of preference. To me, Haskell feels like controlling a helicopter with too many buttons none of which makes sense to me, while Java is... like driving a car. A rusty one. Without servos.
I believe that everything is subjective. There is no truth, because you can't prove that the entire world isn't just your hallucination. Which, admittedly, doesn't fit aphantasia, but you never know.
set of animals -> set of canines -> set of domesticated dogs -> dogs -> golden retriever
It is functionally impossible for OOP to ever feel natural to how I think
But why try working with it then? I'm not wanting to judge you, but you came here a lot to complain about OOP languages and how they feel alien. If they don't make sense to you, that's understandable. But I don't really understand why you keep trying to establish how illogical they are.
it makes perfect sense. the usual dog.update(time) loop just handles basic routines like eating poop and slobbering. extended to some GoldenRetriever : Dog though and you're able to call super.update(time) for the usual drooling and barking, but also add in additional behaviours like fetch() calls
I dont, I have to use them for certain things though because I need a library in it
you can also conveniently override properties like hairLength for higher values but ultimately you can just edit the data in dogs.json
It doesnt for someone who has no visual imagery, a dog is just a data set in a subset of a subset of a subset of a subset to me
I asked gemini to give me the equation after describing it and this is the equation it gave me and it is a mapping between sets
Isn't that also kinda how OOP works? Except that it has a generic template for every set that is based on the respective superset.
To be fair, I don't use inheritance very much at all, I like OOP for the encapsulation of variables and methods into a single object
No, because theres no inheritance
its a sets connected with arrows (morphisms)
OOP doesnt require inheritance
Pathos has aphantasia
Not saying you're lying about it not making sense
Just saying I don't think it's an aphantasia thing, or at least not universally
To get to dog I 'mentally' compose f : Animals -> Canines, g : Canines -> Dogs, h : Dogs -> GoldenRetriever to get dog = f . g . h
Its unique, but its how I think. I would gain nothing from lying
I didn't intend to imply you were lying
Simply that I don't think aphantasia = having difficulty with OOP
I mean I literally cannot visualize half the garbage objects and keep track of the implicit mutation
Pathos's code feels more OOP (and enterprisey) than any other code I've ever seen
So that by definition makes it a nightmare to work on
I don't really understand sets yet. I will try to read more into them.
I can write OOP, I just fucking hate every second of it
Which library do you need to use? Maybe there are alternatives?
And avoid mutable state wherever possible. I would rather spend 2 hours writing a recursive function or a Maybe type than using a nested for loop or exceptions
Have you tried wireframing?
In my app I am using Avalonia, granted its managable because I dont try to code like enterprise-level
If you don't want to write oop, why not use a language other than c#?
I am forced into using it because there are no good third party cross platform libraries and I refuse to use Electron
If I use GTK it would let me use a language I actually like, but I cannot run it on Windows/Linux/Mac
Check out slint for rust
I do strongly recommend against using Avalonia if you don't like using OOP. I've been using Avalonia for quite some time, and you absolutely need to understand C# for it to truly work.
I understand C#, I just loathe the language
Swift is also xplat
Granted I either AI autocomplete the bullshit or use a reactive library like CommunityToolkit.Mvvm as a crutch
I thought GTK was almost universal?
same
packaging GTK is a nightmare
Probably not helpful here, but is wxwidgets still around? 😛
It looks incredibly cursed on Windows last time I tried it
I've done it, you basically have to just include the entire damn thing along with your program
CommunityToolkit is not a crutch, everyone uses libraries for that kind of stuff
I assume so, since I think Code::Blocks is technically alive
against all odds
Gimp uses GTK.
Oh there's also qt
Qt wasn't half bad last time I tried to compile it for windows
I already wrote 100+ lines of code so its honestly not worth rewriting it all
Yeah but it feels impossible to try and do if you dont' want to register
Qt, slint, swift
Everyone in my university hates QT with a passion for some reason.
(source: I tried to avoid it when working on the tiled PR, but ended up making an account anyways)
I think react native is mobile only
register what
QT designer is bad but the QT QML is very nice
If it's a small app, that's fair, but for a bigger one I'd actually say that it's never too late.
QML is purely declarative like Swift UI
For newer versions of qt I couldn't find a (simple) way to install on windows without registering
Its a highly complex paint/drawing engine
I think one of the windows package managers supposedly handles it? But I couldn't get it working
I just did it recently, I'm trying to remember how
Yeah, okay, forget I said anything.
Granted its probably very un-C# code, no weird manager or DI or any "enterprise practices"
Oh I just staticly compiled the exe I think
I wrote this four months ago, you would think I would remember how I did this
Why the heck is their release schedule so slow, but somehow still happening
I used PyQt6 with Pyinstaller, which I think is smart enough to pull in both the python and Qt dependencies when it makes the exe
but look, it went up by a version every year. now that's progress
No, after about a week code goes into the indistinct void portion of the brain, and after another it gets ejected from there too
something something Minecraft's versioning system switch
i even had a custom font, man I was feeling fancy
IIRC slint has bindings for cpp, rust, and python as well
Deploying a qt app? I struggled with that recently too!
for those keeping track, no i havent fixed my networking problems
i couldn't tell 🙂↕️
the jukebox beating will continue until networking improves
i've heard of beatboxing but box beating???
bot abuse...
the sooner one of you tells me whats wrong with my ethernet settings, the sooner we can all move on
private static readonly Dictionary<string, Func<IBrush>> _factories = new(StringComparer.OrdinalIgnoreCase)
{
["hard-round"] = () => new Brushes.BasicBrush(),
["eraser"] = () => new Brushes.EraserBrush(),
};
public static Dictionary<string, Func<IBrush>> ImplementationFactories => _factories;
public static void RegisterImplementation(string key, Func<IBrush> factory)
{
_factories[key] = factory;
}
private static Func<IBrush> ResolveImplementation(string? key)
{
if (string.IsNullOrWhiteSpace(key))
return () => new Brushes.BasicBrush();
if (ImplementationFactories.TryGetValue(key, out var factory))
return factory;
Debug.WriteLine($"[Loader] WARNING: Unknown implementation '{key}', defaulting to BasicBrush");
return () => new Brushes.BasicBrush();
}
on a scale of 1-10 how un-C# is this code, be honest please
This is from LibraryLoader.cs
if you're smart like me then you set your router to dsl instead of wireless and then also set your connection to pppoe instead of dynamic ip
and consequently lost hours of your life
im trying to be fancy and use vlans
but i cant communicate with my server when devices arent on its vlan
and thats the one device that needs to be contacted from another vlan
99% of networking acronyms are not to be looked at or thought of
vlan is no exception
unless you're talking about vlc media player and that's ok
thats... the point of vlans? If you want things on two different vlans to talk to each other then something has to route between them.
yeah, the router. I opened everything up as a test to make sure things were working, and sure enough all the wifi devices can chat no problems, but the wired one refuses to
^
on a scale of 1-10 how un-C# is this code, be honest please
I'm like 95% sure I've done that sort of thing in my mods before
i probably should plug my laptop into the router to see if its just a wired configuration thing but i dont wanna walk over there
the entire code is using zero DI, and just manual runtime binding based on morphisms and lazy evaluation
huh. apparently wireless is already sort-of always using vlans because that's what SSID does: make a distinct network over the same physical media (since all wifi shares the same spectrum it's the same physical media). So separate (wired) vlans should get mapped to separate SSIDs.
Func<IBrush> is a thunk, it stores a function that will execute a result, not execute a function
I know what it does
Yep. But if you leave everything as default, this router will actually route traffic between distinct SSIDs
Like I said, I'm 95% sure I've done stuff like that before in my mods
And recently, too
intresting
fascinating. And you assume also between distinct vlans on the wired connection, but you haven't verified it yet?
(I assume you mean storing Func for creation of things - your fancy terminology is meaningless in my mess of a brain)
I tend to dislike dependency injection, though
I store the function, not the result of executing it so i can hot-wire them on the fly
I hate DI, this is basically lazy evaluation
Yeah, exactly
I forced C# to be lazy evaluated so I can inject my own functions at runtime based on an XML file
I can communicate with my wired connection if the wireless device is on the same VLAN, but if I move it to SSID 2, then it no longer works. I need to see if that's unique to this particular device or all of them
C#'s standard library has a thing for lazy evaluation - Lazy<T>
It's hardly forcing it
TIL, well my Func<T> thing accomplishes the same
C# is eager by default, so it is pretty weird to lazily evaluate a function result outside of literally hacking mods together afaik
A really common thing I do similarly is using SMAPI's PerScreen stuff
But you are modding a game, this is just a standalone application. Any normal dev would have used DI or something lol
I'm not sure why you say it's eager by default, when there's literally stuff like shortcircuiting
Because it still is eager in 99% of cases, lines execute sequentially
In Haskell line 1 could execute before line 2, or not at all if its not ever needed
Its why you can have infinite lists of numbers
I have moved downstairs, time for experiments
well, best of luck. The only direct experience I have with vlan is in with wired (or virtually wired) connections, and all the networking hardware I have access to is either way dumber or way smarter than whatever you're using. (Not that I'd really know what to do with the high-end stuff at work, but I'm 100% certain it would support any use case you want to throw at it if you know how to configure it.)
oh no
I can connect to my laptop when its wired
so its something about the server
maybe its the 75 docker containers running
short circuiting is essentially lazy evaluation for that branch, but the code still sequentially runs in order
please be jukebox. it'd be poetic
if jukebox is breaking my new router i dont think jukebox will win that fight
RIP Jukebox, Feb. 2026 - Feb. 2026
oh my god its one of the docker containers
let's be honest, it's going to be the one running the VPN, but we can dream it's not
i'm still betting on jukebox. the odds are good
How many hours do I need for jukebox legend
I will subject you to kpop for that amount of time
at least a couple
New quote added by kittycatcasey as #7377 (https://discordapp.com/channels/137344473976799233/1215712021207720006/1473872657819893790)
probably should turn bouncer back on at some point
...probably
at some point
those apple bois need to learn their place
There's also linq
Apple bois were a secret plan to make more bouncers? 😱
I can't wait for it to be none of them, and all I had to do was clean out the crusty docker network connections
He tried to silence me
get back in your box
:pensive:
its not the two that i thought might be a problem
Have you tried jukebox
What if it's a fun case like "not a specific one, but a combination of certain ones interacting/coexisting". Those are always exciting
im going in alphabetical order
i have, some would say, too many services
it is not jukebox
it's going to work just fine in the end
nooo...
you thought you were free
oh could it be syncthing
the last potential candidate
cool everything is back up, I can ssh and it's just what I wanted
wasn't that fun
It was syncthing?
Ah, "did you try rebooting it?"
Classic
they survive a reboot and probably weren't happy being moved to a new subnet
and if that doesn't work, percussive maintenence is also good
now that that works, my next task is to immediately disable it
oh this is rad
sketchy alarm panel previous owners set up no longer can connect to the internet or anything else, hazzah
I actually want to know my jukebox stats :(
oh man I found a seriously cool-looking minecraft modpack but it's all in chinese
time to learn chinese I guess?
Well now I'm curious, but alas, I don't know chinese
also I just did a double take about which server I was on
整合包[NEW]新星工程:世界 (Nova Engineering - World)的介绍页,我的世界MOD百科,提供Minecraft(我的世界)MOD(模组)物品资料介绍教程攻略和MOD下载。
I've been seeing a lot of neat chinese stuff for mc 1.12 in recent years honestly
What part of "I don't know chinese" did you miss? 😔
Oh that does look quite cool even if I don't understand any of it
I don't either I just use page translation
I dont know why I'm bothering to try and download it when I'm not gonna be able to understand any of the ingame text probably
Clearly you need to hook up a chinese text recognition algorithm with a translation service on an overlay
tbh I could probably run the lang files through google translate
although idk if that would affect the questbook
But that's less fun
You gotta overengineer it
...or a mod that hooks into text rendering 
anyways I found that modpack because of this mod, which is pretty cool, although it has zero documentation right now, and some of the textures could be nicer
https://modrinth.com/mod/neoecoae
I am writing some truly unholy levels of cursed C# code and packaging it into a library so I never have to use vanilla C# again in my life
The fact that this builds at all is terrifying considering what I am doing to the language
cursed how?
while we don't actually give out the stats anymore because of insane fomo reasons, you do qualify for jukebox legend. how fortunate for you 🥳
public interface Traversable<M> : Functor<M>, Foldable<M>
{
// traverse :: Applicative f => (a -> f b) -> t a -> f (t b)
HKT<F, HKT<M, B>> Traverse<F, A, B>(Func<A, HKT<F, B>> f, HKT<M, A> ma) where F : Applicative<F>;
}
I'll leave you with this snippet
I'm not sure what any of the referenced types are but that doesn't seem so bad
I annihilated its type system and put one in place 400 times more advanced
Its emulating Higher Kinded Types, Generics of Generics of Generics
does atra just have too many titles?
This is essentially <A><B><C>
damn
it's got a lot of generics and HKT isn't descriptive but I've definitely had much deeper generic nesting and complex type constraints before
Oh I like that
This is a Haskell parity type system I injected into C# by using hacks that would make a Rosyln employee cry
It is insanely powerful, and insanely cursed
Its a library I'm making but beware, it will make your codebase a nightmare if you don't know how it works. There be dragons, times infinity.
To use a metaphor, I turned a Honda Civic (C#) inside out and stuck a Singularity (HKT) inside of it
The code is incredibly clean, but uses type system level hacks and changing ONE thing without knowing what it does, WILL break it. Not may, WILL
I would not be so sure about that tbh. F# is first-party, and while it's not on the level of haskell, it diverges pretty significantly from c#
This smokes F# type system
F# cannot abstract over generics of generics
yes I just acknowledged that in the post you are replying to
did you actually read it?
I meant cry in the sense of how badly I abused the typesystem
Not that they dont have a functional language
@supple ether The programming warcrimes I commited against C# are functional now
using Catnip.Core.Control;
using Catnip.Core.Data;
class MainClass
{
static readonly Func<string> buildString = () => "Hello world";
static readonly IO<string> main = from _greet in IO<string>.Pure(buildString())
from _ in ConsoleIO.WriteLine(_greet)
from _prompt in ConsoleIO.WriteLine("What is your name?")
from name in ConsoleIO.ReadLine()
from __ in ConsoleIO.WriteLine(name)
select "Done";
// Stupid ape-tier wrapper to call our IO monad
static void Main() => main.Run();
}
you can also write it normally using IO<a>, I just hijacked LINQ to act as do notation
ugh some microcontrollers in shenzhenio only having one register is so annoying
even tis-100 has two for every node
https://bsky.app/profile/castpixel.bsky.social/post/3mf52azn5oc2h
Holy shit this is so cool
@feral plume Heya, this channel isn't for Stardew talk
hiss
ok, sorry
all good!
Are there any smart people here 
is this a personality test
Is a lightswitch sentient?
is this a multiple choice question
Nope.
gib Steam, i need more Shenzhen-playing friends
mind if I dm? it's been in the channel before but only as screenshots, I don't want to put it as plaintext haha
Yup DMs are fine
Can you also DM me? I need more people in my leaderboards.
Or just add me, my profile is public, the ID is just shockah
Now so do I get the role....
Absolutely not
added!
and dmed
Can’t wait to be completely defeated on the later levels
The early ones I’ve optimized to hell
are you reading the emails?
the non-mission ones
looking at the leaderboards, you should already see one of interest
yeah, I'm going to try something from them now 
Anyway, that mission is the only one I’ve looked up to see how others optimized it, after I was done with it. Apparently 57 power is possible, but jesus, I’m not doing that
Is this shenzhen io
Yes
Is there anyone here using a tiling manager ?
How long did it get you to get used to it ? 
As someone who practically never used a window that isn't maximized to begin with, not very long
though I suppose ironically I never really liked the tiling part of tiling window managers. I don't want another window to change size because I spawned an extra one
the original thing I liked was just that it spawned windows maximized by default so I didn't have to deal with programs that for some reason insisted on opening any other way
then I started really appreciating that monitors are given their own individual workspaces instead of having all monitors share the same workspace which made anything without that like KDE or GNOME annoying
and then I found Niri which allows me to have just have maximized windows for everything that I can just scroll between 🙏
i'm also currently using niri, although i don't particularly care about tiling or maximizing and i'm still not sure if i'm used to it
the thing that sold me on niri is that workspaces are not statically defined ahead of time, so i can easily create and drop tasks as needed without keeping track or worrying about not having an open spot
so if i want to start a new thing, like editing an image or writing code for a particular project, i just hit a key combo for "new workspace" and i get a new one with nothing on it and i can open whatever stuff i need for that thing. and when i'm done i close them all and navigate away and the now-empty workspace disappears. it's so nice
the overview mode was a nice bonus when that got added
overview mode my beloved
I thankfully read the patch notes at the time and saw the overviw mode was added and made a good keybind for it
and on a laptop touchpad it's just a 4 finger swipe up
honestly niri is the first environment I've ever used where I feel genuinely pretty comfortable only having 1 monitor when using it on my laptop
the touchpad gestures are just really nice
I used hyprland off and on, and I personally just dont care for tiling managers
They're neat in theory, but I end up having everything full screen. Plus the WMs are so barebone you either spend ages configuring everything, or just copying someone elses config that I don't really understand, leaving me in a no better place than just using one of the big DEs
is it still a hassle to get gtk and qt to agree on their cursors and themes
yes
excellent
just wait till there's actually popular cosmic/iced applications and you have a third thing that needs to be styled the same way
Hmmm 
I do hear great things about niri scrolling
it's practically made for me I am very biased towards niri
I recently tried Hyprland instead of KDE Plasma because I wanted to try a tiling manager but as someone mentioned having a window resized every time I open a new one is slightly annoying me.
I should try a new one but it comes straight into the old problem
I really like the customisation tho 
niri looms
95% of my computer time is working
At that point though, is it not just... a regular DE with maximised windows, but with non-paginated desktops?
you can't spatially organize maximized windows in a regular floating window manager
they're all just underneath each other and you have to alt tab to the right one
Are they even maximized if they don't take up the whole screen
or use the funky taskbar application menu shortcuts
they do take up the whole screen
ignoring the taskbar I suppose
it's not fullscreen, just maximized
Tbh I would love a tiling windows manager
Right now I have literally tens of different terminals open
Many with vim in them
no tmux?
Many with different tabs
I have five or so Cadence windows and I keep losing one of them
What do you need so much terminals for
I’ll try it
Crumble I'm old we use screen
Distro hoping ❌
DE hoping ✅
ah good ol screen
I used that when I had a minecraft server running on my home server
(The real answer is that I often task hop.)
screen? We use tmux please
(screenshot of the overview mode)
Had to pick some content that didn't dox me. Pretend the file browser is Signal or another messaging app.
I like having "related" application types on the same workspace and then other types of applications on their own workspaces
What i really want is someone to yell the cadence windows into submission tbh
thankfully I don't even know what cadence is
Easy ChickPea Patties
yeah, they were pretty good
...honestly it still baffles me how they managed to get a partnership for a crossover game with a main nintendo IP
it be like that sometimes
I didn't exactly expect undertale in super smash bros either
True. Though as neat as that is, I consider a cosmetic DLC of an indie game a tier below an indie dev making an entire crossover game with their own IP, officially
understandable
VS 2026 has been updating itself each time I close it lately, and I feel like the solution explorer got changed?
Like it feels like each row has more padding now
Which means I can see less at once
Wait, let me check something
Okay yeah
Here's 2026 right now
And here's 20222, which I think was what 2026 was like a few days ago, unless I just didn't notice this until now
20222 future tech...
Can see 7 more entries in 2022
shoot, my time travel has been exposed
I think we need even more padding
2022 looks so much better 
why is this microcontroller not waking up from this slx instruction 😭 (shenzhen io, not actual microcontroller
)
oh that's not even the issue, it's just freezing on instruction 1 the whateverth time around for some reason
If i play the game we need to play "shenzio or irl"
Btw iro this is why I asked u about balatro on mobile
Balance expires ????
sorry ur money is temporary
please spend it
ur salary will be returned to the company after 6 months if not spent
Oh dear
desync between micros?
I fixed it but I can't remember how 
ah there we go, you beat me in line count
oh right it was that something we mentioned earlier behaves weirdly in the debugger
(the puzzle before that one)
it does? i have not seen any weird debugger behavior
I was ONE line away from not needing another microcontroller in the one you just mentioned 😭
spoilers -> ||gen visually moves on to the next instruction before it finishes blocking so the next instruction appears to block||
ah
i guess i have never debugged that instruction
i just let it rip
and tbh i was having a hard time finding use for it in later levels
i have yet to come back to the extra levels though...
I think debugger is the wrong term, just the visual display haha
you know what's the worst moment?
because i needed that second register
actually... maybe i don't...
damn all of this for -1 power, same cost, same line count
I have been informed there is a setting for this (thanks Pathos): https://learn.microsoft.com/en-us/visualstudio/releases/2026/release-notes#february-update-1830
😌
so is 2026 worth using, or is it just another cumulative performance cost hike justified by value -added bloatware and ai integrations
idk the syntax highlighting has been noticeably slower for me strangely
I've experienced zero positive changes
beyond being the only version that supports .NET 10
it looks like they made it visually in the style of jetbrains. and with ? improvements ?
i place this judgement solely on the image of buffs
No, the year 2026 is not worth using
I'm returning it for a second copy of 1999
maybe code::blocks had the right idea. live in the past
Yeah, JetBrains have gone very rounded with the newest theme stuff as well...
how about you copy the visual clarity and comfortable functionality of visual studio CODE you dogs
naefnsaf'
And Code::Blocks? Nah, Dev-C++ is where it's at.
vscode is such a surprisingly slick and usable ms product (endless ai integrations aside) and i can't figure why they'd want to look at their competitors' homework when they have a perfectly good product right here
honestly no complaints with vscode. does exactly what it needs to do for my job
The only significant change I've noticed is my beloved dropdown being slow
ground-breaking.
(Seems slightly better at the moment, maybe they fixed it being bad for large files)
I loved vscode for Rust tbh
I think I am the first person in the world to ever see an error message as cursed as this
I've definitely seen worse
I figured it out though, C# is garbage and has a worse type system than my toy language I wrote 2 years so I needed to introduce another layer of indirection
Both in the sense of "haha C++ template errors go brrr", and "Type SomeThing is not castable to SomeThing" (or other similar cases when they look equivalent but aren't because of assembly (in the .net sense) manipulation reasons)
Hindley-Milner smokes C# in most ways, aside from subtyping and function overloading (which is a stupid habit anyway)
logically, we can assume that c# is not garbage, because it would have been collected by now
so true, blueberry
nah there's lingering references
while I don't agree with the things you're trying to do it is kind of fascinating in a way to see you try so hard to turn C# into just a completely different language from entirely different programming paradigm
I broke every rule and probably made the clean code guy want to nuclear strike my house but I forcefully put monads into C#
to be fair the clean code guy should be ignored at all times anyway
Did it mostly for fun and as a challenge. If I can do this the nightmare way in a garbage ape tier language such as C#, I can implement higher kinded types in my own language
I don't quite understand why you wouldn't just write another .net language, rather than forcing it on C#
Like normally I'd understand because its tons of work to do that, but you're literally already making a programming language
and yeah clean code guy is my archnemesis
Because I found enjoyment in breaking a type system
I'm all for doing insane code things because its fun... but that doesn't mean the original system is garbage
My language will naturally be able to express * -> * -> *
C# is a horrible language that I only use when I'm forced into it
Now I'm not gonna fully use my cursed library, but I can incorporate bits of it to make error handling not feel like the stone age
good luck with that
wdym
I've basically done it
If someone wants to look at the code, they need to be intelligent enough to know what a monad is so it keeps idiot junior devs away which is a win/win
But I probably won't use it for IO, I just did that for the lols
i feel like you could explore this for fun in a way that doesn't insult people and the systems they choose to use/know
if those c# users knew what monads were they'd be very upset
If you got insulted by me just stating that I don't want junior developers who have no idea what they're doing working on my codebase, that's your decision. I never pointed names
alright bye
Being different from convention doesn't mean better
By definition, this is better because you don't have to have a billion try/catches, it's exactly what rust does
I just implemented the whole shebang for the challenge of it
A personal goal I have is to write code a first year student would understand, because good code should be readable.
That, and the code should be troubleshootable at 3am after being waken up by alarms
I would never dumb myself down to that ability
If someone can't understand my code, that is on them
good luck getting a job then
chibiusa would never say that
the best code imo is the kind that reads as being so simple it’s obvious/boring
that way you can see exactly what happens and it’s maintainable
This is so simple it's boring. You do the hard math once, and then just pass results around and match on them
If something is Just(5), you extract 5, do something with it and then return a new value
If something is Nothing, you do nothing
conceptually simple yes, but readability (and in turn maintainability) is still a pillar of language design
Gatekeeping as a design philosophy 🤔
Ironically I would have to dumb myself down because I operate far above most junior or senior programmers in terms of code understanding
Someone not knowing what a monad is doesn't make them unintelligent or a junior developer
chibiusa would definitely say that
I see complexity as a budget.
and you don't want to spend it on the small shit because then you run out before you get to the important parts.
so keeping 80% of the codebase as simple as possible lets you splurge where it matters
oooo I like that
i feel like this is just running the boiling-frog scenario on your manager/coworkers
in a good way
If you have a billion try/catches you are misusing exceptions. By definition they are meant to be exceptional. The c# equivalent of rust's result is the TryGet pattern
If I got a job it would probably be working on some cryptocurrency in Haskell or something financial in ML, I'm too far ahead of anything C#/Java
why 'if'
Because I'm not employed rn, and it's a nightmare to find one
I'm a junior with the skills of a senior because I've self taught myself over the past 12+ years
depends, iirc python believes in “better ask forgiveness than permission” as a pattern 😭
tbh I feel like most of my self teaching was good for writing code but didn’t help me with writing CORPORATE code
This is not going to help you get a job. Employers value team players above individual skill.
That's why I mentioned c# specifically
just like silicon valley startups
Java iirc is still fairly exception heavy, and early C# followed suit, but over the years C# has moved over to patterns like TryGet and other patterns to keep exceptions exceptional due to their performance overhead
I made some fried eggs I'm back
You could not pay me enough to write Java code
Even for a million dollars I wouldn't do it
don't worry, they wouldn't to begin with
I don't like java but it's still better than retail
would you like to sacrifice your pride or your body 🙂↕️
Now I hate Go, but I can rationalize that as "This language sucks so much that I'll never touch it in my life by choice" and will never ever mix work and hobbies because of this
Please don’t call a category of people idiots, especially a whole category of people who may be in this server.
if you treat anyone in that field like they're some inferior intellect creatures that can be disregarded I don't think they would want you as a colleague to begin with
Yeah exactly.
And a lot of junior/senior/etc. is everything except writing code
i see this as a budget, where i sacrifice 20% of my pride to keep 80% of my body
alright sorry
.xkcd 1053
Something i always wondered about functional programming things is the abstraction cost
honestly i feel like i'm mostly at my current job because my coworkers apparently find me and my code easy to work with rather than because i'm capable of producing extremely efficient typescript at lightning speed
btw. You can be the most advanced ascended programmer that has ever walked this earth but if you can't get along with people at varying skill levels you're not surviving your first year at any job if you even manage to get through the interview
specialists are needed for high-performance long-term systems of course, but your average programming job is really closer to stacking shelves with a keyboard
Lol
Is it closer or farther away from the things modern cpu architecture is designed for 
further!
haskell is NOT very efficient and considered higher level than most imperative and oop languages
That's my intuition yes, but is it theoretically possible to make a cpu arch that's more functional programming
I can't hear you over the sound of 300 layers of software
If you're a 100x rockstar developer you don't need any other coworkers
guitar riff
Or is it just not something one can realistically do
well I mean they're not exactly known for high performance to begin with. Immutable programming as a whole is not a concept designed for high performance applications. It's more so designed for correctness where performance is secondary
I'll probably end up looking for jobs in Go because I hate the language so much that I'd never be tempted to use it for anything but work, and I could write it while sleep deprived and still write better code than 100% of juniors
and my boss especially loves me for onboarding the newbies at the office so you can consider caring for the junior devs a bonus haha
golang generics are going to give you nightmares if you don't like C#'s ones
Yes that's the point
I want it to be so garbage that I never feel the need to want to use it
So I can purely separate work and hobby
we already invented visual basic for applications for that
C# is mostly a nice language, it just has annoyances like error handling. Go has zero redeeming qualities
now that's a language no one would ever choose to use outside of employment
i'm sure we have some vb hobbyists in the woodwork
Just learn COBOL ez
My shitty toy language (before I abandoned it), had generics 3 years before go
most things had generics before go. Go effectively added generics out of spite after years of saying they didn't want them
Yeah but if a single girl in her room can add generics in a few days, there is no excuse why it took them this long
clearly you've never tried to convince a massive corporation worth number of people on a design decision
Aside from literal ape tier thinking
While I understand the allure of placing your own value into your perceived intellect, because it means you aren't vulnerable to others, it will ultimately isolate you. Being kind will get you further in life, and will make you more friends.
Javascript was famously made in a week, doesn't mean what they made in that week was good
I dont need people to like me, I dont thrive on being a social creature
Imagine having types when u can just have magic knowledge of what's inside this void * 😌
If that were true, you wouldn't be in here bragging about your genius
Comparing JS to a fully type safe, parametrically polymorphic, hybrid functional language with first class functions, and a Hindley-Milner type system is not the comparison you think it is
i never knew this! makes sense from what i've heard about it though lmao
Often times the actual implementation isn't what makes things take so long
In the rust thing im on we have to use crate with bunch of unsafe nonsense just to have the ability to load rust to rust dynamic libraries 
It took me 2 weeks to write that type system and that was my first time doing it
If a conversation can not be had without insulting anyone (present in this channel or sweeping generalization or otherwise), then the conversation is not appropriate here. This reminder goes to everyone here to please keep things civil and polite regardless of who (or what!) they're talking about, or the topic will need to be moved on from.
I could probably have the exact same thing done in less time now I understand the math
tbh javascript is more so explained by what came after that week. Essentially just them adding random shit from whoever asked for a new feature with little regard for what that meant longterm
What are you talking about JavaScript is a great language. Also 9+'1'-1 is 90. This is perfectly reasonable. /s
It actually make sense 
Javascript is a fun case study, and the various efforts over the years to tame it, the failed EMCAScript 4 spec which in many ways created ActionScript for Adobe Flash.
I actually sent [] == '' to a coleaggue today after he tried to show some weird equality statements
I'm just stating facts, not bragging
There is a difference
JavaScripts existence makes me sad. We could have had Scheme on the web, instead we got this
Javascript much like PHP are the successes they are today because they are accessible
For your next trick tell them how [] == ![]
That's interesting, does it do the same thing with {}?
Accessible ≠ good.
trick question. you are ALL object Object
am I a prototype ? ✌️
Not if I have a toString() function I'm not
Technically correct. Accessible is a subset of what makes 'good' good
no cause casting an empty object to a string does not result in ''
@ junimos blueberry is objectifying me 😢
since what javascript does when it is given different types is to just turn both into a string and compare em that way
I just looked up Scheme. (Heard of it before, never looked into it or at least retained it) Yeah, glad we don't have that for web.
i want so badly to react with springobjects.png emoji
When you invent a language that tries to be easy to the point that it becomes illogical, technical correctness matters more than accessibility. I'm not saying Haskell on the web, but we could have had a nice, purely deterministic Scheme
So here's the real question
If nobody can get into a restaurant to eat, can you even call it a restaurant?
If you had to choose between js and python for web scripting, which would you pick
People just don't understand the beauty of Homoiconicity.
Let's toss lua in there too
Where do u need it
Neither. Both are horrible languages. I would pick Scheme or Typescript
Typescript is only useful because it is javascript
I pick
on the grounds that it is just as cursed as js but nicer to read
it do be a nice type system
One of these years maybe web assembly won't suck anymore
A programming language could have every working piece of code a literal groundbreaking literal work of art, and I would not care compared to almost anything else about the language
gotta go get dinner now
Or more specifically, Typescript is only useful because it maps down to type agnostic languages which lets typescript types care about the theory and not need to have memory structures as a bottleneck
I once saw someone doing his entire frontend in C. What a chad.
Like c on wasm?
You'd still need js to interface though
ah yes, the c family. c, cpp, c#, and css
Python has virtually no type system, but more consistent behaviour than JS
JS has the ultimate sin of trying to "guess what you mean" and perform stupid type conversions, so they had to add ===
Typescript on the other hand enforces types, and Scheme is a logically consistent, functional programming language
at my workplace (C#) i'd say it's 90% people passing around old code to improve upon/modify, and only 10% actually writing new programs. knowing wtf your coworkers are doing is essential to functioning
Well my break is ending so I will see you all later
I swear the creator of this is not sane
I was going to say, nothing says efficient like building a separate conflicting layout engine directly on top of an existing layout engine
Edit: Thought I clicked to reply to Crumble's screenshot
I pray that if I ever get a job in a language like C# I don't need to deal with stupid abstractions like 3 layer nested manager classes when it could just be a single function
Or DI, don't even get me started on DI
New quote added by kittycatcasey as #7383 (https://discordapp.com/channels/137344473976799233/1215712021207720006/1474175060058308823)
and part of that is to use standard conventions and common libraries to maximise odds of common understanding.
hey since when were you a c# developer wtf
don’t forget cpython
no i am a humble admin who they refuse to train on anything else 🙂
i just know from coworkers talking about what they do
Oh.
speaking of admin, I'll have to drop off, I have 6 hours of fighting with kubernetes starting in 10min
Clojure is my favorite C family language
I'll let myself out.
good luck with ur helm charts
They should've called it cubernetes so we could put it on the list of "computer stuff starting with C". They really missed out.
it's ok
cOMPUTER
If it was simply helm charts it wouldn't be 6 hours.
its doing 6 hours of adhoc patches on top of what the helm chart made because different teams and responsibilities
You win this round... Crumble
oh no
khlobernetes
Crumble was an industry plant
I've been found out
Hey khloe have you considered changing the spelling of your name
Furthering schemes of big C
working on C-Sharpest to take over the world
then we could shorten her name to CCCP! ...oh no
Oh no it's the combined community codec pack
If you just train yourself and then sit down in an empty C# cubicle one day maybe they won't even notice
Just steal ppl's tickets n do them trust!
No one will know
genuinely learning it as a hobby i'm like one day. one day i'll be good enough to bug [coworker] into letting me shadow him
be sure to add 'years of experience data modelling in a fast-paced c# environment' to your resume first (doing json in #making-mods)
btw as part of troubleshooting I did have to learn some basic cql, so add another c language to your list
Y'all have cubicles?
(Hangs out in #programmers-off-topic)
I don't have cubicles
- experience troubleshooting
- training junior team members
- out-of-the-box thinking (aka breaking shit)
when I first started some others had cubicles but everyone else lost them like 8 months later when we got relocated into the main building
Can I put you down as a reference, bluebs
Yes Definitely
Thank You
There was actually another C language, C--
half of my resume references were people in the dota modding community
It was basically used as Haskells intermediate bytecode
mainly as they had fancy day jobs in addition to their work in modding
i'd actually love to become a trainer because i like teaching people but the only training position we have is for Relativity
I've never put a reference on my resume
Like.... the theory of, or
it's a database system
i'm on a contract to the FDIC
very important high level government job trust 🙂↕️ /j
Relativity, also something closely associated with the constant c
it all comes back to C
it's all coming together
©
really i should be programming in B for the brand representation
🅱️lueberry when
I do remember some people in the early days of minecraft custom development were using D
you can only program in a language that either your real name or your most common online username starts with
Gonna make my own language, C**, which is nothing but pointer operations for literally everything and designed for the sole purpose of confusing people.
which means Verilog is still in the cards for me
I use fira code (font) and when u do *** it bunches them up
I'd rather not use scala though
aha now i know you (checks notes) victoria
... Brainfuck?
Makes me wonder what language is seriously using 3 asterisks in a row
There's Beef if you prefer
I'm trying to cut down on meat
I'm open to doing stupid shit in SQL though and abusing stored func to write the application entirely in sql
is there some comprehensive list of single-letter programming languages
You've heard of SQL Injection now get ready for: SQL ejection
i'm surprised to find E and G
I guess if we go by my full legal username I would also be S. Or if we went by my first real name... I would also be S.
would probably enjoy sql more than scheme personally
I'm more familiar with SQL let's go with that
Is it [A-Z] only or do you accept [A-Z][^A-Z]?
thankfully thanks to my real name starting with a V I can program in Verse, the fortnite programming language
created by the person who designed haskell
Oh I forgot there's also basic for B, duh. Swift for S, as well, or Scratch...
Swift is probably your best bet
fascinated by NXC and NQC
NQC is an array probably language I think
didn't someone write minecraft in scratch
Time to make SMAPI (Swift Modding API)
oh it's not
though it needed a fancy accelerator runtime for it to actually work
you will never fucking guess what NQC redirects to
Lego Mindstorms (sometimes stylized as LEGO MINDSTORMS) is a discontinued line of educational kits for building programmable robots based on Lego bricks. It was introduced on 1 September 1998 and discontinued on 31 December 2022.
Mindstorms kits allow users to build creations that interact with the physical world. All Mindstorms kits consist of ...
that's where programming peaked
I'm jealous of the lucky folks with a name starting with U so they can program in Uiua
is this not the dream
Truly, the second best language in the C family
after Chinese I assume
despite whatever the heck a reified is support to be
reified is mainly there so I can port Roslyn without putting even more thought into porting Roslyn
