argotorg / argotorg/solcore

Supporting logs and events properly

Open
#447 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Haskell
Stars
113
Forks
9
Avg merge
4d 9h
Merged PRs (30d)
1

Description

For logs and errors need a way to define the shape of those, probably as a type:

```
data DepositEvent = DepositEvent(bytes32, uint256, memory(string));

emitLog(DepositEvent(...));
```

However somehow defining an instance (ABIEncodeable or LogEncodeable) on these would be needed without requiring the user to manually do these.

I think this could be accomplished with wrapping those in a Log type.

Also the question is whether to have syntactic sugar or not, ie solidity uses `event DepositEvent(bytes32, uint256, memory(string));`

Lastly, named parameters would be nice.

Contributor guide

No contributing guide indexed for this repository

Research direction

No file, test, or entry point is named. Start by mapping how the compiler currently represents logs, errors, ABIEncodeable, and LogEncodeable, then resolve whether typed wrappers, syntactic sugar, and named parameters are in scope; done means an agreed design with corresponding implementation and tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
haskell, solidity
Domain
compilers
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.