-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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
native, checker: builtin module for vlang #17782
base: master
Are you sure you want to change the base?
Conversation
Expressions to implement:
|
Statements to implement:
|
Other bugs found
|
A huge and important project. Good luck! |
thanks! |
#17839 implements rune literals/printing, pointer comparison support and general helper function improvements |
#18036 should make debugging much easier |
Currently refactoring the codegen process: #18057 |
#18546 splits up the code generator into multiple files and refactors the AssignStmt codegen |
#18703 implements support for |
Are you still working |
@Avey777 |
We hope you will continue to come back, we have many friends in China looking forward to the 1.0 version of V language. V language syntax is really too good, can greatly reduce our development and view the code of mind! Native is important. 2 years have passed and a lot of things have changed. Maybe it's time for you to come back. |
If native was so important I wouldn't have been the only one actively developing it. Also, this is not how open-source works. If people are not paid for their work they do it voluntarily in their free-time, and I have better things going on right now. |
Importance does not necessarily imply there is anyone else with the necessary skills, who is also willing to do the work. You are correct about how open source works - contribute what you want when you want, but always take care of yourself, first. |
This PR is the beginning of making the builtin module work with the native backend.
As discussed on the Discord,
native
will utilize the already existing implementation of builtin used by the C backend, sincelibc
is the official and most consistent API on many OSs apart from Linux.Here is a list of things that still need to be implemented to get
builtin
working:builtin
module fornative
ast.AssignStmt
to accept all expressionsast.CastExpr
(and many more)println()
,assert()
,exit()
,C.syscall()
, etc. by theirbuiltin
counterparts(I will extend this list as needed)
For debugging purposes, it may be helpful if we could add a flag to toggle the inclusion of
builtin
incompile_native()
, so that testing is still possible.