TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

A circuit-like notation for lambda calculus (2015)

80 pointsby Ivoahabout 7 years ago

10 comments

stevemk14ebrabout 7 years ago
At some point in my CS career i distinctly remember a &quot;flip&quot; i had in how i thought. The revelation was the fact that complexity and more generally information has an infinite number of ways of being represented. Somehow by stating that explicitly i was able to tackle new problems by first asking myself &quot;is there a better model for this that expresses the same information and obeys similar constraints as what i am modeling&quot;. I started taking my Calculus notes in &quot;code-like&quot; ways, for example, using while loops and if&#x27;s, adding arrows and other weird non-math syntax. To me they were more efficient ways of learning and remembering the information<p>New ways of modeling the same information always excite me. This is fantastic work.
评论 #16727356 未加载
Garlefabout 7 years ago
This is a nice find but it is very old news.<p>In mathematics (and mathematical physics), these are called <i>string diagrams</i>.<p>The short and simplified version of the story:<p>The (typed) lambda calculus &#x27;corresponds&#x27; to <i>cartesian closed categories</i>. Such CCCs are a special case of <i>monoidal categories</i>. String diagrams are a notation for morphisms in monoidal categories.<p>To get you started, here&#x27;s a related blog post on the n-category café<p><a href="https:&#x2F;&#x2F;golem.ph.utexas.edu&#x2F;category&#x2F;2006&#x2F;08&#x2F;categorifying_cccs_seeing_comp.html" rel="nofollow">https:&#x2F;&#x2F;golem.ph.utexas.edu&#x2F;category&#x2F;2006&#x2F;08&#x2F;categorifying_c...</a>
lachenmayerabout 7 years ago
I&#x27;m a big fan of this idea! An automatated tool based on this would be really great for teaching the concepts of lambda calculus - similarly to how Lambda Bubble Pop <a href="http:&#x2F;&#x2F;chrisuehlinger.com&#x2F;LambdaBubblePop&#x2F;" rel="nofollow">http:&#x2F;&#x2F;chrisuehlinger.com&#x2F;LambdaBubblePop&#x2F;</a> can give you really strongs intuitions about eager &amp; lazy evaluation.<p>The author gave a talk on this &amp; related work at the excellent Deconstruct conference, definitely recommend it if you&#x27;re into notations! <a href="https:&#x2F;&#x2F;www.deconstructconf.com&#x2F;2017&#x2F;chelsea-voss-programming-languages-as-notations" rel="nofollow">https:&#x2F;&#x2F;www.deconstructconf.com&#x2F;2017&#x2F;chelsea-voss-programmin...</a>
grenoireabout 7 years ago
Reminds me of <a href="http:&#x2F;&#x2F;graphicallinearalgebra.net" rel="nofollow">http:&#x2F;&#x2F;graphicallinearalgebra.net</a> which is also super cool.
trompabout 7 years ago
Lambda Diagrams [1] are a more abstract, less circuit-like, notation.<p>[1] <a href="http:&#x2F;&#x2F;tromp.github.io&#x2F;cl&#x2F;diagrams.html" rel="nofollow">http:&#x2F;&#x2F;tromp.github.io&#x2F;cl&#x2F;diagrams.html</a>
Phrodo_00about 7 years ago
It&#x27;s not that similar, but this somewhat reminded me of Alligator eggs[0]<p>[0] <a href="http:&#x2F;&#x2F;worrydream.com&#x2F;AlligatorEggs&#x2F;" rel="nofollow">http:&#x2F;&#x2F;worrydream.com&#x2F;AlligatorEggs&#x2F;</a>
评论 #16727097 未加载
lokimedesabout 7 years ago
I got a vague association to Penrose’s graphical tensor notation <a href="https:&#x2F;&#x2F;en.m.wikipedia.org&#x2F;wiki&#x2F;Penrose_graphical_notation" rel="nofollow">https:&#x2F;&#x2F;en.m.wikipedia.org&#x2F;wiki&#x2F;Penrose_graphical_notation</a><p>There are a lot of examples in modern physics where people have come up with graphical notations to handle the kind of recursive complexity found in the article. There’s a lot of low-hanging fruit to be discovered in the last century of physics. Especially now that Machine Learning is all the buzz about tensors.
zokierabout 7 years ago
Very neat, but why it is drawn backwards, the inputs coming from left instead of right?
评论 #16727702 未加载
no_identdabout 7 years ago
I&#x27;d strongly recommend comparing that notation to this notation:<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Cirquent_calculus" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Cirquent_calculus</a>
tathougiesabout 7 years ago
Nice notation! Do these relate in any way to the interaction combinators?