-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Move mixin compositions out of worksheets
Mixin compositions take long to compile, and apparently that slows down operating with the worksheets - see scala-ide/scala-worksheet#186.
- Loading branch information
1 parent
8856fe2
commit 10beab8
Showing
4 changed files
with
50 additions
and
66 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
package ilc | ||
package feature | ||
package let | ||
|
||
trait Instantiations { | ||
def buildBacchusWithLetSystem(doCSE_ : Boolean, copyPropagation_ : Boolean, partialApplicationsAreSpecial_ : Boolean) = | ||
new language.Bacchus with let.ANormalFormAdapter with integers.ImplicitSyntaxSugar | ||
with integers.Evaluation with let.Evaluation with let.Pretty | ||
with inference.LetInference | ||
with BetaReduction with inference.LetSyntaxSugar with inference.InferenceTestHelper { | ||
outer => | ||
val aNormalizer = new ANormalFormStateful { | ||
val mySyntax: outer.type = outer | ||
override val doCSE = doCSE_ | ||
override val copyPropagation = copyPropagation_ | ||
override val partialApplicationsAreSpecial = partialApplicationsAreSpecial_ | ||
} | ||
} | ||
|
||
def buildBaseBacchus() = | ||
new language.Bacchus with integers.ImplicitSyntaxSugar with inference.LetInference | ||
with BetaReduction with Pretty | ||
with products.StdLib | ||
with inference.LetSyntaxSugar | ||
|
||
def buildCacher[T <: Syntax with IsAtomic with products.SyntaxSugar with unit.Syntax with Traversals](bacchus: T) = | ||
new AddCaches2 { | ||
val mySyntax: bacchus.type = bacchus | ||
} | ||
} | ||
|
||
abstract class WorksheetHelpers extends Instantiations { | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters