From 7d1944ab9d2307f2736afe8520436872db1c7617 Mon Sep 17 00:00:00 2001 From: Zuhaitz Méndez Fernández de Aránguiz Date: Sun, 25 Jan 2026 15:12:12 +0000 Subject: 'let' it be --- examples/algorithms/binsearch.zc | 14 +-- examples/algorithms/dfs.zc | 32 +++--- examples/algorithms/quicksort.zc | 12 +-- examples/algorithms/sieve.zc | 4 +- examples/collections/word_freq.zc | 16 +-- examples/cpp_interop.zc | 4 +- examples/data/json_config.zc | 34 +++---- examples/data_structures/binary_tree.zc | 4 +- examples/data_structures/linked_list.zc | 16 +-- examples/data_structures/stack.zc | 12 +-- examples/features/composition.zc | 4 +- examples/features/comptime_fib.zc | 10 +- examples/features/showcase.zc | 10 +- examples/games/zen_craft/main.zc | 170 ++++++++++++++++---------------- examples/gpu/cuda-benchmark.zc | 156 ++++++++++++++--------------- examples/gpu/cuda_info.zc | 10 +- examples/gpu/cuda_vector_add.zc | 20 ++-- examples/graphics/mandelbrot.zc | 34 +++---- examples/graphics/raylib_demo.zc | 10 +- examples/networking/echo_server.zc | 14 +-- examples/process/env.zc | 18 ++-- examples/scripting/lua/lua.zc | 2 +- examples/tools/mini_grep.zc | 64 ++++++------ 23 files changed, 335 insertions(+), 335 deletions(-) (limited to 'examples') diff --git a/examples/algorithms/binsearch.zc b/examples/algorithms/binsearch.zc index db1a354..bcddef2 100644 --- a/examples/algorithms/binsearch.zc +++ b/examples/algorithms/binsearch.zc @@ -1,11 +1,11 @@ import "std.zc" fn binary_search(arr: int*, size: isize, target: int) -> isize { - var low: isize = 0; - var high: isize = size - 1; + let low: isize = 0; + let high: isize = size - 1; while low <= high { - var mid = low + (high - low) / 2; + let mid = low + (high - low) / 2; if arr[mid] == target { return mid; @@ -29,10 +29,10 @@ fn print_array(arr: int*, size: isize) { } fn main() { - var v = Vec::new(); + let v = Vec::new(); defer v.free(); - var values = [1, 2, 3, 5, 6, 7, 8, 9, 10, 12]; + let values = [1, 2, 3, 5, 6, 7, 8, 9, 10, 12]; for i in 0..10 { v.push(values[i]); } @@ -40,8 +40,8 @@ fn main() { "Array: "..; print_array(v.data, (int)v.len); - var target = 7; - var result = binary_search(v.data, (isize)v.len, target); + let target = 7; + let result = binary_search(v.data, (isize)v.len, target); "Found {target} at index {result}"; } diff --git a/examples/algorithms/dfs.zc b/examples/algorithms/dfs.zc index 054a9d4..2d4670c 100644 --- a/examples/algorithms/dfs.zc +++ b/examples/algorithms/dfs.zc @@ -7,7 +7,7 @@ struct Graph { impl Graph { fn new(vertices: int) -> Graph { - var g = Graph { + let g = Graph { num_vertices: vertices, adj_list: Vec>::new() }; @@ -32,10 +32,10 @@ impl Graph { visited[vertex] = true; order.push(vertex); - var neighbors = self.adj_list.data[vertex]; - var neighbor_count = (int)neighbors.len; + let neighbors = self.adj_list.data[vertex]; + let neighbor_count = (int)neighbors.len; for i in 0..neighbor_count { - var neighbor = neighbors.data[i]; + let neighbor = neighbors.data[i]; if !visited[neighbor] { self._dfs_recursive(neighbor, visited, order); } @@ -43,12 +43,12 @@ impl Graph { } fn dfs_recursive(self, start: int) -> Vec { - var order = Vec::new(); + let order = Vec::new(); if start < 0 || start >= self.num_vertices { return order; } - var visited = Vec::new(); + let visited = Vec::new(); defer visited.free(); for i in 0..self.num_vertices { visited.push(false); @@ -59,23 +59,23 @@ impl Graph { } fn dfs(self, start: int) -> Vec { - var order = Vec::new(); + let order = Vec::new(); if start < 0 || start >= self.num_vertices { return order; } - var visited = Vec::new(); + let visited = Vec::new(); defer visited.free(); for i in 0..self.num_vertices { visited.push(false); } - var stack = Vec::new(); + let stack = Vec::new(); defer stack.free(); stack.push(start); while !stack.is_empty() { - var vertex = stack.pop(); + let vertex = stack.pop(); if visited.data[vertex] { continue; } @@ -83,10 +83,10 @@ impl Graph { visited.data[vertex] = true; order.push(vertex); - var neighbors = self.adj_list.data[vertex]; - var i = (int)neighbors.len - 1; + let neighbors = self.adj_list.data[vertex]; + let i = (int)neighbors.len - 1; while i >= 0 { - var neighbor = neighbors.data[i]; + let neighbor = neighbors.data[i]; if !visited.data[neighbor] { stack.push(neighbor); } @@ -106,7 +106,7 @@ impl Graph { } fn main() { - var g = Graph::new(6); + let g = Graph::new(6); defer g.free(); g.add_edge(0, 1); @@ -115,9 +115,9 @@ fn main() { g.add_edge(1, 4); g.add_edge(3, 5); - var order_rec = g.dfs_recursive(0); + let order_rec = g.dfs_recursive(0); defer order_rec.free(); - var order_it = g.dfs(0); + let order_it = g.dfs(0); defer order_it.free(); "DFS recursive order: "..; diff --git a/examples/algorithms/quicksort.zc b/examples/algorithms/quicksort.zc index adef038..53395be 100644 --- a/examples/algorithms/quicksort.zc +++ b/examples/algorithms/quicksort.zc @@ -2,14 +2,14 @@ import "std.zc" fn swap(arr: int*, i: isize, j: isize) { - var temp = arr[i]; + let temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } fn partition(arr: int*, low: isize, high: isize) -> isize { - var pivot = arr[high]; - var i = low - 1; + let pivot = arr[high]; + let i = low - 1; for j in low..high { if arr[j] < pivot { @@ -23,7 +23,7 @@ fn partition(arr: int*, low: isize, high: isize) -> isize { fn quicksort(arr: int*, low: isize, high: isize) { if low < high { - var pi = partition(arr, low, high); + let pi = partition(arr, low, high); quicksort(arr, low, pi - 1); quicksort(arr, pi + 1, high); } @@ -39,10 +39,10 @@ fn print_array(arr: int*, size: isize) { } fn main() { - var v = Vec::new(); + let v = Vec::new(); defer v.free(); - var values = [10, 7, 8, 9, 1, 5, 3, 12, 2, 6]; + let values = [10, 7, 8, 9, 1, 5, 3, 12, 2, 6]; for i in 0..10 { v.push(values[i]); } diff --git a/examples/algorithms/sieve.zc b/examples/algorithms/sieve.zc index 25e2c5a..2f5680e 100644 --- a/examples/algorithms/sieve.zc +++ b/examples/algorithms/sieve.zc @@ -4,7 +4,7 @@ import "std.zc" fn main() { const LIMIT = 50; - var is_prime: bool[LIMIT]; + let is_prime: bool[LIMIT]; for i in 0..LIMIT { is_prime[i] = true; } is_prime[0] = false; @@ -12,7 +12,7 @@ fn main() { for p in 2..LIMIT { if is_prime[p] { - for (var i = p * p; i < LIMIT; i += p) { + for (let i = p * p; i < LIMIT; i += p) { is_prime[i] = false; } } diff --git a/examples/collections/word_freq.zc b/examples/collections/word_freq.zc index 781842c..d025542 100644 --- a/examples/collections/word_freq.zc +++ b/examples/collections/word_freq.zc @@ -2,19 +2,19 @@ import "std/map.zc" fn main() { - var text = "apple banana apple cherry banana apple"; - var delim = " "; + let text = "apple banana apple cherry banana apple"; + let delim = " "; - var counts = Map::new(); + let counts = Map::new(); defer counts.free(); - var temp = strdup(text); + let temp = strdup(text); defer free(temp); - var token = strtok(temp, delim); + let token = strtok(temp, delim); while token != NULL { if counts.contains(token) { - var val = counts.get(token).unwrap(); + let val = counts.get(token).unwrap(); counts.put(token, val + 1); } else { counts.put(token, 1); @@ -27,8 +27,8 @@ fn main() { for i in 0..counts.capacity() { if counts.is_slot_occupied(i) { - var k = counts.key_at(i); - var v = counts.val_at(i); + let k = counts.key_at(i); + let v = counts.val_at(i); println "{k}: {v}"; } } diff --git a/examples/cpp_interop.zc b/examples/cpp_interop.zc index 2f2e033..3db0ea7 100644 --- a/examples/cpp_interop.zc +++ b/examples/cpp_interop.zc @@ -25,8 +25,8 @@ fn main() { cpp_print("Hello from C++!"); - var vec = cpp_make_vector(10, 20, 30); - var result = cpp_sum_vector(vec); + let vec = cpp_make_vector(10, 20, 30); + let result = cpp_sum_vector(vec); "Sum of C++ vector: {result}"; raw { diff --git a/examples/data/json_config.zc b/examples/data/json_config.zc index ccfb1a2..d8604d7 100644 --- a/examples/data/json_config.zc +++ b/examples/data/json_config.zc @@ -17,24 +17,24 @@ struct Config { } fn main() { - var path = "examples/data/config.json"; + let path = "examples/data/config.json"; - var content_res = File::read_all(path); + let content_res = File::read_all(path); if content_res.is_err() { !"Failed to read config file: {content_res.err}"; return 1; } - var json_str = content_res.unwrap(); + let json_str = content_res.unwrap(); - var json_res = JsonValue::parse(json_str.c_str()); + let json_res = JsonValue::parse(json_str.c_str()); if json_res.is_err() { !"JSON Parse Error: {json_res.err}"; json_str.free(); return 1; } - var root = json_res.unwrap(); + let root = json_res.unwrap(); defer { json_str.free(); @@ -47,17 +47,17 @@ fn main() { return 1; } - var config = Config { + let config = Config { server_name: String::new("Unknown"), port: 0, logging: false }; - var obj_map = (*root).object_val; + let obj_map = (*root).object_val; if Map::contains(obj_map, "server_name") { - var opt = Map::get(obj_map, "server_name"); - var val = opt.unwrap(); + let opt = Map::get(obj_map, "server_name"); + let val = opt.unwrap(); if (*val).kind.tag == JsonType::JSON_STRING().tag { config.server_name.free(); config.server_name = String::new((*val).string_val); @@ -65,21 +65,21 @@ fn main() { } if Map::contains(obj_map, "port") { - var opt = Map::get(obj_map, "port"); - var val = opt.unwrap(); + let opt = Map::get(obj_map, "port"); + let val = opt.unwrap(); if (*val).kind.tag == JsonType::JSON_NUMBER().tag { config.port = (int)(*val).number_val; } } if Map::contains(obj_map, "features") { - var opt = Map::get(obj_map, "features"); - var features = opt.unwrap(); + let opt = Map::get(obj_map, "features"); + let features = opt.unwrap(); if (*features).kind.tag == JsonType::JSON_OBJECT().tag { - var f_obj = (*features).object_val; + let f_obj = (*features).object_val; if Map::contains(f_obj, "logging") { - var l_opt = Map::get(f_obj, "logging"); - var l = l_opt.unwrap(); + let l_opt = Map::get(f_obj, "logging"); + let l = l_opt.unwrap(); if (*l).kind.tag == JsonType::JSON_BOOL().tag { config.logging = (*l).bool_val; } @@ -88,7 +88,7 @@ fn main() { } "Configuration Loaded:"; - var s_name = config.server_name.c_str(); + let s_name = config.server_name.c_str(); "Server: {s_name}"; "Port: {config.port}"; "Logging: {config.logging}"; diff --git a/examples/data_structures/binary_tree.zc b/examples/data_structures/binary_tree.zc index 14e7b3d..86acb21 100644 --- a/examples/data_structures/binary_tree.zc +++ b/examples/data_structures/binary_tree.zc @@ -8,7 +8,7 @@ struct Node { impl Node { fn new(v: int) -> Self* { - var n = alloc(); + let n = alloc(); n.value = v; n.left = NULL; n.right = NULL; @@ -71,7 +71,7 @@ impl BST { } fn main() { - var tree = BST::new(); + let tree = BST::new(); defer tree.free(); "Inserting: 50, 30, 20, 40, 70, 60, 80"; diff --git a/examples/data_structures/linked_list.zc b/examples/data_structures/linked_list.zc index cb85554..cd16bf5 100644 --- a/examples/data_structures/linked_list.zc +++ b/examples/data_structures/linked_list.zc @@ -8,7 +8,7 @@ struct Node { impl Node { fn new(v: int) -> Self* { - var n = alloc(); + let n = alloc(); guard n != NULL else { "Out of memory!"; return NULL; @@ -29,7 +29,7 @@ impl LinkedList { } fn push(self, v: int) { - var new_node = Node::new(v); + let new_node = Node::new(v); guard new_node != NULL else { return; } new_node.next = self.head; @@ -37,7 +37,7 @@ impl LinkedList { } fn print_list(self) { - var current: Node* = self.head; + let current: Node* = self.head; "["..; while current != NULL { "{current.value}"..; @@ -50,17 +50,17 @@ impl LinkedList { } fn free(self) { - var current: Node* = self.head; + let current: Node* = self.head; while current != NULL { - autofree var temp = current; + autofree let temp = current; current = current.next; } self.head = NULL; } fn len(self) -> int { - var count = 0; - var current: Node* = self.head; + let count = 0; + let current: Node* = self.head; while current != NULL { count++; current = current.next; @@ -70,7 +70,7 @@ impl LinkedList { } fn main() { - var list = LinkedList::new(); + let list = LinkedList::new(); defer list.free(); "Pushing: 10, 20, 30..."; diff --git a/examples/data_structures/stack.zc b/examples/data_structures/stack.zc index 8f1fea5..4a8593a 100644 --- a/examples/data_structures/stack.zc +++ b/examples/data_structures/stack.zc @@ -43,7 +43,7 @@ impl Stack { fn main() { "[Integer Stack]"; - var int_stack = Stack::new(); + let int_stack = Stack::new(); defer int_stack.free(); "Pushing: 10, 20, 30"; @@ -52,19 +52,19 @@ fn main() { int_stack.push(30); "Size: {int_stack.size()}"; - var p = int_stack.peek(); + let p = int_stack.peek(); "Peek: {p.unwrap()}"; "Popping: "..; while !int_stack.is_empty() { - var opt = int_stack.pop(); + let opt = int_stack.pop(); "{opt.unwrap()} "..; } ""; ""; "[String Stack]"; - var str_stack = Stack::new(); + let str_stack = Stack::new(); defer str_stack.free(); str_stack.push(String::new("First")); @@ -73,8 +73,8 @@ fn main() { "Popping: "..; while !str_stack.is_empty() { - var opt_s = str_stack.pop(); - var s: String = opt_s.unwrap(); + let opt_s = str_stack.pop(); + let s: String = opt_s.unwrap(); "{s.c_str()} "..; } ""; diff --git a/examples/features/composition.zc b/examples/features/composition.zc index 883c348..64fb8e0 100644 --- a/examples/features/composition.zc +++ b/examples/features/composition.zc @@ -21,11 +21,11 @@ struct Rigidbody { fn main() { // Mixin usage - flattened fields - var t = Transform{ x: 10.0, y: 5.0, rotation: 90.0 }; + let t = Transform{ x: 10.0, y: 5.0, rotation: 90.0 }; println "Transform pos: ({t.x}, {t.y})"; // Named usage - nested fields - var rb = Rigidbody{ + let rb = Rigidbody{ position: Vector2{x: 0.0, y: 10.0}, velocity: Vector2{x: 1.0, y: 0.0}, mass: 50.0 diff --git a/examples/features/comptime_fib.zc b/examples/features/comptime_fib.zc index 1ad2898..278ae9f 100644 --- a/examples/features/comptime_fib.zc +++ b/examples/features/comptime_fib.zc @@ -1,17 +1,17 @@ fn main() { comptime { - var N = 20; - var fib: long[20]; + let N = 20; + let fib: long[20]; fib[0] = (long)0; fib[1] = (long)1; - for var i=2; i Generics and traits."; - var btn = Button { + let btn = Button { label: "Submit", width: 120, height: 40 }; - var container = Container