guillemet
Translation status: English reader-locale proof. Term names and code fences follow the en pack; supporting prose may still be English.
Guillemet string literals: quotes and apostrophes need no escape.
Syntax: «<text>»
Category#
literal
Related#
Examples#
radix/corpus/literalia/guillemet-quotes.fab (canonical · existing-home)#
Guillemet string literals: quotes and apostrophes need no escape.
# =============================================================================
# guillemet — « … » string literals with unescaped quotes.
# =============================================================================
#
# What this teaches:
# • a guillemet string needs no escape for a double quote or an apostrophe:
# «she said "hi" and it's fine»
# • template holes apply to guillemets too: «hello, §»("me")
# • the literal may span lines; \n and \t still decode
# • a raw » closes the literal, so a guillemet cannot contain »
#
# Common mistakes:
# • Writing \" or \' inside «...» — neither needs an escape.
# • Nesting guillemets — the first » closes the literal.
#
# See also: string, block-string, string
# =============================================================================
# literalia/guillemet-quotes — « ... » literals
#
# GRAMMAR:
# blockStringLit :← '«' ... '»'
#
# EXPECTED OUTPUT:
# she said "hi" and it's fine
# hello, me
# line one
# line two
# tab<TAB>here
main {
print «she said "hi" and it's fine»
print «hello, §»("me")
print «line one\nline two»
let string a ← «x "y" z»
print «tab\there»
}Expected output:
she said "hi" and it's fine
hello, me
line one
line two
tab here