[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Thoughts on Deterministic Processes and UMM
Team, I sensed I was soap-boxing around deterministic processes and BPSS on Monday's call - so I thought it worthwhile to take ten minutes here to type some brain-dumping. A deterministic process actual has formal theoretical basis back in the days of Programming in Logic and the development of Prolog - where there was work done to show that mathematically that the decision matrix is a closed set. Certain things are required for this - much of which will be very familiar to BPSSrs - such as single entry point, single exit point (BTA), guard conditions that return true/false, and then predicate clauses and fact assertions - aka variables, transactions and our BSI binding model. Of course then we had the object oriented programming model emerge, along with object oriented Prolog and then things like Java with the throw and catch method, and again Prolog contains constructs to emulate those too. The cool thing about a Prolog engine is that given a Prolog program it will actually evaluate it at parsing time and tell you if it is deterministic or not. That is obviously a very desirable behaviour from a BPSS / UMM point of view. So - looking at all this - I had already said earlier this year - that I believe a Prolog engine provides a natural means to creating a validation service for a BPSS model. Also - looking at where BPSS stands right now - I beleive I could take my VisualScript model - that outputs a BPSS XML instance - and morph that - so that the exact same model representation can output a valid Prolog program - with predicates, assertions and clauses. Of course that is a non-trivial exercise - so don't expect that in just a weekend - but the potential is there - to take something like the excellent SWI Prolog (open source) foundation - and create such a BPSS validator. I do beleive it is potentially very cool and important for adopters of BPSS to see that we are pursuing this path of enabling deterministic process definitions when using BPSS. Of course you *can* break the model - hence Prolog will give you a warning when that happens - but the whole way we have set things up to date positively reinforces and encourages deterministic models. This IMHO is a good thing - and a thing of beauty. OK - I'm indulged - you can go back to whereever you where ten minutes ago! Thanks, DW
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]