Comments (6)
Should it strictly be called chezscheme or is chez-scheme equally valid?
…
All possible namings exist somewhere. homebrew ->
chez
, guix ->chez-scheme
, debian ->chezscheme
.
For the package name, I would go with whatever seems most idiomatic for your distro's conventions.
For the name of the binary, does Fedora have something analogous to Debian's alternatives system? (I haven't seriously used an RPM-based distro since c. 2005.) If so, I recommend using that to make scheme
and scheme-script
available—as does R6RS Appendix D.3.4. Many Chez Scheme users (including me) expect to run it as scheme
, but it does conflict with MIT/GNU Scheme and maybe others. I think the alternative name is less important, though personally I like either chez-scheme
or chez
better than chezscheme
. (I would not emulate the Guix packaging on this, though: since before I got involved, our package has created chez-scheme
and chez-scheme.boot
as symlinks to scheme
and scheme.boot
, but the way it's implemented doesn't actually fix the conflict in our tooling for scheme
…)
Re https://bugzilla.redhat.com/show_bug.cgi?id=2281419#c8:
There is a static library
usr/lib64/tarm64le/libkernel.a
. Is this needed? If so, how is it used? Could it be made a dynamically linked library?
The static library is used for embedding Chez Scheme into applications, as documented here, among other places. It seems useful to distribute if your distro generally distributes static libraries.
IIUC, Chez Scheme doesn't currently support building something like libchezscheme.so.10.0.0
on Unix-like systems. My distro would prefer that, too: I've thought about looking into it, but I don't know how difficult it would be. For Windows, there is support for csv10.0.0.dll
.
I'm less convinced about the usefulness of main.o
, as I wrote in #811.
One more question I have: I noticed that the nanopass and stex submodules are pointing to rather old commits... Is there any plan to move to newer? Doesn't really block Fedora, so mostly curious
When #761 is ready it will update stex. (I hope to get back to the helpful comments on dybvig/stex#7 soon!) In Guix, we have been using dybvig/stex@afa6075 (the latest) for some time, plus my patch in dybvig/stex#6 (but note that dybvig/stex#7 includes an improved version).
It looks like there have only been two commits to nanopass since the one pointed to: nanopass/nanopass-framework-scheme@f3100ce just improves an error message, but it does seem like nanopass/nanopass-framework-scheme@1b59636 might be relevant.
On that note, Guix and Debian both package stex. Guix also packages Zuo and shares it between Chez Scheme and Racket.
from chezscheme.
Some probably
scheme.h
should be subpackaged together withlibkernel.a
andmain.o
in a devel subpackage ?
That's what Debian does, as chezscheme-dev
.
If you have a doc subpackage, you may want to consider putting the examples
directory there, if you haven't already.
from chezscheme.
One more question I have: I noticed that the nanopass and stex submodules are pointing to rather old commits...
Is there any plan to move to newer? Doesn't really block Fedora, so mostly curious
from chezscheme.
Should it strictly be called chezscheme or is chez-scheme equally valid?
Idris2
For the case of idris2, the name does not matter because it falls back to all possibilities idris-lang/Idris2@d4553a1
All possible namings exist somewhere. homebrew ->chez
, guix -> chez-scheme
, debian -> chezscheme
.
The root of this list of fallbacks is because chez default to scheme
which certainly conflicts with another scheme, and thus everyone renames it slightly different.
Maybe in ChezScheme 11 or now, this scheme
should be changed to chez
to end this little pointless fragmentation once for all.
Lines 84 to 86 in fa451a1
from chezscheme.
Thank you @LiberalArtist - this was exactly the kind of reply I was hoping for 🙏
For the package name, I would go with whatever seems most idiomatic for your distro's conventions.
Okay I will probably just stay with "chez-scheme" then - I could provide some package name aliases if appropriate/needed later, thanks.
For the name of the binary, does Fedora have something analogous to Debian's alternatives system? (I haven't seriously used an RPM-based distro since c. 2005.) If so, I recommend using that to make
scheme
andscheme-script
available—as does R6RS Appendix D.3.4. Many Chez Scheme users (including me) expect to run it asscheme
, but it does conflict with MIT/GNU Scheme and maybe others.
We do have alternatives in Fedora too, so that could be used.
In a slightly sad state of affairs we don't actually seem to have any other /usr/bin/scheme already in Fedora currently...
Re https://bugzilla.redhat.com/show_bug.cgi?id=2281419#c8:
There is a static library
usr/lib64/tarm64le/libkernel.a
. Is this needed? If so, how is it used? Could it be made a dynamically linked library?The static library is used for embedding Chez Scheme into applications, as documented here, among other places. It seems useful to distribute if your distro generally distributes static libraries.
Fedora doesn't generally distribute static libs, so I guess I could pop it into a static subpackage.
I'm less convinced about the usefulness of
main.o
, as I wrote in #811.
Okay I just wanted to check that it doesn't provide some critical functionality, like an RTS for binaries or something.
Thank you again for the detailed answers.
from chezscheme.
So probably scheme.h
should be subpackaged together with libkernel.a and main.o in a devel subpackage ?
from chezscheme.
Related Issues (20)
- Why is `main.o` installed? HOT 3
- Bug in fixnum arithmetic HOT 1
- bytevector-reference-ref & set! fail to correctly check size of bytevectors smaller than ptr-bytes - 1 HOT 1
- Warnings from GCC `-fanalyzer`
- new RNG is very broken HOT 4
- chezscheme 10 cannot be built from tarball HOT 1
- Non-tail calls to errorf sometimes treated as tail calls with debug-level 2 HOT 5
- weird cond expansion HOT 8
- [PATCH] Update user's guide link in README HOT 1
- Bug in V format prefix parameter HOT 1
- native eol style HOT 4
- error: use of unknown builtin '__builtin_add_overflow' HOT 1
- How to cross compile on macOS for a different macOS architecture HOT 3
- Build fails if I set CC_FOR_BUILD HOT 1
- set! creates new bindings HOT 3
- Build/Embed Chez Scheme with larger C/C++ program HOT 3
- Unexpected result using conditional procedure and set! HOT 2
- Mysterious invalid syntax when building transformer output with `quote-syntax`
- Primitive macro matching procedure application? HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from chezscheme.