This repository is the integration phase of the Rhombus project, which is about the design of a new language that is based on Racket.
This repository also houses the packages that make up the current
Rhombus implementation. Installing the rhombus
package makes
#lang rhombus
work and builds documentation, while installing
rhombus-main-distrbiution
gets a larger set of packages.
-
Documentation as rendered by the Racket package-build service
-
Older resources:
- State of Rhombus October 2021
- A summary of possible goals
- References to some mailing list discussion
- A summary of potential syntax guidelines
- An index of syntax prior art
Anyone can participate in Rhombus design discussions. The Racket team's unofficial motto is anything we can do, you can do: programmers should feel empowered to participate in the creation of the languages they use. Discussions, pull requests, and issues are open to all, and a wide variety of perspectives is especially beneficial.
GitHub discussions provide a forum for discussing Rhombus broadly, as opposed to discusssing details of specific proposals.
GitHub issues for this repository represent a kind of wish list. Post there for an idea about some way that you think a new language should be different than the current Racket language. Discuss other suggestions there.
GitHub pull requests for this repository can represent more concrete proposals. Proposals here do not have to be exhaustive, but they should be concrete enough to enable discussion of the pros and cons of a specific solution. There can and should be multiple conflicting proposals for any particular problem or direction, especially at first. The intent is to enable brainstorming and discussion toward a future, more-complete proposal.
To make a draft proposal, start with "template.md" and create either a new ".md" file or a subdirectory containing a ".md" file and other supporting material (such as an implementation).
GitHub pull requests for this repository can also be suggestions to update resources listed above. These resources are intended to be uncontroversial summaries, although they may point toward controversial or conflicting perspectives.
For these kinds of pull requests, please include "[resource]" at the start of the pull request title.