min

A minimal but powerful concatenative programming language and shell

min is a small concatenative programming language and integrated shell that can be used to perform many tasks, mainly related to system administration, content processing, data manipulation and so on. Currently min provides: * Control flow operators and basic language constructs to manage symbols. * Standard input and output operators. * Basic mathematical and logical operators. * Many operators to work with list-like data structures in a functional way. * Many concatenative operators to perform operators on the main min stack. * Simple ways to read, write, and get information on files and directories. * Support for executing external programs. * Support for getting and setting environment variables. * Suppport for compressing and decompressing ZIP files. * Regular expression matching and substitutions. * Support for many hashing algorithms and AES cryptography. * JSON serialization/deserialization. * An integrated shell with auto-completion and history management. ...all of this in a single file of about 1MB in size available for many operating systems. For more information, head over to ## Why we need your support There are a few things that needs to be done before releasing version 1.0, in particular: * Implement support to run a small subset of the language in JavaScript, so that it can also be used in the browser. * Implement better ways to annotate (and validate) operators arguments and return values. * Provide a small documentation generator to easily produce references for min code. * Provide a standard test module to easily write tests in min. * Consider implementing more of min in itself rather than using Nim. * Enrich the current standard library with more useful operators, based on user feedback. * Finalize the existing API, also based on user feedback. * Improve the documentation on the min site and the min developer guide. min is currently being developed by _one_ person in his free time -- let's just say that any contribution can help speeding things up! :)