Sandbox/Elm Programming Language/String class

From Athile

Jump to:navigation, search
/*@doc
    declaration of symbols
    definition of symbol invokation
 
    <concept> <symbol> <assignment op> <expression>;
    := clones object
    &= references object
 */
 
class string
{
    clone   array   characters  : ( array.uniform(char) );
}
 
function (string base) length () => (integer)
{
    return length(base.characters);
}
 
function (string base) op_append (string suffix) => (string)
{
    clone integer length := suffix.length();    
    for (var i in length)
    {
        base.characters.push(suffix.characters[i]);
    }
    return base;
}
 
function (string) set_lorem_ipsum () => (string)
{
    s = <"
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy 
eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam 
voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita 
kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem 
ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod 
tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. 
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd 
gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. 
 
Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie
consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et 
accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit 
augue duis dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, 
consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut 
laoreet dolore magna aliquam erat volutpat.
    ">;
}
Navigation
Toolbox