1. Home
  2. /
  3. Elvish
  4. /
  5. Counter and Theme Toggle

Counter and Theme Toggle - Elvish Typing CST Test

Loading…

Counter and Theme Toggle — Elvish Code

Demonstrates a simple counter with theme toggling using Elvish variables and functions.

count = 0
isDark = $false

fn updateUI {
	echo "Counter: $count"
	if $isDark {
		echo "Theme: Dark"
	} else {
		echo "Theme: Light"
	}
}

fn increment {
	count = (math $count + 1)
	updateUI
}

fn decrement {
	count = (math $count - 1)
	updateUI
}

fn reset {
	count = 0
	updateUI
}

fn toggleTheme {
	isDark = (not $isDark)
	updateUI
}

# Simulate actions
updateUI
increment
increment
toggleTheme
decrement
reset

Elvish Language Guide

Elvish is a modern, expressive shell and scripting language designed for interactive use and automation. It emphasizes structured data, pipelines, modularity, and user-friendly syntax, combining features from traditional Unix shells with modern programming concepts.

Primary Use Cases

  • ▸Interactive shell for Unix/Linux systems
  • ▸Automation scripts for system tasks
  • ▸Structured data pipelines and processing
  • ▸Custom command extensions
  • ▸Rapid prototyping of shell scripts

Notable Features

  • ▸Structured data pipelines with lists, maps, and records
  • ▸Modern, user-friendly syntax
  • ▸Built-in support for functions, modules, and namespaces
  • ▸Interactive editing and command completion
  • ▸Error handling and rich debugging features

Origin & Creator

Created by Jeffrey Shu, first released in 2014.

Industrial Note

Elvish is particularly useful in environments where shell automation, interactive data processing, and structured scripting pipelines are needed.

More Elvish Typing Exercises

Elvish Fibonacci SequenceElvish Factorial CalculatorElvish Prime CheckerElvish Sum of ListElvish Reverse StringElvish Multiplication TableElvish Celsius to FahrenheitElvish Simple Alarm SimulationElvish Random Walk Simulation

Practice Other Languages

CReactPythonC++RustTypeScriptKotlinPHPJavaC#RubyMqlCqlN1qlCypher