Page Properties | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
- To review existing examples and approaches of automated programming for smart contracts of other platforms (i.e., Solidity).
- To explore the technically feasible options of automated programming for Hyperledger Fabric (incl. chatGPT) and select one for further work.
- To formulate a chaincode specification style which “seems to work well enough” on a set of representative examples. (We don’t know yet what will work – One-shot/iterative? Requirement set or BDD? Conversational or formal? Etc.)
- To create support for translating the specification partially or fully to runtime verification code, which can wrap the chaincode implementation. (Starting from a specification is a tried and tested way to create verifier code either manually or automatically and is much easier to do correctly than creating the implementation correctly from a specification. We plan to keep this aspect "classic": i.e., no chatGPT here.)
Additional Information
Ask ChatGPT for papers, which deal with using neural networks for generating Solidity code! No, really.
And ask it to write you an ERC-20 equivalent chaincode.
And ask it to introduce Fabric MSP-based ownership management.
(Try not to think of Asimov's robopsychology.)
It's not a coding wizard yet, but definitely uncanny.
On the other hand, we expect to experiment with Behavior-Driven Development; this means Gherkin/Cucumber.
Technology/approach for runtime verification (https://en.wikipedia.org/wiki/Runtime_verification) will depend heavily on the results on the "constructive" side - we do not want to make a commitment on this at this point.
Learning Objectives
- Hyperledger Fabric chaincode programming (if that's not already in the candidate's toolbox)
- Experiment planning and evaluation
- Working under guidance and collaborating using open-source tools
- Analytic thinking - and also thinking a bit out of the box
...