Transpiler Devlog #2

Hey! Welcome to the second devlog of a “programming language” in Luau, except instead of interpreting, it transpiles to Luau. If you haven’t read the first devlog, you should read it here. Anyways, on with the devlog.


I didn’t expect it to take this long, but I finally got the foundation of it. For now, you can only create print statements, but I plan on adding much more features.


I made the GUI of the plugin scale whenever the plugin widget is resized. Had to do a bit of searching for that. I still don’t have an icon for the plugin, but I’ll probably make one soon. I also plan to revamp the UI before release, so be ready for that.


Error reporting! If you screwed up your code, you’ll know! It tells you the exact line and column where your error occurred, as well as the error type, and a bit of explanation for it.

image

image


As for the text editor, I plan to add syntax highlighting. I might even add the ability to change themes or make your own theme.


Here’s an example of the syntax I have planned for the language:

--This is a comment! You'll notice that the language is very simple. Easy for beginners!

out "This will print to the output!"
myVariable = 10
out myVariable --Will print 10
myPart = create "Part"
set "Color" (--[[RGB VALUE HERE]])

That’s it for the devlog. I don’t have a planned release date for the plugin, but I hope to release it before the end of the year. I’m looking forward to see what this will become in the future. Feel free to give me ideas, I’d love to add them. Anways, that’s all for now, have a great day!

4 Likes

I really like the syntax! Do you have any ideas for statements?
Syntax highlighting should be the last thing you worry about, make scripting work first.

Also, you should make export automatic. Make it export everytime the user stops writing. (make a counter to count the seconds since the last time the text of the textbox has changed. When it reaches x seconds (maybe 2), export the script.

Anyways, this plugin could be a nice choice for new scripters.

Have a great day!

1 Like

I haven’t really planned out statements, but I’ll try to keep it similar to Luau’s syntax.

function print(msg) (
      out msg
)

if (condition) (
   statement
)

Consider each pair of parenthesis like “groups” or “sets”.

1 Like