GitHub Hot Board

GitHub Hot Board · Archivio repository

jpakkane/pystd

A self-written C++ standard library (Questa descrizione proviene dal repository.)

Dati al October 25jpakkane

Miglior posizione

#234

Gemme ignorate

100

Stelle totali

1

Fork totali

2

Giorni in classifica (30 g)

Stato del progettoLicenza: NOASSERTIONUltimo push: October 19Issue aperte (PR incl.): 1

Raccolto dal 2026-10-25; sconosciuto = non ancora raccolto

Metti il badge nel tuo README · jpakkane/pystd[![Metti il badge nel tuo README](https://git.vaiox.xyz/api/badge/jpakkane/pystd.svg)](https://git.vaiox.xyz/it/repo/jpakkane/pystd)
<a href="https://git.vaiox.xyz/it/repo/jpakkane/pystd"><img src="https://git.vaiox.xyz/api/badge/jpakkane/pystd.svg" alt="Metti il badge nel tuo README" height="20"></a>

Documentazione del progetto

A self-written C++ standard library

Design goals:

  • NOT an implementation of the ISO C++ standard library, but instead an experiment to see what a stdlib without backwards compatibility requirements might look like
  • design-wise copy the Python standard library's APIs whenever possible
  • minimize build times
  • a single header for the most common things
  • KISS
  • needs to be performant, but not "super optimized" to the hilt
  • Can use existing C libraries like pcre but not C++ libraries

API and ABI stability

Do both of these:

  • Maintain perfect API and ABI compatibility
  • Make it possible to change both in arbitrary ways

This seems impossible but is in fact fairly easily achievable:

  • Put everything under pystd<year> namespace

  • When release happens, copy all files from foo<year>.[ch]pp to foo<year+1>.[ch]pp and rename the namespace accordingly

  • The old version remains forever frozen in time

  • Arbitrary changes can be done to the new version

Anyone who needs to interoperate with code using the old versions can #include the old header and use things from its namespace as needed.

Limitations

Tested with GCC and Clang on Linux and macOS. Does not work with MSVC as it has not yet added support for pack indexing.

Classifiche attuali

  • 234

    Gemme ignorate

    100 stelle · 1 fork · Star totali (crescente)

    Ignorate →

Andamento degli ultimi 30 giorni

Stelle cumulate

Andamento della posizione

Vicini di classifica sullo stesso tabellone · Ignorate

← Torna alle classifiche