Learn SNOBOL with Real Code Examples
Updated Nov 20, 2025
Code Sample Descriptions
1
SNOBOL Counter and Theme Toggle
COUNT = 0
ISDARK = 0
UPDATEUI = :
OUTPUT = 'Counter: ' COUNT
OUTPUT = 'Theme: ' :IF ISDARK EQ 1 THEN 'Dark' ELSE 'Light'
INCREMENT = :
COUNT = COUNT + 1
UPDATEUI
DECREMENT = :
COUNT = COUNT - 1
UPDATEUI
RESET = :
COUNT = 0
UPDATEUI
TOGGLETHEME = :
ISDARK = 1 - ISDARK
UPDATEUI
* Simulate actions
UPDATEUI
INCREMENT
INCREMENT
TOGGLETHEME
DECREMENT
RESET
Demonstrates a simple counter with theme toggling using SNOBOL variables and output statements.
2
SNOBOL Fibonacci Sequence
A = 0
B = 1
OUTPUT = A
OUTPUT = B
I = 1
FIBLOOP :I <= 8
C = A + B
OUTPUT = C
A = B
B = C
I = I + 1
:(FIBLOOP)
Generates first 10 Fibonacci numbers.
3
SNOBOL Factorial Calculator
N = 5
F = 1
I = 1
FACTLOOP :I <= N
F = F * I
I = I + 1
:(FACTLOOP)
OUTPUT = F
Calculates factorial of a number.
4
SNOBOL Prime Checker
N = 13
ISPRIME = 1
I = 2
PRIMELOOP :I < N
IF N MOD I = 0 :ISPRIME = 0 :LEAVE
I = I + 1
:(PRIMELOOP)
OUTPUT = :IF ISPRIME EQ 1 THEN 'Prime' ELSE 'Not Prime'
Checks if a number is prime.
5
SNOBOL Sum of Array
ARR = 1 2 3 4 5
SUM = 0
I = 1
SUMLOOP :I <= 5
SUM = SUM + ARR(I)
I = I + 1
:(SUMLOOP)
OUTPUT = SUM
Calculates the sum of a list of numbers.
6
SNOBOL Reverse String
STR = 'HELLO'
REV = ''
I = LENGTH(STR)
REVLOOP :I > 0
REV = REV || STR(I)
I = I - 1
:(REVLOOP)
OUTPUT = REV
Reverses a string.
7
SNOBOL Multiplication Table
N = 5
I = 1
MULTLOOP :I <= 10
OUTPUT = N ' x ' I ' = ' N*I
I = I + 1
:(MULTLOOP)
Prints multiplication table of a number.
8
SNOBOL Temperature Converter
C = 25
F = (C * 9 / 5) + 32
OUTPUT = F
Converts Celsius to Fahrenheit.
9
SNOBOL Simple Alarm Simulation
TEMP = 80
THRESH = 75
OUTPUT = :IF TEMP > THRESH THEN 'Alarm: Temperature Too High!' ELSE 'Temperature Normal'
Simulates an alarm when temperature exceeds threshold.
10
SNOBOL Random Walk Simulation
STEPS = 10
POS = 0
I = 1
RWLOOP :I <= STEPS
IF RANDOM(2) = 0 POS = POS + 1 ELSE POS = POS - 1
OUTPUT = POS
I = I + 1
:(RWLOOP)
Simulates a 1D random walk.