Create boilerplate for popular languages #151
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is probably long overdue.
Something that sucks to do is to write a bunch of boilerplate every time you want to show someone something in a particular language.
Our strategy now is as follows - if we cannot detect an entry point (which would lead to compilation failure), we will generate the boilerplate ourselves and reorder things as needed. Behavior for each language may be different, but follow the same overall idea. Let's look at how c++'s works
.compile
Will get compiled as, as you can guess
We'll be testing out this change on live bot for a little while to see if anything behaves in a way that's unexpected. My biggest concern is our main entry detection, we'll have to add in some tests for this to ensure that we're detecting mains correctly.