According to the list of commands and queries implemented in iroha current design of commands and queries is not good, because:
- It lacks low level commands, which allow to build arbitrary programs, required for proper smart contracts implementation. In other words, the system has only high-level commands such as transfer asset, therefore is limited in features.
- It is hard to extend running system with new commands and queries, because iroha has to be recompiled after addition of new features.
- It is hard to add new commands or queries to the source code, because addition requires changes in 7+ different parts of iroha.