Open Collective
Open Collective
Loading

Rholang Debugging tools

PROJECT

Tracing sends and identifying the source code identity of unforgable names in the log to facilitate debugging

About


Mature computer languages come with powerful debugging tools. Currently Rholang has no debugging tools. Debugging is tedious and difficult slowing development and requiring greater expertise.

Given adequate tools Rholang programming can be simple because Rholang is a simple language. 

Commonly you run your Rholang program and get no result giving you no clue about what is wrong. I preprocessor trace is being considered to insert a send to a trace channel (e.g. stderr, result) filename, line, and text of the receive expression in the "for" statement.

A simple preprocessor that inserts a send in par with the action of a every "for" is an expedient way to make Rholang more usable but not enough to help with some kinds of bugs.

In Rholang our data includes unforgable names. But we have no way to determine the name used and context in the source code of the random sequence of characters seen in the log representing the unforgable name. Name in the source code are replaced by generic x1, x2, x3 and these in tern are assigned actual vales at run time. If we enhance rnode to support a debugging mode mapping both translations we can associate the unforgable names with the name in the contex it has in the source code.  This debug mode is a fairly difficult to develop but ultimately necessary for us to resolve really nasty Rholang bugs.

NOTE REGARDING CRYPTOCURRENCY CONTRIBUTIONS (MAY 2023)
The Open Collective platform has disabled cryptocurrency donations.  Should you wish to make a donation using cryptocurrency, please contact us through this platform, using the Contact function. 


Our team

ReshP

Core Contributor

Felix

Core Contributor

Mcwig

Core Contributor

Rafzalan

Core Contributor

kunj

Core Contributor

David Asamonye

Core Contributor

rapiddenis

Core Contributor

momchilov

Core Contributor

Ottotto

Core Contributor

Mopsy

Core Contributor

frank.scheuer

Core Contributor

Steve

Core Contributor

CoolDrT_gb

Core Contributor

TonyTQL

Core Contributor

Tom

Core Contributor

NeilD

Core Contributor

Valentine

Core Contributor

Haider

Core Contributor

Toby

Core Contributor

DarrylN

Core Contributor

John Tewksbury

Core Contributor

Contribute


Become a financial contributor.

Financial Contributions

Custom contribution
Donation
Make a custom one-time or recurring contribution.