|
|
1.1 ! root 1: ! 2: ! 3: ! 4: PDAE(2) Icon Program Library PDAE(2) ! 5: ! 6: ! 7: ! 8: NNNNAAAAMMMMEEEE ! 9: pdae - programmer-defined argument evaluation ! 10: ! 11: DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN ! 12: These procedures are taken mainly from TR 82-16, which ! 13: describes how co-expressions can be used to model the ! 14: built-in argument evaluation regime of Icon and also provide ! 15: new ones. Some procedures have been corrected or improved. ! 16: ! 17: SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS ! 18: AAAAllllllllppppaaaarrrr{{{{eeee1111,,,,eeee2222,,,, ...}}}} parallel evaluation with last result used for short sequences ! 19: CCCCaaaallllllll((((aaaa)))) utility procedure to call functions ! 20: EEEExxxxttttrrrraaaacccctttt{{{{eeee1111,,,,eeee2222,,,, ...}}}} extract results of even-numbered arguments according to ! 21: odd-numbered values ! 22: LLLLiiiiffffoooo{{{{eeee1111,,,,eeee2222,,,, ...}}}} models standard Icon `lifo' evaluation ! 23: PPPPaaaarrrraaaalllllllleeeellll{{{{eeee1111,,,,eeee2222,,,, ...}}}}parallel evaluation terminating on shortest sequence ! 24: RRRReeeevvvveeeerrrrsssseeee{{{{eeee1111,,,,eeee2222,,,, ...}}}} left-to-right reversal of lifo evaluation ! 25: RRRRoooottttaaaatttteeee{{{{eeee1111,,,,eeee2222,,,, ...}}}} parallel evaluation with shorter sequences re-evaluated ! 26: SSSSiiiimmmmpppplllleeee{{{{eeee1111,,,,eeee2222,,,, ...}}}} simple evaluation with only success or failure ! 27: ! 28: RRRREEEEQQQQUUUUIIIIRRRREEEEMMMMEEEENNNNTTTTSSSS ! 29: _P_d_a_e requires the experimental extensions in Version 5.9 of ! 30: Icon. ! 31: ! 32: BBBBUUUUGGGGSSSS AAAANNNNDDDD LLLLIIIIMMMMIIIITTTTAAAATTTTIIIIOOOONNNNSSSS ! 33: Because of the handling of the scope of local identifiers in ! 34: co-expressions, expressions in programmer-defined argument ! 35: evaluation regimes cannot communicate through local identif- ! 36: iers. The results produced by programmer-defined argument ! 37: evaluation regimes are always dereferenced. Some construc- ! 38: tions, such as bbbbrrrreeeeaaaakkkk and rrrreeeettttuuuurrrrnnnn, cannot be used in arguments ! 39: to programmer-defined argument evaluation regimes. See TR ! 40: 82-8 for details of these problems. ! 41: ! 42: At most 10 arguments can be used in the invocation of a ! 43: programmer-defined argument evaluation regime. This limit ! 44: can be increased by modifying CCCCaaaallllllll. ! 45: ! 46: SSSSEEEEEEEE AAAALLLLSSSSOOOO ! 47: pdco(2) ! 48: ! 49: Novak, Michael and Ralph E. Griswold. _P_r_o_g_r_a_m_m_e_r-_D_e_f_i_n_e_d ! 50: _A_r_g_u_m_e_n_t _E_v_a_l_u_a_t_i_o_n _R_e_g_i_m_e_s, TR 82-16, Department of Com- ! 51: puter Science, The University of Arizona, 1982. ! 52: ! 53: Griswold, Ralph E., Robert K. McConeghy, and William H. ! 54: Mitchell. _E_x_t_e_n_s_i_o_n_s _t_o _V_e_r_s_i_o_n _5 _o_f _t_h_e _I_c_o_n _P_r_o_g_r_a_m_m_i_n_g ! 55: _L_a_n_g_u_a_g_e, TR 84-10a, Department of Computer Science, The ! 56: University of Arizona, 1984. ! 57: ! 58: AAAAUUUUTTTTHHHHOOOORRRRSSSS ! 59: Ralph E. Griswold and Michael Novak ! 60: ! 61: ! 62: ! 63: Version 5.9 The University of Arizona - 8/16/84 1 ! 64: ! 65: ! 66:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.