once again I fucking hate dtolnay for blocking reflection in rust so that his macro work doesn't become obsolete
-
@[email protected] I'm currently annoyed because I'm writing serialization functions and basically you can implement your own Serialization trait (good!) but once you 'use' the Serializer in any way, that's the only way you can use it. So I'm having to be careful with nested objects and how I attempt to serialize them when 'flattening' things manually.
It's just like... I don't know. The model for serde is weird and I don't like it. Some things I like (theValue
enum, which can contain a recursive version of itself: good!) but. -
@[email protected] right? I feel the same way. My brain tries to kill the placebo effect sometimes though, which is frustrating, by being like "WHERE'S THE RESEARCH BITCH"
-
d@nny "disc@" mc²replied to Irenes (many) last edited by
@ireneista @aud @jonny i didn't know about it at all until a few months ago and i felt incredibly upset and disillusioned
-
@aud yepppppppp.
-
Charles U. Farleyreplied to Asta [AMP] last edited by
@aud I haven't done any macro programming at all. Some of the template stuff. I hate that it looks too much like C++. There are even some false friends, which I think is objectively bad.
-
Irenes (many)replied to d@nny "disc@" mc² last edited by
@hipsterelectron @aud @jonny it is upsetting and disillusioning for sure
this was by no means the only topic on our mind when we wrote https://irenes.space/leaves/2024-09-29-technology-community-idealism but it was in there
-
@[email protected] I like how #chapelLang handles this type of stuff (back when I was writing more of it, which was a while ago admittedly); at the time, your serialization/deserialization stuff was the same stuff used to print to stdout, for instance, so you didn't have to write multiple variants...
Like one does with Debug and serde. -
Asta [AMP]replied to Charles U. Farley last edited by
@[email protected] I really dislike macros for a lot of reasons, but that's my core reason: they can make it substantially more difficult to figure out what the hell is going on unless A. you can read the macro, and/or B. read the intermediate (which is obviously not available until you attempt to compile).
Not that I think the idea of metaprogramming or whatever it's called is bad, but that I think rust's model is. -
@aud sigh Lisp "solved" this problem 70 years ago
except not really because we still have the problem and hardly anybody uses Lisp
it's frustrating how it keeps coming up
-
@[email protected] So, yeah, I'm annoyed that not only is Rust the first time I've had to write macros (rather than writing thousands of line of difficult to maintain boilerplate) but that it just so happens to be championed by one of the preeminent garbage fuckers in tech.
-
@[email protected] alright, this is very validating and I appreciate it, hah. People bang on about how great serde is and yeaaaah it's certainly the tool in use, isn't it, but. is it great? It fills a niche but does that mean it's good.
-
@[email protected] fuck it, gonna create a makefile for my project that calls a bash script that generates rust code through extensive use of
sed
then calls cargo.
/s ...
... or am I. -
@aud very welcome. we're glad that our thirty years studying the theory and practice of parsing is good for a real problem, which is to say an emotional problem
-
Asta [AMP]replied to Asta [AMP] last edited by [email protected]
@[email protected] Rust's macros are also rather limited; for instance, you want to do something like, say, I dunno, copy trait/fields from one struct to another? Guess what: no, not without substantial duplication of effort. You can't create a macro that includes a different struct/etc that you're calling this from. So now you're stuck with boilerplate code, except it's handwritten in your macro function (which, whatever, fine, I guess) except now it's not type checked because it cannot be.
-
@[email protected] I have so many emotions about programming and practices and the people involved : D
-
d@nny "disc@" mc²replied to Asta [AMP] last edited by
@aud @jonny @ireneista would like it if our choice of mongers were a bit wider than war fish and cheese
-
Asta [AMP]replied to d@nny "disc@" mc² last edited by
@[email protected] @[email protected] @[email protected] gonna start monging some peace and love. fuckers beware.
-
d@nny "disc@" mc²replied to Asta [AMP] last edited by
@aud @ireneista i used make for coffeescript stuff in college, be the change
-
d@nny "disc@" mc²replied to d@nny "disc@" mc² last edited by
@aud @ireneista also awk is probably more useful for code generation, the rapist defending crypto guy has an assembler in awk
-
Asta [AMP]replied to d@nny "disc@" mc² last edited by
@[email protected] @[email protected] (I actually had written awk before but remembered I barely know how to use it)