Skip to content
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

Add a bigstring module to the stdlib #7772

Open
vicuna opened this issue Apr 13, 2018 · 5 comments

Comments

Projects
None yet
1 participant
@vicuna
Copy link

commented Apr 13, 2018

Original bug ID: 7772
Reporter: @hhugo
Status: new
Resolution: open
Priority: normal
Severity: feature
Category: standard library
Monitored by: @nojb @diml @hcarty @dbuenzli

Bug description

Quoting description from https://github.com/inhabitedtype/bigstringaf:

The OCaml compiler has a bunch of intrinsics for Bigstrings, but they're not widely-known, sometimes misused, and programs that use Bigstrings are slower than they have to be.

@vicuna

This comment has been minimized.

Copy link
Author

commented Apr 13, 2018

Comment author: @nojb

The linked library is essentially the BigString module of the library ocplib-endian library https://github.com/OCamlPro/ocplib-endian, which exposes the family of primitives caml_{bytes,string,bigstring}_{get,set}{16,32,64).

Personally I think it makes sense to exposed these primitives in the standard library. If there is a consensus to do so, I can put together a PR, but am not familiar with the history here: why where these primitives introduced but not exposed in the first place?

@vicuna

This comment has been minimized.

Copy link
Author

commented Apr 16, 2018

Comment author: @diml

I'm for exposing these primitives as well. I don't think there is a particular reason why they were not exposed initially. My guess is that there were no good places to put them and adding a new module was complicated.

@vicuna

This comment has been minimized.

Copy link
Author

commented Jun 26, 2018

Comment author: @alainfrisch

The primitives has been introduced in #5771 and #5774.

Since the hard work is behind us, I find it unfortunate to not expose primitives understood by the compiler and runtime system, and to force a dependency on a third-party library.

See also #1864

@vicuna

This comment has been minimized.

Copy link
Author

commented Aug 2, 2018

Comment author: @nojb

See #1961

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.