ALEx is meant to be a publicly avaliable repository of extensions for the Quackery programming language created by Gordon Charlton. At the time of its creation the language doesn't have a significant community that I know of, but I hope someone interested in Quackery finds this repo useful.
All extensions are described inside their files.
There are a couple of ways to use ALEx depending on how much you are comfortable with downloading and how many extensions you need.
If you are going to be using almost every extension provided in the repository you can just clone it with git. They should be cloned into a folder 'ALEx' in the directory you are running Quackery from. Then you can copy the ALEx-loader.qky into the Quackery directory and add it to your extensions.qky. It will handle loading extensions from the 'ALEx' folder, just uncomment relevant lines in yout ALEx-loader.qky.
The added convenience is that any updates can be performed by pulling the repository and copying the ALEx-loader.qky.
If you wish to use a substantial amount of extensions provided here but don't want to clone the whole repo you can make the 'ALEx' folder yourself and download any extensions you need by hand. You then can download ALEx-loader.qky, uncomment relevant lines and add it to your extensions.qky. It will handle loading extensions from the 'ALEx' folder. Be careful to make sure that either your system supports file.path or you downloaded the filepath.qky extension.
If you only wish to use a couple of extensions you can just download them and add to your extensions.qky. They are just Quackery files after all, you don't need any fancy loaders to use them.
Some extensions may require the system with the protect breaks bailed issue resolved.
Some extensions may require file.path support which, if not provided by the system, can be loaded from filepath.qky. ALEx-loader.qky requires either file.path system support or filepath.qky among the extensions in the 'ALEx' folder.
-
ALEx-loader.qkyUsed to load extensions. Should be copied up a directory. Assumes the folder with ALEx extensions is called 'ALEx'.
Author: Aleksander "olus2000" Sabak
-
bigrat.qkyBig rational number operations.
Author: Gordon Charlton
-
binary-search.qkyRightmost binary search.
Author: Gordon Charlton
-
brainfuck.qkybrainfuck interpreter.
Author: Gordon Charlton
-
filepath.qkySupport for relative and scoped paths.
Author: Aleksander "olus2000" Sabak
-
higher-order.qkyHigher order functions.
fold,foldr,map,filterAuthor: Gordon Charlton
-
lookup-table.qkyLookup table/association table/dictionary implementation.
Author: Aleksander "olus2000" Sabak
-
merge-sort.qkyReplaces the default sorting words with a more efficient algorithm.
Author: Gordon Charlton
-
priority-queue.qkyPriority queue implementation.
Author: Gordon Charlton
-
sundry.qkySome words that were considered for Quackery core words.
#footnotes– more ways of making comments.[peek][poke]– likepeekandpokebut can dive into nested nests.switchcaseotherwise– a switch statement.
Author: Gordon Charlton
-
template.qkyTemplate for your own extension. Feel free to submit pull requests with your work.
Author: Aleksander "olus2000" Sabak