News for hackers. Stuff that matters.
Re:What's new in C# 12: overview by gizmo on Friday October 20, 2023 @10:46AM (#37956840)
> Whether you do Foo.Serialize() and it uses reflection to enumerate the properties, carries around tags permanently or it uses some compiletime generated function has nothing much to do with expressiveness.

Thinking those are the only options is exactly why the issue is expressiveness.

Re:What's new in C# 12: overview by pjc50 on Friday October 20, 2023 @11:19AM (#37957353)
Is this a reference to some specific, better, technique or an optimistic belief that such a thing could be built if only ..?
Re:What's new in C# 12: overview by gizmo on Friday October 20, 2023 @11:43AM (#37957716)
Code generators are used because run-time introspection tends to be slow(er) and because debugging code generated at runtime is harder and because IDEs don't know how to deal with code generated at runtime. But there no reason why this should be so. No good reason to have a hard boundary between compiletime and runtime either. These are just historical artifacts.