(#52) experimental: lazily compile+link widgets