mys-lang / mys

The Mys programming language - an attempt to create a statically typed Python-like language that produces fast binaries. See https://mys-lang.org for more information.
Other
132 stars 5 forks source link

C++ compiler flags and contributions #11

Closed phillvancejr closed 3 years ago

phillvancejr commented 3 years ago

Hello,

Is there currently a way to pass flags to the C++ compiler from the Mys command rather than manually linking the transpiled cpp files? Since we can embed arbitrary c++ it should of course be trivial to use c and c++ libraries, but I'm wondering if there is a shortcut to passing flags to the compiler right now.

Also whats the stance on contributions? This project seems actually very useful and I'd like to get involved somehow. Could I maybe port a Python or C++ library to Mys? Or maybe there is a language feature that I could work on?

Regards

eerimoq commented 3 years ago

Hi!

It's not officially supported, but I suppose you can try LDFLAGS=<options> mys run. The generated makefile will append options after your given options. Not sure that help you, but you can give it a try. The same method can be used for compilation flags using CFLAGS. The plan is to specify libraries in the configuration file; package.toml, but that feature has to be designed first.

Contributions are very welcome. I'll gladly have more people involved in the project. I invited you as a collaborator to the project. There is a Discord server for discussions outside Github if that interests you. Github issues are a good way to discuss the language as well.

Mys is far from usable right now. Many language features are either not designed or not implemented. I implemented a few libraries (as you might have seen), but they do not currently build due to missing language features. They are giving an understanding of which language features that are needed.

The goal right now is to design the language, to make it a joy to use. Any suggestions of how to improve the language and configuration are very welcome.

phillvancejr commented 3 years ago

Awesome thank you! LDFLAGS and CFLAGS will work for now

I will look through those libraries and see if I can start there.

I'd be interested in joining the discord server as well!

eerimoq commented 3 years ago

Looks like you found the Discord invite link in the readme =)