Modular Logic Programming model (Brogi et al.,
1994) without dealing with more complex software
engineering paradigms. LogicWeb is also the web-
oriented logic language most resembling Web Logic
Programming. However, it is designed to be exploited
on the client side of the web: instead of resources,
it models pages as HTML documents, which are but
just one possible representation of a resource; besides,
it unfortunately lacks the insight on the intrinsic rela-
tionship amongst resources encompassed by a single
URI that have been only achieved so recently, and that
have been included in modeling the WebLP language.
6 ONGOING AND FUTURE
WORK
We presented a logic programming language exten-
sion called Web Logic Programming, designed to
model resources, as the key abstraction of the World
Wide Web, and their interaction. WebLP is the
first web-oriented logic language to benefit from the
architectural specification of hypermedia distributed
systems as described by the Representational State
Transfer style (Fielding, 2000), and from the insights
and principles of the Resource-Oriented Architecture
(Richardson and Ruby, 2007).
The Web Logic Programming language is in-
tended to exploit the full potential of declarative tech-
nologies by representing the foundation of a logic
programmingframework for engineering applications
on the World Wide Web so as to follow its archi-
tectural principles and design criteria. To fulfill this
broaderaim, ongoingwork is devoted on the one hand
to achieve a clear integration between the WebLP lan-
guage and Prolog, of which WebLP has been designed
as an extension; on the other hand, to explore the
possible ways of integrating interpreters of logic lan-
guages and server-side web technologies, and to study
suitable patterns of application architecture to lay on
top of the WebLP language.
In the future, more complex web applications
will be constructed, in order to iterate on the frame-
work building process and eventually find useful re-
finements of the WebLP programming model. Ap-
plications will also serve the purpose to both per-
form an expressiveness and usability comparison with
other languages(Lerdorfet al., 2006) and frameworks
(Thomas et al., 2006) now popular in the mainstream,
and showcase the full potential of the novel and pecu-
liar features of Web Logic Programming.
REFERENCES
Alonso, G., Casati, F., Kuno, H., and Machiraju, V. (2003).
Web Services: Concepts, Architectures and Applica-
tions. Springer-Verlag.
Berners-Lee, T., Fielding, R. T., and Mainster, L. (1998).
Uniform Resource Identifiers (URI): Generic Syntax.
Internet RFC 2396.
Brogi, A., Mancarella, P., Pedreschi, D., and Turini, F.
(1994). Modular Logic Programming. ACM Trans-
actions on Programming Languages and Systems,
16(3):1361–1398.
Bugliesi, M., Lamma, E., and Mello, P. (1994). Modular-
ity in logic programming. Journal of Logic Program-
ming, 19-20:443–502.
Fielding, R. T. (2000). Architectural Styles and the Design
of Network-based Software Architectures. PhD thesis,
University of California, Irvine.
Fielding, R. T., Gettys, J., Mogul, J., Frystyk, H., Masinter,
L., Leach, P., and Berners-Lee, T. (1999). Hypertext
Transfer Protocol – HTTP/1.1. Internet RFC 2616.
Lerdorf, R., Tatroe, K., and MacIntyre, P. (2006). Program-
ming PHP. O’Reilly.
Loke, S. W. (1998). Adding Logic Programming Behaviour
to the World Wide Web. PhD thesis, University of Mel-
bourne, Australia.
Mello, P. and Natali, A. (1992). Extending Prolog with
Modularity, Concurrency and Metarules. New Gen-
eration Computing, 10(4):335–360.
Monteiro, L. and Porto, A. (1993). A Language for Con-
textual Logic Programming. In Logic Programming
Languages: Constraints, Functions, and Objects. The
MIT Press.
Omicini, A. and Natali, A. (1994). Object-oriented com-
putations in logic programming. In Tokoro, M.
and Pareschi, R., editors, Object-Oriented Program-
ming, volume 821 of LNCS, pages 194–212. Springer-
Verlag. 8th European Conference (ECOOP’94),
Bologna, Italy, 4–8 July 1994. Proceedings.
Ramamohanarao, K. and Harland, J. (1994). An introduc-
tion to deductive database languages and systems. The
VLDB Journal, 3(2):107–122.
Richardson, L. and Ruby, S. (2007). RESTful Web Services.
O’Reilly.
SC22, J. T. C. I. J. (2000). Information technology — Pro-
gramming languages — Prolog — Part 2: Modules.
International Standard ISO/IEC 13211-2.
Sterling, L. and Shapiro, E. (1986). The Art of Prolog. The
MIT Press.
Thomas, D., Heinemeier Hansson, D., Breedt, L., Clark,
M., Davidson, J. D., Gehtland, J., and Schwarz, A.
(2006). Agile Web Development with Rails. Pragmatic
Bookshelf.
WEBIST 2008 - International Conference on Web Information Systems and Technologies
164