Slava Pestov wrote:
> Personally though, I think this approach, where you edit code in the
> image, and file in/out for import/export only, is flawed. I know in
> the past I'd talk about having an in-image "structure editor" as a
> long-term goal for Factor, and now I realize what I want is actually
> different. I do want smart editing features -- code completion, and so
> on -- but editing s-expressions directly in the image is not how I
> will acheive this goal.
Let's separate some things here:
In image development tools
Text editor based development tools
Structure editors
You once upon a time linked the first and the third in your plans for Factor.
However, the first doesn't imply the third...
> First of all, with in-image editing, you end up losing comments,
> indentation and formatting in a parse-unparse round-trip.
In the squeak class browser, the method pane preserves comments and
formatting. This is what I would characterize as an "in image" or "live"
development environment, but it doesn't impose a structure editor.
I think what you're talking about with Factor Edit is actually quite close to
the Squeak model (ironically). The method pane is just a smart text editor
that is aware of the environment. They save their text inside the image. You
want to save it in files on disk. Not a huge or profound difference in my
opinion.
> Certain syntax sugar is lost in a parse/unparse round-trip, for
> example 'fry', parsing words such as the Objective C bridge -> syntax,
> and other stuff like that. A more complex parser can record parsing
> word expansions, but again...
That might just be an argument against having too much syntactic sugar in
Factor. :-)
To be honest with you, my recent interest in file-out was not particularly due
to wanting in image development tools. We currently use vocabularies to
organize code. They can also be used for persistent storage of data. I.e. you
have programs which create vocabularies on disk for the sake of storing
structured data. This isn't a wild claim or suggestion; I just realized that
it's a fact which can be exploited. Code is just data after all...
Vocabularies are just collections of named data. They're hierarchical. We
have a way to map them onto disk. They're ripe for abuse. :-)
Ed
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Factor-talk mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/factor-talk