comparison src/ChangeLog @ 2976:641689f67673

[project @ 1997-05-15 20:27:04 by jwe]
author jwe
date Thu, 15 May 1997 20:27:05 +0000
parents c0c280cda856
children 49de01238638
comparison
equal deleted inserted replaced
2975:b9c107cbe388 2976:641689f67673
1 Thu May 15 11:48:10 1997 John W. Eaton <jwe@bevo.che.wisc.edu>
2
3 * defun.cc: New file. Move functions for installing objects in
4 the symbol table here from variables.cc.
5
6 * oct-obj.h, oct-obj.cc: Add custom allocator, fwiw.
7
8 * toplev.cc (main_loop): Correctly increment command number.
9
10 * TEMPLATE-INST/SLList-tm.cc: Don't instantiate lists of pointers
11 to tree_matrix_row objects.
12 * TEMPLATE-INST/SLList-misc.cc: Do instantiate lists of pointers
13 to tree_argument_list objects.
14
15 * DLD-FUNCTIONS/dassl.cc: Update to use new octave_function
16 interface to user-supplied functions.
17 * DLD-FUNCTIONS/fsolve.cc: Likewise.
18 * DLD-FUNCTIONS/lsode.cc: Likewise.
19 * DLD-FUNCTIONS/npsol.cc: Likewise.
20 * DLD-FUNCTIONS/quad.cc: Likewise.
21
22 * dynamic-ld.h, dynamic-ld.cc (builtin_fcn_installer typedef):
23 Rename from builtin_fcn.
24 (octave_dynamic_loader::load_fcn_from_dot_oct_file):
25 Simplify by using new installer function defined by DEFUN_DLD.
26
27 * defun-dld.h (DEFUN_DLD): Use DEFINE_FUN_INSTALLER_FUN instead of
28 DEFINE_FUN_STRUCT_FUN.
29 * defun.h (DEFUN_MAPPER): Use DEFUN_MAPPER_INTERNAL.
30 * defun-int.h (DEFVAR_INTERNAL): Rename from DEFVAR_INT and move
31 here from defun.h. Change all uses.
32 (DEFUN_MAPPER_INTERNAL): New macro.
33 (DEFINE_FUN_INSTALLER_FUN): New macro to define function that the
34 dynamic loader calls to do all the work of installing a new function.
35 (DEFINE_FUN_STRUCT_FUN): Delete.
36
37 * parse.y: Rewrite to handle more general expressions.
38 * lex.l: Corresponding changes.
39
40 * pt-walk.h, pt-pr-code.h, pt-pr-code.cc: Cope with new parse tree
41 object structure.
42
43 * pt-misc.cc (class tree_for_command): Split into
44 tree_simple_for_command and tree_complex_for_command classes.
45
46 * pt-misc.h, pt-misc.cc (tree_statement::eval): Handle identifier
47 lookup and printing and binding ans here.
48 (tree_statement_list::eval): Simplify.
49 (tree_argument_list::all_elements_are_constant): New function.
50 (class tree_decl_elt): Now contains id and expr, not an assignment
51 expression.
52
53 * pt-exp-base.h pt-exp.h pt-id.h pt-indir.h pt-mat.h pt-const.h,
54 pt-exp-base.cc pt-exp.cc pt-id.cc pt-indir.cc pt-mat.cc pt-const.cc:
55 Replace eval functions with rvalue and lvalue functions.
56 Change all uses.
57 (lvalue_ok, rvalue_ok): New functions, for future compile-time
58 semantic checks.
59
60 * oct-var-ref.h (is_defined, is_map): New functions.
61
62 * pt-exp.h (class tree_oct_obj): Delete.
63
64 * variables.cc (extract_function, is_valid_function): Return
65 pointer to octave_function, not octave_symbol.
66 (link_to_global_variable): Rewrite. Handle errors in
67 symbol_record::mark_as_linked_to_global.
68
69 * symtab.h, symtab.cc (class symbol_def, class symbol_record):
70 Symbols are now stored as octave_value objects only.
71
72 * ov.cc (install_types): Register function types here.
73 * ov-fcn.h, ov-fcn.cc, ov-builtin.h, ov-builtin.cc, ov-mapper.h,
74 ov-mapper.cc, ov-usr-fcn.h, ov-usr-fcn.cc: New classes for
75 functions as values.
76 * ov.h (class octave_value): Don't derive from octave_symbol.
77 * oct-fcn.h, oct-fcn.cc, oct-builtin.h, oct-builtin.cc,
78 oct-mapper.h, oct-mapper.cc, oct-usr-fcn.h, oct-usr-fcn.cc,
79 oct-sym.h, oct-sym.cc: Delete.
80
1 Sun May 11 17:51:22 1997 John W. Eaton <jwe@bevo.che.wisc.edu> 81 Sun May 11 17:51:22 1997 John W. Eaton <jwe@bevo.che.wisc.edu>
2 82
3 * help.cc (Ftype): Make it work again for functions. 83 * help.cc (Ftype): Make it work again for functions.
4 84
5 * pt-pr-code.cc (tree_print_code::print_parens): New function. 85 * pt-pr-code.cc (tree_print_code::print_parens): New function.
48 128
49 * pt-indir.h, pt-indir.cc (tree_indirect_reference::value): Delete. 129 * pt-indir.h, pt-indir.cc (tree_indirect_reference::value): Delete.
50 130
51 * oct-var-ref.cc (octave_variable_ref::assign): Clear idx after 131 * oct-var-ref.cc (octave_variable_ref::assign): Clear idx after
52 assignment. 132 assignment.
133
134 * octave_value classes: Add is_constant, is_function, and
135 function_value functions.
53 136
54 * ov.h, ov.cc (assign): Return void, not reference to octave_value. 137 * ov.h, ov.cc (assign): Return void, not reference to octave_value.
55 (do_index_op): Rename, from index. 138 (do_index_op): Rename, from index.
56 (do_struct_elt_index_op): Rename, from struct_elt_val. 139 (do_struct_elt_index_op): Rename, from struct_elt_val.
57 Add version that accepts index arg. 140 Add version that accepts index arg.