Today I read a post about down to earth coding. I think it was inspiring, because I realized I've been doing some things wrong.
I think I have been working on ColonyDSL without a clear goal during the last two years, because those goals are too complex to accomplish...
No perfect all-purpose language for development
I think it is impossible to have an all-purpose language that works in every context and for every problem. DSLs are a solution for this particular problem, but it comes with a price.
In ColonyDSL a Function can receive any kind of data. This includes a problem definition or a set of instructions. So, in theory a Function can act as a DSL interpreter.
Functions, data and types should live in the same place
In all purpose programming languages, functions usually lives in the same place than types. Types definition (class, type, interface ...) live in the same file or near function code. But thats not true for data.
In ColonyDSL we have a memory abstraction which can store any kind of element, including Types, Functions or Data
Types shouldn't be plain
In all purpose programming languages, any data used during execution is a type. Some programming languages allows type castings, others provides convenience methods for conversion. But I don't know any language that allows programmer to validate any data against a type, or iterate any data acording to a type.
In ColonyDSL, types are formal grammars and have a lot of methods
It is hard to explore semantic connections between elements
I think that semantic web and NLP are here to stay. Programming languages doesn't offer methods to connect its elements (Functions, Types, Data) to concepts and its relations, which would allow to connect them to the semantic domain.
This is a planned feature in ColonyDSL
There are much more features and ideas I want to include in this project. But like the post said, it is better to keep it down to earth
08 febrero 2012
Suscribirse a:
Enviar comentarios (Atom)
0 comentarios:
Publicar un comentario en la entrada