[pure-lang-svn] SF.net SVN: pure-lang:[716] pure/trunk/test/prelude.log
Status: Beta
Brought to you by:
agraef
|
From: <ag...@us...> - 2008-09-05 11:08:23
|
Revision: 716
http://pure-lang.svn.sourceforge.net/pure-lang/?rev=716&view=rev
Author: agraef
Date: 2008-09-05 11:08:32 +0000 (Fri, 05 Sep 2008)
Log Message:
-----------
Update logs.
Modified Paths:
--------------
pure/trunk/test/prelude.log
Modified: pure/trunk/test/prelude.log
===================================================================
--- pure/trunk/test/prelude.log 2008-09-05 10:47:34 UTC (rev 715)
+++ pure/trunk/test/prelude.log 2008-09-05 11:08:32 UTC (rev 716)
@@ -773,7 +773,67 @@
scanl1 f/*0:01*/ [] = [];
scanl1 f/*0:01*/ (x/*0:101*/:xs/*0:11*/) = scanl f/*0:01*/ x/*0:101*/ xs/*0:11*/;
scanr f/*0:001*/ a/*0:01*/ [] = [a/*0:01*/];
-scanr f/*0:001*/ a/*0:01*/ xs@(_/*0:101*/:_/*0:11*/) = tick/*0*/ [] xs/*0:1*/ with tick zs/*0:01*/ (x/*0:101*/:xs/*0:11*/) = tack/*1*/ zs/*0:01*/ (f/*3:001*/ x/*2:101*/ (y/*0:01*/ when y/*0:01*/:_/*0:1*/ = ys/*1:*/ {
+scanr f/*0:001*/ a/*0:01*/ xs@(_/*0:101*/:_/*0:11*/) = tick/*0*/ [] xs/*0:1*/ with tick zs/*0:01*/ (x/*0:101*/:xs/*0:11*/) = tack/*4*/ zs/*3:01*/ us/*0:*/ when ys/*0:*/ = scanr f/*2:001*/ a/*2:01*/ xs/*1:11*/&; y/*0:*/ = (case ys/*1:*/ of y/*0:01*/:_/*0:1*/ = y/*0:01*/; scanr _/*0:001*/ _/*0:01*/ ys/*0:1*/ = throw (bad_list_value ys/*0:1*/); _/*0:*/ = throw (bad_list_value ys/*2:*/) {
+ rule #0: y:_ = y
+ rule #1: scanr _ _ ys = throw (bad_list_value ys)
+ rule #2: _ = throw (bad_list_value ys)
+ state 0: #0 #1 #2
+ <var> state 1
+ <app> state 2
+ state 1: #2
+ state 2: #0 #1 #2
+ <var> state 3
+ <app> state 5
+ state 3: #2
+ <var> state 4
+ state 4: #2
+ state 5: #0 #1 #2
+ <var> state 6
+ : state 9
+ <app> state 12
+ state 6: #2
+ <var> state 7
+ state 7: #2
+ <var> state 8
+ state 8: #2
+ state 9: #0 #2
+ <var> state 10
+ state 10: #0 #2
+ <var> state 11
+ state 11: #0 #2
+ state 12: #1 #2
+ <var> state 13
+ scanr state 17
+ state 13: #2
+ <var> state 14
+ state 14: #2
+ <var> state 15
+ state 15: #2
+ <var> state 16
+ state 16: #2
+ state 17: #1 #2
+ <var> state 18
+ state 18: #1 #2
+ <var> state 19
+ state 19: #1 #2
+ <var> state 20
+ state 20: #1 #2
+} end)&; us/*0:*/ = f/*3:001*/ x/*2:101*/ y/*0:*/:ys/*1:*/ {
+ rule #0: us = f x y:ys
+ state 0: #0
+ <var> state 1
+ state 1: #0
+} {
+ rule #0: y = (case ys of y:_ = y; scanr _ _ ys = throw (bad_list_value ys); _ = throw (bad_list_value ys) end)&
+ state 0: #0
+ <var> state 1
+ state 1: #0
+} {
+ rule #0: ys = scanr f a xs&
+ state 0: #0
+ <var> state 1
+ state 1: #0
+} end if thunkp xs/*0:11*/; tick zs/*0:01*/ (x/*0:101*/:xs/*0:11*/) = tack/*1*/ zs/*0:01*/ (f/*3:001*/ x/*2:101*/ (y/*0:01*/ when y/*0:01*/:_/*0:1*/ = ys/*1:*/ {
rule #0: y:_ = ys
state 0: #0
<app> state 1
@@ -792,37 +852,38 @@
<var> state 1
state 1: #0
} end) if thunkp xs/*0:11*/; tick zs/*0:01*/ (x/*0:101*/:xs/*0:11*/) = tick/*1*/ (x/*0:101*/:zs/*0:01*/) xs/*0:11*/; tick zs/*0:01*/ [] = tack/*1*/ zs/*0:01*/ [a/*1:01*/]; tick zs/*0:01*/ xs/*0:1*/ = throw (bad_list_value xs/*0:1*/) {
- rule #0: tick zs (x:xs) = tack zs (f x (y when y:_ = ys end)&:ys when ys = scanr f a xs& end) if thunkp xs
- rule #1: tick zs (x:xs) = tick (x:zs) xs
- rule #2: tick zs [] = tack zs [a]
- rule #3: tick zs xs = throw (bad_list_value xs)
- state 0: #0 #1 #2 #3
+ rule #0: tick zs (x:xs) = tack zs us when ys = scanr f a xs&; y = (case ys of y:_ = y; scanr _ _ ys = throw (bad_list_value ys); _ = throw (bad_list_value ys) end)&; us = f x y:ys end if thunkp xs
+ rule #1: tick zs (x:xs) = tack zs (f x (y when y:_ = ys end)&:ys when ys = scanr f a xs& end) if thunkp xs
+ rule #2: tick zs (x:xs) = tick (x:zs) xs
+ rule #3: tick zs [] = tack zs [a]
+ rule #4: tick zs xs = throw (bad_list_value xs)
+ state 0: #0 #1 #2 #3 #4
<var> state 1
- state 1: #0 #1 #2 #3
+ state 1: #0 #1 #2 #3 #4
<var> state 2
<app> state 3
[] state 13
- state 2: #3
- state 3: #0 #1 #3
+ state 2: #4
+ state 3: #0 #1 #2 #4
<var> state 4
<app> state 6
- state 4: #3
+ state 4: #4
<var> state 5
- state 5: #3
- state 6: #0 #1 #3
+ state 5: #4
+ state 6: #0 #1 #2 #4
<var> state 7
: state 10
- state 7: #3
+ state 7: #4
<var> state 8
- state 8: #3
+ state 8: #4
<var> state 9
- state 9: #3
- state 10: #0 #1 #3
+ state 9: #4
+ state 10: #0 #1 #2 #4
<var> state 11
- state 11: #0 #1 #3
+ state 11: #0 #1 #2 #4
<var> state 12
- state 12: #0 #1 #3
- state 13: #2 #3
+ state 12: #0 #1 #2 #4
+ state 13: #3 #4
}; tack (x/*0:0101*/:xs/*0:011*/) ys/*0:1*/ = tack/*2*/ xs/*1:011*/ (f/*2:001*/ x/*1:0101*/ y/*0:01*/:ys/*1:1*/) when y/*0:01*/:_/*0:1*/ = ys/*0:1*/ {
rule #0: y:_ = ys
state 0: #0
@@ -859,25 +920,55 @@
} end;
scanr1 f/*0:01*/ [] = [];
scanr1 f/*0:01*/ [x/*0:101*/] = [x/*0:101*/];
-scanr1 f/*0:01*/ xs@(_/*0:101*/:_/*0:11*/) = tick/*0*/ [] xs/*0:1*/ with tick zs/*0:01*/ (x/*0:101*/:xs/*0:11*/) = tack/*1*/ zs/*0:01*/ (f/*3:01*/ x/*2:101*/ (y/*0:01*/ when y/*0:01*/:_/*0:1*/ = ys/*1:*/ {
- rule #0: y:_ = ys
+scanr1 f/*0:01*/ xs@(_/*0:101*/:_/*0:11*/) = tick/*0*/ [] xs/*0:1*/ with tick zs/*0:01*/ (x/*0:101*/:xs/*0:11*/) = tack/*4*/ zs/*3:01*/ us/*0:*/ when ys/*0:*/ = scanr1 f/*2:01*/ xs/*1:11*/&; y/*0:*/ = (case ys/*1:*/ of y/*0:01*/:_/*0:1*/ = y/*0:01*/; scanr1 _/*0:01*/ ys/*0:1*/ = throw (bad_list_value ys/*0:1*/); _/*0:*/ = throw (bad_list_value ys/*2:*/) {
+ rule #0: y:_ = y
+ rule #1: scanr1 _ ys = throw (bad_list_value ys)
+ rule #2: _ = throw (bad_list_value ys)
+ state 0: #0 #1 #2
+ <var> state 1
+ <app> state 2
+ state 1: #2
+ state 2: #0 #1 #2
+ <var> state 3
+ <app> state 5
+ state 3: #2
+ <var> state 4
+ state 4: #2
+ state 5: #0 #1 #2
+ <var> state 6
+ : state 9
+ scanr1 state 12
+ state 6: #2
+ <var> state 7
+ state 7: #2
+ <var> state 8
+ state 8: #2
+ state 9: #0 #2
+ <var> state 10
+ state 10: #0 #2
+ <var> state 11
+ state 11: #0 #2
+ state 12: #1 #2
+ <var> state 13
+ state 13: #1 #2
+ <var> state 14
+ state 14: #1 #2
+} end)&; us/*0:*/ = f/*3:01*/ x/*2:101*/ y/*0:*/:ys/*1:*/ {
+ rule #0: us = f x y:ys
state 0: #0
- <app> state 1
+ <var> state 1
state 1: #0
- <app> state 2
- state 2: #0
- : state 3
- state 3: #0
- <var> state 4
- state 4: #0
- <var> state 5
- state 5: #0
-} end)&:ys/*0:*/ when ys/*0:*/ = scanr1 f/*2:01*/ xs/*1:11*/& {
+} {
+ rule #0: y = (case ys of y:_ = y; scanr1 _ ys = throw (bad_list_value ys); _ = throw (bad_list_value ys) end)&
+ state 0: #0
+ <var> state 1
+ state 1: #0
+} {
rule #0: ys = scanr1 f xs&
state 0: #0
<var> state 1
state 1: #0
-} end) if thunkp xs/*0:11*/; tick zs/*0:01*/ xs/*0:1*/ = case xs/*0:1*/ of [x/*0:01*/] = tack/*2*/ zs/*1:01*/ [x/*0:01*/]; x/*0:01*/:xs/*0:1*/ = tick/*2*/ (x/*0:01*/:zs/*1:01*/) xs/*0:1*/; _/*0:*/ = throw (bad_list_value xs/*1:1*/) {
+} end if thunkp xs/*0:11*/; tick zs/*0:01*/ xs/*0:1*/ = case xs/*0:1*/ of [x/*0:01*/] = tack/*2*/ zs/*1:01*/ [x/*0:01*/]; x/*0:01*/:xs/*0:1*/ = tick/*2*/ (x/*0:01*/:zs/*1:01*/) xs/*0:1*/; _/*0:*/ = throw (bad_list_value xs/*1:1*/) {
rule #0: [x] = tack zs [x]
rule #1: x:xs = tick (x:zs) xs
rule #2: _ = throw (bad_list_value xs)
@@ -907,7 +998,7 @@
state 11: #1 #2
state 12: #0 #1 #2
} end {
- rule #0: tick zs (x:xs) = tack zs (f x (y when y:_ = ys end)&:ys when ys = scanr1 f xs& end) if thunkp xs
+ rule #0: tick zs (x:xs) = tack zs us when ys = scanr1 f xs&; y = (case ys of y:_ = y; scanr1 _ ys = throw (bad_list_value ys); _ = throw (bad_list_value ys) end)&; us = f x y:ys end if thunkp xs
rule #1: tick zs xs = case xs of [x] = tack zs [x]; x:xs = tick (x:zs) xs; _ = throw (bad_list_value xs) end
state 0: #0 #1
<var> state 1
@@ -1801,8 +1892,8 @@
dowith3 f/*0:0001*/ (x/*0:00101*/:xs/*0:0011*/) (y/*0:0101*/:ys/*0:011*/) (z/*0:101*/:zs/*0:11*/) = f/*0:0001*/ x/*0:00101*/ y/*0:0101*/ z/*0:101*/$$dowith3 f/*0:0001*/ xs/*0:0011*/ ys/*0:011*/ zs/*0:11*/;
dowith3 f/*0:0001*/ _/*0:001*/ _/*0:01*/ _/*0:1*/ = ();
unzip [] = [],[];
-unzip us@(_/*0:101*/:_/*0:11*/) = foldr accum/*0*/ ([],[]) us/*0:1*/ with accum u@(x/*0:0101*/,y/*0:011*/) us/*0:1*/ = x/*0:0101*/:(xs/*0:01*/ when xs/*0:01*/,_/*0:1*/ = us/*1:1*/ {
- rule #0: xs,_ = us
+unzip us@(_/*0:101*/:_/*0:11*/) = foldr accum/*0*/ ([],[]) us/*0:1*/ with accum u@(x/*0:0101*/,y/*0:011*/) us/*0:1*/ = x/*0:0101*/:(xs/*0:01*/ when xs/*0:01*/,_/*0:1*/ = check/*2*/ us/*1:1*/ {
+ rule #0: xs,_ = check us
state 0: #0
<app> state 1
state 1: #0
@@ -1814,8 +1905,8 @@
state 4: #0
<var> state 5
state 5: #0
-} end)&,y/*0:011*/:(ys/*0:1*/ when _/*0:01*/,ys/*0:1*/ = us/*1:1*/ {
- rule #0: _,ys = us
+} end)&,y/*0:011*/:(ys/*0:1*/ when _/*0:01*/,ys/*0:1*/ = check/*2*/ us/*1:1*/ {
+ rule #0: _,ys = check us
state 0: #0
<app> state 1
state 1: #0
@@ -1827,8 +1918,8 @@
state 4: #0
<var> state 5
state 5: #0
-} end)& if thunkp us/*0:1*/; accum u@(x/*0:0101*/,y/*0:011*/) us/*0:1*/ = x/*1:0101*/:xs/*0:01*/,y/*1:011*/:ys/*0:1*/ when xs/*0:01*/,ys/*0:1*/ = us/*0:1*/ {
- rule #0: xs,ys = us
+} end)& if thunkp us/*0:1*/; accum u@(x/*0:0101*/,y/*0:011*/) us/*0:1*/ = x/*1:0101*/:xs/*0:01*/,y/*1:011*/:ys/*0:1*/ when xs/*0:01*/,ys/*0:1*/ = check/*1*/ us/*0:1*/ {
+ rule #0: xs,ys = check us
state 0: #0
<app> state 1
state 1: #0
@@ -1841,8 +1932,8 @@
<var> state 5
state 5: #0
} end; accum u/*0:01*/ _/*0:1*/ = throw (bad_tuple_value u/*0:01*/) {
- rule #0: accum u@(x,y) us = x:(xs when xs,_ = us end)&,y:(ys when _,ys = us end)& if thunkp us
- rule #1: accum u@(x,y) us = x:xs,y:ys when xs,ys = us end
+ rule #0: accum u@(x,y) us = x:(xs when xs,_ = check us end)&,y:(ys when _,ys = check us end)& if thunkp us
+ rule #1: accum u@(x,y) us = x:xs,y:ys when xs,ys = check us end
rule #2: accum u _ = throw (bad_tuple_value u)
state 0: #0 #1 #2
<var> state 1
@@ -1875,10 +1966,55 @@
state 14: #0 #1 #2
<var> state 15
state 15: #0 #1 #2
+}; check us@(_/*0:101*/,_/*0:11*/) = us/*0:1*/; check (foldr _/*0:1001*/ _/*0:101*/ us/*0:11*/) = throw (bad_list_value us/*0:11*/); check us/*0:1*/ = throw (bad_tuple_value us/*0:1*/) {
+ rule #0: check us@(_,_) = us
+ rule #1: check (foldr _ _ us) = throw (bad_list_value us)
+ rule #2: check us = throw (bad_tuple_value us)
+ state 0: #0 #1 #2
+ <var> state 1
+ <app> state 2
+ state 1: #2
+ state 2: #0 #1 #2
+ <var> state 3
+ <app> state 5
+ state 3: #2
+ <var> state 4
+ state 4: #2
+ state 5: #0 #1 #2
+ <var> state 6
+ , state 9
+ <app> state 12
+ state 6: #2
+ <var> state 7
+ state 7: #2
+ <var> state 8
+ state 8: #2
+ state 9: #0 #2
+ <var> state 10
+ state 10: #0 #2
+ <var> state 11
+ state 11: #0 #2
+ state 12: #1 #2
+ <var> state 13
+ foldr state 17
+ state 13: #2
+ <var> state 14
+ state 14: #2
+ <var> state 15
+ state 15: #2
+ <var> state 16
+ state 16: #2
+ state 17: #1 #2
+ <var> state 18
+ state 18: #1 #2
+ <var> state 19
+ state 19: #1 #2
+ <var> state 20
+ state 20: #1 #2
} end;
unzip3 [] = [],[],[];
-unzip3 us@(_/*0:101*/:_/*0:11*/) = foldr accum/*0*/ ([],[],[]) us/*0:1*/ with accum u@(x/*0:0101*/,y/*0:01101*/,z/*0:0111*/) us/*0:1*/ = x/*0:0101*/:(xs/*0:01*/ when xs/*0:01*/,_/*0:101*/,_/*0:11*/ = us/*1:1*/ {
- rule #0: xs,_,_ = us
+unzip3 us@(_/*0:101*/:_/*0:11*/) = foldr accum/*0*/ ([],[],[]) us/*0:1*/ with accum u@(x/*0:0101*/,y/*0:01101*/,z/*0:0111*/) us/*0:1*/ = x/*0:0101*/:(xs/*0:01*/ when xs/*0:01*/,_/*0:101*/,_/*0:11*/ = check/*2*/ us/*1:1*/ {
+ rule #0: xs,_,_ = check us
state 0: #0
<app> state 1
state 1: #0
@@ -1898,8 +2034,8 @@
state 8: #0
<var> state 9
state 9: #0
-} end)&,y/*0:01101*/:(ys/*0:101*/ when _/*0:01*/,ys/*0:101*/,_/*0:11*/ = us/*1:1*/ {
- rule #0: _,ys,_ = us
+} end)&,y/*0:01101*/:(ys/*0:101*/ when _/*0:01*/,ys/*0:101*/,_/*0:11*/ = check/*2*/ us/*1:1*/ {
+ rule #0: _,ys,_ = check us
state 0: #0
<app> state 1
state 1: #0
@@ -1919,8 +2055,8 @@
state 8: #0
<var> state 9
state 9: #0
-} end)&,z/*0:0111*/:(zs/*0:11*/ when _/*0:01*/,_/*0:101*/,zs/*0:11*/ = us/*1:1*/ {
- rule #0: _,_,zs = us
+} end)&,z/*0:0111*/:(zs/*0:11*/ when _/*0:01*/,_/*0:101*/,zs/*0:11*/ = check/*2*/ us/*1:1*/ {
+ rule #0: _,_,zs = check us
state 0: #0
<app> state 1
state 1: #0
@@ -1940,8 +2076,8 @@
state 8: #0
<var> state 9
state 9: #0
-} end)& if thunkp us/*0:1*/; accum u@(x/*0:0101*/,y/*0:01101*/,z/*0:0111*/) us/*0:1*/ = x/*1:0101*/:xs/*0:01*/,y/*1:01101*/:ys/*0:101*/,z/*1:0111*/:zs/*0:11*/ when xs/*0:01*/,ys/*0:101*/,zs/*0:11*/ = us/*0:1*/ {
- rule #0: xs,ys,zs = us
+} end)& if thunkp us/*0:1*/; accum u@(x/*0:0101*/,y/*0:01101*/,z/*0:0111*/) us/*0:1*/ = x/*1:0101*/:xs/*0:01*/,y/*1:01101*/:ys/*0:101*/,z/*1:0111*/:zs/*0:11*/ when xs/*0:01*/,ys/*0:101*/,zs/*0:11*/ = check/*1*/ us/*0:1*/ {
+ rule #0: xs,ys,zs = check us
state 0: #0
<app> state 1
state 1: #0
@@ -1962,8 +2098,8 @@
<var> state 9
state 9: #0
} end; accum u/*0:01*/ _/*0:1*/ = throw (bad_tuple_value u/*0:01*/) {
- rule #0: accum u@(x,y,z) us = x:(xs when xs,_,_ = us end)&,y:(ys when _,ys,_ = us end)&,z:(zs when _,_,zs = us end)& if thunkp us
- rule #1: accum u@(x,y,z) us = x:xs,y:ys,z:zs when xs,ys,zs = us end
+ rule #0: accum u@(x,y,z) us = x:(xs when xs,_,_ = check us end)&,y:(ys when _,ys,_ = check us end)&,z:(zs when _,_,zs = check us end)& if thunkp us
+ rule #1: accum u@(x,y,z) us = x:xs,y:ys,z:zs when xs,ys,zs = check us end
rule #2: accum u _ = throw (bad_tuple_value u)
state 0: #0 #1 #2
<var> state 1
@@ -2022,4 +2158,69 @@
state 27: #0 #1 #2
<var> state 28
state 28: #0 #1 #2
+}; check us@(_/*0:101*/,_/*0:1101*/,_/*0:111*/) = us/*0:1*/; check (foldr _/*0:1001*/ _/*0:101*/ us/*0:11*/) = throw (bad_list_value us/*0:11*/); check us/*0:1*/ = throw (bad_tuple_value us/*0:1*/) {
+ rule #0: check us@(_,_,_) = us
+ rule #1: check (foldr _ _ us) = throw (bad_list_value us)
+ rule #2: check us = throw (bad_tuple_value us)
+ state 0: #0 #1 #2
+ <var> state 1
+ <app> state 2
+ state 1: #2
+ state 2: #0 #1 #2
+ <var> state 3
+ <app> state 5
+ state 3: #2
+ <var> state 4
+ state 4: #2
+ state 5: #0 #1 #2
+ <var> state 6
+ , state 9
+ <app> state 22
+ state 6: #2
+ <var> state 7
+ state 7: #2
+ <var> state 8
+ state 8: #2
+ state 9: #0 #2
+ <var> state 10
+ state 10: #0 #2
+ <var> state 11
+ <app> state 12
+ state 11: #2
+ state 12: #0 #2
+ <var> state 13
+ <app> state 15
+ state 13: #2
+ <var> state 14
+ state 14: #2
+ state 15: #0 #2
+ <var> state 16
+ , state 19
+ state 16: #2
+ <var> state 17
+ state 17: #2
+ <var> state 18
+ state 18: #2
+ state 19: #0 #2
+ <var> state 20
+ state 20: #0 #2
+ <var> state 21
+ state 21: #0 #2
+ state 22: #1 #2
+ <var> state 23
+ foldr state 27
+ state 23: #2
+ <var> state 24
+ state 24: #2
+ <var> state 25
+ state 25: #2
+ <var> state 26
+ state 26: #2
+ state 27: #1 #2
+ <var> state 28
+ state 28: #1 #2
+ <var> state 29
+ state 29: #1 #2
+ <var> state 30
+ state 30: #1 #2
} end;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|