HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
vyperlang
vyper
Python2017–2024
vyperlang / vyper

vyper

Pythonic Smart Contract Language for the EVM

11Distinct people
17Mentions
0Explicit recommenders
5.2KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Pythonic Smart Contract Language for the EVM

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:56:07 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year17 dated mentions

Observed mentions: 2017-02-15 21:00:12 UTC to 2024-09-05 17:55:22 UTC.

0369122017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 11 mentions; 1 submissions, 10 comments20172018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20202021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC11110
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC101
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC202
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC101
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC101
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC000
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC000
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC101

What Hacker News says

17 sources
> I need a hero, and by that, I mean that I need a usable methodology for building scaleable decentralized apps. Yes, you've heard that right. We don't need more "Ethereum killers" that can do 10x more tx/s than Ethereum. Those are useless. Having worked on large Ethereum smart contracts (running a decentralized auction on chain) over two years, I fully agree with this. Ethereum needs better smart contract languages, better compilers and better dev tooling. As our smart contract written in Vyper (for ease of auditing) grew larger and larger, eventually we failed to deploy on the testnet, and closer inspection reveal that the compiler was blowing up code size which I had to patch[0]. Down the line upstream further increased gas costs by emitting code that zeroed out every member of an array (note the EVM already has all memory set to 0). T
Read the rest
o support efficient insertion/deletion of bids we had to handroll a skip list on the blockchain(!), because there are no Vyper libraries. On the language development side, things don't look too pretty either, I ended up having to write an EVM assembler from scratch[1], but deeper still are problems such as a lack of a separate call stack in EVM, so procedure calls always end up clunky and implementation-dependent. LLVM to EVM[2] is still experimental, so anyone who is writing a compiler will have to write codegen from scratch. Perhaps eWASM will alleviate some of these concerns. But until then, the entire dev process for writing smart contracts is painful. [0] https://github.com/vyperlang/vyper/pull/1488 [1] https://github.com/ActorForth/evm-assembler/blob/master/docs... [2] https://github.com/etclabscore/evm_llvm
In Ethereum Isn't Fun Anymore
Having worked with Ethereum, especially the low level bytecode, one of the changes I'm most excited for that I don't see mentioned a lot is the addition of eWASM support for nodes. There's many problems with the two dominant smart contract languages Solidity and Vyper, for instance bloated codegen that had to be patched otherwise complex contracts size could not be deployed[0], or more theoretical concerns such as soundness, semantics and correctness. Part of the problem is because of no coherent shared intermediate representation and developers writing backends from scratch, and lots of reinventing of the wheel[1]. There's an ongoing project[2] to create an LLVM backend for EVM but the stack based nature is at odds with LLVM IR's bias towards register-based architectures. (EVM doesn't even have a separate stack for return addresses to im
Read the rest
plement subroutines cleanly!) The switch to eWASM would greatly improve security, efficiency and perhaps allow a diversity of languages to be used on Ethereum. It should be a matter of exposing the appropriate primitives to call other contracts, generate log events, write to the store and so on. [0] For instance, see a PR that reduces codegen from 55K to 1.6K bytes on an innocuous contract https://github.com/vyperlang/vyper/pull/1488 [1] I'm guilty of it too; https://github.com/ActorForth/evm-assembler/blob/master/docs... [2] https://github.com/etclabscore/evm_llvm
In Ethereum 2.0 launches
The EVM is just a virtual machine. People are working on languages with less opportunity for bugs than Solidity, like Flint: https://github.com/flintlang/flint Also Vyper, which doesn't go as far but is already used in production: https://github.com/ethereum/vyper The EVM itself isn't the end of the road either. Over the next couple years, Ethereum is migrating to a more scalable sharded version using proof of stake, and it looks like that will allow pluggable execution engines.
In Manticore: A Symbolic Execution Framework for Binaries and Smart Contracts
Not explicitly. Currently, it's the most widest used language for interacting with the VM, but it's not the end development goal. I don't think the entire thing hinges on Solidity, though it's probably the most immediately accessible language. The hype driving the price up seems a bit premature, though. There are a couple of other languages in development that might improve the ecosystem: * Vyper https://github.com/ethereum/vyper * Serpent https://github.com/ethereum/serpent
In Miners Aren’t Friends
Sure, but I'm not aware of any language with an optimizer that minimizes permanent storage (for example). The gas model has been forced to be a close representation of actual costs, because last year it wasn't close enough, and someone took advantage of that to launch denial of service attacks. Incidentally, last year someone wrote an Idris backend compiling to EVM for their doctoral thesis. They concluded that it had some benefits but not as much as they expected. [1] There's an effort in progress to migrate from the existing EVM to a modified webassembly [2], which would allow usage of existing languages, and potentially improve performance significantly. It's still experimental and may or may not work out, but seems to be making good progress. [3] With the existing EVM there are new languages in development that may improve matters, in
Read the rest
cluding Viper [4] (by Vitalik) and Bamboo [5] (by someone the Ethereum Foundation employs to work on formal proofs). [1] https://publications.lib.chalmers.se/records/fulltext/234939... [2] https://github.com/ewasm/evm2wasm [3] https://blog.ethereum.org/2017/08/23/roundup-5/ [4] https://github.com/ethereum/viper [5] https://github.com/pirapira/bamboo
In Reviewing Ethereum Smart Contracts
Nobody prevents you to write contracts in a more restrictive language. For example: https://github.com/ethereum/viper Or create your own. I am sure the creators of Solidity are aware of its limitations and quirks. But as far as I can tell they felt they had to ome up with something fast. And it grew from there. But as I said: Feel free to create your own language for the EVM if Solidity does not fit your needs or requirements. With a system allowing Turing completenes it should be possible to create a language that removes Turing completeness (for more security). It would be impossible the other way round.
In Underhanded Solidity Coding Contest
One of the main Ethereum co-founders is working on a new experimental contract language targeting the Ethereum Virtual Machine called Viper which still seems to be under relatively active development[1]. Why pick Solidity if Viper and other languages like Low-level Lisp-like Language (LLL) by Consensys[2] are around the corner? Or is this just a matter of language flavour similar to how anybody can pick from a plethora of languages targeting the JVM (Clojure, Scala, Java, etc.)? [1] https://github.com/ethereum/viper [2] https://media.consensys.net/an-introduction-to-lll-for-ether...
In How to Learn Solidity: The Ultimate Ethereum Coding Guide

Showing the 15 most recent of 17 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.