x <- matrix(c(1.5, 2.5, 3.5, 4.5), nrow = 2)
xi <- matrix(1:4, nrow = 2)
mat_demo_(x, xi)

vec_demo_(c(1.0, 2.0, 3.0), 1:3)

slices <- list(
  matrix(1:6, nrow = 2), # slice 1
  matrix(7:12, nrow = 2), # slice 2
  matrix(13:18, nrow = 2) # slice 3
)
cube_col_means_(slices)

mats <- list(
  matrix(1:6, nrow = 2), # 2x3 matrix
  matrix(1:12, nrow = 4) # 4x3 matrix  (different nrow!)
)
field_mat_demo_(mats)

x <- matrix(1:9, nrow = 3) * 1.0
mat_out_demo_(x)

vec_out_demo_(c(3.0, 4.0)) # should give c(0.6, 0.8)

set.seed(42)
result <- random_cube_(3L, 4L, 2L)

length(result) # 2  (one element per slice)
dim(result[[1]]) # 3 4

build_field_(c(3L, 5L, 2L)) # list of three vectors of lengths 3, 5, 2

as_sexp_demo_(c(3.0, 1.0, 2.0)) # returns c(1, 2, 3)

