Skip to content

Releases: alta-lang/alta

v0.6.3 - Ancast Poppy

04 Jan 21:40
v0.6.3
Compare
Choose a tag to compare

Changes

Fixed

Standard Library

  • list package
    • Fix the dereference operator being parsed as multiplication in the Node class
    • TODO in the parser: take line number into account when parsing expressions
      • Maybe do all possible parses and then analyze them later, taking into account line numbers, to determine which is the best alternative
  • list and queue packages
    • Remember to import Size!
  • util package
    • Fix floating point stringification for plain zeros (0 or 0.0)

Added

  • Packaging! (for the compiler)
    • Alta now uses CPack to create distribution packages and installers for all the major platforms

v0.6.2 - Ancast Juniper

22 Dec 02:17
v0.6.2
Compare
Choose a tag to compare

Changes

Fixed

CLI

  • Newlines are no longer added between expressions in the generated C code, which allows preprocessor definitions containing expressions to work properly

v0.6.1 - Ancast Icebucket

20 Dec 04:37
v0.6.1
Compare
Choose a tag to compare

v0.6.0 - Ancast

15 Dec 03:21
v0.6.0
Compare
Choose a tag to compare

Alta v0.6.0 - Codename: Ancast

See the language changelog.

Changes:

  • 710c597 Update changelog
  • 789473f Update talta
  • fdb99ba [runtime] Don't try to find base structs for already-destroyed objects
  • d7a6833 [stdlib/string] Allow CodePoint to be independent...
  • 394491d Update talta
  • c55f697 [stdlib] Add items iterators for many stdlib containers...
  • b337682 [runtime] Make sure to use char* for all void* operations...
  • 548b6f3 [runtime] Include the self parameter in generator states
  • c7c924f [stdlib/meta] Brand new package
  • 3fd0a41 [stdlib/string] Add a rawstring equality checking function
