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
Answered
Can you use Solidity to write contracts for TON blockchain? (ton.org)

I found online mentions of projects using Solidity to build for TON instead of using FunC and Fift.

Is this really possible to do?

I already know Solidity and this will save me loads of time.

2
2
Posted 2 years ago
Tal Kol
359 × 3 Administrator
Votes Newest

Answers 2


TLDR

No. Not at this point.

Is this good idea?

The TON (ton.org) core team is against using Solidity. TON and its TVM are very different from Ethereum and its EVM. For example, you can't make synchronous calls to other contracts, you can only send an asynchronous message. You can read more about the other differences here. Using Solidity would force EVM state of mind on the TVM and miss its point. To use everything the TVM has to offer you need a new language - FunC.

So why did I hear about people using Solidity for TVM?

A long while ago, after Telegram shut off their GRAM project, there were two competing community forks that took the codebase and tried to run with it - NewTON and FreeTON. They both used "TON" branding. NewTON was faithful to the original Durov architecture, FreeTON was more open to changes and introduced Solidity. It's not exactly Solidity but a modification of Solidity to be able to somehow run on TVM. Many claim this is impossible to do in a secure way and introduces vulnerabilities.

At some point when the fork wars ended, NewTON managed to get ton.org and won the "TON" name. This is the TON you know now. FreeTON gave up on the "TON" name, rebranded to "Everscale" and moved to everscale.network. The mentions of Solidity under TON you see is old content from before the Everscale rebrand.

What will the future hold?

There are mentions in the official TON roadmap that in 2023+ there might be an EVM workchain. What does this mean exactly? The TON architecture is multi-blockchain meaning you run several chains in parallel. Currently TON has workchain 0 (for most of the stuff) and the masterchain. The core team can add in the future a new workschain that runs EVM instead of TVM. We don't know exactly how it will work, but this won't be the TVM, so all the insane scalability the TVM offers (billion user contracts) will not be there. It will be similar to Polygon or BNB Chain, just running on TON validators and data could be bridged between this chain and the other workchains.

4
4
Posted 2 years ago
Tal Kol
359 × 3 Administrator

This is a project we have discussed in the past.
In the past, free ton (everscale) has made a similar solidity compiler.
https://github.com/tonlabs/TON-Solidity-Compiler/blob/master/API.md#compiler-version

Seems to be deprecated internally, I forget why.

1
1
Posted 2 years ago