From 8100912dfc36a412e4e6bfc9db883936e90c0dcc Mon Sep 17 00:00:00 2001 From: radrow Date: Mon, 17 May 2021 19:07:40 +0200 Subject: [PATCH] TOC --- docs/sophia.md | 122 ++++++++++++++++++++++++------------------------- 1 file changed, 61 insertions(+), 61 deletions(-) diff --git a/docs/sophia.md b/docs/sophia.md index f3d8363..ff0703f 100644 --- a/docs/sophia.md +++ b/docs/sophia.md @@ -1,65 +1,6 @@ -**Table of Contents** - -- [-](#-) -- [Language Features](#language-features) - - [Contracts](#contracts) - - [Calling other contracts](#calling-other-contracts) - - [Protected contract calls](#protected-contract-calls) - - [Mutable state](#mutable-state) - - [Stateful functions](#stateful-functions) - - [Payable](#payable) - - [Payable contracts](#payable-contracts) - - [Payable entrypoints](#payable-entrypoints) - - [Namespaces](#namespaces) - - [Splitting code over multiple files](#splitting-code-over-multiple-files) - - [Standard library](#standard-library) - - [Types](#types) - - [Literals](#literals) - - [Arithmetic](#arithmetic) - - [Bit fields](#bit-fields) - - [Type aliases](#type-aliases) - - [Algebraic data types](#algebraic-data-types) - - [Lists](#lists) - - [Maps and records](#maps-and-records) - - [Constructing maps and records](#constructing-maps-and-records) - - [Accessing values](#accessing-values) - - [Updating a value](#updating-a-value) - - [Map implementation](#map-implementation) - - [Strings](#strings) - - [Chars](#chars) - - [Byte arrays](#byte-arrays) - - [Cryptographic builins](#cryptographic-builins) - - [AEVM note](#aevm-note) - - [Authorization interface](#authorization-interface) - - [Oracle interface](#oracle-interface) - - [Example](#example) - - [Sanity checks](#sanity-checks) - - [AENS interface](#aens-interface) - - [Example](#example-1) - - [Events](#events) - - [Argument order](#argument-order) - - [Compiler pragmas](#compiler-pragmas) - - [Exceptions](#exceptions) - - [Syntax](#syntax) - - [Lexical syntax](#lexical-syntax) - - [Comments](#comments) - - [Keywords](#keywords) - - [Tokens](#tokens) - - [Layout blocks](#layout-blocks) - - [Notation](#notation) - - [Declarations](#declarations) - - [Types](#types-1) - - [Statements](#statements) - - [Expressions](#expressions) - - [Operators types](#operators-types) - - [Operator precendences](#operator-precendences) - - [Examples](#examples) - - [Delegation signature](#delegation-signature) - - -## The Sophia Language +# The Sophia Language An Æternity BlockChain Language The Sophia is a language in the ML family. It is strongly typed and has @@ -69,6 +10,65 @@ Sophia is customized for smart contracts, which can be published to a blockchain (the Æternity BlockChain). Thus some features of conventional languages, such as floating point arithmetic, are not present in Sophia, and some blockchain specific primitives, constructions and types have been added. + +**Table of Contents** + + - [Language Features](#language-features) + - [Contracts](#contracts) + - [Calling other contracts](#calling-other-contracts) + - [Protected contract calls](#protected-contract-calls) + - [Contract factories and child contracts](#contract-factories-and-child-contracts) + - [Mutable state](#mutable-state) + - [Stateful functions](#stateful-functions) + - [Payable](#payable) + - [Payable contracts](#payable-contracts) + - [Payable entrypoints](#payable-entrypoints) + - [Namespaces](#namespaces) + - [Splitting code over multiple files](#splitting-code-over-multiple-files) + - [Standard library](#standard-library) + - [Types](#types) + - [Literals](#literals) + - [Arithmetic](#arithmetic) + - [Bit fields](#bit-fields) + - [Type aliases](#type-aliases) + - [Algebraic data types](#algebraic-data-types) + - [Lists](#lists) + - [Maps and records](#maps-and-records) + - [Constructing maps and records](#constructing-maps-and-records) + - [Accessing values](#accessing-values) + - [Updating a value](#updating-a-value) + - [Map implementation](#map-implementation) + - [Strings](#strings) + - [Chars](#chars) + - [Byte arrays](#byte-arrays) + - [Cryptographic builins](#cryptographic-builins) + - [AEVM note](#aevm-note) + - [Authorization interface](#authorization-interface) + - [Oracle interface](#oracle-interface) + - [Example](#example) + - [Sanity checks](#sanity-checks) + - [AENS interface](#aens-interface) + - [Example](#example) + - [Events](#events) + - [Argument order](#argument-order) + - [Compiler pragmas](#compiler-pragmas) + - [Exceptions](#exceptions) + - [Syntax](#syntax) + - [Lexical syntax](#lexical-syntax) + - [Comments](#comments) + - [Keywords](#keywords) + - [Tokens](#tokens) + - [Layout blocks](#layout-blocks) + - [Notation](#notation) + - [Declarations](#declarations) + - [Types](#types) + - [Statements](#statements) + - [Expressions](#expressions) + - [Operators types](#operators-types) + - [Operator precendences](#operator-precendences) + - [Examples](#examples) + - [Delegation signature](#delegation-signature) + ## Language Features ### Contracts @@ -171,7 +171,7 @@ However, note that errors that would normally consume all the gas in the transaction still only uses up the gas spent running the contract. -### Contract factories and child contracts +#### Contract factories and child contracts Since the version 5.0.0 Sophia supports deploying contracts by other contracts. This can be done in two ways: