diff --git a/gitlab-pages/docs/advanced/entrypoints-contracts.md b/gitlab-pages/docs/advanced/entrypoints-contracts.md index eeb4fc0ae..3b269d3d2 100644 --- a/gitlab-pages/docs/advanced/entrypoints-contracts.md +++ b/gitlab-pages/docs/advanced/entrypoints-contracts.md @@ -62,7 +62,7 @@ Each entrypoint function receives two arguments: - `parameter` - this is the parameter received in the invocation operation - `storage` - this is the current (real) on-chain storage value -Storage can only be modified by running the smart contract entrypoint, which is responsible for returning a list of operations, and a new storage at the end of it's execution. +Storage can only be modified by running the smart contract entrypoint, which is responsible for returning a list of operations, and a new storage at the end of its execution. ## Built-in contract variables diff --git a/gitlab-pages/docs/advanced/first-contract.md b/gitlab-pages/docs/advanced/first-contract.md index 19861291f..244cae5ab 100644 --- a/gitlab-pages/docs/advanced/first-contract.md +++ b/gitlab-pages/docs/advanced/first-contract.md @@ -33,7 +33,7 @@ Output of the `dry-run` is the return value of our entrypoint function, we can s ## Building a counter contract -Our counter contract will store a single `int` as it's storage, and will accept an `action` variant in order to re-route our single `main` entrypoint into two entrypoints for `addition` and `subtraction`. +Our counter contract will store a single `int` in its storage, and will accept an `action` variant in order to re-route our single `main` entrypoint into two entrypoints for `addition` and `subtraction`. @@ -167,7 +167,7 @@ ligo compile-storage src/counter.ligo main 5 -In our case the LIGO storage value maps 1:1 to it's Michelson representation, however this will not be the case once the parameter is of a more complex data type, like a record. +In our case the LIGO storage value maps 1:1 to its Michelson representation, however this will not be the case once the parameter is of a more complex data type, like a record. ## Invoking a LIGO contract diff --git a/gitlab-pages/docs/advanced/timestamps-addresses.md b/gitlab-pages/docs/advanced/timestamps-addresses.md index e77ba76ee..6538059d7 100644 --- a/gitlab-pages/docs/advanced/timestamps-addresses.md +++ b/gitlab-pages/docs/advanced/timestamps-addresses.md @@ -9,7 +9,7 @@ Timestamps in LIGO, or in Michelson in general are available in smart contracts, ### Current time -You can obtain the current time using the built-in syntax specific expression, please be aware that it's up to the baker to set the current timestamp value. +You can obtain the current time using the built-in syntax specific expression, please be aware that it is up to the baker to set the current timestamp value. diff --git a/gitlab-pages/docs/contributors/getting-started.md b/gitlab-pages/docs/contributors/getting-started.md index 7b186dfad..5a98402d3 100644 --- a/gitlab-pages/docs/contributors/getting-started.md +++ b/gitlab-pages/docs/contributors/getting-started.md @@ -23,9 +23,9 @@ The first issues will most likely be: >Tests are **really** important, we don’t have lots of them, and mostly regression ones. This can’t be stressed enough. Some features are missing not because we can’t add them, but because we don’t know as no tests tell us they are missing. ## How -Issues will be added to Gitlab tagged with `On-boarding and Front-End` / `Middle-End` / `Back-End` / `Everything`. +Issues will be added to GitLab tagged with `On-boarding and Front-End` / `Middle-End` / `Back-End` / `Everything`. -If you try to tackle an issue and you have **any** problem, please tell us by creating a new Gitlab issue, contacting us on Riot, on Discord, or even by mail! +If you try to tackle an issue and you have **any** problem, please tell us by creating a new GitLab issue, contacting us on Riot, on Discord, or even by mail! Problems might include: * Installing the repository or the tools needed to work on it diff --git a/gitlab-pages/docs/contributors/ligo_test_guide.md b/gitlab-pages/docs/contributors/ligo_test_guide.md index 4726c7fe3..eea05d77d 100644 --- a/gitlab-pages/docs/contributors/ligo_test_guide.md +++ b/gitlab-pages/docs/contributors/ligo_test_guide.md @@ -111,4 +111,4 @@ What if we want to write a test of our own? If the test is in the integration te 1. Write a test contract which uses the new syntax or feature in [src/test/contracts](https://gitlab.com/ligolang/ligo/tree/dev/src/test/contracts). 2. Write an integration test in [src/test/integration_tests.ml](https://gitlab.com/ligolang/ligo/blob/dev/src/test/integration_tests.ml) in the vein of existing tests, make sure you add it to the test runner that is currently located at the bottom of the file. 3. Write the feature, assuming it doesn't already exist. Build the resulting version of LIGO without errors. -4. Run the test suite, see if your test(s) pass. If they do, you're probably done. If not it's time to go debugging. +4. Run the test suite, see if your test(s) pass. If they do, you're probably done. If not, it's time to go debugging. diff --git a/gitlab-pages/docs/contributors/origin.md b/gitlab-pages/docs/contributors/origin.md index 9c8df5900..6b20863a3 100644 --- a/gitlab-pages/docs/contributors/origin.md +++ b/gitlab-pages/docs/contributors/origin.md @@ -3,8 +3,8 @@ id: origin title: Origin --- -LIGO is a programming language that aims to provide developers with an uncomplicated and safe way to implement smart-contracts. Since it is being implemented for the Tezos blockchain LIGO compiles to Michelson—the native smart-contract language of Tezos. +LIGO is a programming language that aims to provide developers with an uncomplicated and safe way to implement smart contracts. Since it is being implemented for the Tezos blockchain LIGO compiles to Michelson—the native smart contract language of Tezos. -> Smart-contracts are programs that run within a blockchain network. +> Smart contracts are programs that run within a blockchain network. LIGO was meant to be a language for developing Marigold on top of a hacky framework called Meta-Michelson. However, due to the attention received by the Tezos community, LIGO is now a standalone language being developed to support Tezos directly. \ No newline at end of file diff --git a/gitlab-pages/docs/contributors/philosophy.md b/gitlab-pages/docs/contributors/philosophy.md index 0af6e606b..351a470e2 100644 --- a/gitlab-pages/docs/contributors/philosophy.md +++ b/gitlab-pages/docs/contributors/philosophy.md @@ -6,7 +6,7 @@ title: Philosophy To understand LIGO’s design choices it’s important to understand its philosophy. We have two main concerns in mind while building LIGO. ## Safety -Once a smart-contract is deployed, it will likely be impossible to change it. You must get it right on the first try, and LIGO should help as much as possible. There are multiple ways to make LIGO a safer language for smart-contracts. +Once a smart contract is deployed, it will likely be impossible to change it. You must get it right on the first try, and LIGO should help as much as possible. There are multiple ways to make LIGO a safer language for smart contracts. ### Automated Testing Automated Testing is the process through which a program runs another program, and checks that this other program behaves correctly. @@ -18,7 +18,7 @@ Static analysis is the process of having a program analyze another one. For instance, type systems are a kind of static analysis through which it is possible to find lots of bugs. LIGO already has a simple type system, and we plan to make it much stronger. ### Conciseness -Writing less code gives you less room to introduce errors. That's why LIGO encourages writing lean rather than chunky smart-contracts. +Writing less code gives you less room to introduce errors. That's why LIGO encourages writing lean rather than chunky smart contracts. --- diff --git a/gitlab-pages/docs/intro/installation.md b/gitlab-pages/docs/intro/installation.md index cd45491ab..05c7f72ee 100644 --- a/gitlab-pages/docs/intro/installation.md +++ b/gitlab-pages/docs/intro/installation.md @@ -15,7 +15,7 @@ executable (see below). This manages the Docker bits for you. * Use the Docker image available at [Docker Hub](https://hub.docker.com/r/ligolang/ligo). This lets you run multiple versions and keep your installation(s) self contained, but requires more familiarity with Docker. -Sources for the image can be found on [Gitlab](https://gitlab.com/ligolang/ligo/blob/master/docker/Dockerfile). +Sources for the image can be found on [GitLab](https://gitlab.com/ligolang/ligo/blob/master/docker/Dockerfile). If this is your first time using Docker, you probably want to set up a global LIGO executable as shown below. ### Setting up a globally available `ligo` executable diff --git a/gitlab-pages/docs/intro/what-and-why.md b/gitlab-pages/docs/intro/what-and-why.md index 4cddae9a7..e1588392d 100644 --- a/gitlab-pages/docs/intro/what-and-why.md +++ b/gitlab-pages/docs/intro/what-and-why.md @@ -64,7 +64,7 @@ Unfortunately (???), we **can't run Javascript on the Tezos blockchain** at the ## C-like smart contracts instead of Michelson -Let's take a look at a similar LIGO program. Don't worry if it's a little confusing at first; we'll explain all the syntax in the upcoming sections of the documentation. +Let's take a look at a similar LIGO program. Don't worry if it is a little confusing at first; we'll explain all the syntax in the upcoming sections of the documentation. @@ -133,7 +133,7 @@ The LIGO contract behaves exactly* like the Michelson contract we've saw first, ## Runnable code snippets & exercises Some of the sections in this documentation will include runnable code snippets and exercises. Sources for those are available at -the [LIGO Gitlab repository](https://gitlab.com/ligolang/ligo). +the [LIGO GitLab repository](https://gitlab.com/ligolang/ligo). ### Snippets For example **code snippets** for the *Types* subsection of this doc, can be found here: @@ -142,7 +142,7 @@ For example **code snippets** for the *Types* subsection of this doc, can be fou ### Exercises Solutions to exercises can be found e.g. here: `gitlab-pages/docs/language-basics/exercises/types/**/solutions/**` -### Running snippets / excercise solutions +### Running snippets / exercise solutions In certain cases it makes sense to be able to run/evaluate the given snippet or a solution, usually there'll be an example command which you can use, such as: ```shell diff --git a/gitlab-pages/docs/language-basics/boolean-if-else.md b/gitlab-pages/docs/language-basics/boolean-if-else.md index d57e6fa99..4db3cf15e 100644 --- a/gitlab-pages/docs/language-basics/boolean-if-else.md +++ b/gitlab-pages/docs/language-basics/boolean-if-else.md @@ -141,7 +141,7 @@ const min_age: nat = 16n; (* This function is really obnoxious, but it showcases - how the if statement and it's syntax can be used. + how the if statement and its syntax can be used. Normally, you'd use `with (age > min_age)` instead. *) @@ -168,7 +168,7 @@ let min_age: nat = 16n (** This function is really obnoxious, but it showcases - how the if statement and it's syntax can be used. + how the if statement and its syntax can be used. Normally, you'd use `with (age > min_age)` instead. @@ -183,7 +183,7 @@ let min_age: nat = 16n; (** This function is really obnoxious, but it showcases - how the if statement and it's syntax can be used. + how the if statement and its syntax can be used. Normally, you'd use `with (age > min_age)` instead. diff --git a/gitlab-pages/docs/language-basics/functions.md b/gitlab-pages/docs/language-basics/functions.md index 6b5739205..c21fb2dfd 100644 --- a/gitlab-pages/docs/language-basics/functions.md +++ b/gitlab-pages/docs/language-basics/functions.md @@ -71,7 +71,7 @@ argument until every parameter is filled. This is useful because it means that CameLIGO can support [partial application](https://en.wikipedia.org/wiki/Partial_application). Currying is however *not* the preferred way to pass function arguments in CameLIGO. -While this approach is faithful to the original OCaml, it's costlier in Michelson +While this approach is faithful to the original OCaml, it is costlier in Michelson than naive function execution accepting multiple arguments. Instead for most functions with more than one parameter we should place the arguments in a [tuple](language-basics/sets-lists-touples.md) and pass the tuple in as a single @@ -111,7 +111,7 @@ value. Functions without a name, also known as anonymous functions are useful in cases when you want to pass the function as an argument or assign it to a key in a record/map. -Here's how to define an anonymous function assigned to a variable `increment`, with it's appropriate function type signature. +Here's how to define an anonymous function assigned to a variable `increment`, with its appropriate function type signature. ```pascaligo group=c diff --git a/gitlab-pages/docs/language-basics/tezos-specific.md b/gitlab-pages/docs/language-basics/tezos-specific.md index 2e40d786a..55b7be6af 100644 --- a/gitlab-pages/docs/language-basics/tezos-specific.md +++ b/gitlab-pages/docs/language-basics/tezos-specific.md @@ -42,7 +42,7 @@ let id_string = (p: string) : option(string) => { ## Hashing Keys -It's often desirable to hash a public key. In Michelson, certain data structures +It is often desirable to hash a public key. In Michelson, certain data structures such as maps will not allow the use of the `key` type. Even if this weren't the case hashes are much smaller than keys, and storage on blockchains comes at a cost premium. You can hash keys with the `key_hash` type and associated built in function. diff --git a/gitlab-pages/docs/tutorials/get-started/tezos-taco-shop-smart-contract.md b/gitlab-pages/docs/tutorials/get-started/tezos-taco-shop-smart-contract.md index e67c79506..9d2bf5ab2 100644 --- a/gitlab-pages/docs/tutorials/get-started/tezos-taco-shop-smart-contract.md +++ b/gitlab-pages/docs/tutorials/get-started/tezos-taco-shop-smart-contract.md @@ -1,13 +1,13 @@ --- id: tezos-taco-shop-smart-contract -title: Taco shop smart-contract +title: Taco shop smart contract ---
-Meet **Pedro**, our *artisan taco chef* who has decided to open a Taco shop on the Tezos blockchain, using a smart-contract. He sells two different kinds of tacos, the **el clásico** and the **especial del chef**. +Meet **Pedro**, our *artisan taco chef* who has decided to open a Taco shop on the Tezos blockchain, using a smart contract. He sells two different kinds of tacos, the **el clásico** and the **especial del chef**. -To help Pedro open his dream taco shop, we'll implement a smart-contract, that will manage supply, pricing & sales of his tacos to the consumers. +To help Pedro open his dream taco shop, we'll implement a smart contract, that will manage supply, pricing & sales of his tacos to the consumers.
@@ -68,7 +68,7 @@ The best way to install the dockerized LIGO is as a **global executable** throug > From now on we'll get a bit more technical. If you run into something we have not covered yet - please try checking out the [LIGO cheat sheet](api/cheat-sheet.md) for some extra tips & tricks. -To begin implementing our smart contract, we need an entry point. We'll call it `main` and it'll specify our contract's storage (`int`) and input parameter (`int`). Of course this is not the final storage/parameter of our contract, but it's something to get us started and test our LIGO installation as well. +To begin implementing our smart contract, we need an entry point. We'll call it `main` and it'll specify our contract's storage (`int`) and input parameter (`int`). Of course this is not the final storage/parameter of our contract, but it is something to get us started and test our LIGO installation as well. ### `taco-shop.ligo` ```pascaligo group=a @@ -138,7 +138,7 @@ end type taco_shop_storage is map(nat, taco_supply); ``` -Next step is to update the `main` entry point to include `taco_shop_storage` as its storage - while doing that let's set the `parameter` to `unit` as well to clear things up. +Next step is to update the `main` entry point to include `taco_shop_storage` in its storage - while doing that let's set the `parameter` to `unit` as well to clear things up. **`taco-shop.ligo`** ```pascaligo group=b+ @@ -154,7 +154,7 @@ function main (const parameter: unit ; const taco_shop_storage : taco_shop_stora ### Populating our storage in a dry-run -When dry-running a contract, it's crucial to provide a correct initial storage value - in our case the storage is type-checked as `taco_shop_storage`. Reflecting [Pedro's daily offer](tutorials/get-started/tezos-taco-shop-smart-contract.md#daily-offer), our storage's value will be defined as following: +When dry-running a contract, it is crucial to provide a correct initial storage value - in our case the storage is type-checked as `taco_shop_storage`. Reflecting [Pedro's daily offer](tutorials/get-started/tezos-taco-shop-smart-contract.md#daily-offer), our storage's value will be defined as following: **Storage value** ```zsh diff --git a/gitlab-pages/website/blog/2019-06-13-public-launch-of-ligo.md b/gitlab-pages/website/blog/2019-06-13-public-launch-of-ligo.md index fb6373d46..e86098de1 100644 --- a/gitlab-pages/website/blog/2019-06-13-public-launch-of-ligo.md +++ b/gitlab-pages/website/blog/2019-06-13-public-launch-of-ligo.md @@ -8,7 +8,7 @@ author: Gabriel Alfour --- ## A Refresher: What is LIGO? -LIGO is a statically typed high-level smart-contract language that compiles down to Michelson. It seeks to be easy to use, extensible and safe. +LIGO is a statically typed high-level smart contract language that compiles down to Michelson. It seeks to be easy to use, extensible and safe. The core language is being developed by The Marigold Project. George Dupéron and Christian Rinderknecht of Nomadic Labs help on the core language, and tooling for LIGO is being developed by Stove Labs (Granary, docs and infrastructure) and Brice Aldrich (syntax highlighting). @@ -95,7 +95,7 @@ We are looking to develop a Super Type System that has the following features: The current version explicitly excludes non-essential features which can produce unexpected explosions in gas costs. To alleviate this constraint, we plan to integrate gas benchmarks on all top-level declarations with some fuzzing. This will allow developers and users to estimate the cost of their contracts in real time. ## Getting Started and Contact -Come visit [our website](https://ligolang.org)! You can also join our [Discord](https://discord.gg/9rhYaEt), Riot (*#ligo-public:matrix.org*) or Telegram Chat (Ligo Public channel). +Come visit [our website](https://ligolang.org)! You can also join our [Discord](https://discord.gg/9rhYaEt), Riot (*#ligo-public:matrix.org*) or [Telegram Chat](https://t.me/LigoLang). diff --git a/gitlab-pages/website/blog/2019-07-11-ligo-update.md b/gitlab-pages/website/blog/2019-07-11-ligo-update.md index 1782b7731..0715c9ff1 100644 --- a/gitlab-pages/website/blog/2019-07-11-ligo-update.md +++ b/gitlab-pages/website/blog/2019-07-11-ligo-update.md @@ -7,7 +7,7 @@ author: Gabriel Alfour --- -It's been a few weeks since our last update. Since then, we've onboarded new collaborators to both LIGO and Marigold, rewritten much of the codebase, and we've begun some exciting new projects. Let's tell you all about it! +It has been a few weeks since our last update. Since then, we've onboarded new collaborators to both LIGO and Marigold, rewritten much of the codebase, and we've begun some exciting new projects. Let's tell you all about it! # LIGO @@ -41,7 +41,7 @@ The most brittle part of our code base is about to become its strongest part. We Concretely: - Running LIGO-in-Browser will become much easier. Instead of having to dry-run it remotely or to rewrite a Michelson interpreter, we'll be able to **directly interpret** the LIGO program. -- It will be possible to prove the properties of Smart-Contracts written in LIGO directly, instead of having to prove the Michelson they produce. +- It will be possible to prove the properties of smart contracts written in LIGO directly, instead of having to prove the Michelson they produce. - Fewer tests will ned to be written and testing will instead focus mostly on the developer-facing layers of the compiler (i.e. syntax, typing), rather than on the actual compiling part. # Marigold @@ -56,4 +56,4 @@ It is thus hard for newcomers (even CS researchers!) to dive into Plasma in a co # Contact -If you have any question, feel free to visit [our website](ligolang.org) and to contact us :) +If you have any question, feel free to visit [our website](https://ligolang.org) and to contact us :) diff --git a/gitlab-pages/website/pages/en/contact.js b/gitlab-pages/website/pages/en/contact.js index 3a41f6cd1..280552588 100644 --- a/gitlab-pages/website/pages/en/contact.js +++ b/gitlab-pages/website/pages/en/contact.js @@ -47,8 +47,8 @@ const TEAM = [ const COMMUNICATION_CHANNELS = [ { - link: 'https://discord.gg/9rhYaEt', - icon: 'img/discord.svg', + link: 'https://t.me/LigoLang', + icon: 'img/telegram.svg', description: "We're hear to help. Ask us anything" }, { diff --git a/gitlab-pages/website/pages/en/index.js b/gitlab-pages/website/pages/en/index.js index a9bc41277..62a8879d3 100644 --- a/gitlab-pages/website/pages/en/index.js +++ b/gitlab-pages/website/pages/en/index.js @@ -77,7 +77,7 @@ module.exports = props => {
-

