Object hash-codes and comparisons
Argentum Objects got two methods: getHash and equals. They look much like Java, but there are multiple nuances. Hash-codes Comparisons String literals
programming language
programming language
Argentum Objects got two methods: getHash and equals. They look much like Java, but there are multiple nuances. Hash-codes Comparisons String literals
Steam-OS specific tasks Steam Deck is an Arch Linux machine with slightly tweaked environment.So first let’s first convert it to some more standard Linux. Download and install the Argentum demo Argentum demo goes in the form of DEB package. Arch…
Open compiler project in Visual Studio Run/Debug Select x64-Debug configuration and ag-test.exe as a startup target. Run/debug code as usual. To run/debug the Argentum compiler (agc): Tip: if paste to “args”: [] a raw command line (like -src d:\cpp\argentum\demo -start…
This instruction is deprecated, because Argentum switched to VCpkg. Use this instruction: Build Argentum from sources on Ubuntu Preparations Install GCC and friends: Install Ninja build system and CMake LLVM Get LLVM sources: Prepare build files: Build LLVM (this will…
Create Start the PowerShell and type: After reboot enter your username/password and viola, you have your Ubuntu. Unfortunately it is on drive C. If you need it somewhere else, there is a way: Move to over location (D:) Make a…
This post is outdated. See instead Directory structure: Install prerequisites Build LLVM from sources Unzip LLVM sources from d:\cpp\llvm-project-llvmorg-17.0.4 Make VS project/solution files This takes several minutes Build the LLVM project This might take several hours. Install Check…
The secret actual reason for Argentum creation Argentum executables are small (starting from kilobytes w/o specific runtime libs), they have no memory and CPU overheads. So this language is applicable to everything from microcontrollers to desktops, web and mobile platforms.…
Argentum blocks can be marked with ‘=name’ labels that are visible from inner sub-statements. They are used in ^leave statements. Leave-statement can have a parameter – expression that produces result It reads as “here’s a block “sign”. If ‘i<0’ terminate…
In Argentum optional type can wrap any type, including another Optional. This theoretically allows having types like ?int, ??int, ???int, and so on. Why is this needed? For instance, when accessing a container of bool or optional elements, it’s necessary…
In Argentum all standard containers, return optionals (?T) when indexed with x[i]. Therefore, Argentum makes it impossible to access beyond the array bounds or using an invalid key in associative containers. It not only helps to prevent OOB errors. It…