From 1aa1407d5cf485c5df73092e07dd2ea4bd0679dc Mon Sep 17 00:00:00 2001
From: "Joachim Wuttke (l)" <j.wuttke@fz-juelich.de>
Date: Sat, 31 Oct 2015 18:03:42 +0100
Subject: [PATCH] CHANGELOG, TODO

---
 TODO          | 160 ++++++++++++++++++++------------------------------
 pub/CHANGELOG |  18 +++++-
 2 files changed, 80 insertions(+), 98 deletions(-)

diff --git a/TODO b/TODO
index 015db02e..e8ca3acf 100644
--- a/TODO
+++ b/TODO
@@ -1,92 +1,95 @@
-== Todo at once ==
+==== New functionality ====
 
+Fourier transformed (req at TOFTOF)
 
-== Current refactoring (everything becomes an object) ==
+detailed balance
 
-Reimplement fn key binding
-- fn3-4 to scan k
+DOS
 
-When commands have become programmable:
-- automatic mfj after oi
-- review history
-  - latest action on pX should be part of history
-  - history replay must not stop for error
-  - show commands while playing history
-  - fnc keys not in history
+pipes to avoid unnecessary files: oy y/[].mr{abs(x)>7}.oy{y^2}.avg[j] ?
 
-Documentation:
-- Universal help/doc associated with
-  - environment variables like psdir
-  - operators and functions (now hf; separate operators and functions, reconsider sorting)
-- refer to external documentation
-- explain resol, conv, pconv
-- more info on commands (in command shell and in manual?)
+splines (e.g. to approximate measured resolution)
 
-Terminology:
-- "file" -> "workspace"
+convolution with function
+- with spline
+- with TOFTOF model
 
 
-== Command-line interface ==
+==== Improve extant functcionality ====
 
-Default file selection:
-- inform user about new file selection as result of an operation
-- inform user about renumbering after deletion?
-- keep curve references intact
-- correct default selection after
-  - fdel, fx
-  - msb
+coord name algebra
 
-history:
-  -  for replaying:
-    - RETURN not stored
-  - during interactive session:
-    - store repeated commands only once
-- save every input at once (from history to logging ...)
+Correct default selection after fdel, fx; msb
 
-dialog generics
-  - restore ask callback help for lists (prompt for list, not for string)
-  - restore help on "?" (e.g. expression help for 'md')
-  - default for plot range
+=== plotting ===
+
+update gnuplot symbol explanation
 
+"update plot" to replot after change of axes
 
-== Expressions and functions ==
+fn key binding: fn3-4 to scan k
 
-get_k should allow i dependence
-  similar repair as recently for get_j
+=== by command ===
 
+dp: output for #spec>1 is obfuscated
 
-== Specific commands ==
+fs: for curve-calling-external-program (cc ecr or similar)
 
-"update plot" to replot after change of axes
+gp: version 'gp!' <filename> ?
 
-mfj, cp for curve file
+mfj: remove redundant doc lines
 
-valgrind complains about NPloWin -> transform into a class with destructor?
+oi: wenn mehrere Files mit rank=2, automatisch in einen File packen
 
-fs->fl:
-- broken for fit-with-external-program (cc ecr or similar)
-- y08 is not true YAML. Don't use text for data.
 
+==== Refactoring ====
 
-update gnuplot symbol explanation
+refactor func+op registration so that registered object can be const
+(assemble typed function list prior to registration)
+
+Terminology: "file" -> "workspace"
+
+boost::format -> cppformat
+
+lmfit call-back within class, thanks to std::functional
+
+read-plus Interface in EINEN namespace ask:: stecken ??
+
+Documentation:
+- Universal help/doc associated with
+  - environment variables like psdir
+  - operators and functions (now hf; separate operators and functions, reconsider sorting)
+- refer to external documentation
+- explain resol, conv, pconv
+- more info on commands (in command shell and in manual?)
 
+dialog generics
+  - restore ask callback help for lists (prompt for list, not for string)
+  - restore help on "?" (e.g. expression help for 'md')
+  - default for plot range
 
-== CLEANUP ==
+When commands have become programmable:
+- review history
+  - latest action on pX should be part of history
+  - history replay must not stop for error
+  - show commands while playing history
+  - fnc keys not in history
 
