Nearly Practical Verifiable Computation with a Pinocchio Virtual Machine

Parallel streaming in Haskell: Part 1 - Fast efficient fun

Faster virtual machines: Speeding up programming language execution

Issue #317

1/16/2023

{{PreviewText}} 

Hidey-ho
Hope you all had a lovely weekend. If you're interesting making (neo)vim your primary IDE, I found this article on setting it up. I wouldn't use all of the plugins mentioned (no point in really having a directory tree in my opinion, when you can just have fuzzy search), but the basic ones are pretty good.
Here's the issue.

====================================================================

Today's Sponsor: Could be you!

Are you or your company interested in sponsoring the newsletter? Feel free to reach out to me by replying to this email or clicking the link above.

====================================================================

Nearly Practical Verifiable Computation with a Pinocchio Virtual Machine

Published: 13 January 2023
Tags: cryptography, math, rust, vm


Federico Carrone discusses the creation of a virtual machine in Rust that implements the Pinocchio protocol.
Some highlights:

  • The Pinocchio protocol is a zk-SNARKs protocol that allows for succinct proofs of circuit executions
  • The objective is to prove the correct execution of a "function" on inputs, when you have 0 knowledge of those inputs
  • A good bit of math here


====================================================================

Parallel streaming in Haskell: Part 1 - Fast efficient fun

Published: 4 January 2023
Tags: algorithms, haskell


Yorick Sijsling and Joris Burgers have written a series of articles on how to do efficient parallel processing in Haskell.
Some highlights:

  • "This post explains how we parallelized our system without incurring any significant overhead costs, allowing us to linearly speed-up our workloads with the number of cores available"
  • Streaming data is necessary to reduce the amount of memory used during processing
  • Making streams function in parallel is the key to the problem


====================================================================

Faster virtual machines: Speeding up programming language execution

Published: 15 January 2023
Tags: c, compiler, vm


Martin Dørum "explore[s] how interpreters are often implemented, what a 'virtual machine' means in this context, and how to make them faster".
Some highlights:

  • An interpreter is a type of virtual machine that reads and executes code
  • Many programming languages have a front-end compiler that emits bytecode, which is then executed by a virtual machine
  • The techniques described in this post won't magically make any interpreted language much faster


-

How did I do?

* Amazing
* Articles not relevant to me
* Articles were relevant, but badly written
* Summaries told me everything I wanted to know
* I like turtles

Want to help?

Thank you for reading! If you enjoy the newsletter, I would really appreciate you helping me spread the word by forwarding this to your friends and colleagues or sharing it on social media! Get cool stuff for your referrals using your link https://abyteofcoding.com.

Your referrals:


If you want to discuss or comment on this issue, head on over to this page at A Byte of Coding. You can also subscribe there if you're new!

Have comments or feedback? Just reply to this email or hit me up on Twitter @AByteOfCoding.

Email landed in your promotions tab? Please move it over to primary so you don't miss the latest issues in the future.
Thanks for your Support! 

Big thanks to all of the Patreon supports and company sponsors. If you want to support the newsletter you can checkout the Patreon page. It's not necessary, but it lets me know that I'm doing a good job and that you're finding value in the content.


Stats (updated daily)

Sent: 3039

Opens: 1500

Clicks: 278

Link Clicks Clicks % Unique Clicks Unique Clicks %
Nearly Practical Verifiable Computation with a Pinocchio Virtual Machine 48 27.75% 54 28.57
Parallel streaming in Haskell: Part 1 - Fast efficient fun 40 23.12% 43 22.75
Faster virtual machines: Speeding up programming language execution 85 49.13% 92 48.68

Previous

Back to Issues

Next