Skip to content

fermarsan/aixt-project-old

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Aixt Project

The aim of this project is to provide a tool for programing microcontrollers in a modern language but allowing compiling code even in low-resource devices. This project is composed by 3 main componentes:

  • The Aixt programing language based on the V language syntax.
  • The Aixt to C Transpiler, which translate de Aixt source code to C, for the expecific C compiler of each microcontroller.
  • The Aixt API, which makes the programming easy by standardizing the setup and I/O functions.

Aixt Language

Aixt programing language implements a subset of V language. The main difference is all of the variables in Aixt are mutable by default.

Example with main function

import machine { pin }

fn main() {

    pin(B0,OUT)     
    pin_high(B0)    //turn ON the PORTB0
}

Example without main function

/*blinking led example (XC16 compiler)
working on the PORTB pin 0 of a PIC24FJ microcontroller*/

import machine { pin }
import time { sleep_ms }

pin(B0,OUT)

for {   //infinite loop
    pin_high(B0)
    sleep_ms(500)
    pin_low(B0)
    sleep_ms(500)
}

Aixt Transpiler

The transpiler is written in Python using SLY module as Lexer and Parser.

Aixt API

The Aixt API is inspired on Micropython, Arduino and Tinygo projects.

Project's name

The project's name is inspired in Veasel, the Weasel pet of V Language, and as tribute to Ticuna people who live in the Amazonic forest in the borders of Colombia, Brasil and Peru. Weasels are mustelids just like otters, so the name Aixt comes from Aixtü, which is a way to say otter in Ticuna language.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published