S-expression syntax for Python with 1st-class macros

Title: S-expression syntax for Python with 1st-class macros
Person: Beni Cherniavsky
Length: 40
Language: TBD-English-or-Hebrew
Abstract:
We all love Python's syntax. But it has some limitations and redudant constructs. I will present an S-expression syntax for Python that avoids these problems; most notably it removes the expression/statement separation. The desing is partially inspired by Paul Graham's Arc language but I staying close to Python semantics.

I will then show how special forms can be replaced by first-class macros. E.g. `while` simply evalutes its body many times in an environment containing `break` and `continue`... This elevates it from just a new questionable syntax for Python to a seriously more powerful (and slow) language.

I'll talk about harder corners of the design (like keyword arguments and variable scoping), showing alternatives and rationale. Finally, I'll propose an indentation-sensitive read syntax for S-expressions.


 

 

 

 

 

Please send comments, questions etc. to the organizers.