Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

request more examples of use #8

Open
JeffreySarnoff opened this issue Apr 6, 2021 · 4 comments
Open

request more examples of use #8

JeffreySarnoff opened this issue Apr 6, 2021 · 4 comments
Labels
documentation Improvements or additions to documentation

Comments

@JeffreySarnoff
Copy link

As you have time, or some inspiration, additional examples and different kinds of use would go a long way to getting people more comfortable with this.

@Roger-luo
Copy link
Owner

Roger-luo commented Apr 6, 2021

not sure what kind of example you mean here? there are almost one example for each exported function and type already written in the doc. I'm not sure what example is missing, but if you find any would be nice to file an issue for that.

@Roger-luo Roger-luo added the question Further information is requested label Apr 6, 2021
@JeffreySarnoff
Copy link
Author

Yes, your coverage of the exported functions is good. It seems to me that the real value of your package is to be realized when others combine and coordinate these exports to achieve something masterful and otherwise difficult to produce. My suggestion is that collecting some smaller examples that highlight both "ways of use" and "reasons for use" would be most helpful.

@Roger-luo
Copy link
Owner

Roger-luo commented Apr 7, 2021

It seems to me that the real value of your package is to be realized when others combine and coordinate these exports to achieve something masterful and otherwise difficult to produce.

It's a replacement of ExprTools/MacroTools/etc. using the modern pattern matching engine MLStyle. I believe this package already have much better documentation comparing to those

My suggestion is that collecting some smaller examples that highlight both "ways of use" and "reasons for use" would be most helpful.

I don't have any good small examples at the moment, especially the usage of metaprogramming can be very general, perhaps someone could contribute a few in the future. But I have added a use case page in the doc, now there is only one package Configuration depends on this package, but I'm planning to switch to this package for a few more packages of mine. These can serve as best practices.

However, I don't think one can/should do meta-programming without learning what's happening below the high-level interface - which means you still need to understand the Julia docs and basic knowledge of compilers first. This is because, unlike a machine learning model that you can just work on high-level wrappers, metaprogramming can be subtle, and to be responsible to your users,
the developers should be aware of what's happening exactly.

@Roger-luo Roger-luo added documentation Improvements or additions to documentation and removed question Further information is requested labels Apr 7, 2021
@JeffreySarnoff
Copy link
Author

JeffreySarnoff commented Apr 7, 2021 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

2 participants