Skip to content

Documents Reguarding the Operations of the Development Team and Committee. All updates need to be ratified by core

Notifications You must be signed in to change notification settings

cannonlang/Governance

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 

Repository files navigation

Cannon Governance

Definitions

BDFL: Acronym for Benevolent Dictator(s) For Life.
Compiler Lead (compiler head): BDFL of compiler development.
Language Lead (lang head): BDFL of language and specification development.
Core Working Group: Advising council to the BDFLs.
Core Lead (core head): Organizer of the Core Working Group.

Responsibilities

The Compiler Lead, appointed by 2/3 majority vote of the Core Working Group, is responsible for directing the development of the compiler. They are required to take into advisement any ideas/suggestions brought forth by the Core Working Group.

The Language Lead, appointed by 2/3 majority vote of the Core Working Group, is responsible for the creation of the specification and the direction of the language. They are required to take into advisement any ideas/suggestions brought forth by the Core Working Group.

The Core Working Group is responsible for providing a source of multiple viewpoints on development of the language. They provide ideas and suggestions for the compiler and language to the Compiler Lead and Language Lead. They are also responsible for maintaining stability within the system established. If such stability is impossible within the BDFL system, or the interests of the Community at Large favors it, they may resume another system of governance (see "Resumption of Working Group System").

Core Working Group

The initial membership of the Core Working Group is composed of the following Discord members:

  • @InfernoDeity#5361
  • @jeremie#7149
  • @konsumlamm#6288
  • @Rdrpenguin#0256
  • @ShockWire#9823

The initial Core Lead is @jeremie#7149.

The Core Lead is responsible for maintaining the membership of the Core Working Group. They may, at their discretion, add or remove members at will. The Core Working Group may also add or remove members by a 2/3 majority vote, and they may also remove the Core Lead with a 2/3 majority vote.

Appointment of the BDFLs

The Core Working Group is responsible for appointing the Compiler Lead and Language Lead. By a 2/3 majority vote, an interested individual is selected for each position. If the Core Working Group is not able to make a timely decision (within a week of vacancy), a 24-hour period is provided for plurality consensus.

At any time, either BDFL may be removed from their position by a 2/3 majority vote of the Core Working Group. The time at which the vote finishes initiates the one week period mentioned earlier.

The Core Lead, Language Lead, and Compiler Leads shall be different individuals at all times as appointed.

Resumption of Working Group System

At any time, the Core Working Group may by vote of 2/3s, transfer the authorities of the Compiler Lead and Language Lead back to itself and resume the Working Group System or any other Governance Structure it may see fit. A unanimous agreement of the Compiler Lead and the Language Lead may do the same.

Upon Resumption, unless otherwise dictated by the Core Woring Group, the Compiler Lead shall become the Chair of the Compiler Working Group, and the Language Lead shall become the Chair of the Language Design Working Group.

Amending Governance

Governance may be amended by a 2/3 majority vote of the Core Working Group or by unanimous agreement of the BDFLs and the Core Lead.

About

Documents Reguarding the Operations of the Development Team and Committee. All updates need to be ratified by core

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published