# Project 8: Adrian Sieber - Projectional Editing

[presentation.pdf](presentation.pdf)


## Abstract

In most programming languages  the semantic meaning of a program is
disconnected from
the formatting of the code and the naming of variables and keywords.
This means semantically equivalent code can be written
in a vastly different textual representations.
This poses problems in terms of readability and understandability of code.
Even minor modifications of punctuation or formatting in comparison to
a developers familiar style can decrease their reading performance.
In order to mitigate these problems I propose to visualize code
in a graphical and deterministic way.
Instead of relying on the author of the code to format it in a acceptable
manner, each developer can choose a visualization of their liking.
This has the potential to decrease the error rate and
increase the development speed of programmers.


![](screenshot.png)


## Screencast

<video controls width=800><source src="screencast.mp4" type="video/mp4"></video>


## Project Description

- Widgets
- AST based editing
- Syntax visualization
- Textual and graphical editing


## Roadmap

- [ ] Inline widgets
- [ ] Use AST instead of source code
- [ ] Make formatting a user setting
- [ ] Make visual coding a first class citizen
