-
Notifications
You must be signed in to change notification settings - Fork 17
zz note: important dynamic programming patterns
An often cited advantage of dynamic typing is that it helps make code substantially smaller (Sometimes 2-5x). One recent implementation of a compiler in several languages had a Python version that was half the size of the next smallest entry.
This problem is only partially limitations of static typing itself, or the specification of type-declarations. It also includes lack of support for meta-programming models and convenient syntax for dynamic data.
Irken wants to fit a similar need, of very dense and understandable code, and so it is interesting to try to understand what these dynamic programming patterns are, and how they might map to Irken. These are some of the dynamic programming patterns I see...
-
lists of semi-hetrogenous maps (i.e. lots of optional fields)
-
object meta-programming for static type-spaces (for example, database ORM, format-strings)
-
object meta-programming for dynamic type-spaces (For example, HTML DOM)
-
dynamic type-first programming - i.e. only import "top level constructors"