A modern compiled language with innovative memory management
Raccoon is a modern programming language designed with an intuitive syntax and advanced memory safety features, while providing modern concurrency capabilities like async I/O and green threads. The language features:
- Intuitive Syntax: Clean, straightforward syntax for easy adoption
- Smart Memory Management: Hybrid approach combining ownership tracking, scope-based cleanup, and selective garbage collection
- Modern Concurrency: Green threads and async/await built into the language core
- Performance Focus: Compiled to native code for maximum speed
- Developer Experience: Clear error messages and excellent tooling
Raccoon comes with a powerful command-line interface that handles project management, dependency management, package publishing, and project scaffolding.
# Create a new Raccoon project
raccoon init my-project
# Add dependencies
raccoon add web-framework
# Install project dependencies
raccoon install
# Run your project
raccoon run
- Project Structure: Overview of the Raccoon project directory structure
- Project Roadmap: Our development plans and milestones
- Language Specification: The syntax and semantics of the Raccoon language
Raccoon is currently in the early development stages. Here's how you can get involved:
- Star the repository to show your interest
- Watch for updates as we progress through our roadmap
- Join the discussion in our community forums (coming soon)
- Contribute to the language design and implementation
We welcome contributions from the community! Please see our Contributing Guidelines for information on how to get started. All contributors are expected to follow our Code of Conduct.
If you discover a security vulnerability, please follow our Security Policy for responsible disclosure.
- Contributing Guidelines: How to contribute to the Raccoon project
- Versioning: Our semantic versioning and conventional commits approach
- Release Process: How we manage the release process
// Basic Raccoon program
func main() {
var greeting = "Hello, World!";
println(greeting);
}
// Ownership and scope-based resource management
func processFile() {
var file = File.open("data.txt");
// file is automatically closed when it goes out of scope
var data = file.readData();
processData(data);
}
// Async programming with green threads
async func fetchData() {
var response = await httpClient.get("https://api.example.com/data");
return processResponse(response);
}
func main() {
// Start multiple concurrent operations
var results = await parallel([
fetchData(),
fetchData(),
fetchData()
]);
for (var result in results) {
println(result);
}
}
Raccoon is licensed under the Apache License 2.0 with Additional Terms. This license allows:
- Commercial use of the software
- Modification and distribution
- Private use
- Patent use
While requiring:
- License and copyright notice
- Statement of changes
- Compliance with the additional terms regarding usage of the Raccoon name and branding
See LICENSE for the complete terms and TRADEMARK_POLICY for details on the usage of the Raccoon name and branding.
Raccoon draws inspiration from multiple modern programming paradigms and techniques while creating its own unique approach to language design.