I'd like to announce Nibbles. My goal was to create something as simple as golfscript but as short as any modern golf language. My hope was that by having few enough instructions, they could be encoded in less than 1 byte and that this would cancel out enough of the benefit of complexity. I know complexity will ultimately win, but I personally prefer to golf in a simple language. And for now I believe Nibbles can hold its own.

Here are some highlights:

  • Common instructions are 1/2 byte
  • There is a literate form that mostly corresponds to binary length (2x)
  • Purely functional and lazy
  • Types are Integer, Char, List, Tuple (no floats for now, but it's a future possibility)
  • Syntax is prefix with DeBruijn indicies for referencing arguments
  • Not tacit (to allow more type overloading)
  • Mostly not vectorized (again to allow more type overloading)
  • Statically typed, but you won't notice.
  • Written in and compiles to Haskell.

For posting solutions I recommend just posting the literate form and the binary size in bytes. (Just like assembly language does).

Despite the goal of simplicity I've been working on this for 9+ months. Much of the work has revolved around creating the abstraction around the literate form so that you don't have to think about how it gets compacted yet feels like you are codegolfing like normal.

Please submit feedback (either in github or email listed on the website), bug reports or improvement ideas are the greatest gift I can receive. I'd like to keep the language stable for a bit to gather data on what gets used and doesn't but in a future version I'm not opposed to changing things up. As for big changes like making it tacit, those will never be incorporated into Nibbles as it breaks the whole paradigm, but I am already thinking about ideas for another language, so I am all ears for those too!

  • 1
    \$\begingroup\$ This is really cool! However, I don't believe a post introducing a new language belongs on Meta, since it's not a question or discussion about the site itself. Better places to post about Nibbles: Languages created by PPCG users, Showcase of languages, The Nineteenth Byte chatroom, and more specifically The Tarpit chatroom. \$\endgroup\$
    – DLosc
    Dec 23, 2021 at 19:12
  • \$\begingroup\$ Thanks, I'm not really sure about those places either because it seems like it would buried deep where as this is more of a news announcement that I think temporarily should be at the top (I'm also not really a PPCG user? I'm not sure what that stands for). Chat would work but I think anyone not present would miss it, and I also would prefer email/etc over chat for communication. For any moderators feel free to close this or move it as appropriate. Hopefully the language submissions will start to be a source of referrals rather than this post eventually. \$\endgroup\$ Dec 23, 2021 at 20:45
  • \$\begingroup\$ I remember being linked to this a while ago, glad to see you've completed it to some stable point \$\endgroup\$
    – Jo King Mod
    Dec 24, 2021 at 0:28
  • 2
    \$\begingroup\$ I'm also not entirely sure about language announcements being on-topic for Meta. We've had a couple before, which have had mixed reception (the Meta post, not the language). However, we do have a Tips for launching a language which lists some good things to do to promote a newly released language \$\endgroup\$ Dec 26, 2021 at 19:29


Browse other questions tagged .