Anonymous
Any good tutorial in macros
Anonymous
For c++
klimi
dont do it
Anonymous
Any good tutorial in macros
macros or templates?
Anonymous
klimi
what would you use it for?
Anonymous
I am preparing for gsoc
Anonymous
So I need some experience in macros
klimi
or Call before you dig
Anonymous
Even I am contributing to chrome V8 they lot of line in macros
Anonymous
Any good reason not learn macros
Anonymous
Any good reason not learn macros
https://stackoverflow.com/questions/17043090/why-should-i-avoid-macros-in-c
Anonymous
Yess I am trying to figuring how node core work so they use V8 API for gyp file and libuv for asynchronous but if I need to understand it's internal I need to dig up the c c++ but they most used macro that is rocket science to me
klimi
can you show us?
Parra
node is horrible inside
Parra
just look at v8 and libuv standalone
Parra
and forget about nodejs 😂
Anonymous
How to you nodejs is messy in the code
Parra
well
Anonymous
Since 3 months I am figuring out i throw my laptop
Parra
first of all is really bad designed
Anonymous
Daam man
Parra
all runtimes i have worked on are based on a model like:
Anonymous
You took my words
Parra
a library where the runtime relies
Parra
for example libpython3
Anonymous
But still node is best
Parra
and second, the executable which is the interpreter
Parra
node is using a node-gyp builder which relies on python2
Anonymous
If you look python is executing node code hell man
Parra
in less than a year python2 will be discontinued
Anonymous
Yes
Anonymous
Are you a contributor
Parra
and.. apart to have everything built in an executable
Parra
and not distributing node as a lib
Parra
they also claim have embedding API
Parra
but that's a lie
Anonymous
Node use lot of 3rd api
Anonymous
I don't know why?
Parra
node::Start(int argc, char*argv[]) is not an embeddable API
Parra
I had to suffer a lot to implement node as an embedable runtime
Parra
actually I never have seen node embedded apart from electron, which is a really bad solution in terms of technical debt
Anonymous
Dude it took me a week to figure out it main function
Parra
it's so bad designed
Anonymous
How it encapsulated ghosh
Parra
it has been a pain to me
Anonymous
Even I am confused cloning the lastest version that is 12.0.0 pre
Parra
the only good thing they did is napi, after 10 releases and 5 extension apis
Anonymous
That screwed my existing app
Anonymous
That he'll lot of version and I am confused which work to work
Anonymous
Even ltd versions is not that much stable
Parra
exactly
Anonymous
I saw the coverage it is 90
Anonymous
LTS
Parra
it's one of the worst runtimes i have seem in my life
Parra
in terms of design
Anonymous
Did you contribute to them
Parra
look at this
Anonymous
?
Parra
https://github.com/metacall/core/tree/develop/source/loaders/node_loader
Parra
xD
Parra
this is what you have to do to embed nodejs without touching nodejs code
Parra
an alternative to electron
Parra
i did it
Parra
it has thousands of hacks to make it work
Parra
first hack is to refactor the build process
Parra
because they even don't have support for lib so you have to change parts of the build system
Anonymous
You can use ninja then
Parra
You can use ninja then
i prefer not to have technical debt
Parra
so i used the tools exactly as node distribute them
Anonymous
Did you postmortem the node