# PIP-0102

**URL:** https://discourse.prolog-lang.org/c/improvements-forum/0102-dicts/12.md

[Latest](https://discourse.prolog-lang.org/latest.md) · [Categories](https://discourse.prolog-lang.org/categories.md) · [Tags](https://discourse.prolog-lang.org/tags.md)

---

## [Description of PIP 0102 - Dictionaries in Prolog (dynamic)](https://discourse.prolog-lang.org/t/description-of-pip-0102-dictionaries-in-prolog-dynamic/39)

<div class="topic-metadata">

**Author:** [@herme](https://discourse.prolog-lang.org/u/herme)\
**Replies:** 0\
**Last updated:** [August 15, 2024, 4:22pm UTC](https://discourse.prolog-lang.org/t/description-of-pip-0102-dictionaries-in-prolog-dynamic/39 "2024-08-15T16:22:27Z")

</div>

See PIP 0102 - Dictionaries in Prolog (dynamic) To start/continue discussion: open a new topic within this subcategory or reply within an existing topic.

---

## [X{Attrs} syntax](https://discourse.prolog-lang.org/t/x-attrs-syntax/164)

<div class="topic-metadata">

**Author:** [@JanWielemaker](https://discourse.prolog-lang.org/u/JanWielemaker)\
**Replies:** 9\
**Last updated:** [October 6, 2025, 12:23pm UTC](https://discourse.prolog-lang.org/t/x-attrs-syntax/164 "2025-10-06T12:23:55Z")

</div>

Somewhat related. @jschimpf, you are using X{attr1:V1, …} to read attributed variables. What does that mean if a variable already has attributes. E.g., ?- write(X{a:1}), write(X{b:2}). And also if there are differe…

---

## [Anonymous dictionaries](https://discourse.prolog-lang.org/t/anonymous-dictionaries/143)

<div class="topic-metadata">

**Author:** [@jfmc](https://discourse.prolog-lang.org/u/jfmc)\
**Replies:** 0\
**Last updated:** [February 25, 2025, 5:38pm UTC](https://discourse.prolog-lang.org/t/anonymous-dictionaries/143 "2025-02-25T17:38:16Z")

</div>

Hi all! The proposal for dictionaries (based mostly on SWI’s dictionaries other proposals for records, like Ciao’s argnames) introduce the syntax tag{k1:v1, ..., kn:vn}. It still needs to be decided if this is a new cla…
