---
title: "The Road to Name-Based Destructuring"
url: https://daily.dev/posts/the-road-to-name-based-destructuring-c4j1di6l4
source_url: https://blog.jetbrains.com/kotlin/2026/05/the-road-to-name-based-destructuring
type: article
source: "JetBrains"
published: 2026-05-13T10:20:00.155Z
updated: 2026-08-24T07:00:44.950Z
tags: ["kotlin", "language-design"]
reading_time: 8
upvotes: 20
comments: 0
language: 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.

# The Road to Name-Based Destructuring

**[JetBrains](https://daily.dev/sources/jetbrains)** · 8 min read · 20 upvotes · 0 comments

## Summary

Kotlin is introducing name-based destructuring as a replacement for the current position-based approach. A new syntax using `val` inside parentheses (e.g., `(val name, val age) = person`) extracts properties by name rather than position, eliminating bugs from property reordering and improving refactoring safety. A new square-bracket syntax handles positional destructuring for cases like Pairs and collections. Both syntaxes are currently Experimental in Kotlin 2.3.20 via compiler flags. The migration timeline targets Stable status in 2.5.0 (end of 2026), with the old parentheses syntax fully switching to name-based behavior by 2.7.0 (end of 2027). Migration tooling including compiler warnings and IDE quick-fixes will assist the transition.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://blog.jetbrains.com/kotlin/2026/05/the-road-to-name-based-destructuring>

---

Tags: [#kotlin](https://daily.dev/tags/kotlin), [#language-design](https://daily.dev/tags/language-design)

[View this post on daily.dev](https://daily.dev/posts/the-road-to-name-based-destructuring-c4j1di6l4)