-- lmfit call-back within class, thanks to std::functional
-- read-plus Interface in EINEN namespace ask:: stecken ??
+Default file selection:
+- inform user about new file selection as result of an operation
+- inform user about renumbering after deletion?
+- keep curve references intact
 
+history:
+  -  for replaying:
+    - RETURN not stored
+  - during interactive session:
+    - store repeated commands only once
+- save every input at once (from history to logging ...)
 
-== WISHLIST ==
 
-user interface
-- 'gp!' <filename> ?
-- 'dp' output for #spec>1 is obfuscated
 
-docu lines and num pars
-- 'mfj' remove redundant doc lines
-- check for completeness
-- 'cp' zeigt manchmal zuviel: Anzeige ohne Par-List
+==== WISHLIST ====
 
 customization
 - let user choose points/line
@@ -97,46 +100,18 @@ allow ad-hoc addition of fit functions
 (plugin ? distinguish from opr-functions ?)
 - plot accessible Q-E-space
 
-improve existing methods
-- 'oi' wenn mehrere Files mit rank=2, automatisch in einen File packen
-- 'oixy': auch 'oixyd'
 distribution
 - include wupscat, wupsbb
 - rewrite wupscat in bash instead of ruby
 
 
-== PROJECTS ==
-
-refactor func+op registration so that registered object can be const
-(assemble typed function list prior to registration)
-
-boost::format -> cppformat
-
-detailed balance
-
-DOS
-
-pipes to avoid unnecessary files
+==== PROJECTS ====
 
-avg, int, sum in oi
-oy y/[].mr{abs(x)>7}.oy{y^2}.avg[j]
 
 2d plots using pm3d # was ist das ?
 
-splines (e.g. to approximate measured resolution)
-
-convolution with function
-- with spline
-- with TOFTOF model
-
-coord name algebra
-
-
-== WAITING FOR CLUE ==
 
-parallel execution: upon first exception kill all threads
-
-rework dy, dp
+==== WAITING FOR CLUE ====
 
 How to treat blanks in user input:
 - operators "mod", "div" suggest to allow blanks in expressions
@@ -149,8 +124,6 @@ should operations have a return value?
 
 Ctrl+C to abort fit
 
-oyo; [15,j,0] --> i, y2, ... # nicht so, aber .. ??
-
 residual plot
 
 Graphics: simplify; allow LaTeX labels -> Asymptote ? gnuplot ?
@@ -164,6 +137,3 @@ script language integration
 - testing
 - support for Excel-like tables
 - towards LAMP
-
-ROOT integration
-- well-defined histogram channels
diff --git a/pub/CHANGELOG b/pub/CHANGELOG
index c1507052..695a6b16 100644
--- a/pub/CHANGELOG
+++ b/pub/CHANGELOG
@@ -1,4 +1,16 @@
-Release 2.3.2a of 20oct15
+Release 2.3.2b of :
+
+- Improved functionality:
+  - avge, sum, min and similar may now be used in pointwise expressions
+  - all messages now written to 'cout' (putting an end to inconsequent use of cerr)
+- Code cleanup:
+  - more const declarations (P* -> R*)
+  - '= delete' for compile-time detection of unintended class instantiations
+  - SFuncRegistry, ex-NCvin, ex-NGeni, ex-NPloWin become singleton classes,
+    thereby getting rid of false error messages from valgrind
+  - replaced OpenMP by C++11 std::thread, std::async
+
+Release 2.3.2a of 20oct15:
 
 - New functionality and changed user interface:
   - curve evaluation node c[]() renamed back to f[]()
@@ -21,7 +33,7 @@ Release 2.3.2a of 20oct15
   - plot error bars with same line thickness as the symbol
   - now able to use index i in positions K and J
 
-Release 2.3.1b of 22sep15
+Release 2.3.1b of 22sep15:
 
 - Improved functionality:
   - error estimates in 'mpa' and 'mpaf'
@@ -90,7 +102,7 @@ Release 2.2.3d of 11may15:
   - Much improved documentation functions 'ho', 'hic', 'hid'.
   - Better error messages about invalid index.
 
-Release 2.2.3c of 10may15
+Release 2.2.3c of 10may15:
 
 - Accidentally, this release already introduced the new list format foreseen for 2.3.0
 - Bugfixes:
-- 
GitLab