Typical Computer science vs typical computer engineering
Inside me are two wolves I guess…
I have to say, I’m getting more and more frustrated by the bad code I have to write due to bad business circumstances.
I want clean, readable code with proper documentation and at least a bit of internal consistency and not the shoehorned mess of hacks, todos and weird corner cases.
todos
I found a simple trick against this: just remove them. Accept it ain’t gonna happen man.
A MONAD IS A MONOID IN THE CATEGORY OF ENDOFUNCTORS
I don’t nearly know enough to understand this but is anyone willing to help me get the thing on the top :>
To first give you some context, the thing on the top is from The “Representable Functors” chapter of Category Theory for Programmers. So technically, you only need to read 230 Pages of a maths textbook to get it ;)
But this isn’t exactly what you asked for, so I’ll try to help you get it as best I can with my limited understanding of the subject. First of all it would be helpful to know what your prior knowledge in Maths, especially Set theory, is?
Instead of
if let Some(a_) = a{ () } else if let Some(b_)=b{ () } else { dostuff }
you could just use
if a.isNone()&&b.isNone(){ dostuff }
Also if you don’t use the value in a match just use
_
Also you can use enums insteas of string literals
I’m not sure how I would go about this in an elegant way since I’m matching the string I get from a message…
If the message used enums for actions/procedures like SPAM_MEMES, then using enums would be more performant
I think you’d be happy to know that I’ve gone for a bit of an overkill and used Pest to parse the commands, which automagically gets me an enum to match against in this position.
The sad part is, I haven’t gotten the Media upload to work, so the project is on ice for a little while…
Rust mentioned!
Doesn’t that construction only work in categories that also contain their own morphisms as objects since a profunctor maps
(Cᵒᵖ × C) → Set
and not the same like(Cᵒᵖ × C) → C
? Since the category of Haskell types special, containing its own morphisms, so the profunctor could be like(haskᵒᵖ × hask) -> hask
? or I just don’t understand it.