Skip to content
JarrettBillingsley edited this page Sep 26, 2014 · 11 revisions

Welcome!

This wiki is still undergoing renaming, updating, and reorganization. There are still many references to the old name (MiniD) strewn about, as well as some outdated library docs and some broken links. But most of it should work.

What's Croc?

Croc is a small, dynamically-typed language most closely related to Lua, with C-style syntax. Its semantics are borrowed mainly from Lua, D, Squirrel, and Python, though many other languages served as inspirations. It tries to fill a niche somewhere between Lua and Python by being more fully-featured and "batteries included" than Lua but not as heavy-weight as Python. It also tries to alleviate some of the pain of developing in a dynamic language by being more strict about things like global accesses, out-of-bounds errors, and typing than many other dynamic languages are. Lastly, it is meant to be a language that is perfectly capable on its own, but which can be seamlessly integrated into and/or extended by a host language.

It used to be called MiniD.

It was conceived, written, and is maintained by Jarrett Billingsley.

For a more in-depth explanation of where it came from and why it exists, read the Introduction.

Communication

If you have questions or comments, you can use the Croc Forum for that. Yes, you have to register; no, it's not hard.

You can use the Issues system here to report bugs and feature requests, or if you're more ambitious, you can fork the repository, implement a change yourself, and then initiate a pull request.

There is an IRC channel, #croc on freenode.net, but I haven't had the time to hang out on IRC in a while :\

Let's get started

The documentation is split into five parts:

  • Installation and Downloads - Getting the Croc binaries and library source, as well as some additional downloads like syntax highlighters for code editors.
  • Language Tutorials - An informal hands-on introduction to the language. You can follow along by getting the Croc interpreter from the Installation page.
  • Croc Standard Libraries - Documentation for the libraries that come with Croc.
  • Croc Language Specification - The long, formal specification for Croc. ALL the features are documented here, and if you want a deeper understanding of the language, you should read this.
  • Croc Native API - Documentation and tutorials for using the native API for the reference implementation of Croc in D. If you want to embed Croc in a D app, this is what you need to read.
Clone this wiki locally