It is (currently) not well suited to resource-intensive apps.<p>Basically you pay a &quot;gas price&quot; for every opcode executed by the EVM. Clearing a memory address? You pay for it. Setting a value? You pay for it. etc. etc.<p>(In the above paragraph &quot;you&quot; refers to the &quot;user&quot; sending the transaction)<p>You really need to think about what you are doing, whether it is allocation, computation, etc. Minimize the number of opcodes and the number of expensive ones at that. To date the contracts are quite simple, although some really interesting things are in the works.