orgmode
orgmode copied to clipboard
Use Teal language
Does this feature exist in Emacs orgmode core?
N/A
Orgmode link
No response
Feature value
I'm thinking of converting the whole codebase to Teal (https://github.com/teal-language/tl). I think types might help DX and the general stability of the project, but I would need more thoughts, especially from someone who used Teal before.
Additional context
No response
I have never heard of Teal, but type-support sounds like a great idea in general :+1: Do you plan on porting the whole thing at once or do you want to do it piece-by-piece? It could be a great opportunity to review the whole architecture and get rid of some legacy stuff, but it will also be a great effort
edit: I assume you want to generate .lua files with the tl-compiler for the actual users of the plugin, correct?
Do you plan on porting the whole thing at once or do you want to do it piece-by-piece?
I'm not sure Teal supports compiling code that is not typed, like for example Typescript does with Javascript + allowJs. Ideally whole thing would be moved at once, but it's a big effort as you said.
I assume you want to generate .lua files with the tl-compiler for the actual users of the plugin, correct?
Yeah, we would have tl folder that compiles everything to lua folder. We use .vim for syntax, ftplugin, etc., but I think that is ok to leave it as it is for the time being.
Ideally whole thing would be moved at once
What is your plan for this? Do you want to do this wholly by yourself? One big PR? A branch?
Ideally whole thing would be moved at once
What is your plan for this? Do you want to do this wholly by yourself? One big PR? A branch?
No idea. I'm still trying to figure out if this is a good path to take. Teal is still at v0.1x. I would need to experiment with it first to see how hard would be to migrate everything. If I manage to set it up to allow migrating piece by piece, then we will do it gradually. If not, a separate branch would be a way to go.
I think it's a great idea!
packer has a WIP branch where it was rewritten in Teal by one of the main neovim contributors.
I've decided not to take this path. We should leverage annotations.