WEBSITE ALPHA · AI-assisted, source-reviewed documentation · Full-stack docs reconciled 2026-08-26
64x64base

Function Catalog

Source-derived DotTalk++ expression function catalog.

This page is generated from src/cli/expr/function_catalog.cpp, which is the current source-side documentation catalog for expression functions.

The extension examples live separately under src/ext/fn; they demonstrate how learners can add self-registering functions without changing the core catalog.

Source extraction snapshot: 73 core documented expression functions, plus 2 self-registering student function examples (listed below).

Source-Derived Functions

FunctionAliasesCategoryArgsSummary
UPPERString1Convert text to uppercase.
LOWERString1Convert text to lowercase.
ALLTRIMString1Trim leading and trailing spaces from a string value.
LTRIMString1Trim leading spaces from a string value.
PROPERString1Convert text to proper case: capitalize the first letter of each word and lowercase the rest.
PADLString2-3Pad a string on the left to a given length, optionally with a specified pad character.
PADRString2-3Pad a string on the right to a given length, optionally with a specified pad character.
PADCString2-3Pad a string on both sides to center it within a given length, optionally with a specified pad character.
STUFFString4Replace part of a string: remove <length> characters starting at <start> and insert the replacement text.
RTRIMTRIMString1Trim trailing spaces from a string value.
LEFTString2Return the leftmost characters of a string.
RIGHTString2Return the rightmost characters of a string.
SUBSTRString2-3Return a substring starting at a 1-based position.
LENNumeric1Return the length of a string value.
SOUNDEXSearch1Return a four-character phonetic Soundex code for a character expression.
ATSearch2-3Return the 1-based position of a substring occurrence.
ATCSearch2-3Return the 1-based position of a substring occurrence, case-insensitive.
LIKELogical2Match a value against a wildcard pattern.
STRConversion1-3Convert a numeric value to a formatted string.
VALConversion1Extract the leading numeric portion of a string.
CONCATSTRCATConstruction1-32Concatenate all arguments into a single string.
ASCString1Return the character code of the first character in a string.
CHRString1Return the single-character string for a numeric character code.
CHRTRANString3Replace characters in a string by position-mapped translation.
EMPTYLogical1Return whether a value is empty according to expression-engine rules.
FILELogical1Return whether a file or directory exists at the given path.
RATSearch2Return the 1-based position of the last occurrence of a substring.
REPLICATEConstruction2Repeat a string value a specified number of times.
SPACEConstruction1Return a string containing the requested number of spaces.
STRTRANString3Replace occurrences of a substring within a string.
TRANSFORMConversion1-2Convert a value to display-oriented character form.
DATEDate0-1Return the current system date, local by default or in a named zone.
UDATEDate0Return the current UTC date. Zero-argument alias for DATE("UTC").
UTIMEDate0Return the current UTC time. Zero-argument alias for TIME("UTC").
UNOWDate0Return the current UTC date and time. Zero-argument alias for NOW("UTC").
UDATETIMEDate0Return the current UTC date and time. Alias of UNOW().
TODAYDate0-1Return the current system date, local by default or in a named zone.
NOWDate0-1Return the current date/time value, local by default or in a named zone.
DATETIMEDate0-1Return the current date/time value, local by default or in a named zone.
TIMEDate0-1Return the current system time, local by default or in a named zone.
SECONDSDate0Return the current time expressed as seconds-of-day or equivalent engine-specific seconds value.
CTODDate1Convert a character string to a date value.
DTOCDate1-2Convert a date value to character form.
DTOSDate1Convert a date value to sortable character form.
DAYDate1Return the day-of-month component of a date.
MONTHDate1Return the month component of a date.
YEARDate1Return the year component of a date.
DOWDate1Return the day-of-week number for a date.
CDOWDate1Return the day-of-week name for a date.
CMONTHDate1Return the month name for a date.
DATEADDDate2Return a new date shifted by a specified interval.
DATEDIFFDate2Return the difference between two date values.
GOMONTHDate2Return a date shifted by a specified number of months.
ABSNumeric1Return the absolute value of a numeric expression.
INTNumeric1Return the integer portion of a numeric value.
ROUNDNumeric1-2Round a numeric value to a specified number of decimal places.
MINNumeric2-32Return the smallest value from two or more numeric expressions.
MAXNumeric2-32Return the largest value from two or more numeric expressions.
MODNumeric2Return the remainder from dividing one numeric value by another.
SQRTNumeric1Return the square root of a numeric value.
LOGNumeric1Return the natural logarithm of a numeric value.
LOG10Numeric1Return the base-10 logarithm of a numeric value.
EXPNumeric1Return e raised to the power of the supplied numeric value.
SINNumeric1Return the sine of an angle expressed in radians.
COSNumeric1Return the cosine of an angle expressed in radians.
TANNumeric1Return the tangent of an angle expressed in radians.
ASINNumeric1Return the arc-sine of a numeric value.
ACOSNumeric1Return the arc-cosine of a numeric value.
ATANNumeric1Return the arc-tangent of a numeric value.
CEILINGNumeric1Return the smallest integer greater than or equal to the numeric value.
FLOORNumeric1Return the largest integer less than or equal to the numeric value.
BETWEENNumeric3Return whether a numeric value lies within an inclusive lower and upper bound.
RANDNumeric0Return a pseudo-random numeric value.

Self-registering functions (open architecture)

These are not part of the core function_catalog.cpp set. They are shipped student/extension examples registered at runtime through the same extension hook used by student commands. Copy an extension file to add a function without editing the core catalog.

FunctionAliasesCategoryArgsSummary
STU_UPPERExtension1Student extension sample: convert a string to uppercase.
STU_REPEATExtension2Student extension sample: repeat a string a given number of times.