// Test WITHOUT FBIP by forcing rc>1 (shared reference) fn useList(l: List): Int = { List.length(l) } fn main(): Unit = { Console.print("=== Without FBIP (forced rc>1) ===") let a = List.range(1, 100) // Create alias to bump rc, preventing FBIP let alias = a let len1 = useList(alias) // Now 'a' has rc>1 so map must allocate new list let b = List.map(a, fn(x: Int): Int => x * 2) let c = List.filter(b, fn(x: Int): Bool => x > 50) let d = List.reverse(c) Console.print("Shared reference chain done") }