Executed on every request

Live Lasso 8.6 code

The result panels below are rendered by the same source shown beside them. They are not screenshots or client-side simulations.

Request data + safe output

Hello, Lasso developer

Submit a name. Form_Param reads the query string and Encode_HTML keeps visitor input in text context.

examples.lasso
[Var_Set:'visitor'=(Form_Param:'name')]
[If:!(Var:'visitor')]
  [Var_Set:'visitor'='Lasso developer']
[/If]
Hello, [Encode_HTML:(Var:'visitor')]
live resultHello, Lasso developer
Collections

One-based, ordered arrays

Lasso collections retain their familiar member-call syntax and one-based indexing.

collections.lasso
[Var_Set:'tools'=(Array:'LDML','LassoScript','Rust')]
Count: [$tools->Size]
Second: [$tools->(Get:2)]
Joined: [$tools->(Join:' · ')]
live resultCount: 3
Second: LassoScript
Joined: LDML · LassoScript · Rust
Reusable language code

A custom tag

Definitions are installed into the warm worker and invoked with Lasso’s named-parameter model.

custom-tag.lasso
[Define_Tag:'Legacy_Summary',
  -Required='Name', -Priority='Replace']
  [Return:(#Name + ' runs on Lasso ' + Lasso_Version)]
[/Define_Tag]
[Legacy_Summary:-Name='This page']
live resultThis page runs on Lasso 8.6
Dates + branching

The runtime is stateful, the response is current

Date values and condition containers execute server-side. Persistent globals, caches, and sessions remain on the single canonical worker between requests.

runtime.lasso
[Var_Set:'ready'=True]
[If:$ready]Profile [Lasso_Version] is ready.[Else]Offline.[/If]
Worker date: [Date_GetCurrentDate]
live resultProfile 8.6 is ready.
Worker date: 08/29/2026 15:49:45