Difference between revisions of "Tangible values (Conal Elliott)"
m (Apm moved page Tangible values to Tangible values (Conal Elliott): matching the other pages) |
|||
(3 intermediate revisions by the same user not shown) | |||
Line 14: | Line 14: | ||
* [https://wiki.haskell.org/Eros Eros] (chapter on "fusion") | * [https://wiki.haskell.org/Eros Eros] (chapter on "fusion") | ||
* [https://wiki.haskell.org/Tangible_Value Tangible value] | * [https://wiki.haskell.org/Tangible_Value Tangible value] | ||
+ | * [https://wiki.haskell.org/DeepArrow DeepArrow] | ||
* [https://wiki.haskell.org/GuiTV GuiTV] | * [https://wiki.haskell.org/GuiTV GuiTV] | ||
+ | * [https://wiki.haskell.org/DataDriven DataDriven] (deprecated in favor of reactive) | ||
On hackage: | On hackage: | ||
Line 25: | Line 27: | ||
* [https://web.archive.org/web/20081224011935/http://darcs.haskell.org:80/packages/Eros/dist/ Eros distribution from internetarchive] | * [https://web.archive.org/web/20081224011935/http://darcs.haskell.org:80/packages/Eros/dist/ Eros distribution from internetarchive] | ||
+ | == Notes / Ideas == | ||
+ | |||
+ | Tangible values may go well together with annotated lambda diagrams. <br> | ||
+ | See: | ||
+ | * [[Annotated lambda diagram]] | ||
+ | * [[Annotated lambda diagram mockups]] | ||
+ | |||
+ | That is because: <br> | ||
+ | ALDs always are a value. <br> | ||
+ | ALDs typically leave a triangular unused whitespace (blackspace in dark mode) where tangible values could be fitted in. <br> | ||
+ | Perhaps even more white-space than textual code. <br> | ||
+ | Relative scales between ALD and TV could be see-saw scaled depending <br> | ||
+ | on priority of what one wants to see more. | ||
+ | |||
+ | The original idea of TVs is to hide code fully.<br> | ||
+ | It might be beneficial though to allow associated code to be displayed. <br> | ||
+ | And given ALD seem like the "middlest" midpoint between graphical and textual code representation, <br> | ||
+ | it might be not as disruptive to add ALDs to TVs as to add pure textual code to TVs. | ||
+ | |||
+ | == Related == | ||
+ | |||
+ | * [[Denotative continuous-time programming (Conal Elliott)]] | ||
[[Category:Conal Elliott]] | [[Category:Conal Elliott]] |
Latest revision as of 10:33, 5 September 2024
External links
- Video of talk: Tangible Functional Programming – 2007-11-07 – Conal Elliott
On Conal Elliotts homepage:
- The Eros demo: http://conal.net/papers/Eros/
- Paper: http://conal.net/papers/Eros/eros-icfp-2007-printed.pdf
- Paper: http://conal.net/papers/Eros/eros.pdf (via ResearchGate)
- Paper: http://conal.net/papers/Eros/talk.pdf
On the haskell wiki:
- Eros (chapter on "fusion")
- Tangible value
- DeepArrow
- GuiTV
- DataDriven (deprecated in favor of reactive)
On hackage:
- TV: Tangible Values -- composable interfaces
- GtkTV: Gtk-based GUIs for Tangible Values GtkGLTV adds OpenGL support to GtkTV, which is a Gtk back-end for tangible values.
- GuiTV: GUIs for Tangible Values GuiTV is a very small library that extends the TV (tangible value) framework with graphical user interfaces, using Phooey.
- DeepArrow: Arrows for "deep application"
Other:
Notes / Ideas
Tangible values may go well together with annotated lambda diagrams.
See:
That is because:
ALDs always are a value.
ALDs typically leave a triangular unused whitespace (blackspace in dark mode) where tangible values could be fitted in.
Perhaps even more white-space than textual code.
Relative scales between ALD and TV could be see-saw scaled depending
on priority of what one wants to see more.
The original idea of TVs is to hide code fully.
It might be beneficial though to allow associated code to be displayed.
And given ALD seem like the "middlest" midpoint between graphical and textual code representation,
it might be not as disruptive to add ALDs to TVs as to add pure textual code to TVs.