El tipo de las expresiones aritméticas con variables
1. El tipo de las expresiones aritméticas con variables en Haskell
La expresión 2*(a+5) puede representarse por
1 |
P (C 2) (S (V 'a') (C 5)) |
usando el tipo de las expresiones aritméticas con variables definido como se muestra a continuación.
1 2 3 4 5 6 7 |
module Expresion_aritmetica_con_variables where data Expr = C Int | V Char | S Expr Expr | P Expr Expr deriving (Eq, Show) |
2. El tipo de las expresiones aritméticas con variables en Python
La expresión 2*(a+5) puede representarse por
1 |
P(C(2), S(V('a'), C(5))) |
usando el tipo de las expresiones aritméticas con variables definido como se muestra a continuación.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
from dataclasses import dataclass @dataclass class Expr: pass @dataclass class C(Expr): x: int @dataclass class V(Expr): x: str @dataclass class S(Expr): x: Expr y: Expr @dataclass class P(Expr): x: Expr y: Expr |