Examples: query, "exact match", wildcard*, wild?ard, wild*rd
Fuzzy search: cake~ (finds cakes, bake)
Term boost: "red velvet"^4, chocolate^2
Field grouping: tags:(+work -"fun-stuff")
Escape special characters +-&|!(){}[]^"~*?:\ - e.g. \+ \* \!
Range search: properties.timestamp:[1587729413488 TO *] (inclusive), properties.title:{A TO Z}(excluding A and Z)
Combinations: chocolate AND vanilla, chocolate OR vanilla, (chocolate OR vanilla) NOT "vanilla pudding"
Field search: properties.title:"The Title" AND text
Should we be concerned about Memory usage when we code in FunC or Tact?

In the Solidity programming language on the EVM, we need to be mindful of gas usage for each line of code.

For now, the difference in gas cost in TON is still not that significant.

My question is whether we have any memory limitations in the TVM?

Posted 10 months ago
Edited 10 months ago
Votes Newest


In TVM, memory limitations exist but may not be as strict as in the EVM. This is because the TVM is designed to be more efficient and flexible in terms of resource management. However, developers should still be mindful of resource usage when creating smart contracts for the Free TON platform.

Some considerations for memory usage in TVM:

Memory management: The TVM uses a more sophisticated memory model than the EVM, allowing for more efficient memory management. However, this doesn't mean developers can ignore memory usage, as excessive memory consumption can still lead to performance issues or higher execution costs.

Gas costs: Similar to the EVM, the TVM also uses a gas model for smart contract execution, where gas represents the computational cost of executing operations. While gas costs in TON may not be as significant as in Ethereum, it's still important to optimize your smart contract code to minimize gas consumption and execution costs.

Performance and scalability: Writing efficient code that optimizes memory usage is crucial to ensuring good performance and scalability of your smart contracts on the Free TON network. This helps maintain the overall health of the network and allows it to support a larger number of smart contracts and transactions.

Data storage: In the TON network, smart contracts use persistent storage called "Persistent Data Storage" (PDS) to store their state. Developers should be mindful of how much data they store in PDS, as larger storage requirements can lead to higher costs and potential performance issues.

In summary, while the TON Virtual Machine may provide more flexibility and efficiency in terms of memory usage compared to the Ethereum Virtual Machine, it's still important for developers to be mindful of memory limitations and write efficient code to ensure optimal performance, scalability, and cost-effectiveness of their smart contracts.

Posted 10 months ago
1 Answer
10 months ago
10 months ago