Skip to content

langjam/langjam

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

96 Commits
 
 
 
 
 
 

Repository files navigation

Lang Jam

Welcome to Lang Jam, a weekend coding jam. It carries much of the spirit of game jams, where teams create a video game in a weekend. In Lang Jam, you and your teammates will create a programming language based on the theme for that jam.

Current Lang Jam

The next jam is 17-19 Feb 2023. It will begin on the 17th of Feb at 9pm UK time. The theme will be announced when the jam starts. You can visit the jam repo

  • Part 1: You have 48 hours to complete the code to your project and submit your PR to the repo (which will be announced when the theme is announced at the start of the jam). This will close on the 19th of Feb at 9pm UK time
  • Part 2: You have 12 total hours over the following 48 hours to work on the website and documentation for your project. Be sure to link to this website in the project you submit in part 1. This ends on the 21st of Feb at 9pm UK time

Past Lang Jams

#0003 - The third lang jam theme was "Beautiful Assembly". The third lang jam started on Friday the 22nd of July at 9pm UK time and ran in two parts:

  • Part 1: You have 48 hours to complete the code to your project and submit your PR to the repo (which will be announced when the theme is announced at the start of the jam). This will close on the 24th of July at 9pm UK time
  • Part 2: You have 12 total hours over the following 48 hours to work on the website and documentation for your project. Be sure to link to this website in the project you submit in part 1. This ends on the 26th of July at 9pm UK time

#0002 - The second Lang Jam started on Friday the 3rd of December at 7pm UK time and ran for 7 days, ending on 7pm on the following Friday (the 10th of December). It's theme was "patterns". In this time, you were allowed 48 total hours to work on code and 12 total hours to work on documentation and presentation. Projects are here.

#0001 - The inaugural theme was "first-class comments". The first Lang Jam was held on Friday the 20th of August, starting at 7pm UK time (Timezone translator: https://dateful.com/eventlink/1037709179) and ran for 48 hours, ending at 7pm on Sunday the 22nd of August. Submissions can be found in the jam repo. You can watch a video of the winners.

How it works

Each team will submit a PR that will create a directory named after their language which includes the project source code and build instructions for the language. Note: as part of Lang Jam 3, you'll also submit a link to the website you'll use for documentation. In this directory, there will also be a file that includes the GitHub handles of the team members. The PR for each project needs to be submitted before the end of the jam. We will provide a directory template each team can use.

A team can use personal repos to develop ideas before they're ready to show them publically, but to count as part of the jam, the team's final code needs to be submitted as a PR before the jam's cutoff time.

For the length of time the jam will run, including the start and end times, please see the Upcoming Lang Jam section above. This will list all the specific rules about that jam.

What to build

Each jam will have a theme. Your projects should build on that theme and show that theme in their final design. You can build an interpreter or a compiler, so long as it can run or build examples of code in the programming language you create.

Who can enter

Anyone, from any age, from anywhere in the world. You can join by yourself or as part of a group.

How projects are judged

While the most important part of any jam is to enjoy it, it's also exciting to have a good competition. Each team's projects will be judged based on feedback from other participants and onlookers who try the project out and vote on how they like best based on three criteria:

  • Creativity
  • Uniqueness
  • Fun

Of these, JT will pick their top picks and create a video showing off the winners.

Languages you can use

You can code in any programming language you'd like to create your project, so long as the language is part of the Debian/Ubuntu or Arch package repo (or one of the language-specific repos, like Rust's cargo). Please limit build steps of the project to three or fewer.

What you provide with the project

Along with your project, which may be a compiler or an interpreter, you'll want to provide a set of examples showing how the language works as well as some documentation explaining the language itself so that new users can try it out.

What libraries you can use

You can use any libraries you'd like to help build your project - lexical analysers, parser generators, codegen frameworks like LLVM, you name it.

Finding a group

If you are looking to find a group or chat with other participants, we have a discord.

Team size

You can have a team of just yourself or any number team members.

Licensing

You retain the rights to your project. The only rights I ask for are to be able to host the code in a repo that's part of this GitHub organization, for me and others to use the code when evaluating winners and, if you're a winner, to make a video about your project.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published