<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/nickel-since-1-0-emltf2ws6" -->

---
title: Nickel since 1.0 | daily.dev
description: A comprehensive roundup of Nickel language improvements since version 1.0 (May 2023). Key additions include algebraic data types (enum variants with payloads),...
canonical: https://daily.dev/posts/nickel-since-1-0-emltf2ws6
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Nickel since 1.0 | daily.dev
og:description: A comprehensive roundup of Nickel language improvements since version 1.0 (May 2023). Key additions include algebraic data types (enum variants with payloads),...
og:url: https://daily.dev/posts/nickel-since-1-0-emltf2ws6
og:image: https://api.daily.dev/og/posts/emltf2wS6.png
og:image:alt: Nickel since 1.0
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Nickel since 1.0

**[Planet Haskell](https://daily.dev/sources/phaskell)** · 13 min read · 0 upvotes · 0 comments

## Summary

A comprehensive roundup of Nickel language improvements since version 1.0 (May 2023). Key additions include algebraic data types (enum variants with payloads), significantly expanded pattern matching for arrays, records, and constants, field punning via the `include` keyword, multi-variable let blocks with mutual recursion support, and reworked contract constructors with better eagerness control. Performance has improved dramatically — up to 10x for large configurations — with a bytecode interpreter in progress. The standard library has roughly doubled in size. Tooling improvements include a much-enhanced language server (NLS) with evaluation diagnostics and smart completions, a `nickel test` command for doctest-style unit tests, and better JSON/YAML/TOML interop including a new `nickel convert` command. Distribution now covers macOS and Windows binaries, Python bindings on PyPI, and new C, Go, and stable Rust APIs. Experimental features include a customize mode for CLI-driven configuration, Nix compatibility, and a package management system.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://tweag.io/blog/2026-02-19-nickel-since-1-0/>

## Similar posts on daily.dev

- [A field day for Gleam’s language server](https://daily.dev/posts/a-field-day-for-gleam-s-language-server-gbjw3bzqc) · Gleam · 5 upvotes · 0 comments
- [jordanhubbard/nanolang: A tiny experimental language designed to be targeted by coding LLMs](https://daily.dev/posts/jordanhubbard-nanolang-a-tiny-experimental-language-designed-to-be-targeted-by-coding-llms-07bdz6ech) · Hacker News · 2 upvotes · 0 comments
- [Go 1.27 interactive tour](https://daily.dev/posts/go-1-27-interactive-tour-dvxr0krfs) · Lobsters · 11 upvotes · 0 comments
- [Recent Rust Changes](https://daily.dev/posts/recent-rust-changes-iaytt6tvw) · Nick Cameron · 9 upvotes · 0 comments

---

Tags: [#type-systems](https://daily.dev/tags/type-systems)

[View this post on daily.dev](https://daily.dev/posts/nickel-since-1-0-emltf2ws6)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Nickel since 1.0","url":"https://daily.dev/posts/nickel-since-1-0-emltf2ws6","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/nickel-since-1-0-emltf2ws6"},"datePublished":"2026-02-19T15:43:26.731Z","dateModified":"2026-02-19T15:43:54.631Z","description":"A comprehensive roundup of Nickel language improvements since version 1.0 (May 2023). Key additions include algebraic data types (enum variants with payloads),...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/022ae1f163e3837faf7572f4d1b4761b?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/022ae1f163e3837faf7572f4d1b4761b?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Planet Haskell","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Planet Haskell","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/cd3e48fb3b974d10993a5b5b8dcb8a08","url":"https://daily.dev/sources/phaskell"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/nickel-since-1-0-emltf2ws6","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"type-systems","timeRequired":"PT13M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Planet Haskell","item":"https://daily.dev/sources/phaskell"},{"@type":"ListItem","position":3,"name":"Nickel since 1.0"}]}
```

