# RChain – Voting in Rholang

This is a walkthrough of the on chain voting process that we are using for member voting at our AGM. Dan did much of this work and brilliantly explains Rholang using Blockly in this video.

0:00:25 – Response in Rholang. revAddrFrom =That’s you. toAddrs = your answers REV transfer

0:01:31 – Tx per Answer – in Parallel!

0:01:39 – Voting Transactions on RChain

0:01:56 – Vote Tally

0:02:05 – What About the Rest?

0:02:21 – Crash Course: Rho Calculus has 6 Building Blocks

0:02:31 – Rho Calculus: Processes in Parallel

0:02:52 – * and @ blocks – @ allows you to take a process and make it into a name, and take a * and turn that back into a process, and make that into a name, and so on.

0:03:12 – Not only that, since we made a process, we can put that in parallel with something else. And can make name ut of the whole thing by putting an @ in front of it.

0:03:30 – One of the more interesting bits is where you can send and receive to make communication

0:04:25 – Something interesting happens when you put a send and a receive in parallel, if the names correspond, if the name you are sending and the name you. are receiving are the same name, and put them in parallel, you get communication.

0:04:54 – you have the send part at the top and the receive part at the botttom – What happens when the two get together, the part that was sent gets filled in and the rest goes away.

0:05:22 – And that’s your crash course in Rho calculus. There are 6 blocks, there are 5 ways to make processes, and one way to make names. The whole thing fits onto the front of a t-shirt.

0:05:49 – Rholang is Rho calculus plus this that and the other thing…

0:06:21 – one of the wrinkles in rholang is this new xmp notation. This new construct, choose one name that doesn’t occur in any other rholang expression. never has been written down and never will be written down – let x stand for that name.

0:07:06 – in rholang, expressions are processes too. and are other ways to build up processes – the data structures are rich.

0:07:57 – some extra bits – full story on rholang for another day.

0:08:44 – back to voting – deployID – corresponds to deploy signature….

0:09:41 – function calls

0:10:35 – registry lookup

0:11:05 – RevVault API

0:12:32 – All together

Voting in Rholang Slides on Google