whatever became of hyperslices?

Pointers please to the best ways to fight the tyranny of the dominant decomposition? Thanks.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Expression Problem?

I'd never seen this paper, so the following is based on a brief skim.

The motivating example used is pretty much just the Expression Problem, so I'd assume that the various works that have attacked that problem are relevant.

The notion of hyperslices presented looks a lot like family inheritance, so I'd expect systems with virtual classes or similar mechanisms to be able to fill this niche.

Scala traits

You can use Scala's traits and type parameters to some extent to represent a slice. I've done it before and it was effective, although the language might not allow that anymore.

C# supports partial class declarations. You can separate your class cross cutting code into multiple files that are then merged by the compiler. There is nothing really safe about this, and it doesn't support separate compilation.

You can also look at open classes in Jiazzi as an old way to go. When I presented Jiazzi to Ossher, he pointed me to this work in the first place since it seemed like we were doing similar things.

I'm currently designing a language with the ability to crosscut. Basically, imagine you have a physics mixin, when you apply it to your stage, all your actors automatically gain physical attributes and behaviors.

@physics

cool. please do post / tell when you can!