Are there any extant source code editors that are *structure editors* (as opposed to text editors)?

@erkin If I understand what you mean correctly, the only ones I've seen have been XML editors. For programmatic editing, I've come across coccinelle. I'm sure there are others.

It's rather like a high-level editor that concerns itself with syntactic and symbolic structure of the code instead of having the user directly manipulate a heap of characters in a buffer.

@erkin Closest I've used is paredit in Emacs, for editing Lisp code. It's a structural editing mode.

The manipulations are at the s-expression level, generally preserving syntactic correctness. (You don't write an open paren. Instead, you insert an empty list; you can then expand it to include the next form, etc.)

But there's no doubt that you're still in a text editor. Not sure if this qualifies.

Yeah, I use paredit. In fact, it spoilt me so much that I can't imagine writing a Lisp program without it.
But still, at the end of the day, it's just a structural aid on top of a text editor.

@erkin So the difference you're asking about is structural editors that don't persist to a text format, or persist to a format that isn't shown during the editing?

@varx The latter. The user doesn't concern themself with raw text in a structure editor and only works on the algorithmic structure of the code, which the editor saves in a machine-parsable format under the hood.

Sign in to participate in the conversation
Mastodon @ SDF

"I appreciate SDF but it's a general-purpose server and the name doesn't make it obvious that it's about art." - Eugen Rochko