Skip to content

Instantly share code, notes, and snippets.

@hellwolf
Last active April 3, 2024 10:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hellwolf/6ce74d685b4aa2083a32db1bc327938b to your computer and use it in GitHub Desktop.
Save hellwolf/6ce74d685b4aa2083a32db1bc327938b to your computer and use it in GitHub Desktop.
Public Talks

Create Frictionless Money

  • Formats: 20-30 minutes presentation
  • Difficult Levels: beginner to intermediate
  • Tags: Superfluid Protocol, Blockchain, FinTech

Description

Payment as we know has lots of frictions, with Superfluid money, it becomes truly frictionless, allowing money transferring continuously between accounts with no ongoing cost.

In this talk you will learn the basics of the protocol features, how how blockchain enables it and it should also inspire you to create one from scratch!

Info for Reviewers

References:

History:

-- Check bio for the contact details.

YOLC - A New Way to Program on EVM

  • Formats: ideally 30+ minutes presentation
  • Difficult Levels: intermediate to advanced level
  • Tags: Solidity, Formal Methods, Haskell, Rust

Description

Solidity has achieved its historic mission of bringing more developers to the program on EVM. But in the tech industry, we ought not to be easily satisfied. If anything, the bull market has taught us that we must bring more cutting-edge development concerning security into our ecosystem, and correctness-by-construction is one of them.

In this talk, the presenter will unveil a new tooling for building on EVM. Whereby soon, we can leverage mature high-level languages, such as Haskell, or potentially upstart languages, such as Rust, to get us closer to correctness-by-construction in building on EVM.

Info for Reviewers

History:

-- Check bio for the contact details.

Generalized Payment as Types

(the title is a play of words of the famous paper and series of talks from Philip Wadler: "Propositions as Types")

  • Formats: 30-60 minutes presentation
  • Difficult Levels: advanced
  • Tags: Superfluid Protocol, Blockchain, FinTech, Haskell, Functional Programming, Category Thoery

Description

Payment as we know is discrete money units transferred one to one, either as banknotes, coins or through a bank. With Superfluid money, it is generalized to allow money units transferring continuously en mass.

The system is live on various EVM blockchains. In the next iteration, these concepts of new types of money transfer are being defined and made type-safe using Haskell.

Why Specification?

  • It serves as a reference impelmentation which will help to port the protocol to different blockchain implementations.
  • It allows faster prototyping of new ideas in abstraction without being limited by any specific blockchain.

Why Haskell?

  • First of all, haskell is a pure, strongly typed, concise, high level, memory-managed modular language.
  • Because of that, it is well suited to for the job of writing the specification for the protocol where abstraction, precision and succinctness matter.
  • Having a higher level of abstractions gets Superfluid protocol closer to being able to formal concepts, where deeper relations betweens entities, patterns of interations and composability of categories may emerge.

Info for Reviewer

References:

History:

-- Check bio for the contact details.

Comparisons of Continuous-Time Swap Designs

  • Formats: 30 minutes presentation
  • Difficult Levels: intermediate to advanced
  • Tags: Uniswap, DEX, Superfluid Protocol

Description

Typically, a swap is instant and discrete. In blockchains where transactions are not deterministic, such swaps are often subject to a class of game-theoretical attacks known as maximal extractable value (MEV). Even when this attack is mitigated or minimized, a trader may still prefer a more "boring" way of trading due to the notorious difficulties in managing price volatility and risks as an individual trader.

The fundamental solution to this problem is introducing the concept of continuous-time swaps, where trading happens through a function of time.

In this talk, we will compare several designs of continuous-time swaps and explain why it is feasible and crucial to demonstrate the unique features that Blockchain-based financial systems bring.

Info for Reviewer

-- Check bio for the contact details.

Pure Functional Solidity for Fun and Profit

  • Formats: 20-30 minutes presentation
  • Difficulty Levels: intermediate to advanced
  • Tags: Functional Programming, Solidity, Formal Verification, Superfluid Protocol

Description

"Why Functional Programming Matters" by John Hughes is the best prelude to why this talk should exist in the first place.

Can we program solidity code using the functional programming style? The speaker thinks: yes, we can and we should! We do it first because it is fun. Secondly, it can lead to more formally verifiable code (profit!).

In this talk, we will see how the new Superfluid protocol uses this way of writing code to achieve an ERC20x token contract with magic powers.

Info for Reviewers

References:

WIP pull request for the code: superfluid-finance/protocol-monorepo#1280 Superfluid protocol is in production and can be used at https://app.superfluid.finance/ Our docs https://docs.superfluid.finance/

History:

-- Check bio for the contact details.

Composability Extreminists: Callback or No-Callbacks?

  • Formats: 30 minutes presentation
  • Difficult Levels: intermediate to advanced
  • Tags: Solidity, EVM, Ethereum, Superfluid Protocol

Description

No one likes ERC-777 anymore, some despise it, some scared of it. Perhaps for good reasons.

But in Superfluid protocol, we want composability, we want state synchronizations, so give us callback or an alternative, now!

This talk will give an overview of:

  • How Superfluid protocol benefits from having composability, and how it is current implemented using callbacks.
  • What is the problem with callbacks.
  • Is there alternative way of achieving state syncrhonization in blockchain not using callbacks?

Info for Reviewer

References:

History:

-- Check bio for the contact details.

Stamped Ctx - A transient, secure and efficient heap-like shared memory data in Solidity/EVM

  • Formats: 30 minutes presentation
  • Difficult Levels: intermediate to advanced
  • Tags: Solidity, EVM, Ethereum, Superfluid Protocol

Description

Under the current EVM model, for a contract to share arbitary data between different external calls efficiently does not have a idiomatic way of doing so. Especially if the data is meant to be transient (only live during one transaction), storing and update the data in the contract storage space would be prohititively expensive unless EIP-1153 is accepted to EVM.

In Superfluid protocol, we use this pattern a lot to achieve composability, and it is called the "Stamped Ctx".

This talk will give you an overview of what is Stamped Ctx in the Superfluid protocol, and how that helps the protocol to achieve composability.

Info for Reviewer

-- Check bio for the contact details.

Bio

Miao programmed many, many years of computers as an old-school hacker. Miao is still in love with programming, more so as an art.

Now, Miao focuses on a mission that he believes in to fundamentally advance the experience of money in a world where money is superfluid.

As a lifetime goal, after showing some success, Miao also wants to spread the idea of rational self-interest, which he believes will unshackle humanity from the evil of destructive self-sacrifice.

Contacts

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment