Hello, Sessions.jl

using Markdown
389.6 μs
md"""
# Hello, Sessions.jl

Welcome to your first Sessions.jl notebook! This notebook demonstrates the basics of reactive notebooks in Julia.

Sessions.jl notebooks are **Pluto-compatible** — they use the same `.jl` file format and reactive execution model. You can write them in the terminal TUI or export them as static web pages like this one.
"""
609.5 μs

Hello, Sessions.jl

Welcome to your first Sessions.jl notebook! This notebook demonstrates the basics of reactive notebooks in Julia.

Sessions.jl notebooks are Pluto-compatible — they use the same .jl file format and reactive execution model. You can write them in the terminal TUI or export them as static web pages like this one.

x = 1 + 1
387.6 μs
2
greeting = "The answer is $(x)"
349.2 μs
"The answer is 2"
md"""
## Reactive Execution

When you change a cell, Sessions.jl automatically re-runs all cells that depend on it. This is powered by **ExpressionExplorer.jl** and **PlutoDependencyExplorer.jl** from the Pluto ecosystem.

Try thinking of each cell as a node in a dependency graph — upstream changes flow downstream automatically.
"""
849.5 μs

Reactive Execution

When you change a cell, Sessions.jl automatically re-runs all cells that depend on it. This is powered by ExpressionExplorer.jl and PlutoDependencyExplorer.jl from the Pluto ecosystem.

Try thinking of each cell as a node in a dependency graph — upstream changes flow downstream automatically.

function fibonacci(n)
    if n <= 1
        return n
    end
    a, b = 0, 1
    for _ in 2:n
        a, b = b, a + b
    end
    return b
end
1.4 ms
fibonacci (generic function with 1 method)
fibonacci(10)
8.1 ms
55
fib_sequence = [fibonacci(i) for i in 1:10]
52.3 ms
10-element Vector{Int64}:
  1
  1
  2
  3
  5
  8
 13
 21
 34
 55