Re: [racket-users] file->bytes with large files

2020-07-15 Thread Matthew Flatt
The `file->bytes` function uses the file size with `read-bytes`, and it
appears that the Mac OS `read` system call errors on requests of 2GB or
more. The right fix is for the `read` call within Racket (at the rktio
layer) to limit the size that it passes, and I'll make that change.

Meanwhile, you could work around the problem by limiting the size of an
individual request: Allocate a byte string and then use a sequence of
`read-bytes!` calls to read the file in increments. Each time, use the
number of read bytes to increment a starting position into the
destination byte string (which is the third argument to `read-bytes!`).

Matthew

At Wed, 15 Jul 2020 15:05:22 -0700 (PDT), Greg Rosenblatt wrote:
> Hi, I'm getting an error while using file->bytes to load a moderately large 
> file:
> 
> > (time (void (file->bytes "my-7.6GB-file")))
> ; error reading from stream port
> ;   port: #
> ;   system error: Invalid argument; errno=22
> ;   context...:
> ;/Applications/Racket v7.7/collects/racket/file.rkt:768:6: temp218
> ;/Applications/Racket 
> v7.7/collects/racket/private/more-scheme.rkt:336:52
> ;eval-one-top
> ;/Applications/Racket v7.7/share/pkgs/xrepl-lib/xrepl/xrepl.rkt:1478:0
> ;/Applications/Racket v7.7/collects/racket/repl.rkt:11:26
> 
> Is there a limit to the size of files that can be used with file->bytes?
> 
> I was preferring file->bytes because it seems much faster than manually 
> reading from a port.  If file->bytes is not appropriate here, can somebody 
> recommend another fast approach?
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to racket-users+unsubscr...@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/racket-users/e99edda0-06ed-4164-b7bd-46f8a458
> c6c8o%40googlegroups.com.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/20200715163230.343%40sirmail.smtp.cs.utah.edu.


[racket-users] file->bytes with large files

2020-07-15 Thread Greg Rosenblatt
Hi, I'm getting an error while using file->bytes to load a moderately large 
file:

> (time (void (file->bytes "my-7.6GB-file")))
; error reading from stream port
;   port: #
;   system error: Invalid argument; errno=22
;   context...:
;/Applications/Racket v7.7/collects/racket/file.rkt:768:6: temp218
;/Applications/Racket 
v7.7/collects/racket/private/more-scheme.rkt:336:52
;eval-one-top
;/Applications/Racket v7.7/share/pkgs/xrepl-lib/xrepl/xrepl.rkt:1478:0
;/Applications/Racket v7.7/collects/racket/repl.rkt:11:26

Is there a limit to the size of files that can be used with file->bytes?

I was preferring file->bytes because it seems much faster than manually 
reading from a port.  If file->bytes is not appropriate here, can somebody 
recommend another fast approach?

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/e99edda0-06ed-4164-b7bd-46f8a458c6c8o%40googlegroups.com.


[racket-users] Second call for draft papers for IFL 2020 (Implementation and Application of Functional Languages)

2020-07-15 Thread Jurriaan Hage
Hello,

Please, find below the second call for draft papers for IFL 2020.
Please forward these to anyone you think may be interested.
Apologies for any duplicates you may receive.

best regards,
Jurriaan Hage
Publicity Chair of IFL



IFL 2020

32nd Symposium on Implementation and Application of Functional Languages


  venue: online
 2nd - 4th September 2020

 https://www.cs.kent.ac.uk/events/2020/ifl20/



### Scope

The goal of the IFL symposia is to bring together researchers actively
engaged
in the implementation and application of functional and function-based
programming languages. IFL 2020 will be a venue for researchers to present
and
discuss new ideas and concepts, work in progress, and publication-ripe
results
related to the implementation and application of functional languages and
function-based programming.

Topics of interest to IFL include, but are not limited to:

- language concepts
- type systems, type checking, type inferencing
- compilation techniques
- staged compilation
- run-time function specialisation
- run-time code generation
- partial evaluation
- (abstract) interpretation
- meta-programming
- generic programming
- automatic program generation
- array processing
- concurrent/parallel programming
- concurrent/parallel program execution
- embedded systems
- web applications
- (embedded) domain specific languages
- security
- novel memory management techniques
- run-time profiling performance measurements
- debugging and tracing
- virtual/abstract machine architectures
- validation, verification of functional programs
- tools and programming techniques
- (industrial) applications


### Post-symposium peer-review

Following IFL tradition, IFL 2020 will use a post-symposium review process
to
produce the formal proceedings.

Before the symposium authors submit draft papers. These draft papers will
be
screened by the program chair to make sure that they are within the scope
of
IFL. The draft papers will be made available to all participants at the
symposium. Each draft paper is presented by one of the authors at the
symposium.

After the symposium every presenter is invited to submit a full paper,
incorporating feedback from discussions at the symposium. Work submitted to
IFL
may not be simultaneously submitted to other venues; submissions must
adhere to ACM SIGPLAN's republication policy. The program committee will
evaluate these submissions according to their correctness, novelty,
originality, relevance, significance, and clarity, and will thereby
determine whether the
paper is accepted or rejected for the formal proceedings. We plan to
publish
these proceedings in the International Conference Proceedings Series of the
ACM Digital Library, as in previous years.


### Important dates

Submission deadline of draft papers:   17 August 2020
Notification of acceptance for presentation:   19 August 2020
Registration deadline: 31 August 2020
IFL Symposium: 2-4 September 2020
Submission of papers for proceedings:  7 December 2020
Notification of acceptance:3 February 2021
Camera-ready version:  15 March 2021


### Submission details

All contributions must be written in English. Papers must use the ACM two
columns conference format, which can be found at:

  http://www.acm.org/publications/proceedings-template


### Peter Landin Prize

The Peter Landin Prize is awarded to the best paper presented at the
symposium every year. The honoured article is selected by the program
committee
based on the submissions received for the formal review process. The prize
carries a cash award equivalent to 150 Euros.


### Programme committee

Kenichi Asai, Ochanomizu University, Japan
Olaf Chitil, University of Kent, United Kingdom (chair)
Martin Erwig, Oregon State University,United States
Daniel Horpacsi, Eotvos Lorand University, Hungary
Zhenjiang Hu, Peking University, China
Hans-Wolfgang Loidl, Heriot-Watt University, United Kingdom
Neil Mitchell, Facebook, UK
Marco T. Morazan, Seton Hall University, United States
Rinus Plasmeijer, Radboud University, Netherlands
Colin Runciman, University of York, United Kingdom
Mary Sheeran, Chalmers University of Technology, Sweden
Josep Silva, Universitat Politecnica de Valencia, Spain
Jurrien Stutterheim, Standard Chartered, Singapore
Josef Svenningsson, Facebook, UK
Peter Thiemann, University of Freiburg, Germany
Kanae Tsushima, National Institute of Informatics, Japan.
Marcos Viera, Universidad de la Republica, Montevideo, Uruguay
Janis Voigtlander, University of Duisburg-Essen, Germany

### Virtual symposium

Because of the Covid-19 pandemic, this year IFL 2020