==== EIP 190: Ethereum Smart Contract Packaging Standard ==== [[dido:public:ra:xapend:xapend.b_stds:defact:ethereum:eip| Return to Ethereum ERCs ]] : **Note**: The following is an excerpt from the official Ethereum site. It is provided here as a convenience and is not authoritative. Refer to the original document as the authoritative reference. | Title | Ethereum Smart Contract Packaging Standard | | Author | Piper Merriam, Tim Coulter, Denis Erfurt, RJ Catalano, Iuri Matias | | Status | Final | | Created | 2017-01-10 | | Description | [[http://eips.ethereum.org/EIPS/eip-190]] | | Specification | [[http://eips.ethereum.org/EIPS/eip-190#Specification]] | | Category | ERC |
Data sheet for Ethereum [[dido:public:ra:xapend:xapend.a_glossary:s:smart_contract|Smart Contract]] Packaging Standard
=== Abstract === //This ERC proposes a specification for Ethereum smart contract packages.// //The specification was collaboratively developed by the following Ethereum development framework maintainers.// * //Tim Coulter (Truffle)// * //Denis Erfurt (Dapple)// * //Piper Merriam (Populus)// * //RJ Catalano (Eris PM)// * //Iuri Matias (Embark)// === Motivation === //Packaging is a core piece of modern software development which is missing from the Ethereum ecosystem. The lack of packaging limits the ability for developers to reuse code which negatively affects productivity and [[dido:public:ra:xapend:xapend.a_glossary:a:applicationsecurity|security]].// //A key example of this is the [[dido:public:ra:xapend:xapend.b_stds:defact:ethereum:eip:erc_0020| ERC20]] standard. There are a few well audited reusable token contracts available but most developers end up writing their own because of the difficulty in finding and reusing existing code.// //A packaging standard should have the following positive effects on the ecosystem:// * //Greater overall productivity caused by the ability to reuse existing code.// * //Increased security caused by the ability to reuse existing well audited implementations of common patterns (ERC20, crowdfunding, etc).// //Smart contract packaging should also have a direct positive effect on the end user. [[dido:public:ra:xapend:xapend.a_glossary:w:wallet|Wallet]] software will be able to consume a released package and generate an [[dido:public:ra:xapend:xapend.a_glossary:i:interface|interface]] for interacting with any deployed contracts included within that package. With the advent of ENS all of the pieces will be in place for a wallet to take a human readable name and present the user with an interface for interacting with the underlying [[dido:public:ra:xapend:xapend.a_glossary:a:application|application]].//