¿De qué depende la complejidad de un lenguaje de programación?

De que mi modelo mental coincida con el modelo mental del que hizo el lenguaje.

 

Otra razon es que se tienen falsas expectativas con el lenguaje. Muchos lenguajes vienen a solucionar los problemas que fueron generados por lenguajes anteriores.

Tambien algunos lenguajes pueden ser “complejos” porque tienen poca documentacion o la documentacion esta restringida por la propia comunidad, que no comparte la informacion. Esto es mas cierto de lenguajes que pertenecen a una sola empresa y son “aprendidos” mediante los cursos que esa empresa da. Esa comunidad luego de haber pagado el curso y darse cuenta que era una pavada, no lo quiere compartir porque si no no tiene validez el conocimiento que adquirieron en ese curso. Entonces son complices de la empresa que invento el lenguaje y da los cursos. En general en esas empresas tratan de usar nomenclaturas del estilo …..la T3125 la podes combinarl con la informacion de la T141? Y todos lo que hicieron el curso saben de que se trata.

Otra causa de complejidad en los lenguajes reales es tratar de usar cierto lenguaje con el paradigma de un lenguaje que uno conocia de antes. Cuando uno usa un lenguaje tiene que ser “docil” a sus principios.

Otra cosa que los hace complejos es que los que enseñan los lenguajes y hasta los que hacen los tutorials oficiales no son docentes. Entonces presentan ejemplos que no dejan univocamente claro lo que el ejemplo quiere demostrar.

Ejemplo hacen —— Substring(“cAA”,2) -> “A”

entonces uno no sabe si el indice dos se refiere a la 2da o la 3ra a … (si empieza de 1 o de 0)

Otra razon por la que los lenguajes se hacen complejos es porque la cosas que se enseñan no respetan un nivel de abstraccion eso especifico. Los lenguajes no tienen que ver simplemente con palabras que significan algo. Hay conjuntos de elementos y estructuras que juntos cumplen un fin. Entonces analizarlos a nivel instruccion lo hacen complejos.

El tema como proponge en un canal de youtube que estoy haciendo es que “primero viene el problema” despues el concepto. Primero tenemos que tener un problema con una resolucion no trivial. Cuando vemos como hay un lenguaje que soluciona eso… entonces ahi vemos lo simple y beneficioso que es.

Cuando queremos explicar primero la gramatica del lenguaje atando al que nos escucha en una silla y apuntandolo con una lampara …exigiendole que asimile conceptos gramaticales… para despues, en el modulo 3 empezar a explicarle que problemas soluciona, es ahi donde muchos desisten.

Si quieren ver el video de algunos de los conceptos es el

Los 4+1 conceptos de tecnología del canal Yo no sé tampoco
Watch it on Youtube

Deja un comentario