Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

XPCE Prolog command causing error in VS2008 C++

Status
Not open for further replies.

HJoshy

Programmer
Mar 9, 2010
9
GB

Upon loading into a C++ program a Prolog program that contains the command 'send' (xpce graphics), I get error messages of type:

Syntax Error: Operator Expected.

Here is an example command that causes the errors:

send( Dialog, append, button(continue, message(@prolog, clear_my_blackboard)) ),

I used to get the same errors when I used the plld.exe utility for interfacing my C++ and Prolog programs. At the time, I thought the problem was that plld was for some reason incompatible with xpce graphics.

But now that I consult (load) my Prolog source files into my C++ files using:

PlCall( "consult(myPrologFile.pl)" );

I still get these error messages. I could comment out the lines that contain xpce-specific commands, but I'd rather know what the problem is and how I can circumnavigate it. So, I would appreciate any help.

Cheers,
.
.
.
 
*

@ is apparently unknown!

It is loaded by the 'rc' file in the SWI home dir and realizes the XPCE binding. I should load this by hand, using:

consult( swi( 'plwin.rc' ) )

All my pl and xpce source files were compiled successfully.

I am interfacing C++ and Prolog to connect a cognitive architecture written in Prolog to a robotic simulator written in C++. I am using SWI version 5.8.0 so I had to use the following line in my C++ program to achieve that:

PlCall( "consult( swi( 'plwin.rc' ) )" );

This command resulted in:

swi(plwin.rc) compiled into link_xpce

Thanks to Jan Wielemaker.

*
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top