difference between 6.4x and 6.3x ?

71 views
Skip to first unread message

Denis Berthier

unread,
Jan 22, 2020, 4:06:18 AM1/22/20
to CLIPSESG
I haven't followed the evolution of Clips in detail.
In the last release (r759), apart from the use of Unicode, is there any difference between the cores of the 63x and 64x branches?
Which is now the recommended one?

CLIPS Support

unread,
Jan 22, 2020, 1:12:46 PM1/22/20
to CLIPSESG
Mostly internal changes. From the Advanced Programming Guide: 
  • Environment API – The environment API is the only supported API. The Env prefix has been removed from all API calls.


  • Void Pointers – The use of generic (or universal) pointers in API calls when an appropriate typed pointer exists has been discontinued.


  • Bool Support – The APIs now utilize the bool type for representing boolean values.


  • Primitive Value Redesign – The implementation of primitive values has been redesigned. The function A ddS y mbo l has been replaced with the functions CreateSymbolCreateStringCreateInstanceName, and CreateBoolean. The function AddLong has been replaced with the function CreateInteger. The functionAddDouble has been replaced with the function CreateFloat. The function CreateMultifield has been replaced with the MultifieldBuilder API and the functions EmptyMultifield and StringToMultifield. See section 4.1 and section 6 for more information.


  • User Defined Function API Redesign – The User Defined Function API has been redesigned. The DefineFunction function has been renamed to AddUDF and its parameters have changed. The function RtnArgCount has been renamed to UDFArgumentCount and its parameters have changed. The functions ArgCountCheck and ArgRangeCheck are no longer supported since the UDF argument count is automatically checked before a UDF is invoked. The function ArgTypeCheck has been replaced with the functionsUDFFirstArgumentUDFNextArgumentUDFNthArgument, and UDFHasNextArgument. See section 8 for more information.


  • I/O Router API Redesign – The I/O router API has been redesigned. The parameters for the AddRouter function have changed. The GetcRouterUngetcRouter, and PrintRouter functions have been renamed to ReadRouterUnreadRouter, and WriteString. The WPROMPTWDISPLAYWTRACE, and WDIALOG logical names are no longer supported. The WWARNING and WERROR logical names have been renamed to STDWRN and STDERR. See section 9 for more information.


  • Garbage Collection API Redesign – The Garbage Collection API has been redesigned. The functions IncrementGCLocksDecrementGCLocksIncrementFactCountDecrementFactCountIncrementInstanceCountand DecrementInstanceCount are no longer supported. The Retain and Release functions should be used to prevent primitive values from being garbage collected. See section 5 for more information.

  • FactBuilder and FactModifier APIs – The FactBuilder and FactModifier APIs provides functions for creating a modifying facts. See section 7 for more information.


  • InstanceBuilder and InstanceModifier APIs – The InstanceBuilder and InstanceModifier APIs provides functions for creating a modifying instances. See section 7 for more information.


  • StringBuilder API – The StringBuilder API provides functions for dynamically allocating and appending strings. See section 4.3 for more information.


  • Eval Function – The Eval function is now available for use in run-time programs. See sections 4.2 and 11 for more information.


  • Compiler Directives – The ALLOW_ENVIRONMENT_GLOBALS flag has been removed. The V A X _ V MS flag has been removed.

Reply all
Reply to author
Forward
0 new messages