Re: Does newByteArray clear?

2020-08-26 Thread David Feuer
Thanks! I'm still going to feel free to pretend I get arrays for free :-).
I'm guessing I'll get some reused ones from the Haskell allocator, and the
OS is of course free to do clearing work on another core. It'd be awfully
nice to have a way to get "incrementally-cleared" arrays of pointers, but
that would require a new heap object type, which would be a lot to ask for.

On Wed, Aug 26, 2020, 8:56 PM Bertram Felgenhauer via Glasgow-haskell-users
 wrote:

> David Feuer wrote:
> > I'm looking to play around with an array-based structure with
> > sub-linear worst-case bounds. Array is pretty awkward in that context
> > because creating a new one takes O(n) time to initialize it. Is that
> > all true of newByteArray, or can I get one with arbitrary garbage in it
> > for cheap?
>
> newByteArray# does not actively clear memory.
>
> However, for large arrays, I think the memory is likely to be freshly
> allocated from the OS, and the OS will have cleared it for security
> reasons.
>
> Cheers,
>
> Bertram
> ___
> Glasgow-haskell-users mailing list
> Glasgow-haskell-users@haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users
>
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Re: Does newByteArray clear?

2020-08-26 Thread Bertram Felgenhauer via Glasgow-haskell-users
David Feuer wrote:
> I'm looking to play around with an array-based structure with
> sub-linear worst-case bounds. Array is pretty awkward in that context
> because creating a new one takes O(n) time to initialize it. Is that
> all true of newByteArray, or can I get one with arbitrary garbage in it
> for cheap?

newByteArray# does not actively clear memory.

However, for large arrays, I think the memory is likely to be freshly
allocated from the OS, and the OS will have cleared it for security
reasons.

Cheers,

Bertram
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


Does newByteArray clear?

2020-08-26 Thread David Feuer
I'm looking to play around with an array-based structure with sub-linear
worst-case bounds. Array is pretty awkward in that context because creating
a new one takes O(n) time to initialize it. Is that all true of
newByteArray, or can I get one with arbitrary garbage in it for cheap?
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users


[Haskell] First and Only Call for Participation for IFL 2020 (Implementation and Application of Functional Languages)

2020-08-26 Thread Jurriaan Hage
Hello,

Please, find below the first and final call for participation 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

   Call for Participation


  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.


### Registration

The symposium will be run via Zoom (zoom.us). If you can use Zoom, then you
can participate.
Please register for free via Eventbrite on the symposium webpage:
https://www.cs.kent.ac.uk/events/2020/ifl20/


### Programme

Day 1: Wednesday, 2 September

12:45 Welcome
13:00 Nico Naus and Johan Jeuring: End-user feedback in multi-user workflow
systems
13:30 Mart Lubbers, Haye Böhm, Pieter Koopman and Rinus Plasmeijer:
Asynchronous Shared Data Sources
14:00 Pieter Koopman, Steffen Michels and Rinus Plasmeijer: Dynamic Editors
for Well-Typed Expressions
14:30 Bas Lijnse and Rinus Plasmeijer: Asymmetric Composable Web Editors in
iTasks
15:00 Social break
15:30 Sven-Olof Nyström: A subtyping system for Erlang
16:00 Andrew Marmaduke, Christopher Jenkins and Aaron Stump: Generic
Zero-Cost Constructor Subtyping
16:30 Joris Burgers, Jurriaan Hage and Alejandro Serrano: Heuristics-based
Type Error Diagnosis for Haskell - The case of GADTs and local reasoning
17:00 Social break
17:30 Kavon Farvardin and John Reppy: A New Backend for Standard ML of New
Jersey
18:00 Chaitanya Koparkar, Mike Rainey, Michael Vollmer, Milind Kulkarni and
Ryan R. Newton: A Compiler Approach Reconciling Parallelism and Dense
Representations for Irregular Trees
18:30 Hans-Nikolai Vießmann and Sven-Bodo Scholz: Effective Host-GPU Memory
Mangement Through Code Generation
20:00 Virtual Pub


Day 2: Thursday, 3 September

10:00 Virtual Breakfast
13:00 Michal Gajda: Less Arbitrary waiting time
13:30 Sólrún Halla Einarsdóttir and Nicholas Smallbone: Template-based
Theory Exploration: Discovering Properties of Functional Programs by Testing
14:00 Péter Bereczky, Dániel Horpácsi, Judit Kőszegi, Soma Szeier and Simon
Thompson: Validating Formal Semantics by Comparative Testing
14:30 Social break
15:00 Gergo Erdi: An Adventure in Symbolic Execution
15:30 Joshua M. Schappel, Sachin Mahashabde and Marco T. Morazan: Using OO
Design Patterns in a Functional Programming Setting
16:00 Filipe Varjão: Functional Programming and Interval Arithmetic with
High Accuracy
16:30 Social break
17:00 Laith Sakka, Chaitanya Koparkar, Michael Vollmer, Vidush Singhal, Sam
Tobin-Hochstadt, Ryan R. Newton and Milind Kulkarni: General Deforestation
Using Fusion, Tupling and Intensive Redundancy Analysis
17:30 Benjamin Mourad and Matteo Cimini: A Declarative Gradualizer with
Lang-n-Change
18:00 Maheen Riaz Contractor and Matthew Fluet: Type- and Control-Flow
Directed Defunctionalization
19:30 Virtual Pub


Day 3: Friday, 4 September

10:00 Virtual Breakfast
13:00 Michal Gajda: Towards a more perfect union type
13:30 Folkert de Vries, Sjaak Smetsers and Sven-Bodo Scholz: Container
Unification for Uniqueness Types
14:00 Alejandro Díaz-Caro, Pablo E. Martínez López and Cristian Sottile:
Polymorphic System I
14:30 Social break
15:00 Michal Gajda: Schema-driven mutation of datatype with multiple
representations
15:30 Alexandre Garcia de Oliveira, Mauro Jaskelioff and Ana Cristina
Vieira de Melo: On Structuring Pure Functional Programs with Monoidal
Profunctors
16:00 Sara Moreira, Pedro Vasconcelos and Mário Florido: Resource Analysis
for Lazy Evaluation with Polynomial Potential
16:30 Social break
17:00 Neil Mitchell, Moritz Kiefer, Pepe Iborra, Luke Lau, Zubin Duggal,
Hannes Siebenhandl, Matthew Pickering and Alan Zimmerman: Building an
Integrated Development Environment (IDE) on top of a Build System
17:30 Evan Sitt, Xiaotian Su, Beka Grdzelishvili, Zurab Tsinadze, Zongpu
Xie, Hossameldin Abdin, Giorgi Botkoveli, Nikola Cenikj, Tringa Sylaj and
Viktoria Zsok: Functional Programming Application for Digital Synthesis
Implementation
18:00 Jocelyn Serot: HoCL: High level specification of dataflow graphs
19:30 Virtual Pub

All times are in British Summer Time (BST), the local time in Canterbury,
UK. So please translate these into your own time zone, using a service such