Hi,

The history of std.(experimental.)logger and the latest thread about gui functionality inclusion into Phobos made me think about how to solve the problem of adding new modules.

I came up with the idea (maybe not new) to create a additional library(along druntime and Phobos) delivered with dmd package and named "Mars" (Deimos is unfortunately already taken ).

The library itself would be driven by community (not individual library developer) in order to be... the standard.

The process would be something similar to that other committees use (e.g http://www.iec.ch/standardsdev/how/processes/development/) where before the standard is approved it goes through a draft stage. Still a draft can be used to create a working product (e.g. some Wi-Fi solutions based on IEEE 802.11 drafts)

Possible initial prerequisites:
- User awareness about the usage consequences
- Library placed at https://github.com/D-Programming-Language/
- Only well recognized community members have pull rights
- design decision made on the best known sw engineering patterns used in D
- New module should be functional with D/Phobos standards applied
- API and implementation allowed to change any time in order to make a progress
- no external dependencies beside OS services
- "draft" as the root module name e.g. "module draft.gui"

Advantages:
- community driven process which ensures the lowest level of controversy
- fast path for modules like GUI to be standardized

Disadvantages:
- additional effort for the sw release process

Ready to be destroyed ;)

Piotrek

Reply via email to