Hi,Looks like I ran into the fact that there are is a upper limit to implicit conversions form TupleN of Initialize.How can I define a task which depends on more than nine settings?
--
You received this message because you are subscribed to the Google Groups "simple-build-tool" group.
To post to this group, send email to simple-b...@googlegroups.com.
To unsubscribe from this group, send email to simple-build-t...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/simple-build-tool?hl=en.
> I think this issue came up on the list before. It's the same as the magic number 22 in scala with case classes. You have to start composing related settings in to container objects. I think end result is a little more readable. 9 is an arbitrary number, but it encourages more composition.
Fair enough. That's what I am telling people, too ;-)
But in this case (OSGi headers) I haven't yet seen a good way to introduce meaningful containers. Will have to think harder …
Heiko
Awesome!
> Maybe there could be a way with less overhead?
The situation hasn't changed since the last time it was brought up.
> On Tue, Nov 29, 2011 at 8:35 AM, Heiko Seeberger <
> heiko.s...@googlemail.com> wrote:
>
> > Awesome!
> >
> >
> > Sorry, but that's *not* awesome: If settings on which other settings
> > depend on are not defined, you don't get an error when sbt starts (or
> > reloads), but only when you use such a dependent setting. Like at runtime
> > instead of compile-time.
This is correct. Additionally,
1. runTask should only be used in a command. Otherwise, you have multiple task executions occurring simultaneously.
2. It is very inefficient, since you are executing the entire subgraph required by a task for each runTask.
-Mark
> On Nov 28, 2011, at 10:56 PM, Doug Tangren wrote:
>
>
> > I think this issue came up on the list before. It's the same as the magic number 22 in scala with case classes. You have to start composing related settings in to container objects. I think end result is a little more readable. 9 is an arbitrary number, but it encourages more composition.
>
> Fair enough. That's what I am telling people, too ;-)
> But in this case (OSGi headers) I haven't yet seen a good way to introduce meaningful containers. Will have to think harder …
The real problem is the compilation time due to the implicits and heterogenous lists behind the scenes. At least, that is what I remember as the reason for removing N=10-12.
-Mark
> Heiko
Compilation time for sbt itself?
Heiko
Because sbt has a lot of setting definitions, it would affect both sbt and build definition compilation as well.
-Mark
access :^: the :^: klist :^: directly ;-)
On Dec 5, 2011, at 9:11 PM, Jon-Anders Teigen wrote:access :^: the :^: klist :^: directly ;-)