chicken-janitors
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Chicken-janitors] #1323: Teach compiler that fold and map with clean pr


From: Chicken Trac
Subject: [Chicken-janitors] #1323: Teach compiler that fold and map with clean procedure is itself clean
Date: Mon, 29 Aug 2016 10:30:30 -0000

#1323: Teach compiler that fold and map with clean procedure is itself clean
---------------------------+--------------------------------
 Reporter:  sjamaan        |                 Owner:
     Type:  defect         |                Status:  new
 Priority:  major          |             Milestone:  someday
Component:  compiler       |               Version:  4.11.0
 Keywords:  optimisations  |  Estimated difficulty:  hard
---------------------------+--------------------------------
 It looks like CHICKEN currently doesn't understand that `fold` and `map`
 are `#:clean` if the argument procedure is `#:clean`.  This prevents it
 from recognising that something like `(fold + 0 (iota 10000))` is
 foldable.

 We could hardcode these procedures, but I'd prefer not to, so this might
 require some kind of new annotation in `types.db`.

 This idea was inspired by http://pramode.in/2016/08/25/rust-add-billion-
 numbers/ - if Rust can do it, so can we!

--
Ticket URL: <https://bugs.call-cc.org/ticket/1323>
CHICKEN Scheme <https://www.call-cc.org/>
CHICKEN Scheme is a compiler for the Scheme programming language.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]