# Why does @ need :: and why does . need () in amend?

**URL:** <https://forum.kx.com/t/why-does-need-and-why-does-need-in-amend/12782>\
**Category:** Community Support\
**Tags:** kdb-and-q\
**Created:** [January 29, 2023, 7:44pm UTC](https://forum.kx.com/t/why-does-need-and-why-does-need-in-amend/12782 "2023-01-29T19:44:00Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Mannix1](https://avatars.discourse-cdn.com/v4/letter/m/a9a28c/32.png) [@Mannix1](https://forum.kx.com/u/Mannix1)\
**Post date:** [January 29, 2023, 7:44pm UTC](https://forum.kx.com/t/why-does-need-and-why-does-need-in-amend/12782/1 "2023-01-29T19:44:00Z")

</div>

https://code.kx.com/q/ref/amend/

Based on the above, why does . need () to get the entire list and @ need ()?

Surely this would imply:

q) 1 2 3 4 5 . ()&nbsp; &nbsp; /this is NOT the case  
1 2 3 4 5&nbsp; &nbsp;&nbsp;

and&nbsp;

q) list @ ::&nbsp; &nbsp;&nbsp;/this is NOT the case  
list

However&nbsp;

q)list @ enlist[::]&nbsp; &nbsp; &nbsp;/this is the case  
list

Can anyone help me make sense of this?

---

<div class="post-metadata">

**Author:** ![gyorokpeter-kx1](https://avatars.discourse-cdn.com/v4/letter/g/d26b3c/32.png) [@gyorokpeter-kx1](https://forum.kx.com/u/gyorokpeter-kx1)\
**Post date:** [January 30, 2023, 10:35am UTC](https://forum.kx.com/t/why-does-need-and-why-does-need-in-amend/12782/2 "2023-01-30T10:35:00Z")

</div>

The binary form of . is not exactly the same as the 3 or 4 parameter version. The handling of () is special, as it’s equivalent to list instead of list . ().

For list @ :: , this is not the correct syntax for what you want to do as :: is being parsed as a binary operator missing its right argument. If you write it as list @ (::) it works.

list @ enlist[::] is something else: note that here the index is a list, not a single element, therefore the result will be a list as well, meaning it’s actually enlist[list] - while this looks like the original list in the printout, if you check the type of the result you will notice that they are different.
