Existen preprocesadores en js
y css.
Un preprocesador toma un archivo y lo convierte en algo que el navegador entiende.
En CSS, se utilizan para añadir características que de otra forma no existirían (todavía): Variables CSS, Nesting y mucho más. Ejemplos notables en esta categoría son Sass, Less y Stylus.
En JavaScript como salida, pueden convertir (compilar) desde un lenguaje completamente diferente, o convertir (transpilar) un superconjunto o un nuevo estándar de lenguaje hasta el estándar actual. Ejemplos notables en esta categoría son CoffeeScript y ES6 (vía Babel).
Aqui algunos links: