Hop (software)

Hop
Paradigm multi-paradigm
Designed by Manuel Serrano
First appeared 2006
Stable release 2.4.2 / September 23, 2013 (2013-09-23)
Typing discipline strong, dynamic
License GPL version 3
Website http://hop.inria.fr/
Influenced by
Scheme[1]
Institut national de recherche en informatique et en automatique
Formation 1967
Purpose Research
Region served
France

Hop is a Lisp-like programming language by Manuel Serrano for web 2.0 and also the name of the web broker (server and proxy) that implements this language. It is written in Bigloo Scheme. It is a project funded by INRIA.

Language design

Hop is a stratified language, which means that a single program file contains instructions for both the server and the client. The server executes CPU demanding computations and operations that require system privileges for accessing files or other resources. The clients (of which there may be many such as browsers, cell phones, etc.) are dedicated to executing actions related to the programming of the graphical user interfaces.

1    (define-service (server-date)
2      (current-date))
3   
4    (<HTML>
5      (<BUTTON>
6        :onclick ~(with-hop ($server-date)
7                      (lambda (h) (alert h)))
8          "Server time"))

The code snippet above illustrates a few concepts.

This work is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or any later version.
This work is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See version 2 and version 3 of the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

Issues

Given its recent introduction, Hop currently exhibits a number of weaknesses.

References

External links

This article is issued from Wikipedia - version of the Saturday, April 25, 2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.