http://fexpr.blogspot.com/2011/11/where-do-types-come-from.html
Just started reading the above post when an idea formed.
I am wondering if there is a programming model completely based on types and the rules for assembling them, converting between them, manipulating them etc. (Kind of functional programming but with types) This may be already feasible in c++ generics but I have not played with that in a while and my memory is full of other sludge.
Anyway, the idea goes something like this.
Establish a set of type descriptions and the rules for assembling one type instance from other type instances ( one or more small bits can be assembled into this big thing..) these rules then act as the error conditions and assertions for the process of aggregating the fragments together into the higher level item. Sort of like SQL filtering the records into a record set. This allows you to reason about the record set, even before the set exists... it has known verifiable properties.
Anyway, by describing the whole shebang in terms of type rules, transforms and types, would it be possible to create a system that computed a result without actually having dynamically described operations?
I think this is currently feasible, the more I think about it in both generic programming and some sort of data declaration language, kind of lispish... just not sure what the idea is particularly useful for.
My idea is more about a kind of functional composition model which acts on types with a hard rule set... ok the more I think about it the more the idea is kind of merging into lisp.... need a brain reboot to get it all straightened out.
Friday afternoon is not the best time for profound thought....
Later.
Got the thread again.... Ok, the seed of the idea was that by defining the composition rules, we can have "Emergent" types. Types that are able to self assemble rather than be pre-determined by the programmer. Sounds like insanity? Probably... been reading Machine Learning papers, writing databases and eating too much sugar.... had this great idea ( laugh later) about building a machine learning system, that could self assemble, self evaluate and then prune out non-useful components to optimize the solution as well as the process. Got a whiteboard full of ideas that I need to write down at the moment... wonder if it will make sense on Monday? Should I wait... probably partially delusional anyway... but that's the fun part isn't it.
Showing posts with label Programming Languages. Show all posts
Showing posts with label Programming Languages. Show all posts
Friday, November 18, 2011
Tuesday, November 8, 2011
scary high performance javascript
http://blog.mrale.ph/post/12396216081/the-trap-of-the-performance-sweet-spot
This is a good explanation for when someone tells you that Javascript is "fast"!
This is a good explanation for when someone tells you that Javascript is "fast"!
Labels:
Javascript,
Programming,
Programming Languages,
WebApps
Monday, October 24, 2011
Compiler as API
http://msdn.microsoft.com/en-us/hh500769
Rosylyn project.... Sort into "Things I have wanted to waste time, which I don't have, on..." category. Now if only they would do it for the VC++ compiler.
Rosylyn project...
Labels:
Programming Languages,
Programming Tools
Wednesday, October 12, 2011
My polyglot life... I mean code...
http://www.mindscapehq.com/blog/index.php/2011/07/21/polyglot-programming-some-lessons-learned/
This is a good article on a product that used "polyglot programming". It reminds me of some of the projects that I have had to Frankensteined together. PointLightLab is the worst, it uses native C++, Managed C++, WinForms, XML Schema & DTD, XSD for the XML parser, and implements 5 simple (well 4 simple and 1 convoluted) DSL's for the user side logic. On top of which is layered the academic logic of the domain that we are playing within. It then integrates (or is integrated with) by other packages I have written in PERL, Visual Basic.NET, VBA, MaxScript and others I have probably forgotten.
Pity the poor bastard who inherits this lot.
This is a good article on a product that used "polyglot programming". It reminds me of some of the projects that I have had to Frankensteined together. PointLightLab is the worst, it uses native C++, Managed C++, WinForms, XML Schema & DTD, XSD for the XML parser, and implements 5 simple (well 4 simple and 1 convoluted) DSL's for the user side logic. On top of which is layered the academic logic of the domain that we are playing within. It then integrates (or is integrated with) by other packages I have written in PERL, Visual Basic.NET, VBA, MaxScript and others I have probably forgotten.
Pity the poor bastard who inherits this lot.
Labels:
PointLightLab,
Programming,
Programming Languages
Wednesday, March 2, 2011
C++ Language Arguments
http://c0de517e.blogspot.com/2011/02/surviving-c.html
This looks like an interesting blog. Some of the usual rants in the comments but a few perls hidden around the edges...
This looks like an interesting blog. Some of the usual rants in the comments but a few perls hidden around the edges...
Labels:
Programming,
Programming Languages
Subscribe to:
Posts (Atom)