I'm not sure how I could implement them, or if I would even want to implement them. I avoided shaders because I feel like they should remain as a hardware accelerated feature.
It would be a challenge, but you could probably replicate the shaders functions in java, the hard part is taking in inputs and outputs and probably compiling the shader to java.
Basically you'd have a simple shader wrapper class, that takes raw shader lines in a string array then just fill up a list of functions that operate over a given list of values (float, texture sampler, ect.) then companion classes per every shader function (ShaderFuncTexture2D, ShaderFuncMix, ShaderFuncSin..)
You'd do blending, depth testing and the clipping or whatever, but the possibilities of having a GLSL function on the CPU oh boy!
It's a challenge but how awesome it would be to run any any libgdx game on the CPU and have it work 1:1 (or 1:crappy shader interpreter in this case)