
What is “immediate connection” good for? - iamwil
http://lacezero.wordpress.com/2014/09/04/what-is-immediate-connection-good-for/
======
kephra
There are two programming language environments, or better to say operating
systems, that are designed for this kind of immediate coding: Forth and
Smalltalk. Forth plays its strength when controlling hardware. Your code is
immediate executed, and you see the results, e.g. a robot arm moving
instantly. Times of Forth coders running circles around teams using
traditional programming languages are nearly over.

Smalltalk on the other hand still has to find its killer application.
Smalltalk was 35 years to early, and since then every few month a new language
is hyped, each one one step closer to Smalltalk. Computing history turns in
cycles and we soon will have a situation comparable to VM/370, where every
application is running its own operating system. I hope that there will be a
Smalltalk killer application exploiting the immediate changes in coding to
power users, similar as Forth controllers do, but on GUI level.

~~~
immy
Swift playgrounds.

~~~
kephra
I never played with Swift, as its an Apple gimmick. I only read the wikipedia
article right now, claiming its a compiled language. Are you able to inspect
variables in a running systems, are you able to change the running code
without restarting the system?

A few other examples come into mind, where immediate coding is of benefit.

First we have all those educational toy languages in the tradition of Logo,
that are designed for children to learn the first steps in coding, that
benefit for immediate execution.

Next we have the tools, that are often not considered as real programming
environments, e.g. table calculation in Visi calc tration, and tools like
matlab, mapple, maxima, axiom, or R.

------
zaptheimpaler
One example is algorithms heavy code. There are already numerous resources(e.g
[1]) that visualize algorithms and data structures. If those kinds of
animations could be generated on the fly, it would be much easier to write
that kind of code.

Being able to visualize code blocks (kind of like Light Table) and move them
around between files, maybe even modify inheritance structures graphically
could be useful too.

Seems like there are a lot of cool things you could do, but IMO the challenge
is coming up with a few things that are actually useful for a significant
amount of code and yet remain possible to build.

[1]
[http://www.comp.nus.edu.sg/~stevenha/visualization/](http://www.comp.nus.edu.sg/~stevenha/visualization/)

------
lutusp
Quote: "To sum up his talk here, he talks about inventing on
principal–something you believe in."

Actually, I'm pretty sure he recommends investing on _principle_.

[http://www.merriam-webster.com/dictionary/principle](http://www.merriam-
webster.com/dictionary/principle)

Quote: "a moral rule or belief that helps you know what is right and wrong and
that influences your actions"

[http://www.merriam-webster.com/dictionary/principal](http://www.merriam-
webster.com/dictionary/principal)

Quote: "most important, consequential, or influential : chief <the principal
ingredient> <the region's principal city>"

~~~
cgs1019
[http://en.wikipedia.org/wiki/Muphry's_law](http://en.wikipedia.org/wiki/Muphry's_law)

------
koenbok
We are trying this for our prototyping tool in the most straightforward way:

\- Evaluate and update result on typing

\- Inline show errors on typing

[http://framerjs.com](http://framerjs.com)

