# Hey, Did You Know: Lacing Operations

**URL:** <https://forum.dynamobim.com/t/hey-did-you-know-lacing-operations/107356>\
**Category:** Lists-Logic\
**Tags:** dynamo, tutorial, dynamoofficehours\
**Created:** [January 20, 2025, 9:43pm UTC](https://forum.dynamobim.com/t/hey-did-you-know-lacing-operations/107356 "2025-01-20T21:43:20Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![emrullah.yildiz](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/emrullah.yildiz/32/177572_2.png) [@emrullah.yildiz](https://forum.dynamobim.com/u/emrullah.yildiz)\
**Post date:** [January 20, 2025, 9:43pm UTC](https://forum.dynamobim.com/t/hey-did-you-know-lacing-operations/107356/1 "2025-01-20T21:43:20Z")

</div>

Hey, did you know how Lacing Operations work in Dynamo? 🤔 It is important to understand how to manage data flow between lists! 🌟 Lacing determines how nodes handle list combinations in your scripts. 🧩 Here’s the quick breakdown:

🔹 Shortest: Matches lists element by element, stopping at the shortest list.  
🔹 Longest: Extends the shorter lists by repeating their last elements to match the longest one.  
🔹 Cross-Product: Generates every possible combination between elements of both lists.  
🔹 Auto: Automatically adjusts the lacing mode based on the input lists and node logic.

Mastering lacing operations and list management in Dynamo will bring a lot of flexibility for your Dynamo workflows! 🚀

Which lacing mode do you use the most? Or are you curious to explore a specific one? Let’s chat in the comments! 👇

[![](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/c/4/c4eef661e04e4235115404ca45c67f2167a1c51b.jpeg "Hey, Did You Know: Lacing Operations") ](https://www.youtube.com/watch?v=80e79t321qE)

---

<div class="post-metadata">

**Author:** ![emrullah.yildiz](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/emrullah.yildiz/32/177572_2.png) [@emrullah.yildiz](https://forum.dynamobim.com/u/emrullah.yildiz)\
**Post date:** [January 20, 2025, 9:45pm UTC](https://forum.dynamobim.com/t/hey-did-you-know-lacing-operations/107356/2 "2025-01-20T21:45:25Z")

</div>



---

<div class="post-metadata">

**Author:** ![mchn](https://avatars.discourse-cdn.com/v4/letter/m/a9a28c/32.png) [@mchn](https://forum.dynamobim.com/u/mchn)\
**Post date:** [January 30, 2025, 9:47pm UTC](https://forum.dynamobim.com/t/hey-did-you-know-lacing-operations/107356/3 "2025-01-30T21:47:33Z")

</div>

I’m not sure if it’s okay to reply in this thread as I don’t see any other responses – but I’ll give it a try:  
I have a question about the ‘auto’ lacing type – is it capable of producing a result that cannot be replicated by ‘shortest,’ ‘longest,’ or ‘cross-product’? I feel like I encountered something like this in a certain combination before, but I can’t figure out how to reproduce that behavior. Most of the time, ‘auto’ behaves like ‘shortest’ for me. Thanks for your help!

---

<div class="post-metadata">

**Author:** ![jacob.small](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/jacob.small/32/161030_2.png) [@jacob.small](https://forum.dynamobim.com/u/jacob.small)\
**Post date:** [January 30, 2025, 11:26pm UTC](https://forum.dynamobim.com/t/hey-did-you-know-lacing-operations/107356/4 "2025-01-30T23:26:53Z")

</div>

> [@mchn](#):
>
> I have a question about the ‘auto’ lacing type – is it capable of producing a result that cannot be replicated by ‘shortest,’ ‘longest,’ or ‘cross-product’?

Not really, but kinda. But it certainly makes life easier so you don’t want to remove it.

Auto lacing defaults to shortest lacing, except for when one input is a single input.

So if you have a list of letters such as `[A, B]` and a list of numbers such as `[1, 2, 3, 4]` wired into a + node with shortest lacing you get `[A1, B2]`, but longest lacing you get `[A1, B2, B3, B4]`, and cross product would be `[[A1, A2, A3, A4], [B1, B2, B3, B4] ]`. So with Auto lacing in this situation both inputs are a list which means the lacing used is shortest, so we get `[A1, B2]`. But if you change the first input to just `A` auto lacing sees the single input and switches to longest lacing so you get `[A1, A2, A3, A4]`.

Things get more complex as you add inputs (i.e. with setting multiple parameter values for a multiple elements to multiple sets of unique values), but this basically covers it. If you would like to see a more visual example, the Dynamo Office Hours series from WAY back when here covers it well.

https://www.youtube.com/embed/ZpOA_i9dkz4?feature=oembed&wmode=opaque&list=PLdlF7MirPEC2yNFTGymESd3t7Xosfk9c2

The following session is also likely of interest, as it covers list levels.
