«Ya es posible, en principio, escribir cualquier cálculo en el lenguaje de fórmulas de Excel», según Microsoft. Esto significa que Excel puede ser considerado oficialmente un lenguaje de programación, uno que de acuerdo a Microsoft ya es «Turing completo», y todo gracias a un proyecto llamado LAMBDA.
Se pueden hacer miles y miles de cosas en Excel y eso daría tema para escribir mucho. Con LAMDA los límites se expanden, pues el equipo de Excel ha traspasado los limites que evitaban que se pudiesen transformar las fórmulas de las hojas de cálculo en un lenguaje de programación completo.
Excel tiene más usuarios que C, C++, C#, Java y Python sumados
Millones de personas al rededor del mundo usan Excel para organizar, analizar y visualizar datos. Eso es más gente de la que programa en los cinco lenguajes de programación más usados, por lo que Microsoft no ha dudado en asegurar que Excel es ahora el lenguaje de programación más usado de todos.
Pero bueno, no es así de simple, y «programar en Excel» puede ser algo bastante complejo, especialmente para un usuario y no un entusiasta de la programación o matemático.
Hasta ahora Excel podríamos decir que contaba con dos limitaciones fundamentales que evitaban que pudiese ser considerado como un lenguaje de programación completo:
- Excel solo admitía valores escalares: números, cadenas y booleanos.
- No dejaba que los usuarios definiesen nuevas funciones.
A partir de ya, todo ha cambiado gracias a LAMBDA, «la función definitiva de Excel». Esta función básicamente permite que los usuarios puedan definir nuevas funciones escritas en el propio lenguaje de formulas de Excel, y gracias a LAMBDA, Excel ahora es «Turing completo».
Turing completo
Ser «Turing completo», de acuerdo a la informática teórica, significa que un lenguaje de programación puede implementar cualquier algoritmo. Esto nos habla de lo potente que es un lenguaje de programación, no de rendimiento o de capacidad de mantenimiento o de lo rico que es su ecosistema.
Además podemos decir que Excel ya no está simplemente limitado a texto y números, sino que ahora permite que las celdas contengan registros de primera clase, incluyendo entidades vinculadas a datos externos, y las matrices dinámicas permiten que las fórmulas ordinarias computen matrices enteras que se extienden a las celdas adyacentes.
Microsoft explica en bastante detalle en su blog y en vídeo cómo funciona exactamente esto y las matemáticas detrás del avance. Está claro que se requiere cierto nivel de habilidad para crear algo con LAMBDA, pero en la empresa no dudan que la comunidad alrededor reciba los cambios con mucho entusiasmo.
De hecho, han dicho que con este proyecto están lanzando un experimento a escala global sobre la programación a nivel de usuario con funciones de alto nivel. Para usar LAMBDA es necesario ser un miembro del programa Insider de Office.