Skip to content

Commit f4ecc06

Browse files
Merge pull request #707 from AayushSabharwal/as/hc-tag
feat: add `@cache` macro
2 parents d75d710 + 160a7be commit f4ecc06

File tree

6 files changed

+536
-5
lines changed

6 files changed

+536
-5
lines changed

Project.toml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ ConstructionBase = "187b0558-2788-49d3-abe0-74a17ed4e7c9"
1313
DataStructures = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
1414
DocStringExtensions = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae"
1515
DynamicPolynomials = "7c1d4256-1411-5781-91ec-d7bc3513ac07"
16+
ExproniconLite = "55351af7-c7e9-48d6-89ff-24e801d99491"
1617
LabelledArrays = "2ee39098-c373-598a-b85f-a56591580800"
1718
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
1819
MultivariatePolynomials = "102ac46a-7ee4-5c85-9060-abc95bfdeaa3"
@@ -22,6 +23,7 @@ SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
2223
SpecialFunctions = "276daf66-3868-5448-9aa4-cd146d93841b"
2324
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
2425
SymbolicIndexingInterface = "2efcf032-c050-4f8e-a9bb-153293bab1f5"
26+
TaskLocalValues = "ed4db957-447d-4319-bfb6-7fa9ae7ecf34"
2527
TermInterface = "8ea1fca8-c5ef-4a55-8b96-4e9afe9c9a3c"
2628
TimerOutputs = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f"
2729
Unityper = "a7c27f48-0311-42f6-a7f8-2c11e75eb415"
@@ -45,14 +47,17 @@ ConstructionBase = "1.5.7"
4547
DataStructures = "0.18"
4648
DocStringExtensions = "0.8, 0.9"
4749
DynamicPolynomials = "0.5, 0.6"
50+
ExproniconLite = "0.10.14"
4851
LabelledArrays = "1.5"
4952
MultivariatePolynomials = "0.5"
5053
NaNMath = "0.3, 1.1.2"
54+
OhMyThreads = "0.7"
5155
ReverseDiff = "1"
5256
Setfield = "0.7, 0.8, 1"
5357
SpecialFunctions = "0.10, 1.0, 2"
5458
StaticArrays = "0.12, 1.0"
5559
SymbolicIndexingInterface = "0.3"
60+
TaskLocalValues = "0.1.2"
5661
TermInterface = "2.0"
5762
TimerOutputs = "0.5"
5863
Unityper = "0.1.2"
@@ -63,6 +68,7 @@ julia = "1.10"
6368
BenchmarkTools = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf"
6469
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
6570
LabelledArrays = "2ee39098-c373-598a-b85f-a56591580800"
71+
OhMyThreads = "67456a42-1dca-4109-a031-0a68de7e3ad5"
6672
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
6773
PkgBenchmark = "32113eaa-f34f-5b0d-bd6c-c81e245fc73d"
6874
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
@@ -73,4 +79,4 @@ Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
7379
Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f"
7480

7581
[targets]
76-
test = ["BenchmarkTools", "Documenter", "LabelledArrays", "Pkg", "PkgBenchmark", "Random", "ReferenceTests", "ReverseDiff", "SafeTestsets", "Test", "Zygote"]
82+
test = ["BenchmarkTools", "Documenter", "LabelledArrays", "Pkg", "PkgBenchmark", "Random", "ReferenceTests", "ReverseDiff", "SafeTestsets", "Test", "Zygote", "OhMyThreads"]

src/SymbolicUtils.jl

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@ import TermInterface: iscall, isexpr, head, children,
2121
# For ReverseDiffExt
2222
import ArrayInterface
2323
using WeakValueDicts: WeakValueDict
24+
import ExproniconLite as EL
25+
import TaskLocalValues: TaskLocalValue
2426

2527
Base.@deprecate istree iscall
2628
export istree, operation, arguments, sorted_arguments, iscall
@@ -74,4 +76,6 @@ include("code.jl")
7476
# Adjoints
7577
include("adjoints.jl")
7678

79+
include("cache.jl")
80+
7781
end # module

0 commit comments

Comments
 (0)