Releases: abbyonstott/StormScript
Releases · abbyonstott/StormScript
StormScript v1.0.1
StormScript v1.0.0
StormScript v1.0.0
What's New
- Use the
$
symbol followed by a variable name inside of a string literal to concatenate that variable into the string for INT
runs a for loop starting at 0 and ending on INTdo
is no longer required- rewrote interpreter to use switch statements
- using enumerations to determine statements rather than string literal
- functions can be declared in any scope
- moved errors.sts from /usr/bin to /usr/share/stormscript
- Function arguments no longer require you to specify the name
for PLACEHOLDER in LIST/STR
creates a foreach looprandomrange and rand
now uses Mersenne Twister generation rather than cpprand()
function- added
break
for loops - errors are now parsed before runtime
- modules are added to the file before runtime
- modules are now scoped
def
has been changed to a scope calledinit
- sockets can be created with
socket name => "FAMILY", "127.0.0.1", 9999
What's Fixed
- Removed snapcraft files
- Variables can be used in the filenames in the
read
andwrite
commands - StormScript doesn't mess up when if statements are nested
- boolean variables and literals now work in
if
statements - Comparisons always work out to booleans, meaning that they are now interchangeable
- Random no longer generates integers outside of range
- Scoped variable inheritance now works, so variables defined inside of a scope are accessible to the scope and any child scopes
- Install script now uses all available processor cores
- packagerelease.sh now installs stormscript to run tests
- Better development documentation
- The
|
operator is now.
- scopes now work as a class, making development around scopes easier
- constructors now use the arrow operator (
=>
) to declare constructors - using tabs instead of spaces
- moved contents out of src/core and into root of src directory
- fixed class member comparisons
StormScript v1.0.0 Release Candidate 2
Release Candidate 2
What's Fixed
in
gave unknown command errors- socket clients wouldn't connect to servers on linux
- changed
stsObject
constructor arg from value to const reference for memory savings - reorganised directory structure (again)
StormScript v1.0.0 Release Candidate 1
StormScript v1.0.0
What's New
- Use the
$
symbol followed by a variable name inside of a string literal to concatenate that variable into the string for INT
runs a for loop starting at 0 and ending on INTdo
is no longer required- rewrote interpreter to use switch statements
- using enumerations to determine statements rather than string literal
- functions can be declared in any scope
- moved errors.sts from /usr/bin to /usr/share/stormscript
- Function arguments no longer require you to specify the name
for PLACEHOLDER in LIST/STR
creates a foreach looprandomrange and rand
now uses Mersenne Twister generation rather than cpprand()
function- added
break
for loops - errors are now parsed before runtime
- modules are added to the file before runtime
- modules are now scoped
def
has been changed to a scope calledinit
- sockets can be created with
socket name => "FAMILY", "127.0.0.1", "9999"
What's Fixed
- Removed snapcraft files
- Variables can be used in the filenames in the
read
andwrite
commands - StormScript doesn't mess up when if statements are nested
- boolean variables and literals now work in
if
statements - Comparisons always work out to booleans, meaning that they are now interchangeable
- Random no longer generates integers outside of range
- Scoped variable inheritance now works, so variables defined inside of a scope are accessible to the scope and any child scopes
- Install script now uses all available processor cores
- packagerelease.sh now installs stormscript to run tests
- Better development documentation
- The
|
operator is now.
- scopes now work as a class, making development around scopes easier
- constructors now use the arrow operator (
=>
) to declare constructors - using tabs instead of spaces
Release Candidate 1
- Fixed class members not working in comparison operations
- windows now has better support
StormScript 1.0.0 Beta 3
StormScript v1.0.0
What's New
- Use the
$
symbol followed by a variable name inside of a string literal to concatenate that variable into the string for INT
runs a for loop starting at 0 and ending on INTdo
is no longer required- rewrote interpreter to use switch statements
- using enumerations to determine statements rather than string literal
- functions can be declared in any scope
- moved errors.sts from /usr/bin to /usr/share/stormscript
- Function arguments no longer require you to specify the name
for PLACEHOLDER in LIST/STR
creates a foreach looprandomrange and rand
now uses Mersenne Twister generation rather than cpprand()
function- added
break
for loops - errors are now parsed before runtime
- modules are added to the file before runtime
- modules are now scoped
def
has been changed to a scope calledinit
What's Fixed
- Removed snapcraft files
- Variables can be used in the filenames in the
read
andwrite
commands - StormScript doesn't mess up when if statements are nested
- boolean variables and literals now work in
if
statements - Comparisons always work out to booleans, meaning that they are now interchangeable
- Random no longer generates integers outside of range
- Scoped variable inheritance now works, so variables defined inside of a scope are accessible to the scope and any child scopes
- Install script now uses all available processor cores
- packagerelease.sh now installs stormscript to run tests
- Better development documentation
- The
|
operator is now.
- scopes now work as a class, making development around scopes easier
- constructors now use the arrow operator (
=>
) to declare constructors
Beta 3
What's fixed
- Newline at end of program threw error
- Modules are back
type
declarations are back
StormScript v1.0.0 Beta 2
StormScript v1.0.0
What's New
- Use the
$
symbol followed by a variable name inside of a string literal to concatenate that variable into the string for INT
runs a for loop starting at 0 and ending on INTdo
is no longer required- rewrote interpreter to use switch statements
- using enumerations to determine statements rather than string literal
- functions can be declared in any scope
- moved errors.sts from /usr/bin to /usr/share/stormscript
- Function arguments no longer require you to specify the name
for PLACEHOLDER in LIST/STR
creates a foreach looprandomrange and rand
now uses Mersenne Twister generation rather than cpprand()
function- added
break
for loops
What's Fixed
- Removed snapcraft files
- Variables can be used in the filenames in the
read
andwrite
commands - StormScript doesn't mess up when if statements are nested
- boolean variables and literals now work in
if
statements - Comparisons always work out to booleans, meaning that they are now interchangeable
- Random no longer generates integers outside of range
- Scoped variable inheritance now works, so variables defined inside of a scope are accessible to the scope and any child scopes
- Install script now uses all available processor cores
- packagerelease.sh now installs stormscript to run tests
Beta 2
What's fixed
- Concatenation would break if there was no space at the end of value
in
would always give error with name variable+:
operator now works- Fixed for loop running
getvals()
withnew int(*y)
, causing the interpreter to be off
StormScript v1.0.0 Beta 1
StormScript v1.0.0
What's New
- Use the
$
symbol followed by a variable name inside of a string literal to concatenate that variable into the string for INT
runs a for loop starting at 0 and ending on INTdo
is no longer required- rewrote interpreter to use switch statements
- using enumerations to determine statements rather than string literal
- functions can be declared in any scope
- moved errors.sts from /usr/bin to /usr/share/stormscript
- Function arguments no longer require you to specify the name
What's Fixed
- Removed snapcraft files
- Variables can be used in the filenames in the
read
andwrite
commands - StormScript doesn't mess up when if statements are nested
- boolean variables and literals now work in
if
statements - Comparisons always work out to booleans, meaning that they are now interchangeable
- Random no longer generates integers outside of range
- Scoped variable inheritance now works, so variables defined inside of a scope are accessible to the scope and any child scopes
Beta 1
What's changed
- Removed
type
: Will be added back later - Removed modules: Will be added back later
StormScript Grape
StormScript v0.7.0 "Grape"
1 Year Update
What's New
- Mac install script
- Class constructors with the
def
keyword - errors moved to
errors.sts
fromcore/errors.cc
- you can now modify specific characters in a string or specific characters in a list using subscripts
- use
stormscript install modname
to install official module by name of modname - define a function and declare it later with forward declaration
What's Fixed
- Version would only show at top if StormScript was running from PATH
- Print function would crash when printing lists with subscripts
- fixed issue with chains of else if blocks causing the parser to go over the number of objects in program vector
- Parser no longer keeps whitespace
StormScript Fig
StormScript v0.6.0 "Fig"
What's new
- StormScript can now read and write to files
- StormScript now has modules, which allow you to run functions from other StormScript files.
- use
random
to generate a random bool - use
randomrange => min, max;
to generate a random integer in range min, max - use
wait INT
to sleep forINT
seconds
What's Fixed
- else and else if statements were broken
- length didn't work when used in function inside args
- while loops would cause the parser to increase the current line to the point where it was outside of the scope.
- Functions run at the end of other functions caused segmentation faults due to failing to parse a semicolon
- Global variables couldn't be declared
- comparisons using subscripts were broken
- length did not change on modification
stsvars::glob
was considered to be true by some compilers, causing crash
StormScript Eggplant
StormScript v0.5.0 "Eggplant"
What's New
while
can be used to make while loops- New Escape Characters,
\t
and\\
- Windows version
- Modules have been removed due to compatibility issues
- Libraries have been removed due to compatibility issues
- New scripts folder for build scripts
What's Fixed
runtests.sh
will now exit with code 1 on failure