exprs.parsed 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470
  1. [
  2. Puts(
  3. Chc(
  4. [
  5. Choice {
  6. weight: None,
  7. value: Cat(
  8. [
  9. Lit(
  10. Atom(
  11. "This",
  12. ),
  13. ),
  14. Lit(
  15. Atom(
  16. "That",
  17. ),
  18. ),
  19. Lit(
  20. Atom(
  21. "The-Other",
  22. ),
  23. ),
  24. ],
  25. ),
  26. },
  27. ],
  28. ),
  29. ),
  30. Puts(
  31. Chc(
  32. [
  33. Choice {
  34. weight: None,
  35. value: Cat(
  36. [
  37. Lit(
  38. Atom(
  39. "This",
  40. ),
  41. ),
  42. ],
  43. ),
  44. },
  45. Choice {
  46. weight: None,
  47. value: Cat(
  48. [
  49. Lit(
  50. Atom(
  51. "That",
  52. ),
  53. ),
  54. ],
  55. ),
  56. },
  57. Choice {
  58. weight: None,
  59. value: Cat(
  60. [
  61. Lit(
  62. Atom(
  63. "The-Other",
  64. ),
  65. ),
  66. ],
  67. ),
  68. },
  69. ],
  70. ),
  71. ),
  72. Puts(
  73. Chc(
  74. [
  75. Choice {
  76. weight: Some(
  77. 5,
  78. ),
  79. value: Cat(
  80. [
  81. Lit(
  82. Atom(
  83. "This",
  84. ),
  85. ),
  86. ],
  87. ),
  88. },
  89. Choice {
  90. weight: None,
  91. value: Cat(
  92. [
  93. Lit(
  94. Atom(
  95. "That",
  96. ),
  97. ),
  98. ],
  99. ),
  100. },
  101. ],
  102. ),
  103. ),
  104. Puts(
  105. Chc(
  106. [
  107. Choice {
  108. weight: None,
  109. value: Cat(
  110. [
  111. Ap(
  112. Ap(
  113. Var(
  114. "foo",
  115. ),
  116. Var(
  117. "bar",
  118. ),
  119. ),
  120. Var(
  121. "baz",
  122. ),
  123. ),
  124. ],
  125. ),
  126. },
  127. ],
  128. ),
  129. ),
  130. Puts(
  131. Chc(
  132. [
  133. Choice {
  134. weight: None,
  135. value: Cat(
  136. [
  137. Tup(
  138. [
  139. Chc(
  140. [
  141. Choice {
  142. weight: None,
  143. value: Cat(
  144. [],
  145. ),
  146. },
  147. ],
  148. ),
  149. ],
  150. ),
  151. ],
  152. ),
  153. },
  154. ],
  155. ),
  156. ),
  157. Puts(
  158. Chc(
  159. [
  160. Choice {
  161. weight: None,
  162. value: Cat(
  163. [
  164. Tup(
  165. [
  166. Chc(
  167. [
  168. Choice {
  169. weight: None,
  170. value: Cat(
  171. [
  172. Lit(
  173. Num(
  174. 1,
  175. ),
  176. ),
  177. ],
  178. ),
  179. },
  180. ],
  181. ),
  182. ],
  183. ),
  184. ],
  185. ),
  186. },
  187. ],
  188. ),
  189. ),
  190. Puts(
  191. Chc(
  192. [
  193. Choice {
  194. weight: None,
  195. value: Cat(
  196. [
  197. Tup(
  198. [
  199. Chc(
  200. [
  201. Choice {
  202. weight: None,
  203. value: Cat(
  204. [
  205. Lit(
  206. Num(
  207. 1,
  208. ),
  209. ),
  210. ],
  211. ),
  212. },
  213. ],
  214. ),
  215. Chc(
  216. [
  217. Choice {
  218. weight: None,
  219. value: Cat(
  220. [
  221. Lit(
  222. Num(
  223. 2,
  224. ),
  225. ),
  226. ],
  227. ),
  228. },
  229. ],
  230. ),
  231. ],
  232. ),
  233. ],
  234. ),
  235. },
  236. ],
  237. ),
  238. ),
  239. Puts(
  240. Chc(
  241. [
  242. Choice {
  243. weight: None,
  244. value: Cat(
  245. [
  246. Tup(
  247. [
  248. Chc(
  249. [
  250. Choice {
  251. weight: None,
  252. value: Cat(
  253. [
  254. Lit(
  255. Num(
  256. 1,
  257. ),
  258. ),
  259. ],
  260. ),
  261. },
  262. ],
  263. ),
  264. Chc(
  265. [
  266. Choice {
  267. weight: None,
  268. value: Cat(
  269. [
  270. Lit(
  271. Num(
  272. 2,
  273. ),
  274. ),
  275. ],
  276. ),
  277. },
  278. ],
  279. ),
  280. Chc(
  281. [
  282. Choice {
  283. weight: None,
  284. value: Cat(
  285. [
  286. Lit(
  287. Num(
  288. 3,
  289. ),
  290. ),
  291. ],
  292. ),
  293. },
  294. ],
  295. ),
  296. ],
  297. ),
  298. ],
  299. ),
  300. },
  301. ],
  302. ),
  303. ),
  304. Puts(
  305. Chc(
  306. [
  307. Choice {
  308. weight: None,
  309. value: Cat(
  310. [
  311. Range(
  312. Lit(
  313. Num(
  314. 0,
  315. ),
  316. ),
  317. Lit(
  318. Num(
  319. 20,
  320. ),
  321. ),
  322. ),
  323. ],
  324. ),
  325. },
  326. ],
  327. ),
  328. ),
  329. Puts(
  330. Chc(
  331. [
  332. Choice {
  333. weight: None,
  334. value: Cat(
  335. [
  336. Range(
  337. Var(
  338. "x",
  339. ),
  340. Var(
  341. "y",
  342. ),
  343. ),
  344. ],
  345. ),
  346. },
  347. ],
  348. ),
  349. ),
  350. Puts(
  351. Chc(
  352. [
  353. Choice {
  354. weight: None,
  355. value: Cat(
  356. [
  357. Ap(
  358. Var(
  359. "f",
  360. ),
  361. Var(
  362. "x",
  363. ),
  364. ),
  365. ],
  366. ),
  367. },
  368. ],
  369. ),
  370. ),
  371. Puts(
  372. Chc(
  373. [
  374. Choice {
  375. weight: None,
  376. value: Cat(
  377. [
  378. Fun(
  379. [
  380. Case {
  381. pat: Var(
  382. "x",
  383. ),
  384. expr: Chc(
  385. [
  386. Choice {
  387. weight: None,
  388. value: Cat(
  389. [
  390. Var(
  391. "x",
  392. ),
  393. ],
  394. ),
  395. },
  396. ],
  397. ),
  398. },
  399. ],
  400. ),
  401. ],
  402. ),
  403. },
  404. ],
  405. ),
  406. ),
  407. Puts(
  408. Chc(
  409. [
  410. Choice {
  411. weight: None,
  412. value: Cat(
  413. [
  414. Fun(
  415. [
  416. Case {
  417. pat: Lit(
  418. Atom(
  419. "True",
  420. ),
  421. ),
  422. expr: Chc(
  423. [
  424. Choice {
  425. weight: None,
  426. value: Cat(
  427. [
  428. Lit(
  429. Str(
  430. "yes",
  431. ),
  432. ),
  433. ],
  434. ),
  435. },
  436. ],
  437. ),
  438. },
  439. Case {
  440. pat: Lit(
  441. Atom(
  442. "False",
  443. ),
  444. ),
  445. expr: Chc(
  446. [
  447. Choice {
  448. weight: None,
  449. value: Cat(
  450. [
  451. Lit(
  452. Str(
  453. "no",
  454. ),
  455. ),
  456. ],
  457. ),
  458. },
  459. ],
  460. ),
  461. },
  462. ],
  463. ),
  464. ],
  465. ),
  466. },
  467. ],
  468. ),
  469. ),
  470. ]