Gno.land: The Key To Perpetual Transparency
11 September 2023
Manfred Touron
VP Eng., Gno.land
Manfred Touron
VP Eng., Gno.land
++ ++++ ++++ ++++++++++ +++ | ++ | Hello! I'm Manfred. + -== ==| As you might deduce from my accent, ( <*> <*> I hail from France. π«π·π₯ | | | __| A Quick Note: | +++ In this presentation, when I mention 'GitHub' or \ =+ 'Open-Source', keep in mind that the same ideas \ + apply to platforms like 'GitLab' and encompass |\++++++ concepts like 'free software'. | ++++ ||// Please take these terms broadly. ____| |____ _||/__ / --- \ \| ||| / _ _ _ / \ \ / | / / //_//_// | | |
+----------+ +----------+-------+----------------+ | | | | | Gnolang | | Wallets |----->| | GnoVM +----------------+ | | | | |Execution State | +----------+ | +-------+-----+----------+ | Gno.land | | BFT | +----------+ | | Tendermint2 +----------+ | | | | | IBC |--interchain--> ... | Gnoweb |----->| +-------------+----------+ | | | | Proof-of-Contribution | +----------+ +----------+------------------------+
Contracts start standalone, then grow interconnected for better reusability. ββββββββββββββββββββββββββββββ β β β βΌ βββββββββ βββββββββ βββββββββ βββββββββ βββββββββ β E ββββββββΆβ C ββββββββΆβ A β β B β β D β βββββββββ βββββββββ βββββββββ βββββββββ βββββββββ β β² β² β β β β β βββββββββββββββββββββββββββββββββ βββββββββββββββ
package foobar import ( "gno.land/r/foo20" // a grc20 token "gno.land/r/users" // equivalent of ENS ) func TransferToUsername(username string, amount int) { user := users.Lookup(username) foo20.Transfer(user.Addr(), amount) }
+--------------+ +---------+ Uploads +-------+ Runs | Contract | GnoVM |Developer|--source code-->| GnoVM |--Source Code--->| Execution | +---------+ +-------+ +--------------+ +---------+ +-----+ Runs +--------------+ |Developer| +---->| EVM |-----Bytecode---->| Contract | +---------+ | +-----+ | Execution | EVM | | +--------------+ Writes Uploads source code Bytecode | +-------+ | +->|Compile|-----+ +-------+
package hello func Greetings() string { return "Hello World!" }
$> import "gno.land/r/forum" $> print(forum.Debug()) { ... ...
+------------------+ +-----------+ +-----------+ +-X%-->| contributors | | | |chain fees | | +------------------+ | users |---------$GNOT--------->| bucket |-----+-Y%-->| validators | | | | | | +------------------+ +-----------+ +-----------+ +-Z%-->| contract authors | +------------------+
Open-Source Ethos 1. Freedom to Run 7. Meritocracy 2. Freedom to Study 8. Community-Centric 3. Freedom to Modify 9. Open Standards 4. Freedom to Distribute 10. License Integrity 5. Collaboration 11. Inclusivity 6. Transparency 12. Sustainability
Before GitHub:
After GitHub:
+----------+ +--------------+ | | | Read, Audit, | | Explore |---------->| Debug, Use | Loop, for perpetual | | +--------------+ transparency. +----------+ | ^ +-----------------+ | | | Import, Extend, | | +--| Compose, Fork |<--+ +-----------------+
Join us in our testnet phase to co-create the future.
17Β ______ ____ ____ __ / ____/___ _____ ___ ___ ____ / __/ / __ \___ ____ _/ /___ ___ _____ / / __/ __ `/ __ `__ \/ _ \ / __ \/ /_ / /_/ / _ \/ __ `/ / __ `__ \/ ___/ / /_/ / /_/ / / / / / / __/ / /_/ / __/ / _, _/ __/ /_/ / / / / / / (__ ) \____/\__,_/_/ /_/ /_/\___/ \____/_/ /_/ |_|\___/\__,_/_/_/ /_/ /_/____/ Β Β