See More
  • b9b997b [stdlib] Add List and Queue...
  • 05049d3 [stdlib/memory] Add Box...
  • 3ca3735 [stdlib/util] Add WeakArray
  • 5264f53 [stdlib] Add variable parameter constructors for a few containers
  • 7c60d4b [stdlib/exceptions] Rename IndexOutOfBoundsException
  • ec46d97 [runtime] Update the runtime to work with generators
  • 9ea9b67 [runtime] Add necessary runtime components for capture classes
  • 686f53d Update talta
  • 474df4d Update Talta
  • 9d46500 [stdlib/util] Detect and throw on integer overflows
  • 358b381 [stdlib/vector] Initialize vectors with '\0'
  • 394d4fd [stdlib/types] Add integer manipulation bitfields
  • 24fd286 [stdlib/string] Add convenience versions of some methods;
  • 1506828 [stdlib/map] Add entries, keys, and values accessors
  • d3db0c8 [stdlib/vector] Add clear()
  • 7f59ef4 [stdlib/io] Make String the first item of ConsoleData...
  • b47822e Forgot to update Talta
  • 1984772 Output each item to its own source file...
  • 9ced13e Update to alta-lang/talta@5862594
  • 920d51a Avoid duplicate target linking in generated CMakeLists
  • 513374e (Don't have time to write a message)
  • 75e9ba3 [stdlib/util] Allow radices to be used for parsing and stringifying numbers
  • a651cdf [runtime] Resolve MSVC warning & provide invalid return value handler
  • bcfa3f4 Update Talta
  • 0f39c7e [runtime] Add runtime support for virtual methods
  • dbfd76b Update Talta
  • 9ed50c3 [stdlib/string] Upgrade the String class from ASCII to UTF8
  • ea298ea [docs] Update FAQ and README
  • d6fc738 [stdlib/unicode] Brand new package for converting Unicode data
  • 7fedb04 Update talta
  • bb34d78 [stdlib/process] Add a return type for the sysctl function
  • 5fde2c7 Add badges
  • 6d25e0c Update talta
  • f296332 Revert the last commit
  • 15b178f [cmake] Don't treat warnings as errors
  • c7a9654 Use the latest versions of Azure agents
  • d3f7f93 Merge pull request #14 from alta-lang/custom-operators
  • a2fc5fc Update to merged Talta master branch
  • 6c69536 [stdlib] Simplify code by using operators and automatic casts when possible
  • 857aad6 [stdlib] Provide operator overloads where appropriate
  • 80cb2bc Update to alta-lang/talta@06df829
  • 119bfc5 Update to alta-lang/talta@b99ecf9
  • 1487ced [stdlib/string] Add an addition operator for the String class
  • 10cf40a [stdlib/util] Make sure negative numbers are properly stringified
  • a75c1d5 Update to alta-lang/talta@6dd1344
  • e7ecbdf [stdlib] Add from and to cast operators where appropriate
  • c140375 [stdlib/process] Implement spawn for POSIX OSes
  • 7164738 [runtime] Update runtime to add structures and destruction support for lambdas
  • d65458d [runtime] Add a basic, common object structure for classes, unions, and optionals
  • 1c51fd2 [stdlib/process] Add a Windows implementation of spawn
  • 758508b Update to alta-lang/talta@0ba6d1b
  • 23c6d78 Increase the error handler stack size when a handler is pushed
  • 969aa4a Update to alta-lang/talta@a5bfbad
  • 73d4af1 Update deps/talta
  • e68634e [stdlib] New process package
  • 1f42be9 Add the necessary project structure to create our own build tool
  • 7d060c4 Add the option to disable MSVC's "CRT Secure Function" warnings
  • f081d8f [cli] Create and use our own argument parser
  • 98ad5ca Make sure certain actions are only performed after the runtime is initialized
  • 779333c [stdlib/io] Print booleans and make a variadic version of printLine
  • 899a78a Don't define MODULE_ALL for modules
  • f1868e0 idk. i dont feel like writing a proper message cuz im tired
  • b9e50bc [deps] Update to alta-lang/talta@cf17ba3
  • c95194b [deps] Update to alta-lang/talta@1013686
  • 91a92a0 [stdlib/io] Make print able to work similar to printf
  • 294ef41 Add union support in object stacks
  • 58d5be9 [deps] Update to alta-lang/talta@032ed7d
  • 1fe860c [cli] Use the right target name when including generic arguments
  • e8b6ab6 [deps] Update to alta-lang/talta@5eb56bb
  • bc52ee8 [runtime] Use a simpler form of node management
  • e01336c [runtime] Save runtime state for error handlers
  • e74d6cc [stdlib] Throw exceptions where appropriate
  • a41aec4 [runtime] Store error handler information
  • d57610f [runtime] Basic error handling support
  • e233f49 Update README.md

This list of changes was auto generated.

v0.5.2

06 Jun 00:19
v0.5.2
7520217
Compare
Choose a tag to compare

Language features added and bugs squashed:

  • [bug] Destroy all objects (local and persistent) on exit

v0.5.1

03 Jun 02:38
v0.5.1
244c00e
Compare
Choose a tag to compare

Language features added and bugs squashed:

  • [feature] Add delete statements
  • [feature] Add loop control statements (break and continue)
  • [feature] Define strict attribute for assignment expressions
  • [feature] Add persistent (i.e. malloc-ed) class instantiations
  • [feature] Differentiate functions by parameters names (in addition to types)
  • [bug] Correct type compatibility checking (by using un-referenced types)
  • [bug] Correct rule precedence for class instantiation targets
  • [bug] Return the correct pointer level for referenced types
  • [bug] Use strict accessors for parent class parsing (which allows them to be generics)
  • [bug] Save and restore export definitions before including generics to prevent cyclic header dependencies
  • [workaround] Make conditional alternatives their own conditional statements when transpiling
  • [bug] Don't copy pointers
  • [bug] Copy source value before destroying destination value in assignment expressions
  • [bug] Destroy temporary values
  • [feature/bug] Always call the base destructor when destroying objects (effectively makes all destructors act like C++ virtual destructors)
  • [bug] Correct order of evaluation by condensing temporary value assignments into comma operators and using functions for real structure determination and child class fetching
  • [bug] Correctly determine the current executable's path
  • [bug] Change directories before and after configuring and use the single argument version of CMake
  • [feature] Define a general attribute for Alta code to specify additional libraries to link to

Standard library features added and bugs squashed:

  • [feature] Add a getKeys method
  • [feature] Add a new stack module for a simple stack implementation
  • [feature] Add a single byte version of append
  • [feature] Add various new substring methods
  • [feature] Add a prepend method for each version of append
  • [feature] Add a generic Pair class
  • [feature] Add a floating-pointer number parser
  • [feature] Add stringifiers for integers and floating-point numbers
  • [feature] Add first and last accessors for the first and last elements in the vector
  • [feature] Add a pop method
  • [bug] Assign data strictly
  • [bug] Raise numbers to negative powers correctly
  • [bug] Link to the libm library on Linux (it implements floating-point operations like fmod)

QoL Overhaul

26 May 20:09
v0.5.0
e0dc9a6
Compare
Choose a tag to compare

This release provides many essential programming language features (such as bitwise operators, classes, for loops, and many more) as well as many convenience features (like generics, ranged for loops, and much more).

Changes:

See more
  • 1c9f821 [stdlib/math] Make power a generic function
  • e18052f Transpile generic function sources
  • 51100f1 [stdlib/vector] Make sure the preincrement in push is parsed as such
  • 01acebd [stdlib] Use libc definitions whenever possible
  • 6afc2f4 Update to alta-lang/talta@e0f5e2b
  • d3b91cb Update to alta-lang/talta@aff086e
  • 2fe0dc3 Use native type definitions for libc integral types
  • 28736ed [stdlib/libc] Declare most of libc
  • 519650d Catch all errors at runtime; [stdlib/libc] New stdlib package;
  • 1e34037 Tell CMake to try to use the C99 standard for generated targets;
  • db75ea6 [stdlib/math] Add floating-point implementation of power;
  • 50f094b [stdlib, examples] Update code to use compound assignment when possible;
  • 2d44815 [examples, stdlib] Use for-in loop where possible;
  • a3487d4 Merge pull request #8 from alta-lang/generic-classes
  • af1481e Fix build issue with Linux and macOS; [deps] Update to alta-lang/talta@bb6e992
  • 774471f Add generic dependencies to the index; Set output and PDB names for generics;
  • 5052108 Output generic instantiations to their own files; Create 'core' libraries for targets before final targets; Link with imported generics; Update to alta-lang/talta@639635b
  • 90b5b7c [docs] Add docs for some stdlib modules; [...] Update Getting Started guide
  • 33520de [stdlib.string] Use rawconststring for rawstringLength; [examples] Add new variable-parameters examples;
  • b867c58 Update to alta-lang/talta@23c9c8f
  • 3efe2a4 Merge pull request #7 from alta-lang/prepo-lex
  • 8264b38 Update to alta-lang/talta@582f2e7
  • 2a03394 Update to alta-lang/talta@bc0d8b3
  • 7cfece8 Update to alta-lang/talta@c1ae360
  • 6114d7b Merge branch 'prepo-lex' of https://github.com/alta-lang/alta into prepo-lex
  • 7d8a971 Update alta-lang/talta@305f843
  • 9525f1e [cli] Update error logging code to fetch straight from the file;
  • 811af6a [cli] Ignore lexing absences (for now) to allow them to be resolved later during prepo substitution;
  • 0749f94 [cli] Make sure colors are reset when printing times; [deps] Update alta-lang/talta@30a9e9d
  • 3fddf6f Talta@039411b
  • 8c9b497 Talta@89641d0
  • 31ab4e4 [cli] Print all lexing times
  • 7b1aa30 [cli] Print preprocessor, lexer, and parser times (when asked to do so)
  • f0f6eec Copy the target files to a common binary directory
  • 754ef49 Fix compilation of a package with multiple targets
  • 4b07e85 Merge pull request #5 from alta-lang/macos-build-fix
  • 4ac1ebe Talta -> 5dc7738
  • 18ac608 Use ALTACORE_MAP instead of STL maps (directly); Talta -> 6513eb4
  • 5d16a82 Update azure-pipelines.yml
  • 819cf0c [runtime] Add some definitions to ensure SIZE_MAX is defined on all platforms; Talta -> bd8e19f
  • 3a74a41 Fix Linux build by updating to Talta@a820495
  • a8622f2 Talta -> 5511938
  • 92a091d Remove crossguid as a direct dependency
  • 4a21c28 Talta -> 0783f0d
  • c4c3ff5 Include string.h in the common runtime header
  • 97e5574 [docs.bs] Add a new concept
  • 830c340 [runtime] Add downcasting support
  • 29ad3a6 Talta -> 3322f08; [stdlib.memory] Add free() declaration; [stdlib.string] Add a copy constructor and a destructor
  • 0e22474 Talta -> e985599; [runtime] Add object bookkeepers for local and persistent objects; [stdlib.string] Fix the infinite loop when appending to a String
  • a184057 [cli] Log parsing errors; [stdlib.memory] Use Size type and add realloc; [stdlib.string] Add the ability to append strings and some documentation
  • 5b48874 Talta -> 0e795aa
  • 46d8390 Add basic class info structure to Alta runtime
  • 95985c5 Talta -> 196510a; [cli] Handle and print detailing errors
  • bdafd9e Talta -> 32bc723; [stdlib.types] Add rawstring and rawconststring; [stdlib.string] Use the new typedefs; [cli] Use a better method of avoiding duplicate inclusion in CMakeLists; [runtime] Setup runtime for later
  • 1c709f7 Talta -> a0097ba; Implement an import cache
  • 3fad4a9 Talta -> dae2d93
  • 8b4701b Talta -> 55de441; [stdlib.string] Use subscript expressions instead of add-and-dereference; [docs] Add a brainstorming document
  • 64aa87a RootNode's details are no longer stored directly on the node, use its detail handle
  • 2be7eea Recognize entry packages regardless of the modules that belong to it
  • 800c11c [stdlib.types] Create a Size type alias; [stdlib.string] Use the Size type from the types module
  • 4105e17 [stdlib.string] Use the correct size type (unsigned long long int)
  • 8911644 Talta -> c06fbe5; [stdlib.string] Add charAt accessor
  • 2acd2a7 Talta -> 8eef0b2; Update String to add proper encapsulation
  • 1bd94d0 Add length and size read accessors for Strings; Register global Alta attributes
  • c715afa Talta -> 41bfdf7; Fix String to allow basic functionality
  • ef5e1cf Talta -> ba5b79e; Add simple class example and a non-functional String class
  • fdfba2b Talta -> c44f454
  • 5daf340 Update Talta to 503730c; Add the ability to measure parsing time
  • 74c57fa Merge pull request #2 from alta-lang/v0.4.0-staging
  • 8e21893 Talta -> v0.8.0; Add fibonacci example; Update changelogs
  • 66f6a4f Talta -> 3e16ba6
  • e0a61ab Talta -> 832072c
  • 660e55f Talta -> 3954417
  • 036d7b6 Talta -> 9591c18
  • 4240565 Talta -> a15c5cb
  • e834499 Talta -> 409b1d4
  • e7498a4 Talta -> a56ab59
  • e92f818 Talta -> 6f8e340
  • 2e5f188 Fix some compiler warnings; Add the ability to compile a package directly with altac
  • 0148036 Forgot to actually update Talta; Add vararg argument for printf declaration
  • 163a1ff Add C runtime; Talta -> 5b2e7b8; Remove crossguid direct dependency
  • 27c8220 AltaCore now includes crossguid, so we don't need to depend on it directly
  • c83ba08 Update CLI changelog
  • b6c13ad...
Read more

v0.3.1

05 Dec 01:22
dc77c2f
Compare
Choose a tag to compare

See the Changelog for an overview of the language changes.

See the CLI Changelog for an overview of the CLI changes.

Changes:

  • dc77c2f Fix module resolution error on Linux
  • d313d2c Set up Azure Pipeline Artifacts to release to create release archives on tagged commits
  • a65ba8f Update CLI changelog; Publish stdlib
  • 245d01d Update language changelog for v0.3.0
  • a2a6e33 Set up CI with Azure Pipelines (#1)
  • 5294c8c Update Talta to b0d9c09
  • a1a446e Rename standard library from "STL" to "stdlib"; Basic documentation; More
  • de48190 Basic, functional printf in new io module; "Hello world" example; Talta -> v0.7.0
  • a16ced0 Don't copy STL to build directory, fallback to relative STL
  • 70a721f Talta -> v0.6.0
See more
  • 303eaa9 Update Talta (v0.5.0-71bb1da)
  • f84eeea Another STL test function; Talta -> v0.5.0
  • 11e630a Fix index generation; Add STL resolution; Add test STL; Talta -> v0.4.0
  • a4a7421 Talta -> v0.3.0
  • 8b4dbda Update to Talta v0.2.2
  • e5c9641 Preprocessing!; Updated Talta to v0.2.1
  • 2bc308b Binary operators, booleans, and modules; Talta v0.2.0
  • af2862e Assignment expressions; Talta v0.1.0

This list of changes was auto generated.