# How does BusinessDays.jl work?

**URL:** <https://discourse.julialang.org/t/how-does-businessdays-jl-work/46968>\
**Category:** General Usage\
**Tags:** package\
**Created:** [September 20, 2020, 8:35pm UTC](https://discourse.julialang.org/t/how-does-businessdays-jl-work/46968 "2020-09-20T20:35:25Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Derek\_Vetsch](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/derek_vetsch/32/8552_2.png) [@Derek\_Vetsch](https://discourse.julialang.org/u/Derek_Vetsch)\
**Post date:** [September 20, 2020, 8:35pm UTC](https://discourse.julialang.org/t/how-does-businessdays-jl-work/46968/1 "2020-09-20T20:35:25Z")

</div>

I see in the BusinessDays docs that the package achieves its performance by using a cache. However, I don’t understand what a cache means in this context, and how does using one create superior performance to something like QuantLib in C++? Can someone please explain this to me?

---

<div class="post-metadata">

**Author:** ![danielw2904](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/danielw2904/32/10890_2.png) [@danielw2904](https://discourse.julialang.org/u/danielw2904)\
**Post date:** [September 20, 2020, 9:07pm UTC](https://discourse.julialang.org/t/how-does-businessdays-jl-work/46968/2 "2020-09-20T21:07:16Z")

</div>

It looks like once a date is determined to be a business day or not the result is stored in a dictionary so for the second time that date is checked no calculation is necessary. The ‘cache’ is the dictionary. So for lots of repeated checks that is much faster.
