-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RFC: fusion should be importable by compiler sources, and even stdlib and koch #22
Comments
Nah. Recursive dependencies between fusion and std mean there is no point in "fusion". And maybe indeed there isn't but then argue for that instead. :-) |
can we at least agree on Note that a recursive dependency between fusion and std doesn't imply cyclic module dependencies; it does add some package-level complexity but reduces likelihood of duplication.
the way I see it, fusion is useful for following reasons:
|
I decided against this and make use of |
tools are fine, I don't see why the compiler needs it just yet, maybe once fusion becomes more useful with support for compression etc. |
The absolutely simplest and most obvious solution here is that the compiler starts using a package manager - this solves pretty much everything and absolves the need for
Consider edit: It's important to point out that some of these packages can live in a single git repo as long as the PM supports it |
/cc @Araq
rationale
avoid code duplication and re-inventing the wheel
how it'd work
build_all.sh
builds csourceskoch boot
import fusion/foo
is made available for import, in fact it already is implemented in:nim c compiler/nim
can useimport fusion/foo
koch importing fusion
build_all.sh
; see for example addwalkDirRecFilter
recursive glob with follow filter (has full implementation) RFCs#261 where kochdocs couldimport fusion/globs
note
instead of
copyDir(distDir / "fusion" / "src" / "fusion", "lib" / "fusion")
, we should probably use the usual nimble logic which allows adding import dirs to nim's--path
, so thatnimble develop
fusion works as intended (NIMBLE_DIR=customdir
can always be used during bootstrap to avoid user's environment messing up with bootstrap)The text was updated successfully, but these errors were encountered: