Simple, safe and compiled programming language.

Overview

The X Programming Language

Simple, safe and compiled programming language.

Table of Contents

Overview

The X programming language is compiled, static typed, fast, modern and simple.
Before the X source code is compiled, it is translated to C++ code and compiled from C++.
Transpiling to C++ only instead of compiling is also an option.
It aims to be advanced, readable and a good choice for systems programming.

Example X code;

fun main() {
  // ...
}

OS Support

Operating System State
Windows Not Yet
Linux Not Yet
MacOS Not yet

Contributing

Thanks for you want contributing to X!

The X project use issues for only bug reports and proposals.
To contribute, please read the contribution guidelines from here.
To discussions and questions, please use discussions.

All contributions to X, no matter how small or large, are welcome.
From a simple typo correction to a contribution to the code, all contributions are welcome and appreciated.
Before you start contributing, you should familiarize yourself with the following repository structure;

  • ast/ abstract syntax tree builder.
  • cmd/ main and compile files.
  • doc documentations.
  • lex/ lexer.
  • parser/ interpreter.
  • pkg/ utility packages.
  • xlib/ standard libraries.

License

X and standard library is distributed under the terms of the MIT license.
See license details.

You might also like...
An LL(1) parser generator for the Go programming language.

What is it? I have implemented an LL(1) parser generator for the Go programming language. I did this to build parse trees for my HAML parser. You can

PHP bindings for the Go programming language (Golang)

PHP bindings for Go This package implements support for executing PHP scripts, exporting Go variables for use in PHP contexts, attaching Go method rec

The Slick programming language is an s-expression surface syntax for Go.

The Slick programming language The Slick programming language is a Lisp/Scheme-style s-expression surface syntax for the Go programming language, with

A interpreter of SweetLang, is writed in Go Programming language.

SweetLang ( Soon ) A interpreter of SweetLang, is writed in Go Programming language. SweetLang is made with clarity and simplicity we try to make its

ReCT-Go-Compiler - A compiler for the ReCT programming language written in Golang

ReCT-Go-Compiler A compiler for the ReCT programming language written in Golang

ReCT-Go-Compiler - A compiler for the ReCT programming language written in Golang

ReCT-Go-Compiler A compiler for the ReCT programming language written in Golang

A dialect of Lisp extended to support concurrent programming, written in Go.

LispEx A dialect of Lisp extended to support concurrent programming. Overview LispEx is another Lisp Interpreter implemented with Go. The syntax, sema

Golem is a general purpose, interpreted scripting language.
Golem is a general purpose, interpreted scripting language.

The Golem Programming Language Golem is a general purpose, interpreted scripting language, that brings together ideas from many other languages, inclu

Scripting language for Go.

Minima Minima is an experimental interpreter written in Go (the language is called the same). We needed a way to massage our JSON data with a scriptin

Comments
  • bug: transpiler doesn't seem to work very well

    bug: transpiler doesn't seem to work very well

    I tried to transpile the code in the document but doesn't seem to work. After transpiled the code, dist directory was created but the code wasn't converted to the .cpp file.

    bug compiler/compile-time 
    opened by lareithen 7
  • proposal: snake_case complete localization identifiers

    proposal: snake_case complete localization identifiers

    https://github.com/jule-lang/jule/blob/main/localization/turkish.json#L121 https://github.com/jule-lang/jule/blob/main/localization/english.json#L22 https://github.com/jule-lang/jule/blob/main/localization/english.json#L23 https://github.com/jule-lang/jule/blob/main/localization/english.json#L24 https://github.com/jule-lang/jule/blob/main/localization/english.json#L25 https://github.com/jule-lang/jule/blob/main/localization/english.json#L87 https://github.com/jule-lang/jule/blob/main/localization/english.json#L50 https://github.com/jule-lang/jule/blob/main/localization/english.json#L59 https://github.com/jule-lang/jule/blob/main/localization/english.json#L67 https://github.com/jule-lang/jule/blob/main/localization/english.json#L68

    it may be better to put the word underline instead of compound

    current code

    "notimpl_trait_def": ...
    

    desired

    "not_impl_trait_def": ...
    
    proposal 
    opened by therisy 2
  • g++ give errors.

    g++ give errors.

    HÄ° Mertcan! Well done, Jule is very nice programming language :) It's just wrong like this:

    main() {
        const a int32 = 5;
        var b int32 = 25;
        outln(div(b, a));
    }
    
    div(x float64, y float64) float64 {
      ret x / y;
    }
    

    As a result, g++ reports incorrect code:

    x.cxx: In function 'void _main()': x.cxx:205:15: error: '_b_a' was not declared in this scope; did you mean '_b'? 205 | _outln(_div(_b_a)); | ^~~~ | _b

    bug compiler/compile-time 
    opened by 0verse 2
  • bug: foreach loop in string

    bug: foreach loop in string

    when i transpile this jule code, i get the decimal value of the chars in the "test" string:

    fn main() {
        let s = "test"
        for _, b in s {
            outln(b)
        }
    }
    
    // OUTPUT
    116
    101
    115
    116
    

    is this expected behavior, because it doesn't l like that in the docs?

    bug 
    opened by lareithen 1
Owner
The X Programming Language
Simple, safe and compiled programming language.
The X Programming Language
T# Programming Language. Something like Porth, Forth but written in Go. Stack-oriented programming language.

The T# Programming Language WARNING! THIS LANGUAGE IS A WORK IN PROGRESS! ANYTHING CAN CHANGE AT ANY MOMENT WITHOUT ANY NOTICE! Something like Forth a

T# 92 Jun 29, 2022
Yayx programming language is begginer friendly programming language.

Yayx Yayx programming language is begginer friendly programming language. What have yayx: Easy syntax Dynamic types Can be compiled to outhers program

null 1 Dec 27, 2021
Yayx programming language is begginer friendly programming language.

Yayx Yayx programming language is begginer friendly programming language. What have yayx: Easy syntax Dynamic types Can be compiled to outhers program

Yayx Programming Language 7 May 20, 2022
Pineapple Lang is a simple programming language demo implements by Go

Pineapple Lang is a simple programming language demo implements by Go. It includes a hand-written recursive descent parser and a simple interpreter, although the language is not even Turing-complete. But this repo's main goal is to give beginners of compilation principles a warm up and a simple look at how a programming language is built.

karminski-牙医 237 Sep 12, 2022
WindLang, A simple programming language built with golang 🍃

WindLang, A simple programming language built with golang ?? WindLang, A simple programming language built with golang ?? What is wind? Playground Coo

null 8 May 23, 2022
Gentee - script programming language for automation. It uses VM and compiler written in Go (Golang).

Gentee script programming language Gentee is a free open source script programming language. The Gentee programming language is designed to create scr

Alexey Krivonogov 99 Sep 26, 2022
⛳ A minimal programming language inspired by Ink, JavaScript, and Python.

⛳ Golfcart My blog post: Creating the Golfcart Programming Language Getting Started Scope Rules Usage Building and tests Contributions License Golfcar

Andrew Healey 26 Sep 6, 2022
Monkey programming language project from 'Writing An Interpreter In Go'and 'Writing A Compiler In Go' Books

Monkey Monkey programming language ?? project from "Writing An Interpreter In Go

Amr Hesham 1 Dec 16, 2021
a dynamically typed, garbage collected, embeddable programming language built with Go

The agora programming language Agora is a dynamically typed, garbage collected, embeddable programming language. It is built with the Go programming l

Martin Angers 324 Sep 10, 2022
Port of the lemon parser generator to the Go programming language

From the golang-nuts mailing list (with few modifications): --== intro ==-- Hi. I just want to announce a simple port of the lemon parser generator

null 54 Feb 17, 2022