A friendly smart-contract language for Tezos

+

A friendly smart contract language for Tezos

Michelson was never so easy

diff --git a/gitlab-pages/website/pages/en/versions.js b/gitlab-pages/website/pages/en/versions.js index 4ea4a4f4f..f82441699 100644 --- a/gitlab-pages/website/pages/en/versions.js +++ b/gitlab-pages/website/pages/en/versions.js @@ -102,7 +102,7 @@ function Versions(props) {

You can find past versions of this project on{' '} - Gitlab. + GitLab.

diff --git a/gitlab-pages/website/siteConfig.js b/gitlab-pages/website/siteConfig.js index c42f07a31..e7162d6af 100644 --- a/gitlab-pages/website/siteConfig.js +++ b/gitlab-pages/website/siteConfig.js @@ -4,7 +4,7 @@ let reasonHighlightJs = require('reason-highlightjs'); const siteConfig = { title: 'LIGO', // Title for your website. - tagline: 'LIGO is a friendly smart-contract language for Tezos', + tagline: 'LIGO is a friendly smart contract language for Tezos', taglineSub: 'Michelson was never so easy', url: 'https://ligolang.org', // Your website URL baseUrl: '/', // Base URL for your project */ @@ -29,7 +29,7 @@ const siteConfig = { label: 'Tutorials' }, { blog: true, label: 'Blog' }, - // TODO: { href: "/odoc", label: "Api" }, + // TODO: { href: "/odoc", label: "API" }, // { doc: 'contributors/origin', label: 'Contribute' }, { href: '/contact', label: 'Ask Questions' }, { search: true } @@ -40,14 +40,24 @@ const siteConfig = { { doc: 'intro/installation', label: 'Install' }, { doc: 'api/cli-commands', label: 'CLI Commands' }, { doc: 'contributors/origin', label: 'Contribute' }, - { href: '/odoc', label: 'Api Documentation' } + { href: '/odoc', label: 'API Documentation' } ], community: [ + { + href: 'https://forum.tezosagora.org/tag/ligo', + label: 'Tezos Agora Forum', + blankTarget: true + }, { href: 'https://tezos.stackexchange.com/questions/tagged/ligo', label: 'Tezos Stack Exchange', blankTarget: true }, + { + href: 'https://t.me/LigoLang', + label: 'Telegram', + blankTarget: true + }, { href: 'https://discord.gg/9rhYaEt', label: 'Discord', @@ -59,7 +69,7 @@ const siteConfig = { doc: 'tutorials/get-started/tezos-taco-shop-smart-contract', label: 'Tutorials' }, - { href: repoUrl, label: 'Gitlab' } + { href: repoUrl, label: 'GitLab' } ] }, diff --git a/gitlab-pages/website/static/img/telegram.svg b/gitlab-pages/website/static/img/telegram.svg new file mode 100644 index 000000000..cd4c3a0de --- /dev/null +++ b/gitlab-pages/website/static/img/telegram.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/gitlab-pages/website/versioned_docs/version-next/contributors/origin.md b/gitlab-pages/website/versioned_docs/version-next/contributors/origin.md index 3b3820ef0..72b6002ac 100644 --- a/gitlab-pages/website/versioned_docs/version-next/contributors/origin.md +++ b/gitlab-pages/website/versioned_docs/version-next/contributors/origin.md @@ -4,8 +4,8 @@ title: Origin original_id: origin --- -LIGO is a programming language that aims to provide developers with an uncomplicated and safer way to implement smart-contracts. LIGO is currently being implemented for the Tezos blockchain and as a result, it compiles down to Michelson - the native smart-contract language of Tezos. +LIGO is a programming language that aims to provide developers with an uncomplicated and safe way to implement smart contracts. Since it is being implemented for the Tezos blockchain LIGO compiles to Michelson—the native smart contract language of Tezos. -> Smart-contracts are programs that run within a blockchain network. +> Smart contracts are programs that run within a blockchain network. -LIGO was initially meant to be a language for developing Marigold, on top of a hacky framework called Meta-Michelson. However, due to the attention received by the Tezos community, a decision has been put into action to develop LIGO as a standalone language that will support Tezos directly as well. \ No newline at end of file +LIGO was meant to be a language for developing Marigold on top of a hacky framework called Meta-Michelson. However, due to the attention received by the Tezos community, LIGO is now a standalone language being developed to support Tezos directly. \ No newline at end of file diff --git a/gitlab-pages/website/versioned_docs/version-next/contributors/philosophy.md b/gitlab-pages/website/versioned_docs/version-next/contributors/philosophy.md index 349c6d131..99c4d7c00 100644 --- a/gitlab-pages/website/versioned_docs/version-next/contributors/philosophy.md +++ b/gitlab-pages/website/versioned_docs/version-next/contributors/philosophy.md @@ -4,23 +4,22 @@ title: Philosophy original_id: philosophy --- -To understand LIGO’s design choices, it’s important to get its philosophy. There are two main concerns that we have in mind when building LIGO. - - +To understand LIGO’s design choices it’s important to understand its philosophy. We have two main concerns in mind while building LIGO. ## Safety -Once a smart-contract is deployed, it will likely be impossible to change it. You must get it right on the first try, and LIGO should help as much as possible. There are multiple ways to make LIGO a safer language for smart-contracts. +Once a smart contract is deployed, it will likely be impossible to change it. You must get it right on the first try, and LIGO should help as much as possible. There are multiple ways to make LIGO a safer language for smart contracts. ### Automated Testing -Automated Testing is the process through which a program will run some other program, and check that this other program behaves correctly. +Automated Testing is the process through which a program runs another program, and checks that this other program behaves correctly. + There already is a testing library for LIGO programs written in OCaml that is used to test LIGO itself. Making it accessible to users will greatly improve safety. A way to do so would be to make it accessible from within LIGO. ### Static Analysis Static analysis is the process of having a program analyze another one. -For instance, type systems are a kind of static analysis through which it is possible to find lots of bugs. There is already a fairly simple type system in LIGO, and we plan to make it much stronger. +For instance, type systems are a kind of static analysis through which it is possible to find lots of bugs. LIGO already has a simple type system, and we plan to make it much stronger. ### Conciseness -Writing less code gives you less room to introduce errors and that's why LIGO encourages writing lean rather than chunky smart-contracts. +Writing less code gives you less room to introduce errors. That's why LIGO encourages writing lean rather than chunky smart contracts. --- diff --git a/gitlab-pages/website/versioned_sidebars/version-next-sidebars.json b/gitlab-pages/website/versioned_sidebars/version-next-sidebars.json index e74ff6d36..07fc287dd 100644 --- a/gitlab-pages/website/versioned_sidebars/version-next-sidebars.json +++ b/gitlab-pages/website/versioned_sidebars/version-next-sidebars.json @@ -6,15 +6,27 @@ "version-next-intro/editor-support" ], "Language Basics": [ - "version-next-language-basics/cheat-sheet", "version-next-language-basics/types", - "version-next-language-basics/variables", + "version-next-language-basics/constants-and-variables", + "version-next-language-basics/math-numbers-tez", + "version-next-language-basics/strings", "version-next-language-basics/functions", - "version-next-language-basics/entrypoints", - "version-next-language-basics/operators" + "version-next-language-basics/boolean-if-else", + "version-next-language-basics/loops", + "version-next-language-basics/unit-option-pattern-matching", + "version-next-language-basics/maps-records", + "version-next-language-basics/sets-lists-tuples", + "version-next-language-basics/tezos-specific" + ], + "Advanced": [ + "version-next-advanced/timestamps-addresses", + "version-next-advanced/entrypoints-contracts", + "version-next-advanced/include", + "version-next-advanced/first-contract" ], "API": [ - "version-next-api-cli-commands" + "version-next-api/cli-commands", + "version-next-api/cheat-sheet" ] }, "version-next-contributors-docs": { diff --git a/scripts/distribution/generic/parameters.sh b/scripts/distribution/generic/parameters.sh index 436b48bf0..3899711d8 100644 --- a/scripts/distribution/generic/parameters.sh +++ b/scripts/distribution/generic/parameters.sh @@ -1,4 +1,4 @@ -# This script accepts three arguments, os family, os and it's version, +# This script accepts three arguments, os family, os and its version, # which are subsequently used to fetch the respective docker # image from the ocaml/infrastructure project. # diff --git a/vendors/ligo-utils/tezos-protocol-alpha/raw_context.ml b/vendors/ligo-utils/tezos-protocol-alpha/raw_context.ml index c887e319b..87b3615d0 100644 --- a/vendors/ligo-utils/tezos-protocol-alpha/raw_context.ml +++ b/vendors/ligo-utils/tezos-protocol-alpha/raw_context.ml @@ -330,7 +330,7 @@ let storage_error err = fail (Storage_error err) (* Initialization *********************************************************) (* This key should always be populated for every version of the - protocol. It's absence meaning that the context is empty. *) + protocol. Its absence meaning that the context is empty. *) let version_key = ["version"] let version_value = "babylon_005"