user1005: I thought about curating some literature on ETH and Cardano interoperability and was wondering about ERC20/ERC721 and plutus smart contracts. If I understand it right, ERC20/ERC721 are contract standards that users copy-paste into their code that can later be user-defined. In contrast, Plutus has a native token that can only manipulated via minting policy script.
Is there such a wrapper to convert the ERC20/721 standards into a plutus minting policy script? Or does this not make sense? If not, why?

user810: We already have similar contracts, which are re-used by other more complex contracts (like Uniswap).
Take a look at mintContract which is part of plutus-use-cases package.
Since smart contracts are using Haskell, we also get full namespaces, modules and package support handled for us by Haskell so re-using such contract means adding a correct package to your projects dependencies and importing it.
Note: during Plutus Pioneers course the function was called forgeContract.
I think there's also a ERC20 converter in the pipeline.

1005: <p>I thought about curating some literature on <a href="https://github.com/hududed/awesome-eth-cardano" rel="nofollow noreferrer">ETH and Cardano interoperability</a> and was wondering about ERC20/ERC721 and plutus smart contracts. If I understand it right, ERC20/ERC721 are contract standards that users copy-paste into their code that can later be user-defined. In contrast, Plutus has a native token that can only manipulated via minting policy script.</p>
<p>Is there such a wrapper to convert the ERC20/721 standards into a plutus minting policy script? Or does this not make sense? If not, why?</p>
 810: <p>We already have similar contracts, which are re-used by other more complex contracts (like Uniswap).</p>
<p>Take a look at <a href="https://github.com/input-output-hk/plutus/blob/master/plutus-use-cases/src/Plutus/Contracts/Currency.hs#L153" rel="nofollow noreferrer">mintContract</a> which is part of <a href="https://github.com/input-output-hk/plutus/blob/master/plutus-use-cases/" rel="nofollow noreferrer">plutus-use-cases</a> package.</p>
<p>Since smart contracts are using Haskell, we also get full namespaces, modules and package support handled for us by Haskell so re-using such contract means adding a correct package to your projects dependencies and importing it.</p>
<p>Note: during Plutus Pioneers course the function was called <code>forgeContract</code>.</p>
<p>I think there's also a ERC20 converter in the pipeline.</p>
