Comments (4)
It is too early. I'm still experimenting. A content produced today would become obsolete really quickly.
It will implement paredit operations. I hope to provide better editing model by designing the editor around tree operations, not editing underlying text buffer.
from plastic.
@darwin I'll be very excited to see some progress around this. A tiny progress video would be awesome.
I've been long thinking about structural editing. So far nothing has come close to how things should be! :) this holds promise! 👍
from plastic.
@GetContented I'm glad you are interested. I'm sorry, I'm not ready to demo it yet.
There were many attempts to bring structural code editing to mainstream and all failed before AFAIK. This one will probably fail too. The fundamental problem which is still unsolved is described here, I think:
http://boxbase.org/entries/2015/feb/2/bottom-up-down-dissonance. I have some ideas, I would like to try in this prototype, but I'm not there yet. Need to build some foundation first.
Think about it.
from plastic.
I've been thinking about this problem for the last ten or twenty years. You're right in that the navigation and operations are the most tricky part. However, I think perhaps the problem is that the types of things we call "edits" are much more complicated than one would ordinarily think about.
For example, in clojure, it's often a fairly common thing to "wrap in a let form". This is a compound operation in a normal text editor, involving many operations. It really should only be one operation, though, and if one had a structural editor, it would be. "editing" becomes a kind of a programming language (sequences of operations).
If one pays a lot of attention to the intent of what one is doing as one is doing it, one notices these intention semantics all the time. It's not just limited to programming, either. It's any writing I do.
However, I've also been thinking about a model for expressing any programming intent in. I program in several languages, and I'm usually pretty annoyed that I have to rewrite the same code over and over, at different abstraction levels.
Anyway, that's another story.
Thanks for the reply. :) I'll look forward to what you might do.
from plastic.
Related Issues (3)
- Happy Building HOT 5
- what node/npm version? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from plastic.