two questions on 4-08-notes
Dear GHC, Sorry for the ignorance, just two questions on 4-08-notes.sgml. Result type signatures now work. [..] Constant folding is now done by Rules What do these two mean, or where they are explained? Maybe, you can give an example? -- Sergey Mechveliani [EMAIL PROTECTED]
Compiling ghc 4.08
I get the following compile error: (My configuration is Linux kernel 2.4.0-test1, gcc 2.91.66 and ghc 4.06 installed) PWD = /home/gemi/fptools/ghc/lib/std rm -f PrelBase.o ; if [ ! -d PrelBase ]; then mkdir PrelBase; else /usr/bin/find PrelBase -name '*.o' -print | xargs rm -f __rm_food ; fi ; ../../driver/ghc-inplace -recomp -cpp -fglasgow-exts -fvia-C -Rghc-timing -O -package-name std -static -split-objs -H12m -c PrelBase.lhs -o PrelBase.o -osuf o ghc: 114644880 bytes, 17 GCs, 1047207/1890108 avg/max bytes residency (4 samples), 13M in use, 0.01 INIT (0.00 elapsed), 2.68 MUT (3.04 elapsed), 0.75 GC (0.84 elapsed) :ghc Epilogue junk?: popl %edx .Lfe364: .sizec3Ix_ret,.Lfe364-c3Ix_ret .globl PrelBase_zdwgcdInt_info .section.rodata .align 4 .typePrelBase_zdwgcdInt_info,@object .sizePrelBase_zdwgcdInt_info,12 make[3]: *** [PrelBase.o] Error 255 make[2]: *** [all] Error 1 make[1]: *** [all] Error 1 make: *** [all] Error 1 PGP signature
Re: numericEnumFromThenTo strangeness
Lennart Augustsson wrote: By definition, if you follow the standard you can't be wrong. :) But the standard can be wrong. Perhaps this is a typo in the report? I think I looked at this a while back. The standard is kaput. It gets even worse if you try to make sense of the definitions of succ and pred as applied to floating-point number. My suggestion: get rid of Enum on floating-point numbers. Maybe it'll make floating point loops a little lengthier to code, but at least it will be clear what exactly is being coded.
preliminary program PPDP 2000
PRELIMINARY PROGRAM PPDP 2000 2nd International Conference on Principles and Practice of Declarative Programming Montréal, Canada September 20-22, 2000 http://cs.yorku.ca/ppdp00 associated with PLI 2000: Colloquium on Principles, Logics, and Implementations of High-Level Programming Languages http://www.cs.yorku.ca/pli00 WEDNESDAY, September 22 Opening: 14.20-14.30 Invited Talk: 14.30-15.30 From Logic to Stochastic Processes Prakash Panangaden Session I: 16:00-18:00 A Parallel Implementation for Optimal Lambda-Calculus Reduction Marco Pedicini, Francesco Quaglia Logical Relations, Data Abstraction, and Structured Fibrations John Power, Edmund Robinson Operational Semantics and Extensionality Simona Ronchi Della Rocca A High Performance Erlang System Erik Johansson, Mikael Pettersson, Konstantinos Sagonas THURSDAY, September 21 Invited Talk: 8:30-9:30 Concurrent Constraint Programming and Linear Logic Francois Fages Session II: 9:35-10:35 A Framework for the Recursive Definition of Data Structures Jean-Louis Giavitto Declarative Event-Oriented Programming Conal Elliott Session III: 11:00-12:30 Linear Logic Programming with Ordered Contexts Jeff Polakow Proof Construction and Non-Commutativity: a Cluster Calculus Claudia Faggian A Bottom-up Semantics for LO Marco Bozzano, Giorgio Delzanno, Maurizio Martelli Session IV: 14:00-15:30 Enhanced Sharing Analysis Techniques: A Comprehensive Evaluation Roberto Bagnara, Enea Zaffanella, Patricia M. Hill A Characterization of Symmetric Semantics by Domain Complementation Roberto Giacobazzi, Isabella Mastroeni Concurrent Constraint Programming: Towards Probabilistic Abstract Interpretation Alessandra Di Pierro, Herbert Wiklicky Session V: 16:00-17:30 Simplifying Termination Proofs for Rewrite Systems by Preprocessing Bernhard Gramlich A Model for Comparing the Space Usage of Lazy Evaluators Adam Bakewell, Colin Runciman Higher Order Unification via Lambda-s-e-Style of Explicit Substitution Mauricio Ayala-Rincon, Fairouz Kamareddine FRIDAY Invited Talk: 8:30-9:30 Proof-Carrying Code: Design, Implementation and Applications George Necula Session VI: 9:35-10:35 Justifying Proofs using Memo Tables Abhik Roychoudhury, C.R. Ramakrishnan, I.V. Ramakrishnan Semantic Analysis of Pointer Aliasing, Allocation and Disposal in Hoare Logic Cristiano Calcagno, Samin Ishtiaq, Peter W. O'Hearn Session VII: 11:00-12:30 Type-based Nondeterminism Checking in Functional Logic Programs Michael Hanus, Frank Steiner A Precise Type Analysis of Logic Programs Lunjin Lu Efficient Abstract Interpretation using Component-Wise Homomorphism Jörg Köller, Markus Mohnen Session VIII: 14:00-15:30 Extending Constraint Logic Programming with Open Functions Nikolay Pelov, Maurice Bruynooghe Efficient Memory Management in a Single Stack Prolog Machine Xining Li Continuations for Parallel Logic Programming Eneia Todoran, Nikolaos S. Papaspyrou Session IX: 16:00-17:30 Solving Coverability Problems of Petri Nets by Partial Deduction Michael Leuschel, Helko Lehmann Symmetric Monoidal Sketches Martin Hyland, John Power Modular Reseting of Synchronous Data-flow Programs Gregoire Hamon, Marc Pouzet Closing 17:30-17:40 VENUE PLI 2000 will be held in Montréal, at Holiday Inn Select Jardin Sinomonde 99 Viger Avenue West Montréal (Québec) Canada H2Z 1E9 http://www.hiselect-yul.com mailto: [EMAIL PROTECTED] SPONSORS PPDP 2000 is sponsored by ACM SIGPLAN with support of Microsoft Research, the Canadian Space Agency, York University, EAPLS, the Association for Logic Programming and COMPULOG Americas
Re: numericEnumFromThenTo strangeness
Lennart Augustsson wrote: By definition, if you follow the standard you can't be wrong. :) But the standard can be wrong. Perhaps this is a typo in the report? I think I looked at this a while back. The standard is kaput. It gets even worse if you try to make sense of the definitions of succ and pred as applied to floating-point number. My suggestion: get rid of Enum on floating-point numbers. Maybe it'll make floating point loops a little lengthier to code, but at least it will be clear what exactly is being coded.
Re: numericEnumFromThenTo strangeness
Michael Weber writes (on the ghc-users list): I'm slightly puzzled about the definition of list enumerations in GHC (and possibly other Haskell implementations)... ``[0.0, 2 .. 9] :: [Float]'' == [0.0, 2.0, 4.0, 6.0, 8.0, 10.0] Nevertheless, this behaviour is defined by the Haskell98 standard! (See ~ #3.10) It seems that Hugs, ghc, and hbc all give the same wrong answer, as mandated by the Haskell report. nhc98 alone gives the expected answer of [0.0, 2.0, 4.0, 6.0, 8.0], but thereby breaks the standard. So I echo the question: Can somebody please point me to the rationale behind the design decision? Then either I must fix nhc98, or everyone else must fix ghc, Hugs, hbc, etc. Regards, Malcolm
Re: numericEnumFromThenTo strangeness
[EMAIL PROTECTED] wrote: Michael Weber writes (on the ghc-users list): I'm slightly puzzled about the definition of list enumerations in GHC (and possibly other Haskell implementations)... ``[0.0, 2 .. 9] :: [Float]'' == [0.0, 2.0, 4.0, 6.0, 8.0, 10.0] Nevertheless, this behaviour is defined by the Haskell98 standard! (See ~ #3.10) It seems that Hugs, ghc, and hbc all give the same wrong answer, as mandated by the Haskell report. nhc98 alone gives the expected answer of [0.0, 2.0, 4.0, 6.0, 8.0], but thereby breaks the standard. By definition, if you follow the standard you can't be wrong. :) But the standard can be wrong. Perhaps this is a typo in the report? -- -- Lennart