File tree Expand file tree Collapse file tree 2 files changed +79
-0
lines changed
Expand file tree Collapse file tree 2 files changed +79
-0
lines changed Original file line number Diff line number Diff line change 1+ #! /usr/bin/env bash
2+ # Generate $DEPTH layers of modules with $WIDTH modules on each layer
3+ # Every module on layer N imports all the modules on layer N-1
4+ # MultiLayerModules.hs imports all the modules from the last layer
5+ DEPTH=15
6+ WIDTH=40
7+ cat > hie.yaml << EOF
8+ cradle:
9+ direct:
10+ arguments:
11+ EOF
12+ for i in $( seq -w 1 $WIDTH ) ; do
13+ echo " module DummyLevel0M$i where" > DummyLevel0M$i .hs;
14+ echo " - DummyLevel0M$i .hs" >> hie.yaml;
15+ done
16+ for l in $( seq 1 $DEPTH ) ; do
17+ for i in $( seq -w 1 $WIDTH ) ; do
18+ echo " module DummyLevel${l} M$i where" > DummyLevel${l} M$i .hs;
19+ echo " - DummyLevel${l} M$i .hs" >> hie.yaml;
20+ for j in $( seq -w 1 $WIDTH ) ; do
21+ echo " import DummyLevel$(( l- 1 )) M$j " >> DummyLevel${l} M$i .hs;
22+ done
23+ done
24+ done
25+ case " $1 " in
26+ ' --th' )
27+ echo " {-# LANGUAGE TemplateHaskell #-}" > MultiLayerModules.hs
28+ ;
29+ esac
30+ echo " module MultiLayerModules where" >> MultiLayerModules.hs
31+ echo " - MultiLayerModules.hs" >> hie.yaml;
32+ for j in $( seq -w 1 $WIDTH ) ; do
33+ echo " import DummyLevel${DEPTH} M$j " >> MultiLayerModules.hs;
34+ done
Original file line number Diff line number Diff line change @@ -33,6 +33,50 @@ examples:
3333modules :
3434 - src/Language/LSP/Types/WatchedFiles.hs
3535 - src/Language/LSP/Types/CallHierarchy.hs
36+
37+ - name : MultiLayerModules
38+ path : bench/MultiLayerModules.sh
39+ script : True
40+ script-args : ["--th"]
41+ modules :
42+ - MultiLayerModules.hs
43+ - DummyLevel0M01.hs
44+ - DummyLevel1M01.hs
45+ - name : MultiLayerModulesNoTH
46+ path : bench/MultiLayerModules.sh
47+ script : True
48+ script-args : []
49+ modules :
50+ - MultiLayerModules.hs
51+ - DummyLevel0M01.hs
52+ - DummyLevel1M01.hs
53+
54+ - name : DummyLevel0M01
55+ path : bench/MultiLayerModules.sh
56+ script : True
57+ script-args : ["--th"]
58+ modules :
59+ - DummyLevel0M01.hs
60+ - name : DummyLevel0M01NoTH
61+ path : bench/MultiLayerModules.sh
62+ script : True
63+ script-args : []
64+ modules :
65+ - DummyLevel0M01.hs
66+
67+ - name : DummyLevel1M01
68+ path : bench/MultiLayerModules.sh
69+ script : True
70+ script-args : ["--th"]
71+ modules :
72+ - DummyLevel1M01.hs
73+ - name : DummyLevel1M01NoTH
74+ path : bench/MultiLayerModules.sh
75+ script : True
76+ script-args : []
77+ modules :
78+ - DummyLevel1M01.hs
79+
3680# Small but heavily multi-component example
3781# Disabled as it is far to slow. hie-bios >0.7.2 should help
3882# - name: HLS
@@ -47,6 +91,7 @@ examples:
4791
4892# The set of experiments to execute
4993experiments :
94+ - " edit-header"
5095 - " edit"
5196 - " hover"
5297 - " hover after edit"
You can’t perform that action at this time.
0 commit comments