Ir al contenido principal

Declarative programming...EUREKA!

La verdad que la idea programación declarativa sería realmente innovadora.... si no fuera porque tiene 20 años o talvez diría que 20 años después sigue siendo innovadora..

"Speaking at Microsoft's 2008 Office System Developers Conference in San Jose, Calif., Gates acknowledged work was afoot on such an endeavor, although he described the effort as a five- to eight-year project.

With the declarative language project, the goal is to make programming declarative rather than procedural. "Most code that's written today is procedural code. And there's been this holy grail of development forever, which is that you shouldn't have to write so much [procedural] code," Gates said. "We're investing very heavily to say that customization of applications, the dream, the quest, we call it, should take a tenth as much code as it takes today."

"You should be able to do things on a declarative basis," Gates continued. But this has not caught on partially because of weak data models -- first Codasyl and then relational. Stronger data models since have emerged, such as rich schemas around XML as well as modeling work being done by Microsoft and others, Gates said. "We're bringing the data models up to be much, much richer, and we think in that environment, a lot of business logic can be done in a declarative form. Now, we haven't totally proven this yet. We're doing a lot of internal developments ourselves that way," including some Microsoft business applications, he said.

"We're not here yet saying that [a declarative language has] happened and you should write a ton less procedural code, but that's the direction the industry is going," Gates said. "And, despite the fact that it's taken longer than people expected, we really believe in it. It's something that will change software development but more like in a five- to eight-year timeframe than overnight," he said.

Top Microsoft Technical Fellows, including Brad Lovering, are working on the declarative modeling language project, Gates said.

A published report has referred to the project as the "D" programming language being built as part of the company's Oslo modeling project. But Gates did not specifically mention the name "D" or Oslo."

Fuente: InfoWorld

Se me ocurren mil cosas más para decir pero creo que simplemente alcanza con www.genexus.com.

Comentarios

Entradas más populares de este blog

Abrir links con aplicaciones nativas y no el browser (deeplinking)

El problema que tengo con algunas aplicaciones Android/iOS es que cuando recibo un link por algún medio (mail, tweet, etc) al abrirlo me lo abre con el browser, en lugar de abrirlo con una aplicación nativa asociada a ese “contenido”. Por ejemplo, si recibo un link a un tweet espero que lo abra con alguna aplicación de twitter que tenga instalada y no con el browser. De modo análogo si recibo un mail con una nota de prensa de un medio X y tengo la aplicación de ese medio X instalada, espero que el link lo abra con la aplicación nativa y no con el browser. Lo mismo quisiera con mi aplicación de "banking" o cualquiera que tenga instalada y sepa manejar ese "contenido" (link). Los motivos son bastante obvios pero los resumo en: la experiencia de usuario es mucho mejor en la aplicación nativa que en el navegador. Parte importante del tema es que el mismo link sea válido tanto para ver el contenido en el browser como para verlo en la aplicación, porque como prove

¡A la salud de mi KB!

Es bueno, especialmente en "bases de conocimiento" (KB) que han pasado por varias versiones de Genexus, chequear su "estado de salud". En este sentido KBDoctor  es una herramienta que ayuda mucho, principalmente desde el punto de vista del "modelo" Genexus (atributos, calls, definiciones de variables, etc) representado en una KB. También es útil revisar la salud de los archivos que lo soportan. Hasta la 9.0 eran archivos C-tree (los famosos .DAT) que tenían indices (los famosos .IDX) y teníamos en "rebuild -y" que mejoraba esos archivos y sobre todo reconstruía los indices. A partir de la X las KBs se almacenan en MS SQL Server por lo cual la administración de la misma pasó de ser un "file server" a un "database server". En este sentido algo que me ha dado muy buenos resultados es el "CheckKnowledgeBase".

Rocha:Constantes tipo fecha

En la Rocha se soportan constantes del tipo fecha o fecha-hora con formato ANSI/ISO (AAAA-MM-DD HH:MM:SS).  Tecnicamente (Sintáxis): <date>::=    [0-9]{1,4}"/"[0-9]{1,2}"/"[0-9]{1,2} | [0-9]{1,4}"."[0-9]{1,2}"."[0-9]{1,2} | [0-9]{1,4}"-"[0-9]{1,2}"-"[0-9]{1,2} <hms>::=    [0-9]{1,2}[ap] | [0-9]{1,2}":"[0-9]{1,2}[ap]? | [0-9]{1,2}":"[0-9]{1,2}":"[0-9]{1,2}[ap]? <constant> ::=   "#"<date>"#" | "#"<date> <hms>"#" | "#"<hms>"#" Funcionalmente Se pueden utilizar esas constantes en las reglas, eventos, propiedades, etc (todo lugar donde se utilice el parser): Algunos ejemplos básicos: &FechaInicial=#2007-01-01# &FechaHoraInicial=#07-1-1 11:15a# &HoraInicial=#11a# Me parece bueno no tener que escribir funciones (CTOD, TTOC) sobre constantes tipo char para lograr una fecha y mucho mejor aun en