HDP Jargon

Data Processor Jargon

This page is a glossary of terms used in the Data Processor. If you want to check out how to interact with the Data Processor, please check out the Data Processor API.

Task

A task is a unit of processing. A task should be something complete and unique. It should have all the relevant data defined and also specify what computation we need to perform (either implicitly or explicitly).

  • Regardless of type, a task should have three common behaviors: encode, commit, and decode. Because of this, we can batch both Data Lake Compute-type tasks and Module-type tasks in the same Merkle tree!

  • We have two different types of tasks, and for each task type, we are providing detailed explanation pages:

  • Data Lake tasks are generally faster for processing large datasets with simple aggregation, but Module tasks allow for fully arbitrary computations to be verified as well.

Program Registry

The Program Registry is a server that uploads compiled Cairo programs (also known as CASM files), which are needed to call a module. Check out the detailed API documentation here.

The program hash is a unique calculation of the program bytecode. Based on the compiler version, the computation might vary slightly. You can also retrieve the exact hash via the cairo-run command from cairo-lang.

Our main motivation is to have a registry of Cairo programs so that we can retrieve the compiled Cairo program using the given program hash.

Last updated