matchPeanoPlus.tex 1.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. %\begin{tomcode3}[label=code:matchPeanoPlus,caption=Exemple d'utilisation du filtrage avec l'addition des entiers de Peano]
  2. %JNat peanoPlus(JNat t1, JNat t2) {
  3. % #\tomgray{\%match(Nat t1, Nat t2) \{}#
  4. % #\tomgray{x,zero() -> \{}# return #\tomgray{`x}#; #\tomgray{\}}#
  5. % #\tomgray{x,suc(y) -> \{}# return #\tomgray{`suc(}#peanoPlus(#\tomgray{x}#,#\tomgray{y}#)#\tomgray{)}#; #\tomgray{\}}#
  6. % #\tomgray{\}}#
  7. %}
  8. %\end{tomcode3}
  9. \begin{tomcode3}[label=code:matchPeanoPlus,caption=Exemple d'utilisation du filtrage avec l'addition des entiers de Peano.]
  10. Nat peanoPlus(Nat t1, Nat t2) {
  11. #\tomgray{\%match(t1, t2) \{}#
  12. #\tomgray{x, zero() -> \{}# return #\tomgray{`x}#; #\tomgray{\}}#
  13. #\tomgray{x, suc(y) -> \{}# return #\tomgray{`suc(}#peanoPlus(#\tomgray{x}#,#\tomgray{y}#)#\tomgray{)}#; #\tomgray{\}}#
  14. #\tomgray{\}}#
  15. }
  16. \end{tomcode3}
  17. %JNat plus(JNat t1, JNat t2) {
  18. % %match(Nat t1, Nat t2) {
  19. % x,zero() -> { return `x;}
  20. % x,suc(y) -> { return `suc(plus(x,y));}
  21. % }
  22. %}
  23. %%
  24. %Nat plus(Nat t1, Nat t2) {
  25. % #\tomgray{\%match(t1, t2) \{}#
  26. % #\tomgray{x,zero() -> \{}# return #\tomgray{`x}#; #\tomgray{\}}#
  27. % #\tomgray{x,suc(y) -> \{}# return #\tomgray{`suc(plus(x,y))}#; #\tomgray{\}}#
  28. % #\tomgray{\}}#
  29. %}
  30. %%
  31. %Nat plus(Nat t1, Nat t2) {
  32. % %match(t1, t2) {
  33. % x,zero() -> { return `x;}
  34. % x,suc(y) -> { return `suc(plus(x,y));}
  35. % }
  36. %}