Comments (1)
It seems there's an inconsistency between the idea that values can be "shared" (e.g. bound to a variable which is used non-linearly) and the idea that availability annotations are combined conjunctively. If I bind a particular instance of the number 5 to x, and then use x in two places with distinct availabilities, I cannot reflect those distinct availabilities at the uses, because they have to be intersected. There is a similar situation with all the non-terminal forms (application, let, etc), since they share values with a subcomputation.
It's worth noting that it is sharing within a computation which is problematic for slicing, whereas for "differential" execution we are actually only interested in sharing across computations. Perhaps we can somehow have the latter in a useful way while precluding the former?
Related thought: I haven't yet considered how this notion of (where?) provenance is related to the scheme for identifying nodes in the computation. If we identify nodes in such a way that (otherwise shared) nodes are always discriminated by their "usage" context (e.g. so that for example the identity of the value of an application depends on the identity of the application expression), then perhaps these notions start to become related: my identity is the set of nodes that need to be available for me to be available, and my availability is the conjunction of the availability of those nodes.
from fluid.
Related Issues (20)
- Anonymously hosted web demo
- Toggle “related elements” within individual view
- Build graph imperatively
- `TableView`: decimal alignment
- `TableView`: column width independent of row visibility
- Data pane as scrollable viewport
- Distinct URL for each example
- Data pane: hover feedback on visualisation `mouseenter`
- Full screen on individual grid row
- Rectangular selection
- Legend entries linked to relevant subplots
- Change colours on visualisation to suit different requirements HOT 1
- Plot intervals/ranges in Y for a given X
- Two-column layout for data/visualisations
- Refresh selection information rather than rebuilding `div` each time
- Migrate rendering logic to PureScript side
- `BubbleChart` as generalised `ScatterPlot`
- Animate table row hide/reveal
- VSCode plugin
- `Aggregate` values in `BarChart` and `LineChart`
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fluid.