A tasty language for building efficient software. WIP
⚠ Butter is no longer in development
Documents | Contributing Guidelines
A tasty language for building efficient software.
-- reverses an array in place
reverse(mut arr) => {
len = arr^.len;
for i in [0.< len // 2] {
mut elem = &arr^[i];
mut opposite = &arr^[len - i - 1];
elem^, opposite^ <- >opposite^, >elem^;
}
}
Butter is a personal and experimental language that seeks balance for these aspects:
Note: Being an experimental language, these are all subject to change
I also to want to experiment with novel features deemed necessary for these goals such refinement types.
Being my personal project, designs and features are ultimately up for my decision and taste. Some features can help with some aspect while also hurt other, this is where I weigh in the pros and cons. Of course, this doesn't mean I won't listen to suggestions, I can be naive on these decisions, I'll be happy to hear your thoughts about Butter's design by opening an issue.
Note: These are subject to change
Features to be implemented
Features to be implemented later on
newtype
for nominally typed record types