* move shape into arg for param/buffer
* no param_from_shape
* drop gratuitous syntax changes
* image is a in-graph view, folded into the param arg at render; drop dead multi param sharding
* view_as helper, simpler resolve_function, spec update
* spec: param/buffer are flat storage, no shape input
* image dims live in the param arg from transform_to_image; tighten kernel graph spec
* kernel graph spec: only RESHAPE/SHRINK over storage values, not all movement
* kernel graph: call args are storage, not views (pm_no_view_args); assert in spec
* strip views at the kernel graph level (pm_no_views), move into rangeify
* touchups
* add precompile to call
* put get back
* something
* after structure
* alt
* keep it call
* resolve call
* resolve linear call
* precompile works with llm
* revert rangeify
* color for debugging
* getenv PRECOMPILE
* clean up deco pattern
* fully recursive sink scheduling
* revert llama
* fix SPEC=2
* embedding is slow
* failing
* float is fine
* null
* it fails
* simplify embedding with broadcasting
* ATOMIC_ADD incoming
* min change
* simpler test
* better test
* fix test
* real test
* simpler
* cleanups
* types and names
* _zero_kernel
* grad multi
* hack
* none
* multi unshard
* more for call
* don't tag in call
* good
* call_multi
* call_multi wow claude is useless
* embedding backward mutli test
* test passes
* fix as_param
* shape_to_shape_arg
* add clip
* before cast
* fix spec=2, use atomics