# Hop

> Lisp-like programming language

**Wikidata**: [Q3140351](https://www.wikidata.org/wiki/Q3140351)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/Hop_(software))  
**Source**: https://4ort.xyz/entity/hop-q3140351

## Summary

Hop is a Lisp-like, multi-paradigm programming language designed for functional and multitier programming. Created by Manuel Serrano and developed at Institut National de Recherche en Informatique et en Automatique (INRIA), it was first released in 2006. Hop is free software licensed under the GNU General Public License version 2.0 or later.

## Key Facts

- **Created by**: Manuel Serrano
- **Initial release**: 2006
- **Latest stable version**: 3.1.0
- **License**: GNU General Public License, version 2.0 or later
- **Paradigms**: Functional programming, multi-paradigm programming, multitier programming
- **Typing discipline**: Dynamic typing, strong typing
- **Copyright holder**: Institut National de Recherche en Informatique et en Automatique (INRIA)
- **Aliases**: Hop.js
- **Website**: http://hop.inria.fr/
- **Source repository**: https://github.com/manuel-serrano/hop

## FAQs

### Q: What programming paradigms does Hop support?
A: Hop supports multiple paradigms including functional programming, multi-paradigm programming, and multitier programming. It is designed to be flexible for different programming approaches.

### Q: Who created Hop and when was it released?
A: Hop was created by Manuel Serrano and was first released in 2006. It is developed and copyrighted by Institut National de Recherche en Informatique et en Automatique (INRIA).

### Q: What type of license does Hop use?
A: Hop is free software released under the GNU General Public License, version 2.0 or later. The source code is publicly available on GitHub.

### Q: What is Hop's typing system?
A: Hop uses dynamic typing with strong typing discipline. This means types are checked at runtime while maintaining strict type rules.

## Why It Matters

Hop represents a distinctive approach to programming language design by combining the elegant syntax of Lisp with modern multitier programming capabilities. Its development at INRIA, a prestigious French national research institute, positions it within the academic tradition of rigorous language design and formal methods research.

The language's multitier programming paradigm is particularly significant for web and distributed applications, as it allows developers to write code that seamlessly spans client and server environments within a single unified codebase. This approach reduces the complexity traditionally associated with building applications that require coordination between frontend and backend components.

As a Lisp-like language with functional programming foundations, Hop offers developers the expressive power and code-as-data philosophy that has made Lisp-family languages enduringly influential in computer science. The strong, dynamic typing system provides runtime flexibility while maintaining type safety guarantees. By being open-source software under the GPL license, Hop remains accessible to researchers, educators, and developers who wish to study, modify, or extend the language for their own purposes.

## Notable For

- **Multitier programming**: Supports seamless client-server development within a unified language framework
- **Lisp heritage**: Combines traditional Lisp syntax and philosophy with modern web programming capabilities
- **Academic origins**: Developed at INRIA, a leading European computer science research institution
- **Active development**: Maintained with public source repository and ongoing version releases
- **Free software**: Released under GPL v2.0 or later, ensuring open access and modification rights

## Body

### Origins and Development

Hop was created by Manuel Serrano and first released in 2006. The language is developed and copyrighted by Institut National de Recherche en Informatique et en Automatique (INRIA), France's national research institute for digital science and technology. The project maintains an active development presence with its source code hosted on GitHub.

### Technical Characteristics

Hop is classified as a multi-paradigm programming language with primary support for functional programming and multitier programming. The language features:

- **Typing system**: Dynamic typing with strong typing discipline
- **Syntax**: Lisp-like syntax, placing it within the broader Lisp family of programming languages
- **Paradigm support**: Functional, multi-paradigm, and multitier programming capabilities

### Licensing and Distribution

Hop is distributed as free software under the GNU General Public License, version 2.0 or later. The source code is publicly accessible through the official GitHub repository at https://github.com/manuel-serrano/hop. The Guix package manager includes Hop under the package variable name "hop."

### Version History

The current stable release is version 3.1.0. Development versions have been tracked through the Guix package repository, including version 3.2.0-pre1. The project maintains versioned releases through its GitHub repository.

### Web Presence

The official project website is hosted at http://hop.inria.fr/, with additional documentation available at http://hop.inria.fr/home/index.html. Wikipedia articles about Hop exist in multiple languages including English, French, Italian, and kaa (Kara-Kalpak).

## References

1. [Source](https://github.com/manuel-serrano/hop/blob/master/LICENSE)
2. [Source](https://guix.gnu.org/en/packages/hop-3.2.0-pre1/)