feat(presentation): present and future
This commit is contained in:
@@ -7,7 +7,10 @@
|
||||
|
||||
#align(center, image("../figs/python-logo.svg"))
|
||||
|
||||
Python is a widely used language, especially in data science
|
||||
Python is a widely used language, especially in data science:
|
||||
- Easy to learn
|
||||
- Simple syntax
|
||||
- Vast and thriving ecosystem
|
||||
|
||||
== It can bite
|
||||
|
||||
|
||||
@@ -443,7 +443,7 @@ Steps:
|
||||
== Customization
|
||||
|
||||
#{
|
||||
show raw: set text(size: 0.69em)
|
||||
show raw: set text(size: 0.8em)
|
||||
item-by-item()[
|
||||
- Domain Specific Types (e.g. units, scores, transformed data)
|
||||
```midas
|
||||
|
||||
@@ -1,4 +1,55 @@
|
||||
#import "../requirements.typ": *
|
||||
#import codly: codly
|
||||
|
||||
#focus-slide(theme: "neon")[Current Status and Future]
|
||||
// = Current Status and Future
|
||||
|
||||
== What Midas offers
|
||||
|
||||
- Working *static type checking* of a good subset of Python (including dataframes)
|
||||
|
||||
- *Custom type* definition language for domain-specific usages (supports generics, method overloads, dependent types, frame schemas, named predicates and more)
|
||||
|
||||
- Toolbox *CLI* with useful debug features
|
||||
|
||||
- Generation of *runtime assertions*
|
||||
|
||||
- Stubs for *seamless integration* with other type checkers
|
||||
|
||||
== What needs work
|
||||
|
||||
- Reference types (side effects)
|
||||
```python
|
||||
def modify_column(df: pd.DataFrame):
|
||||
df["col"] = df["col"].astype(float)
|
||||
```
|
||||
- Reverse operators
|
||||
```python
|
||||
a = 1.0 + 1 # float.__add__(int)
|
||||
b = 1 + 1.0 # float.__radd__(int)
|
||||
```
|
||||
- Logical short-circuit bypass
|
||||
#codly(
|
||||
highlights: (
|
||||
(
|
||||
line: 1,
|
||||
start: 15,
|
||||
tag: box(inset: (x: 0.5em))[_Always evaluated_ ],
|
||||
fill: std.red.lighten(20%)
|
||||
),
|
||||
)
|
||||
)
|
||||
```python
|
||||
value = v1 or cast(Type, v2)
|
||||
```
|
||||
|
||||
== Possible extensions
|
||||
|
||||
- Visitor pattern $->$ easy to extend supported Python syntax
|
||||
|
||||
- Multi-file projects (```python import``` statements)
|
||||
|
||||
- Constraint solver
|
||||
$
|
||||
v in [1; 6] => v > 0
|
||||
$
|
||||
|
||||
Reference in New Issue
Block a user