These are chat archives for typelevel/general

21st
Jul 2017
Itamar Ravid
@iravid
Jul 21 2017 09:23
Oh that sounds like a really cool project. Too bad I use Emacs :-)
ritschwumm
@ritschwumm
Jul 21 2017 15:26
@fommil good idea, do you know if anyone has extended atom with scala-js yet? i'm still using jEdit - because there i know how to write plugins in scala...
Rob Norris
@tpolecat
Jul 21 2017 15:27
The Atom plugin is just 1600 lines of Coffeescript … it's also pretty unreliable so maybe it needs to be a lot less or a lot more. But it's not a huge amount of code if someone were to take it over.
I suspect the hard part is figuring out the editor and plugin APIs that it has to interact with.
I have negative bandwidth to contribute but it seems like a small enough project that someone could bite off the whole thing.
Carlos Quiroz
@cquiroz
Jul 21 2017 16:19
I wonder if really making it into scala.js won’t just make it too complicated. Just setting up the project and adding wrappers may take longer than hacking some coffeescript
But it seems an interesting challenge nevertheless
ritschwumm
@ritschwumm
Jul 21 2017 16:23
takes longer - yes. but i'd rather maintain a bit of scala code with a slightly interesting build than "some coffeescript".
Edmund Noble
@edmundnoble
Jul 21 2017 16:24
If we want to have it for longer than a few months I think Scala.js may be worth it
Rob Norris
@tpolecat
Jul 21 2017 16:47
The initial yak may involve an sbt plugin or at least a project template for building/testing/publishing atom plugins with scala-js, which could be useful generally.
There's bound to be a ton of fuckery that could be done once as a gift to mankind.
ritschwumm
@ritschwumm
Jul 21 2017 17:12
nah. virtually empty :(
Jacob Barber
@Jacoby6000
Jul 21 2017 17:44
Does typelevel have a lens library?
Greg Pfeil
@sellout
Jul 21 2017 17:44
@Jacoby6000 Monocle. Cats support is basically waiting on 1.0.0-MF.
Jacob Barber
@Jacoby6000
Jul 21 2017 17:44
:thumbsup: that's what I thought.
Josh
@joshlemer
Jul 21 2017 23:34
What's the common way of constraining each element of an HList under a concrete type (not a HK type)? I see this example for HKtypes but not sure about regular ol' types https://github.com/milessabin/shapeless/blob/master/examples/src/main/scala/shapeless/examples/klist.scala
Edmund Noble
@edmundnoble
Jul 21 2017 23:34
What kind of constraint?
Josh
@joshlemer
Jul 21 2017 23:35
<: SomeTrait
I know I could probably use a constant higher kinded type but that seems weird if I don't need it
type Const[T] = SomeTrait
Edmund Noble
@edmundnoble
Jul 21 2017 23:40
Oh yes LubConstraint should be fine but it's not actually something you can use
As in you do not get a function you can safely apply to each element of the HList to cast it to the lub
Josh
@joshlemer
Jul 21 2017 23:51
sorry what I actually wanted was <<:
Oh yeah I see you already saw that hah
Edmund Noble
@edmundnoble
Jul 21 2017 23:52
That's LubConstraint I think, yeah
Josh
@joshlemer
Jul 21 2017 23:53

cast it to the lub

Who said anything about value level! :-P

Edmund Noble
@edmundnoble
Jul 21 2017 23:53
Hehehe fair point ;)
I guess though even on the type level you don't have evidence that H <: Lub, but it depends what you're using it for.