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 INTruns a for loop starting at 0 and ending on INTdois 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/STRcreates a foreach looprandomrange and randnow uses Mersenne Twister generation rather than cpprand()function- added
breakfor loops - errors are now parsed before runtime
- modules are added to the file before runtime
- modules are now scoped
defhas 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
readandwritecommands - StormScript doesn't mess up when if statements are nested
- boolean variables and literals now work in
ifstatements - 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
ingave unknown command errors- socket clients wouldn't connect to servers on linux
- changed
stsObjectconstructor 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 INTruns a for loop starting at 0 and ending on INTdois 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/STRcreates a foreach looprandomrange and randnow uses Mersenne Twister generation rather than cpprand()function- added
breakfor loops - errors are now parsed before runtime
- modules are added to the file before runtime
- modules are now scoped
defhas 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
readandwritecommands - StormScript doesn't mess up when if statements are nested
- boolean variables and literals now work in
ifstatements - 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 INTruns a for loop starting at 0 and ending on INTdois 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/STRcreates a foreach looprandomrange and randnow uses Mersenne Twister generation rather than cpprand()function- added
breakfor loops - errors are now parsed before runtime
- modules are added to the file before runtime
- modules are now scoped
defhas been changed to a scope calledinit
What's Fixed
- Removed snapcraft files
- Variables can be used in the filenames in the
readandwritecommands - StormScript doesn't mess up when if statements are nested
- boolean variables and literals now work in
ifstatements - 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
typedeclarations 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 INTruns a for loop starting at 0 and ending on INTdois 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/STRcreates a foreach looprandomrange and randnow uses Mersenne Twister generation rather than cpprand()function- added
breakfor loops
What's Fixed
- Removed snapcraft files
- Variables can be used in the filenames in the
readandwritecommands - StormScript doesn't mess up when if statements are nested
- boolean variables and literals now work in
ifstatements - 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
inwould 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 INTruns a for loop starting at 0 and ending on INTdois 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
readandwritecommands - StormScript doesn't mess up when if statements are nested
- boolean variables and literals now work in
ifstatements - 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
defkeyword - errors moved to
errors.stsfromcore/errors.cc - you can now modify specific characters in a string or specific characters in a list using subscripts
- use
stormscript install modnameto 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
randomto generate a random bool - use
randomrange => min, max;to generate a random integer in range min, max - use
wait INTto sleep forINTseconds
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::globwas considered to be true by some compilers, causing crash
StormScript Eggplant
StormScript v0.5.0 "Eggplant"
What's New
whilecan be used to make while loops- New Escape Characters,
\tand\\ - 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.shwill now exit with code 1 on failure