What is Tooling & Languages?
Tooling refers to programs and techniques aimed at supporting blockchain and smart contract development and their use. Language-related research includes better abstractions for blockchain development, new smart contract languages, code optimizers, virtual machines, and static analyzers.
What are some practical applications today?
Tools and languages for developers have a direct practical use: easing development flow. This could be given by better IDEs, debuggers, frameworks, bug-finding tools, higher level languages, one-click testing environments, etc. For end-users, practical applications include UIs providing frictionless interactions with blockchain networks and associated components—e.g., wallets, accounts, smart contracts, etc.