You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It's often nice to quickly check the outputs, possible errors, boundaries or gas usage of Tact code without writing lots of Jest tests, which slow down the speed of such exploration (IMO). There, https://ide.nujan.io provides a nice experience — contract receivers and get-methods are readily available to interact with, see:
A symbolic panel or set of buttons to interact with: static functions, receivers, externals, bounced, and get-methods of the contract(s).
OR
An extension to the Tact language server, which would allow for semi-arbitrary code execution of given parts of code (get-methods, receivers, etc.) as if Tact is a LISP, i.e. almost have our own REPL.
Suggested solution ideas
We may use @tact-lang/compiler API or tact-lang/tree-sitter-tact to quickly parse necessary parts of the file, then make tiny test wrappers for each to call using Jest & individual test names.
The text was updated successfully, but these errors were encountered:
Exploratory programming is indeed a really nice technique! I love it myself, e.g. all kinds of REPLs and tools like that and would very much like it to be integrated with the Tact VS Code plugin.
@anton-trunov Yes! REPL is the ultimate thing I was looking for — this proposal can be simplified to just allow the internal LSP of this VSCode plugin semi-arbitrary code execution of given parts of code (get-methods, receivers, etc.) as if Tact is a LISP!
And this can be done using the same suggested ideas, via tree-sitter+Jest combo or @tact-lang/compiler+Jest combo.
UPD: added this as an alternative to making some special button panel, like in Nujan.
Context
It's often nice to quickly check the outputs, possible errors, boundaries or gas usage of Tact code without writing lots of Jest tests, which slow down the speed of such exploration (IMO). There, https://ide.nujan.io provides a nice experience — contract receivers and get-methods are readily available to interact with, see:
Proposal
OR
Suggested solution ideas
We may use
@tact-lang/compiler
API or tact-lang/tree-sitter-tact to quickly parse necessary parts of the file, then make tiny test wrappers for each to call using Jest & individual test names.The text was updated successfully, but these errors were encountered: