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

Closed
vicuna opened this issue Apr 13, 2018 · 6 comments
Closed

Add a bigstring module to the stdlib #7772

vicuna opened this issue Apr 13, 2018 · 6 comments

Comments

@vicuna
Copy link

vicuna 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
Copy link
Author

vicuna 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
Copy link
Author

vicuna 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
Copy link
Author

vicuna 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
Copy link
Author

vicuna commented Aug 2, 2018

Comment author: @nojb

See #1961

@github-actions
Copy link

github-actions bot commented May 7, 2020

This issue has been open one year with no activity. Consequently, it is being marked with the "stale" label. What this means is that the issue will be automatically closed in 30 days unless more comments are added or the "stale" label is removed. Comments that provide new information on the issue are especially welcome: is it still reproducible? did it appear in other contexts? how critical is it? etc.

@github-actions github-actions bot added the Stale label May 7, 2020
@github-actions github-actions bot closed this as completed Jun 8, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant