Giter Site home page Giter Site logo

daniel7sly / abis-csharp Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 384 KB

ABIS is an interpreted language to be imbeded in programs as a scripting language. This version of the project is suspended.

License: MIT License

C# 100.00%
programming-language abis interpreter

abis-csharp's People

Contributors

daniel7sly avatar

Stargazers

 avatar

Watchers

 avatar  avatar

abis-csharp's Issues

Add Random Action

Implement Random Action

Generates a random number betwen the given numbers (inclusive) and stores the value in the given variable.

Rnd: num: $var | num: from | num: to;

Não mas OK

Alforrecas são como bolos feitos pelo joao zé de tal modo que desce meu rank no freefire.

Operation & Comparation Problem

Operation And Comparation may be removed because of the operator with is text if wrong cause a runtime exeption.
Maybe substitute each operator for a action.
Or
Force the 2º param to not be a variable and be one of the operators.

Add Structs

Implementar structs algo paracido com o que ta abaixo.

<Location> {
   num: Xpos;
   num: Ypos;
}

<Entity>{
   Location:Loc;
   num:Strengh;
   num: Life;
}

Set: Entity | player;
Eql: $player<Loc<Xpos>>|10;
Eql: $player<Strengh>  |15;
||
Eql: $player>Loc>Xpos |10;
Eql: $player>Strengh   |15;

Implement Error Checker

Error-Checker

The Error Checker will search for errors in the entire script before the execution of the script.
Since the way ABIS is build this can be acomplished and make ABIS free of Runtime Exeptions.

The Error-Checker should look for:

  • invalid variable names.
  • validate types in parameters actions.
  • action names and parameters quantity.
  • validate Blocks names, input & output types.
  • invalid Flag names/refences.

Fix Arrays

Arrays currectly do not support index an inner array. And are a little weird.
Add the feature to support indexing inner arrays.
Ex:
Eql: $var | $arr#3#2
Possible redesign:
$arr[1][2]*
*This could broke block calls.

Better Error Arrow for Block parameters

If an error is throwned in the call of a block en creating the variables the Error arrow should point to the error.
Or somehow specify where it failed.
Example:
image
Test file:
image

Add ToCharArray Action

ToCharArr

Gives the given array an text array consisting of the letters of the given text.
Ex: "Ab Cd" -> {'A','b',' ','C','d'}

Tca: text:$arr# | text: text;

Improve the documentation

Just Improve the documentation

-Actions description.
-Traslate to English
-General functionality
-Make it in MarkDown

Add Action SplitText

SplitText

Splits the text by the given character like string.slipt('');. And gives the splited values to an array. If any split is perform it gives an array with only 1 element that equals the text.

STxt: text:$arr# | text: text | text: separator*;

*separator can be composed by more than one character.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.