Codex Python

Exemples d'intégration de bibliothèques Python dans Catnip. Python dans Catnip, sans friction.

Principe

Catnip charge des modules Python via import('module') ou l'option CLI -m module. Les objets et fonctions du module deviennent accessibles directement dans le code Catnip.

numpy = import('numpy')
arr = numpy.array(list(1, 2, 3))
print(arr.mean())

Pas de wrapper, pas de FFI : l'interopérabilité est native.

Organisation

Dossier Domaine Exemples
files-formats/ Fichiers et formats de données regex, yaml, xml, jmespath, parquet
data-analytics/ Analyse de données numpy, duckdb, sqlalchemy, polars
web/ HTTP et APIs selectolax
images-media/ Images et multimédia pillow
geospatial/ Géospatial haversine, rasterio, sentinel-2, folium
geometry/ Géométrie enveloppe convexe (Graham, Quickhull)
visualization/ Visualisation hvplot
symbolic-graphs/ Calcul symbolique & graphes networkx
utils/ Utilitaires tqdm

Exemples de base

Les exemples minimalistes de chargement de modules sont dans /examples/module-loading/.

Modes de chargement

Namespace (défaut)

catnip -m numpy script.cat

Le module est accessible via son nom : numpy.array(...).

Alias dans le code

np = import('numpy')
arr = np.array(list(1, 2, 3))

Pour un alias, utiliser import() dans le code Catnip.

Fichier local

catnip -m ./mon_module.py script.cat

Charge un fichier Python local.

Documentation