News for hackers. Stuff that matters.

chorasimilarity

Re:D3.js visualization of a lambda calculus on Wednesday July 22, 2015 @03:56PM (#9931889)
This replication and composition of permutations - in the same time - uses lambda calculus together for composition but otherwise the permutations and replications are not lambda calculus like https://chorasimilarity.wordpress.com/2015/07/22/permutation...
Re:D3.js visualization of a lambda calculus on Saturday July 18, 2015 @10:49AM (#9907665)
Thank you sago, that's accurate. Technically, chemlambda rewrites together with the reduction algorithm used in the script quiner.awk from the repository describe an asynchronous graph rewrite automaton.

(An addition to sago's comment is that the rewrites are done randomly; there is a cycle in the algorithm where rewrite patterns are identified, then coins are flipped and as a result some of them are done. The chemical analogy is that there are invisible "enzymes" which do the rewrites, and they roam around randomly. Alternatively one can make another version of the algorithm, for example one where these enzymes are produced and they choose randomly their preferred patterns. This is a way to erase the visual impression that there are global steps in time when the graph is updated.)

Graphic lambda calculus is the ancestor of chemlambda. Actually both formalisms don't have a lot in common with lambda calculus, in the sense that there is an algorithm to produce a graph from a term in untyped lambda beta calculus, such that the lambda calculus rewrites correspond to moves in these graphical formalism. But chemlambda works with a family of graphs which is much larger than the ones which represent lambda terms.

However, you can see in the demos page some classical computation problems: Ackermann function, factorial, predecessor. There are also some demos which can't be qualified as related to lambda calculus.

Chemlambda resembles most with the ALCHEMY of Fontana and Buss, which is also based on lambda calculus, with the main difference being that in ALCHEMY application is a chemical reaction and abstraction is a reactive site (very sketchy description), while in chemlambda the application and abstraction are, on equal footing, just nodes in a graph.

Re:D3.js visualization of a lambda calculus on Saturday July 18, 2015 @09:57AM (#9907554)
It's an artificial chemistry which is inspired, but can do other things as well, from untyped lambda beta calculus. There are two projects related to it, one in meatspace, other in virtual space. Project 1 says that if this chemlambda can be done by real chemistry then it may help to build or understand biochemistry. The article is http://chorasimilarity.github.io/chemlambda-gui/dynamic/mole... Molecular computers (2015). Project 2 is about decentralized computing, without any higher layer of control. Pretty, short animations with some explanations in the https://plus.google.com/u/0/collection/UjgbX chemlambda collection. More meaty stuff in the http://chorasimilarity.github.io/chemlambda-gui/index.html . But you have to follow links to articles and read them :) Real stuff in the github repo, see https://github.com/chorasimilarity/chemlambda-gui/blob/gh-pa... . I'm a mathematician, not a programer, there has been no release yet, every possibility is left open. Play with it folks! I have not figured out why firefox is so lousy with some of these d3.js animations, but you can make your own and fiddle with them. True is that some of them have tens of thousands of nodes which appear/dissapear (several hundreds at a time). Safari works well, chromium decently.