# geiser-racket

> support for Racket in Geiser

**Wikidata**: [Q108042411](https://www.wikidata.org/wiki/Q108042411)  
**Source**: https://4ort.xyz/entity/geiser-racket

## Summary
Geiser-Racket is an Emacs package that provides support for the Racket programming language within the Geiser framework. It enables Racket developers to use Emacs as their primary development environment with integrated features like REPL interaction, code navigation, and documentation lookup.

## Key Facts
- Geiser-Racket is part of the Geiser Project, which provides support for multiple Scheme implementations
- It is free software distributed under the 3-clause BSD License
- Version 0.16, the stable version, was released on August 7, 2021
- The package is maintained by José Antonio Ortega Ruiz
- It is available through GitLab at https://gitlab.com/emacs-geiser/racket and in the Emacs Lisp Package Archive (ELPA)
- Geiser-Racket runs on the GNU Emacs platform
- The software is written in Emacs Lisp and Racket
- Alternative names for the package include emacs-geiser-racket and Geiser-Racket
- The source code repository is located at https://gitlab.com/emacs-geiser/racket.git

## FAQs
### Q: What is Geiser-Racket?
A: Geiser-Racket is an Emacs package that provides support for the Racket programming language within the Geiser framework. It integrates Racket development capabilities directly into the Emacs editor.

### Q: Who maintains Geiser-Racket?
A: Geiser-Racket is maintained by José Antonio Ortega Ruiz, who has been actively involved in its development and support.

### Q: Where can I download Geiser-Racket?
A: Geiser-Racket is available through two main sources: the GitLab repository at https://gitlab.com/emacs-geiser/racket and the Emacs Lisp Package Archive (ELPA) at https://elpa.nongnu.org/nongnu/geiser-racket.html.

### Q: What license does Geiser-Racket use?
A: Geiser-Racket is distributed under the 3-clause BSD License, which allows users to freely run, study, change, and distribute the software and its modified versions.

## Why It Matters
Geiser-Racket matters because it bridges the gap between two powerful development environments: Emacs and Racket. Emacs is renowned for its extensibility and customization, while Racket is a modern dialect of Lisp with excellent educational and research applications. By integrating these systems, Geiser-Racket enables developers to leverage Emacs's powerful editing features while working with Racket, creating a seamless development experience. This integration is particularly valuable for educators, researchers, and developers who work with both systems, enhancing productivity and workflow efficiency. The package represents the importance of specialized tooling in programming language ecosystems and demonstrates how open-source collaboration can create valuable infrastructure for the development community.

## Notable For
- Being part of the Geiser Project, which provides consistent interfaces across multiple Scheme implementations
- Its implementation in Emacs Lisp, demonstrating the extensibility of Emacs for language support
- The active maintenance by José Antonio Ortega Ruiz, ensuring continued development and support
- Its availability through both GitLab and ELPA, providing multiple installation options for users
- The 3-clause BSD License, which balances openness with legal protection for contributors

## Body

### Overview and Purpose
Geiser-Racket is specifically designed to provide support for the Racket programming language within the Emacs editor through the Geiser framework. It serves as a bridge between Emacs's powerful editing capabilities and Racket's robust programming environment, enabling developers to work efficiently with Racket code within Emacs.

### Technical Details
- Written in Emacs Lisp and Racket
- Runs on the GNU Emacs platform
- Part of the larger Geiser Project which supports multiple Scheme implementations
- Uses the 3-clause BSD License for distribution
- Has alternative names including emacs-geiser-racket and Geiser-Racket
- The source code is hosted on GitLab at https://gitlab.com/emacs-geiser/racket.git

### Development and Maintenance
- Maintained by José Antonio Ortega Ruiz
- Version 0.16 was released on August 7, 2021, marked as the stable version
- Development continues with regular updates and improvements
- The project follows open-source development practices with community involvement

### Installation and Availability
- Available through GitLab repository: https://gitlab.com/emacs-geiser/racket
- Distributed via Emacs Lisp Package Archive (ELPA): https://elpa.nongnu.org/nongnu/geiser-racket.html
- Can be installed as a Guix package with the variable name emacs-geiser-racket
- Supports both end users and programmers through its documentation and implementation

## References

1. [Re: Using geiser-racket in org-mode babel?. 2022](https://lists.nongnu.org/archive/html/geiser-users/2022-06/msg00004.html)
2. [Geiser-Racket version 0.16. 2021](https://lists.gnu.org/archive/html/gnu-emacs-sources/2021-08/msg00024.html)