GETTING STARTED
Select a mode by the Python features and C interface your program needs. Each column describes that mode's supported forms.
| Feature | Typed conversion | Runtime value conversion |
|---|---|---|
| Selection | Transpile Source Bundle; default CLI/API request. | Transpile Runtime Values; CLI --runtime-values; API request_options(). |
| Source files | 1–64 supplied modules; direct function imports. | One document containing functions and classes; no imports or module assignments. |
| Function values and types | Annotated parameters and results; consistent scalar locals; direct calls and required keyword arguments. | Optional parameter/result annotations, unions, container types, first-class functions, bound methods, and lambdas; positional/keyword calls, defaults, positional-only and keyword-only parameters. |
| Strings | Runtime length, comparison, search, membership, prefix/suffix checks; additional constant-text operations. | Runtime construction, repetition, Unicode indexing/slicing, strip/lstrip/rstrip, lower/upper, split with maxsplit, join, replace, inspection, and simple f-strings. |
| Lists and tuples | Fixed local homogeneous values; literal indexing and iteration. | Mixed and nested values, dynamic indices, slices, function arguments/results, and shared lists with item mutation and append. |
| Dictionaries and sets | Fixed local dictionaries and numeric/Boolean set membership. | Not supported. |
| Classes | Simple immutable records with numeric/Boolean fields. | Annotated mutable fields, constructors, ordinary methods, and shared instances. |
| Control flow | Branches, bounded integer range forms, fixed-container loops, break/continue, loop else. | Branches, sequence/range loops, conditional expressions, short-circuit values, break/continue, loop else. |
| List comprehensions | Not supported. | Multiple generators, filters, dependent iterables, and fixed unpacking. |
| Files | Documented bounded UTF-8 read/write forms. | Not supported. |
| C interface | Direct scalar and documented record/file representations. | Tagged values and a caller-owned memory context. |
| Code inspection | Typed conversion validation and exact ForgeLens mappings. | Source diagnostics, generated-function names, and checked runtime operations; no exact ForgeLens mappings or typed C-IR validation. |
For typed conversion, start with Variables, types, and strings, then Branches and loops, Containers and records, and Functions and module variables.
For runtime value conversion, start with Runtime conversion and C use, then follow the string, container, class, function, and comprehension pages in order.
Integers use signed 64-bit values. General Python libraries, exceptions, asynchronous code, generators, reflection, inheritance, and writable module globals are outside these documented forms. Source conversion does not execute Python or build the C result.
Conversion success establishes that the source can be emitted for the selected mode. It does not exercise every runtime input. Check the mode's type, memory, and arithmetic requirements when calling generated functions.
Retain the Python source, selected mode, settings, and installed version alongside generated C. Check the version through Help → About or:
python -c "import pycforge; print(pycforge.__version__)"