Is it possible to create / register user functions in 6.3 from C#? Are there examples of this? I appear to be stumbling over it.
Doing some preliminary profiling it looks like the time is coming from factmngr.c around the ResetFacts function which involves the RetractAllFacts -> Retract -> RetractDriver. Things are definitely more complex over the v6 code. Any hints or help?
Thanks Gary. Any thoughts on why there might be perfomance issues?
Getting to a point where I am performing integration testing with the new (6.4) version of the CLIPS engine. I have converted my 15+ year old C++ application to C# and kept the rules, facts, etc. the same just the interface into CLIPS has changed. I noticed a speed difference in execution over v6.0 in general calling the engine once per process lifetime and more significant performance issues when calling CLIPS repeatedly during a single process lifetime. I went from a sub-second turn around to 3-4...
Working through my .CLP file loads this morning I kept receiving generic load error messages "Could not load file XXXX.CLP." After tracing through the issue I observed the following: 1. I put a break point at the start of the Load (CLIPSNET_Environment.cpp - Environment::Load) if (ebFileName->Length) { pin_ptr<byte> pbFileName = &ebFileName[0]; if (m_Env->Load((char *) pbFileName) == 0) { CaptureEnd(commandCapture,false); throw gcnew System::IO::FileNotFoundException( "Could not load file '" + fileName...
Nevermind the previous post, it appears I was not properly loading the external files. I am howver having issues loading those with nothing but a generic message. I will need to do more digging
I am in the midst of upgrading our Exert System from v6 (from 1999ish) to v6.4 of the CLIPS engine and have a couple of questions. I was not the original author so I can't claim to be the expert on the rules and structure around the current system but do know that things have worked quite well for nearly 20 years. I am adopting the .NET flavor of 6.4 versus the C++ interface for the v6 implementation so not sure what changes may be altering how things might work. I have gotton to the point where...
Thanks Gary - works great! Chose to use option 2.
;Say I have a fact such as: (deftemplate some_fact1 (slot sf1_type (type SYMBOL))...
Turned out to be me not paying attention to what I was doing. Thanks
Turned out to me not paying attention to what I was doing. Thanks
I am running into issues trying to assert facts to a DefTemplate. The assert loks...