This file contains hidden or 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
object Fluent { | |
trait Foo[C[_]] { | |
def meth1[T]() : C[T] | |
} | |
trait ConcreteC[T] | |
class Lib[ElemT]{ |
This file contains hidden or 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
object FRP { | |
class Signal[T](expr: => T) { | |
import Signal._ | |
private var myExpr: () => T = _ | |
private var myValue: T = _ | |
private var observers: Set[Signal[_]] = Set() | |
update(expr) | |
protected def update(expr: => T): Unit = { |
This file contains hidden or 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
// A simple type-safe formatter in Scala based on the "Functional Unparsing" paper by Olivier Danvy | |
// http://cs.au.dk/~danvy/DSc/16_danvy_jfp-1998.pdf | |
object Test { | |
def eol[A](k: String => A)(s: String): A = { | |
k(s + "\n") | |
} |
This file contains hidden or 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
import scala.compiletime.ops._ | |
import scala.compiletime.ops.int._ | |
import scala.compiletime.ops.any._ | |
/** | |
* Type your matrices for great good: a Haskell library of typed matrices and applications (functional pearl) | |
* https://dl.acm.org/doi/10.1145/3406088.3409019 | |
*/ | |
object Test { |
This file contains hidden or 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
import scala.quoted._ | |
import scala.quoted.util._ | |
import scala.language.implicitConversions | |
trait Virtualized { | |
type Cde[A] | |
given IntPrimitiveMethods as PrimitiveMethods[Int] = IntPrimitiveMethodsImpl | |
protected val IntPrimitiveMethodsImpl: PrimitiveMethods[Int] = new PrimitiveMethods[Int]{ } |
This file contains hidden or 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
import org.junit.Test | |
import org.junit.Assert._ | |
import scala.util.chaining._ | |
import scala.collection.mutable.ListBuffer | |
import scala.language.implicitConversions | |
// Breadth-first labeling -- http://okmij.org/ftp/Algorithms/BFN.html | |
// Breadth-First Numbering: An Algorithm in Pictures -- https://okasaki.blogspot.com/2008/07/breadth-first-numbering-algorithm-in.html | |
// The Under-Appreciated Unfold -- https://www.cs.ox.ac.uk/people/jeremy.gibbons/publications/unfold.ps.gz | |
class BFNTest { |
OlderNewer