I’m wondering if there are any clojure devs here working with solidity and if so, how they are finding the tooling and what might be improved compared to the standard clojure repl experience.
Solidity as in smart contracts (remote procedure calls) on the blockchain? (I have no clue)
It’s quite useful these days as most popular chains are evm compatible - bnb, polygon, algorand, solana, tron… so it’s pretty easy to jump across projects learning the language.
Would anyone be interested in doing a solidity intro/workshop with me? From the earlier non-responses, I feel like people in clojure either A) have no interest in the EVM or B) just don’t want to use an Algol-like language or C) can’t be bothered answering.
I can’t really do anything for the A) and C) type people but may be able to help the B) types. If there is, I’ll ask @daslu to see if it’s possible to run one sometime next year through scicloj.
I’ve tried web3j and web3js in clj & cljs but it was just for checking a balance of a wallet etc. So don’t know about smart contracts.
Are you looking for a clojure(script) native approach for creating smart contracts with solidity? Something like a new clojure which uses EVM as a host?
I have a proof of concept. it’s solidity but in lisp form that is clojure syntax compatible. I wouldn’t really call it a language, more like a solidity dsl that transpiles to solidity.
Sounds really cool! Will you publish the code somewhere?
I think so… I’ve always felt like open source code is a bit of a blessing and a curse for the people releasing that code.
The worst thing that can happen to a project is for it to be open sourced and without community backing as I had experienced before so I’m cautious about it this time around and I’m picking a niche that has not really been explored by the clojure community before to begin with to gauge interest.
If you’re gauging interest, I’d like to get into programming with Solidity too, and of course I’d want to use Clojure if possible, or at least a lisp-y DSL.
awesome. thanks for sticking your head out. that’s one so far.
Writing EVM smart contracts in a lisp language?
Sounds incredibly awesome. Using web3.js in cljs has nothing to do with evm/solidity, it’s just JS. But smart contracts are another thing entirely.
You gotta release it man, might be a gold mine.
Feel free to ping me with your GitHub and I’ll add you to the repo.
That goes for @tugh, @rmschindler, @magnus0re and anyone else. Public consumption would require examples, documentation and a sexy website which I probably won’t get around to for a while. I’ve added a few clojure people already (though I don’t think anyone’s played with it yet). So if you want to jump in, great (and maybe you can be roped in as a maintainer if you really like it). All interested eyes are welcomed.
Just to give a background of the library, this is a solidity testing/verification toolchain solving the hardest part of blockchain development:
- integrated compile and 1 step deploy
- interface generation from abi and clojure integration
- live testing of functions and control of blockchain env (reset, measurement of gas fees, etc…)
This is an example contract for use in generated using the toolchain. Tests are done separately and is clojure.test compatible.
I’d like to check this out too, please! Github @yayitswei.
@protein: long time. added.
My GitHub username: rmschindler.