Discussion:
[Fonc] Extensible programming by demonstration
John Carlson
2017-03-01 08:07:21 UTC
Permalink
Has anyone see programming by demonstration environment that is extensible
in demonstration mode? Lively Kernel perhaps? What would be the best PBD
environment for aspect-oriented programming by demonstration?
Dan Cook
2017-03-01 21:11:35 UTC
Permalink
I have seen Lively Kernel, and I think it's a great step in the right
direction, though it does nothing to make the language extensible (it is
all just JavaScript).

Anyone interested in the intersection of freely modifiable language and
freely modifiable environment should DEFINITELY look at some of Bret
Victor's work (worrydream.com). His "Drawing dynamic visualizations"
example is (among others) a great example. If like to see the same
technique applied to processes (code).

I am working on a POC for a freely-modifiable language+environment (though
there's nothing complete to show for it yet) at:
https://github.com/d-cook/Objects
Post by John Carlson
Has anyone see programming by demonstration environment that is extensible
in demonstration mode? Lively Kernel perhaps? What would be the best PBD
environment for aspect-oriented programming by demonstration?
_______________________________________________
Fonc mailing list
http://mailman.vpri.org/mailman/listinfo/fonc_mailman.vpri.org
Eric Gade
2017-03-01 21:45:13 UTC
Permalink
Dan:

I have also been thinking of the limitations of systems like Lively and
even Amber. With WebAssembly reaching MVP status and shipping in all of the
next browser releases, perhaps it's time for a WebAssembly based
VM/Interpreter/Language that can be used to do just about anything in the
browser. I have been looking into the bytecode/stack machine structure of
WebAssembly and it looks interesting -- the text representation is just
S-expressions. I feel like the system you're decribing in that link would
benefit from this.

Thoughts? Some of this is way out of my league -- I've never built a VM nor
a language nor an interpreter. But WASM seems to open up new possibilities
in the live programming realm, not the least because it can be deployed on
the universal platform (web).
Post by Dan Cook
I have seen Lively Kernel, and I think it's a great step in the right
direction, though it does nothing to make the language extensible (it is
all just JavaScript).
Anyone interested in the intersection of freely modifiable language and
freely modifiable environment should DEFINITELY look at some of Bret
Victor's work (worrydream.com). His "Drawing dynamic visualizations"
example is (among others) a great example. If like to see the same
technique applied to processes (code).
I am working on a POC for a freely-modifiable language+environment (though
https://github.com/d-cook/Objects
Post by John Carlson
Has anyone see programming by demonstration environment that is
extensible in demonstration mode? Lively Kernel perhaps? What would be
the best PBD environment for aspect-oriented programming by demonstration?
_______________________________________________
Fonc mailing list
http://mailman.vpri.org/mailman/listinfo/fonc_mailman.vpri.org
_______________________________________________
Fonc mailing list
http://mailman.vpri.org/mailman/listinfo/fonc_mailman.vpri.org
--
Eric
Dan Cook
2017-03-02 08:45:01 UTC
Permalink
Brett makes it clear that his aim is to share ideas and get people thinking
about things like direct manipulation and better visualization of mental
models, etc. His demos were made to demonstrate, rather than do make cool
tools. This is similar to what was said previously about why VPRI's Frank
was not made code-accessible.

On the other hand, Brett has a lot of really great articles that encourage
new ways of looking at software, especially shifting from a mechanistic to
a more humanistic view of what could be. His demos are there as examples to
show that it can indeed be done.

Having the source code would certainly be useful to see how he did stuff;
but I think he wants people to think more than just consume his tools and
call that good. Perhaps he's learning from history, like how SmallTalk was
a great idea that was supposed to transcend any specific language or tool,
but when it became commercialized, it was reduced to just that, and the
greater value of the big picture was lost.
The trouble with Brett victors work is he hasn't actually published any of
his libraries (that I know of) or code.
I have seen Lively Kernel, and I think it's a great step in the right
direction, though it does nothing to make the language extensible (it is
all just JavaScript).
Anyone interested in the intersection of freely modifiable language and
freely modifiable environment should DEFINITELY look at some of Bret
Victor's work (worrydream.com). His "Drawing dynamic visualizations"
example is (among others) a great example. If like to see the same
technique applied to processes (code).
I am working on a POC for a freely-modifiable language+environment (though
https://github.com/d-cook/Objects
Has anyone see programming by demonstration environment that is extensible
in demonstration mode? Lively Kernel perhaps? What would be the best PBD
environment for aspect-oriented programming by demonstration?
_______________________________________________
Fonc mailing list
http://mailman.vpri.org/mailman/listinfo/fonc_mailman.vpri.org
_______________________________________________
Fonc mailing list
http://mailman.vpri.org/mailman/listinfo/fonc_mailman.vpri.org
Loup Vaillant David
2017-03-02 18:38:44 UTC
Permalink
I wonder what would be the best way to spread such ideas.

One can build a product, but it risks being just that, watered down and
co-opted by the mainstream ways of doing things.  Nobody change the way
they think, they just have this neat new tool.

One can show a nice demo, show the potential, but then *someone* would
have to make some product out of that, or the idea risks being
forgotten for the lack of a killer app.

This hints at a third alternative: making a simple product out of the
idea, *not* releasing it, but instead teach students how to build it
from scratch —use a class project or something. I believe that's how
compiler courses work: at some point the student really writes a
compiler, and will be able to implement a DSL in the field if there's a
need.

Frank could serve as a basis for such a course. There's at least a
compiler course, a rendering course, a networking course, and a GUI
course in there.

Loup.
Post by Dan Cook
Brett makes it clear that his aim is to share ideas and get people
thinking about things like direct manipulation and better
visualization of mental models, etc. His demos were made to
demonstrate, rather than do make cool tools. This is similar to what
was said previously about why VPRI's Frank was not made code-
accessible.
On the other hand, Brett has a lot of really great articles that
encourage new ways of looking at software, especially shifting from a
mechanistic to a more humanistic view of what could be. His demos are
there as examples to show that it can indeed be done.
Having the source code would certainly be useful to see how he did
stuff; but I think he wants people to think more than just consume
his tools and call that good. Perhaps he's learning from history,
like how SmallTalk was a great idea that was supposed to transcend
any specific language or tool, but when it became commercialized, it
was reduced to just that, and the greater value of the big picture
was lost.
The trouble with Brett victors work is he hasn't actually published
any of his libraries (that I know of) or code. 
Post by Dan Cook
I have seen Lively Kernel, and I think it's a great step in the
right direction, though it does nothing to make the language
extensible (it is all just JavaScript).
Anyone interested in the intersection of freely modifiable
language and freely modifiable environment should DEFINITELY look
at some of Bret Victor's work (worrydream.com). His "Drawing
dynamic visualizations" example is (among others) a great
example. If like to see the same technique applied to processes
(code).
I am working on a POC for a freely-modifiable
language+environment (though there's nothing complete to show for
it yet) at: https://github.com/d-cook/Objects
Post by John Carlson
Has anyone see programming by demonstration environment that is
extensible in demonstration mode?  Lively Kernel perhaps?  
What would be the best PBD environment for aspect-oriented
programming by demonstration?
_______________________________________________
Fonc mailing list
http://mailman.vpri.org/mailman/listinfo/fonc_mailman.vpri.org
_______________________________________________
Fonc mailing list
http://mailman.vpri.org/mailman/listinfo/fonc_mailman.vpri.org
_______________________________________________
Fonc mailing list
http://mailman.vpri.org/mailman/listinfo/fonc_mailman.vpri.org
Joe Gorse
2017-03-02 19:29:52 UTC
Permalink
To a certain extent, there is meritocracy in technology. Particularly when
it comes to proliferation. If it is easy to bootstrap, hello world, hack
useful demos, then expect a warmer adoption-rate than, say, gcc development.

Paradigm-shifting ideas that require deep understanding usually benefit
from working through deep problems, like a compiler.

What is the goal?
Post by Loup Vaillant David
I wonder what would be the best way to spread such ideas.
One can build a product, but it risks being just that, watered down and
co-opted by the mainstream ways of doing things. Nobody change the way
they think, they just have this neat new tool.
One can show a nice demo, show the potential, but then *someone* would
have to make some product out of that, or the idea risks being
forgotten for the lack of a killer app.
This hints at a third alternative: making a simple product out of the
idea, *not* releasing it, but instead teach students how to build it
from scratch —use a class project or something. I believe that's how
compiler courses work: at some point the student really writes a
compiler, and will be able to implement a DSL in the field if there's a
need.
Frank could serve as a basis for such a course. There's at least a
compiler course, a rendering course, a networking course, and a GUI
course in there.
Loup.
Post by Dan Cook
Brett makes it clear that his aim is to share ideas and get people
thinking about things like direct manipulation and better
visualization of mental models, etc. His demos were made to
demonstrate, rather than do make cool tools. This is similar to what
was said previously about why VPRI's Frank was not made code-
accessible.
On the other hand, Brett has a lot of really great articles that
encourage new ways of looking at software, especially shifting from a
mechanistic to a more humanistic view of what could be. His demos are
there as examples to show that it can indeed be done.
Having the source code would certainly be useful to see how he did
stuff; but I think he wants people to think more than just consume
his tools and call that good. Perhaps he's learning from history,
like how SmallTalk was a great idea that was supposed to transcend
any specific language or tool, but when it became commercialized, it
was reduced to just that, and the greater value of the big picture
was lost.
The trouble with Brett victors work is he hasn't actually published
any of his libraries (that I know of) or code.
Post by Dan Cook
I have seen Lively Kernel, and I think it's a great step in the
right direction, though it does nothing to make the language
extensible (it is all just JavaScript).
Anyone interested in the intersection of freely modifiable
language and freely modifiable environment should DEFINITELY look
at some of Bret Victor's work (worrydream.com). His "Drawing
dynamic visualizations" example is (among others) a great
example. If like to see the same technique applied to processes
(code).
I am working on a POC for a freely-modifiable
language+environment (though there's nothing complete to show for
it yet) at: https://github.com/d-cook/Objects
Post by John Carlson
Has anyone see programming by demonstration environment that is
extensible in demonstration mode? Lively Kernel perhaps?
What would be the best PBD environment for aspect-oriented
programming by demonstration?
_______________________________________________
Fonc mailing list
http://mailman.vpri.org/mailman/listinfo/fonc_mailman.vpri.org
_______________________________________________
Fonc mailing list
http://mailman.vpri.org/mailman/listinfo/fonc_mailman.vpri.org
_______________________________________________
Fonc mailing list
http://mailman.vpri.org/mailman/listinfo/fonc_mailman.vpri.org
_______________________________________________
Fonc mailing list
http://mailman.vpri.org/mailman/listinfo/fonc_mailman.vpri.org
--
Joe Gorse

C: 440-552-0730
LI: Joe Gorse <http://www.linkedin.com/pub/joe-gorse/7/12/397>
Loading...