=================================================================
Logtalk - Object oriented extension to Prolog
Release 2.16.0

Copyright (c) 1998-2004 Paulo Moura.  All Rights Reserved.
=================================================================


% DCG rules implementing a simple calculator:

| ?- calculator::parse("1+2-3*4", Result).

Result = -9
yes


% recognizing gramatically correct sentences

| ?- sentence::parse([the, girl, likes, the, boy], Result).

Result = true
yes

| ?- sentence::parse([the, girl, scares, the, boy], Result).

Result = false
yes


% generating parse trees for sentences

| ?- parsetree::parse([the, girl, likes, the, boy], Tree).

Tree = Tree = s(np(d(the), n(girl)), vp(v(likes), np(d(the), n(boy))))
yes


% conversion between compound terms and XML

| ?- xml::convert(word(child, children), word(singular, plural), XML).

XML = '<word><singular>child</singular><plural>children</plural></word>' 
yes

| ?- xml::convert(Term, Interpretation, '<word><singular>child</singular><plural>children</plural></word>').

Term = word(child, children)
Interpretation = word(singular, plural) 
yes


% parsing URLs

| ?- url::parse("http://www.logtalk.org", Components).

Components = [protocol(http), address([www, logtalk, org]), path([]), file('')] 
yes

| ?- url::parse("http://www.logtalk.org/", Components).

Components = [protocol(http), address([www, logtalk, org]), path(['']), file('')] 
yes

| ?- url::parse("http://www.logtalk.org/cvs", Components).

Components = [protocol(http), address([www, logtalk, org]), path([cvs]), file('')] 
yes

| ?- url::parse("http://www.logtalk.org/cvs.html", Components).

Components = [protocol(http), address([www, logtalk, org]), path([]), file('cvs.html')] 
yes

| ?- url::parse("http://193.136.64.5/files/update", Components).

Components = [protocol(http), address([193, 136, 64, 5]), path([files, update]), file('')] 
yes
