Initial dataframe implementation #25

Merged
HEL merged 39 commits from feat/dataframes into main 2026-07-01 08:24:36 +00:00
Owner

This PR adds some support for type checking dataframes and their columns. More precisely, it allows type checking their schema (and generating assertions on it), column access by name (single or multi) and column assignment by name (single or multi)
For example:

df: Frame[name: str, age: int] = ...
names = df["name"]  # <- type checked as Column[str]
df[["name", "age"]] = df[["age", "name"]]  # <- invalid because the types are wrong

The add operation is partially implemented on DataFrames

It also adds support for tuples, methods on str, multi-parameter generic application in Python, minor fixes, and it loosens some diagnostics from errors to warnings

This PR adds some support for type checking dataframes and their columns. More precisely, it allows type checking their schema (and generating assertions on it), column access by name (single or multi) and column assignment by name (single or multi) For example: ```python df: Frame[name: str, age: int] = ... names = df["name"] # <- type checked as Column[str] df[["name", "age"]] = df[["age", "name"]] # <- invalid because the types are wrong ``` The `add` operation is partially implemented on DataFrames It also adds support for tuples, methods on `str`, multi-parameter generic application in Python, minor fixes, and it loosens some diagnostics from errors to warnings
HEL self-assigned this 2026-07-01 08:24:20 +00:00
HEL added 39 commits 2026-07-01 08:24:20 +00:00
HEL merged commit c81287df7f into main 2026-07-01 08:24:36 +00:00
HEL deleted branch feat/dataframes 2026-07-01 08:24:36 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: HEL/midas#25