Don't shoot the messenger, but Meta programming won't do it #23
canmingir
started this conversation in
Thinkers Club
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I am strictly talking about code generation tools, which are highly used in low-code platforms and they have a huge problem; limitation.
I have started once myself and I was also a part of the organization tried meta programming, especially idea around developers should focus on "Business Logic" and meta code generator will generate necessary files like DTO, DAO etc. That was a disaster, the company lost lots of money and had to give up million-dollar accounts.
To me, it has 2 major problems, first one, "Meta language" (My company tried XML, even made it worse 🤮) becomes own language as it grows, and developers have to fight with the made-up language even though they already have high-level programming language right there. Even doing small thing was horrible because of its limitation and any changes on the meta language constantly break some part of system, never seen a light at the end of the tunnel.
Second problem, which is more personal to me was, since it generates endless number of code lines, it but all happens at the compile time.
I was thinking what if we generate all the related codes at runtime, then I realize it opens up another world, which is this project is about. 2 major benefits I can see so far, first one, you can keep adding more logic "Plasticity" without restarting and the runtime will build up a graph with related statements. This concept can also bring entire "data" into the programming language, then your declarative runtime becomes datastore itself.
Beta Was this translation helpful? Give feedback.
All reactions