Ask HN: What are some great examples of bi-directional diagram/code projects?
I've always been interested in this space and there seem to be few examples. Specifically, I'm looking for an example that shows how to use something like codemirror and a drag and drop interface. A change in one would be reflected in the other.
10 comments
[ 2.6 ms ] story [ 32.2 ms ] threadprogramming language boomerang, "A bidirectional programming language for ad-hoc, textual data"[b];
more traditional use in neural networks[c]
xsugar for dual syntax xml language[d]
piet-q exotic language interpretation (vs. program/application)[e] and/or q-code usage/application[f][g]
can have fun with coding in c in way that 2nd program can be extrapolated from gcc ast syntax tree[3]
scratch[4] bit simpler, but gis-piet[5] bit bigger.
Hitchhicker's guide to the galaxy keeps it pretty small/simple with '42'; which means really have to fully expand/uncompress/unwind everything to get anything done.
---
[a] https://www.youtube.com/watch?v=jy-dpzi8neQ
[0] https://tree-sitter.github.io/tree-sitter/
[1] https://www.masteringemacs.org/article/how-to-get-started-tr...
[2] https://github.com/nvim-treesitter/nvim-treesitter
[2.2] : https://github.com/tree-sitter/py-tree-sitter / https://github.com/tree-sitter/tree-sitter-python
---
[b] https://www.seas.upenn.edu/~harmony/
[c] : https://github.com/bigaidream-projects/bidirectional
[d] : https://www.brics.dk/xsugar/
[e] : https://esolangs.org/wiki/Piet-Q
[f] : https://stable-diffusion-art.com/qr-code/
[g] : https://artvizual.com/featured/interactive-qr-code-art-exper... / https://www.hongkiat.com/blog/qr-code-artworks/
---
[3] : http://icps.u-strasbg.fr/~pop/gcc-ast.html / https://stackoverflow.com/questions/54162940/understanding-f...
[4] : https://scratch.mit.edu/
[5] : https://dl.acm.org/doi/abs/10.1145/1317331.1317345
You could check out my bidirectional circuit design tool:
https://github.com/leomcelroy/svg-pcb
Paper on it here:
https://dl.acm.org/doi/abs/10.1145/3559400.3562004
Feel free to reach out if you have questions.
https://hackaday.com/2019/03/02/3d-printing-logic-gates/
https://hackaday.com/2017/01/03/make-logic-gates-out-of-almo...
https://www.nature.com/articles/s41467-019-08678-0
https://www.youtube.com/watch?v=unzNxzKcAGY
You might find it useful to look at the papers that cite the paper: https://scholar.google.com/scholar?cites=2233351225886461130...
[1] https://github.com/KittyCAD/modeling-app/blob/main/README.md
puredata : Pure Data is an open source visual programming environment ( https://puredata.info/ / https://sourceforge.net/projects/pure-data/ ) projects build using puredata : https://puredata.info/exhibition
ofelia : graphics via openframeworks : https://github.com/cuinjune/Ofelia
list of other examples : https://en.wikipedia.org/wiki/Visual_programming_language
[0] https://bnfc.digitalgrammars.com/
[1] : https://dl.acm.org/doi/10.1145/3278186.3278193
[2] : https://www.researchgate.net/figure/Overview-of-Grammarinato...
[3] bullwinkle : https://github.com/sylvainhalle/Bullwinkle
[4] : https://news.ycombinator.com/item?id=30822544