Skip to content
This repository was archived by the owner on Jan 22, 2025. It is now read-only.

The Language

SjVer edited this page Mar 26, 2022 · 9 revisions

4 – The Language

4.1 – Lexical Conventions

Evi is free-from, meaning that spaces and comments are ignored, except in strings, in characters and as delimiters between tokens. Spaces are recognized as whitespaces, carriage returns and tabs. Only ASCII characters are accepted.

Identifiers consist of a series of alphanumeric characters or underscores, not starting with a digit. Evi has no alphanumerical keywords, so no identifiers are reserved by the compiler. Next to that, Evi is case-sensitive. meaning that mystring and myString are two different identifiers.

The following characters are reserved for keysymbols, operators and other tokens:

  (  )  {  }  [  ] 
  +  -  *  /  !  ,
  @  %  =  ~  ;  $

4.2 – Variables And Parameters

4.3 – Statements

4.3.1 – Blocks

4.3.2 – Assignment

4.3.3 – Control Flow

4.3.4 – Loops

4.3.5 – Variable Declarations

4.4 – Expressions

4.4.1 – Arithmetic Operators

4.4.2 – Bitwise Operators

4.4.3 – Relational Operators

4.4.5 – Logical Operators

4.4.6 – The SizeOf Operator

4.4.7 – The Casting Operator

4.4.8 – Function Calls

4.4.9 – Precedence

4.5 – Visibility Rules



Next: 5 – The Standard Library

Contents

Home

1 – Introduction

2 – Hello World

3 – Basic Concepts

  3.1 – Types And Values

  3.2 – Type Modifiers

  3.3 – Arrays And Pointers

4 – The Language

  4.1 – Lexical Conventions

  4.2 – Variables And Parameters

  4.3 – Statements

    4.3.1 – Blocks

    4.3.2 – Assignment

    4.3.3 – Control Flow

    4.3.4 – Loops

    4.3.5 – Variable Declarations

  4.4 – Expressions

    4.4.1 – Arithmetic Operators

    4.4.2 – Bitwise Operators

    4.4.3 – Relational Operators

    4.4.5 – Logical Operators

    4.4.6 – The SizeOf Operator

    4.4.7 – The Casting Operator

    4.4.8 – Function Calls

    4.4.9 – Precedence

  4.5 – Visibility Rules

5 – The Standard Library

  5.1 – The Std Library

    5.1.1 – Input And Output

    5.1.2 – Mathematics

    5.1.3 – Memory Management

6 – The Preprocessor

  6.1 – Including Files

  6.2 – Setting Flags

  6.3 – Conditional Directives

  6.4 – Macros

  6.5 – Pragma Directives

  6.6 – Miscellaneous Directives

7 – The Compiler

  7.1 – Installation

  7.2 – Compilation

  7.3 – Execution

8 – The Complete Syntax

9 – Miscellaneous Information

  9.1 – Coding Conventions

    9.1.1 – Naming Conventions

    9.1.2 – Commenting Conventions

    9.1.3 – Miscellaneous Conventions

  9.2 – Credits

  9.3 – License

Clone this wiki locally