doc update

parent f1998338
...@@ -2108,7 +2108,7 @@ In prolog the module + function/arity combination identifies the actual predicat ...@@ -2108,7 +2108,7 @@ In prolog the module + function/arity combination identifies the actual predicat
@subsection @code{"string"} is not atoms. @subsection @code{"string"} is not atoms.
The logic is currently, that to specifiy an atom with general characters we use as in is prolog @code{'atom-+-'}. But some functions returns a string and they will not be translated to atoms unless there is a module cast or at the final application of an string as an goal, where it will be translated to the current module. The reason for this complexity is to have non module objects or to allow for creation of module objects through construction of strings. We choose a composable method of ideoms that control the namespaces of prolog objects (se the modules chapter) and strings. Strings can be specified directly via @code{"string"}. Also a unification of an atom with a string will unify on the name of the string. This means that character handling in guile prolog becomes a smooth experience if one learn the ideoms. The logic is currently, that to specifiy an atom with general characters we use as in is prolog @code{'atom-+-'}. But some functions returns a string and they will not be translated to atoms unless there is a module cast or at the final application of an string as an goal, where it will be translated to the current module. The reason for this complexity is to have non module objects or to allow for creation of module objects through construction of strings. We choose a composable method of ideoms that control the namespaces of prolog objects (se the modules chapter) and strings. Strings can be specified directly via @code{"string"}. Also a unification of an atom with a string will unify on the name of the string. This means that character handling in guile prolog becomes a smooth experience if one learn the ideoms.
@codesubsection unified namespace @subsection unified namespace
Don't expect guile-log to separate names in evaluation expressions and goals, they are the same, so by defining a predicate log you will overwrite the normal log function. Also if you have a variable X in scope and use an atom 'X', then they will mean the same thing. Don't expect guile-log to separate names in evaluation expressions and goals, they are the same, so by defining a predicate log you will overwrite the normal log function. Also if you have a variable X in scope and use an atom 'X', then they will mean the same thing.
@subsection closed files @subsection closed files
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment