xoclang
v0.0.2-devpr
Published
Xoc, the programming language of the future.
Downloads
1
Readme
The Xoc Programming Language
Xoc is our vision for a consistent language that can handle basic tasks while implementing a human-readable interface and syntax. While creating projects, we had a problem: some languages had an inconsistent and hard to understand syntax. That's why we created Xoc, a programming language that haves a clean syntax and surfaces a consistent design.
We can assure than Xoc is extremely powerful, and soon it will be capable to create the things you love.
Installation
Xoc compiler is included in an NPM module, as languages like TypeScript. You can install Xoc by executing:
$ npm install -g xoclang
Compiling Xoc files
Xoc now compiles by a CLI, so you have to execute the xoc
command to let your code work.
For example, if you have a main.xoc
file in your root directory, you should run:
$ xoc main.xoc
Xoc will return you errors on-board, so you can know what is happening with your code.
Learning Xoc
Here we will explain some Xoc basics and how to make them.
My first hello world
NOTE: As Xoc is a strict-typed language, you should specify the type of your content.
cout('Hello World!') String
Variables and constants
Defining a variable:
var String hi: 'Hi'
let String bye: 'Bye'
Defining a constant:
const String goodMorning: 'Good morning!'
Assigning to variables:
let String response: 'Yes'
const String anotherResponse: 'Maybe'
assignto response: 'No' // works
assignto anotherResponse: 'No' // don't works, assignment to a constant
Conditionals
Supported operators and their equivalents:
- equals:
==
- sameType:
===
- moreThan:
>
- lessThan:
<
- moreEqual:
>=
- lessEqual:
<=
- and:
&&
- or:
||
Conditional syntax:
var String yes: 'Yes'
var String anotherYes: 'Yes'
var String oneMoreYes: 'Yes'
if yes equals anotherYes (testCond):
cout('It matches :D') String
end conditional (testCond)
// with more options
if yes equals anotherYes or yes equals oneMoreYes (secondCond):
cout('It matches x2 :D')
end conditional (secondCond)
Functions
All functions need to be declared with pub
, prot
or priv
at the first line, and to be closed at the end.
pub fn sayHelloWorld():
cout('Hello World!') String
end fn (sayHelloWorld)
And you can call the function anywhere:
sayHelloWorld()