-
Notifications
You must be signed in to change notification settings - Fork 148
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
Boo language roadmap #196
Comments
Well, just finished my latest commercial mini-project in Boo and got some thoughts about it's future:
|
|
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The question of a roadmap recently came up in another issue. Since we don't have one, I thought I'd write one up.
This is tentative and subject to change, based on community feedback, but here are the things I feel are the highest priority right now:
Boo.Lang
,Boo.Lang.Compiler
,Boo.Lang.Parser
) remain C#.Boo.Lang.Parser
will be difficult because a lot of it is generated code from ANTLR, which doesn't have a Boo code generator.Boo.Lang.Compiler
makes use ofswitch/case
statements in several places, which Boo has no support for yet.Boo.Lang.Compiler
containsDepthFirstGuide
, which can't be translated to Boo yet because of name resolution issues. This should either be resolved in the compiler, orDepthFirstGuide
should be thrown out. (According to @drslump it doesn't appear to be used anywhere, so that's an available option.)Span<T>
andMemory<T>
, related to ref structs.switch/case
statement: Boo has a magic__switch__
function that maps directly to theswitch
IL opcode, but it's not very user-friendly. Having a macro wrapping it that provides the same semantics as C#'sswitch
would be great. It might also be useful to integrate it with pattern matching. And speaking of which:Boo.Lang.Extensions
. Having it in its own separate library might have been a good idea when it was new, but now that it's part of the language core, (it's used for macros with parameters,) it should be inBoo.Lang.Extensions
so there are less things to keep track of for people deploying the language as a service. (Scripting, etc.)Reflection.Emit
implementation.These are the things that I see as being the most important right now, in no particular order. Comments are welcome; PRs even more so.
The text was updated successfully, but these errors were encountered: