Skip to content

Releases: Nxium-Developments/NextLanguage

Major changes from v2.1

08 Jun 13:06
fa89923

Choose a tag to compare

Pre-release

The rewrite from v2.0's Javascript to use C.

What's Changed

  • V2.0-dev by @Authie2 in #20

Full Changelog: v1.9...v2.1

MASSIVE CHANGES - v2.0 of NextLanguauge

28 Feb 07:59
fa89923

Choose a tag to compare

Pre-release

We've been working on this update for quite a while now, v2.0 is the biggest release we've ever done. Changes ranging from rebuilding the entire syntax tree of NXL, to multi file support, bug fixes, along with NXL files now being configured inside the config, rename, and many more!

Major new Features

  • A Rebuilt of NextLanguauge's entire syntax tree to use an Abstract Syntax Tree (AST)
  • Addition of Multi File Support (You can now run NextLanguage using multiple files now.)
  • Addition of @for and @while to NextLanguauge's goal of bring a turing complete programming language.
  • Addition of Importing and Exporting file functions and classes. (Multi File Support)

Changes

  • Renamed CONFIG to main.config.file
  • Renamed BUILD_CONGIGto package.config.val
  • Complete rewrite of the variables registrar

Bug Fixes

Functionality Update! - v1.9

22 Dec 08:49

Choose a tag to compare

We've been working on a better version release of v1.8 with better commands, and bugs fixes. A lot of things was changed in v1.9, you can view the branch commits related to this release here. With a lot of work being put into this version. So please enjoy it.

Major new features

  • You can now configure the project files, by changing file paths on BUILD_CONFIG
  • npm run rebuild now actually works, if the user uses npm run build when the project is already built. It will provide an error.
  • Any packages that isn't the main file, can now be ran using the BUILD_CONFIG file, if configured.
  • @output now can actually output variables values!
  • CONFIG file now will actually work regardless of directory issues.
  • @output command will now log items and output them into a file.
  • @var will now have a string type, and no default type set!
  • Project files will now be built, unlike previous builds where the files have to be manually created.

Changes

  • Renamed config.nxconf to CONFIG
  • Added BUILD_CONFIG file on project build.
  • Renamed build.config.nxlf to builded
  • Added preload.js file creation on startup (this happens even though package-advanced is not set or just false). Preload will just run. It won't run before app.nxl
  • Added postload.js file creation on startup along with preload.js, currently just runs JavaScript. It will just run, it won't run after app.nxl currently.
  • Refactored :debug-mode, it will now not work
  • :package-com will now accept only values like x-auto which is normal NXL code, and auto
  • Previous release, potentially contains node_modules folder. It will now not come with it.
  • Added debug outputs to work, if enabled.
  • @output command will now log the outputs in the builds/log folder

Bug Fixes

  • @if statement can't execute @else block, #5
  • ``@if``` statement evaluate x is equal to 10, #12
  • @var now have no default variable, use @var [username]: (string)Avia to register a string, #10
  • CONFIG file only containing the NXL file name, causing crashes if ran incorrectly
  • init.js doesn't work and just crashes.
  • npm run build just not installing the correct dependencies
  • On build, project files weren't created.

How will I learn new syntaxes for this release?

New updates have been pushed to the documentations, and the correct examples for writing NXL code has been changed. You may refer to the documentation for help.

Full Changelog: v1.8...v1.9

Major Rebuilt to an working Language! - v1.8

12 Dec 12:08

Choose a tag to compare

In this release we've reworked NextLanguage from evaluating file extensions that weren't in javascript but written using javascript syntaxes to be able to read by javascript files. To an ACTUAL PL.

All the major features we've added are below. Plus a template explaining all the features!

Major new features!

  • Actual reworked of NextLanguage into an actual Programming Language (PL)
  • Added supports for comments with the tag #
  • Added variables commands
  • Added support for multiple variable types
  • Added functions command
  • Added If commands
  • Added command chain within Functions and If Statements
  • Added @output commands to send whatever text to the console
  • Added variable contents output for the @output command
  • Added if statements evaluations
  • Added advanced package functions (Currently WIP)
  • Added main package identification (Currently WIP)
  • Added content templates (When you first build your project it creates an template file which is your main codespace)

How all this works

We've written down an example you would see when you first generate your project, explaining what everything does.
For this PL, you'd need at least a small understanding of how PL normally works. If you do, then it should be easy for you
to understand. For beginners tho, we're working on a better version of this guide, tell you almost everything on how this
PL works.

# This is a comment, anything you write in this wont be executed.
# The commands below me are what initializes the file structure.
# Currently :package-main does not have a functionality, but it is
# there for the future when I add multi-file support.

# :package-com is an level setting, x-auto means that the code will
# run at an advanced level, which will allow us the execute the code
# structures in :packaged []; and if it is set to auto, it will Currently
# not work, as the beginner level coding is in progess.

:package-main root/me
:package-com x-auto

# The :packaged []; will execute whatever codes inside it. If any code
# is placed outside it, it may not work.
:packaged [
    # Enables/Disables debuggging for developers
    :debug-mode off

    @var [score]: (integer)10
    @var [percentage]: (percentage)11%

    @output -----------------------------------------------------------------
    @output
    @output This is a output function, it sends whatever is written in here
    @output before the next line and send it to the console, you don't really
    @output need a comma on this. Or any of the other functions never really
    @output needed a comma, so have fun!
    @output
    @output -----------------------------------------------------------------

    @function [hello]:
        :output This is a hello Function message. You are only seeing this
            message because the call function called this hello function

            A little note for you is that, only output commands are being
            registered within @function and @if block chains. So you can't
            really do alot here yet. But I'm working on adding more commands.
        :end
    @end

    @output -----------------------------------------------------------------

    @var [x]: (integer)11
    @var [usernames]: "Someone"
    @var [negativity]: (negatives)-10
    @var [decimal]: (double)0.1

    @if [x > 10]:
        :output This is a if statement, if X is greater than 10. You will see this message!

            Unfortunately anything you write that is registered in these block chains,
            Including @if and @function will only be allowed to be written once. Each of the
            registered commands can only be written on once.
        :end
    @else
        :output Sadly, you changed this value (x). So you couldn't see the message I wrote for you :d
    @end

    @output -----------------------------------------------------------------

    # The :call command is the only way to call functions (The variable part is now handled by @ouput)
    # Currently its broken, so I made it so we don't really need :call any function registered will be
    # automatically executed. I'm working on fixing the :call command atm, so be patient
    :call [@function] /hello@run;
];

Full Changelog: v1.6...v1.8

Thank you to all the Contributors who worked on this!

@AshleyNex @RBLAuthorizations @AshleyAst

NPM Release - v1.7

08 May 06:04
e051164

Choose a tag to compare

We have decided to update this repositories to an npm build, and all
updates will be published there as well as the source code here.

We will link each major release build here. To visit the official npm
publish site of our builds.

Current Latest Release ATM Download v1.7.4

Compiler Update - v1.6

09 Apr 08:12

Choose a tag to compare

In this update, we will have updated the compiler to handle and generate new project files
with new optimizations.

Full Changelog: v1.5...v1.6

Updated compiling data

09 Apr 07:19

Choose a tag to compare

View the full log here

Full Changelog: v1.4...v1.5

Quick update for identification loading problems

20 Mar 11:03

Choose a tag to compare

Major Rebuilt of NextLanguage

20 Mar 06:10

Choose a tag to compare

In this release, we rebuilt the entire NextLanguage Infrastructure and many other things, one major thing being that our NextLanguage
Syntaxes are now completely similar to JavaScript for the time being, until we can get our own documentation up and running then
we can start creating our own syntaxes.

🔔 Changes

  • Rebuilds the entire NextLanguage Structure
  • Added Millions more Syntaxes
  • The ability to now run NextLanguage without any limitations due to software
    limitations and other things.
  • NextLanguage new Syntaxes are now ran online
    through via our servers.
  • We now have similar Syntaxes to JavaScript.

🛠 Fixes

  • Compatibility Issues where the latest NextLanguage build
    can't be built locally on other users computer.
  • Other Issues with building the latest build and fetching data
  • Reading compatibility issues where the syntaxes can't be read.
  • Failing to be rebuilt a issue where NextLanguage can't rebuild
    itself, or failover to a backup build.

This build also patches some other bugs that stops the entire NextLanguage code from building on it's own, rendering it useless.

Full Changelog: v1.2...v1.3

Quick fixes for Download OPT

17 Feb 12:49

Choose a tag to compare

In this release we will fix some optimization for the previous release, which the node_modules folder did not get removed, for optimzation purposes. So in this release it should be fixed.

To note, we will still require NodeJS to be installed to run this application

Full Changelog: v1.0...v1.2