Category:Stringle

From Rosetta Code
Language
Stringle
This programming language may be used to instruct a computer to perform a task.
Execution method: Interpreted
Garbage collected: No
Parameter passing methods: By reference, By value
Typing: Untyped
See Also:


Listed below are all of the tasks on Rosetta Code which have been solved using Stringle.

Stringle is a simple imperative scripting language based around the manipulation of string variables created by Vacek Nules. Its name is a portmanteau of string and wrangle, being a language to “wrangle strings”. It supports string assignment and concatenation, loops, conditionals with different predicates and overloaded, composable functions called string operators.

It has a concise, J-like syntax with single-character operator symbols instead of keywords. Operators are evaluated over strings as functions and are freely composable in arbitrary chains, but some of them can be assigned to as well to modify the string in their argument in various ways.

Stringle has an extremely simple and basic syntax with only a few primitive operators, easily learnt in just a few hours, yet contains highly powerful ways to amplify and combine the building-block operations, like overloaded operators, function pointers and on-demand creation of extensive function chains.

For a quick example how Stringle looks like, this line of code:

b %.\c #c #:c

could be expanded to the following:

if b contain head reverse c then set curtail c to length tail c

that is, “delete the last character of c if it occurs in the string b”.

It is ideal as a replacement for sed or awk for creating and running text processing scripts and filters, or could also be used as the built-in macro language in larger applications.

The complete specification of Stringle can be consulted here.

Pages in category "Stringle"

The following 6 pages are in this category, out of 6 total.