Index: tmp/org.txm.ahc.core/src/org/txm/ahc/core/functions/AHC.java
===================================================================
--- tmp/org.txm.ahc.core/src/org/txm/ahc/core/functions/AHC.java	(revision 1104)
+++ tmp/org.txm.ahc.core/src/org/txm/ahc/core/functions/AHC.java	(revision 1105)
@@ -257,7 +257,7 @@
 	public boolean loadParameters() {
 		if(this.ca == null)	{
 			this.ca = (CA) this.getParent();
-			this.ca.setVisible(false);
+			this.ca.setVisible(false); // hide the temporary CA
 		}
 		return true;
 	}
Index: tmp/org.txm.lexicaltable.core/src/org/txm/lexicaltable/core/statsengine/r/data/LexicalTableImpl.java
===================================================================
--- tmp/org.txm.lexicaltable.core/src/org/txm/lexicaltable/core/statsengine/r/data/LexicalTableImpl.java	(revision 1104)
+++ tmp/org.txm.lexicaltable.core/src/org/txm/lexicaltable/core/statsengine/r/data/LexicalTableImpl.java	(revision 1105)
@@ -295,7 +295,8 @@
 				forms[i] = split[0];
 				for( int j = 1 ; j < ncol ; j++)
 					freqs[i][j-1] = Integer.parseInt(split[j]);
-			} else {
+			}
+			else {
 				throw new IOException(LexicalTableCoreMessages.bind(LexicalTableCoreMessages.error_lineXDoesNotHaveXXolumns, i, ncol));
 			}
 			i++;
@@ -325,15 +326,14 @@
 			String[] rownames, String[] colnames, int Fmin) throws RWorkspaceException {
 
 		ArrayList<Integer> idx = new ArrayList<Integer>();
-		for (int j = 0; j < rownames.length; j++) 
-		{
+		for (int j = 0; j < rownames.length; j++) {
 			int sum = 0;
-			for (int i = 0; i < colnames.length; i++) 
-			{
+			for (int i = 0; i < colnames.length; i++) {
 				sum += freqs[j][i];
 			}
-			if (sum >= Fmin)
+			if (sum >= Fmin) {
 				idx.add(j);
+			}
 		}
 
 		DoubleMatrix2D mat = DoubleFactory2D.sparse.make(idx.size(), colnames.length, 0);
@@ -347,8 +347,9 @@
 		}
 
 		String[] filteredrownames = new String[idx.size()];
-		for (int i = 0 ; i < idx.size() ; i++)
+		for (int i = 0 ; i < idx.size() ; i++) {
 			filteredrownames[i] = rownames[idx.get(i)];
+		}
 
 		LexicalTableImpl table = new LexicalTableImpl(mat, filteredrownames, colnames);
 		return table;
@@ -361,9 +362,11 @@
 	public int getFMax() {
 		List<Integer> freqs = getFreqs();
 		int max = 0;
-		for (int i : freqs)
-			if (max < i)
+		for (int i : freqs) {
+			if (max < i) {
 				max = i;
+			}
+		}
 		return max;
 	}
 
@@ -374,9 +377,11 @@
 	public int getFMin() {
 		List<Integer> freqs = getFreqs();
 		int min = 999999;
-		for (int i : freqs)
-			if (min > i)
+		for (int i : freqs) {
+			if (min > i) {
 				min = i;
+			}
+		}
 		return min;
 	}
 
@@ -391,7 +396,7 @@
 		ArrayList<double[]> cols = new ArrayList<double[]>();
 		int Nrows = this.getNRows();
 		int Ncols = this.getNColumns();
-		for (int i = 0; i < Ncols; i++)
+		for (int i = 0; i < Ncols; i++) {
 			try {
 				cols.add(this.getCol(i).asDoubleArray());
 			} catch (RException e) {
@@ -404,12 +409,14 @@
 				// TODO Auto-generated catch block
 				org.txm.utils.logger.Log.printStackTrace(e);
 			}
+		}
 		int sum = 0;
 
 		for (int i = 0; i < Nrows; i++) {
 			sum = 0;
-			for (int j = 0; j < Ncols; j++)
+			for (int j = 0; j < Ncols; j++) {
 				sum += (int) cols.get(j)[i];
+			}
 			freqs.add(sum);
 		}
 		return freqs;
@@ -418,7 +425,7 @@
 	public void setReference(String refSymbol) {
 		try {
 			RWorkspace rw = RWorkspace.getRWorkspaceInstance();
-			rw.voidEval("missingrownames <- rownames("+symbol+")[!rownames("+symbol+")%in%rownames("+refSymbol+")]"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
+			rw.voidEval("missingrownames <- rownames(" + symbol + ")[!rownames(" + symbol + ")%in%rownames(" + refSymbol + ")]"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
 			rw.voidEval("missingrows <- matrix(ncol=1, nrow=length(missingrownames))"); //$NON-NLS-1$
 			rw.voidEval("missingrows[,] <- 0"); //$NON-NLS-1$
 			rw.voidEval("rownames(missingrows) <- missingrownames"); //$NON-NLS-1$
Index: tmp/org.txm.core/src/java/org/txm/core/results/TXMResult.java
===================================================================
--- tmp/org.txm.core/src/java/org/txm/core/results/TXMResult.java	(revision 1104)
+++ tmp/org.txm.core/src/java/org/txm/core/results/TXMResult.java	(revision 1105)
@@ -583,7 +583,7 @@
 	 */
 	public final boolean isDirtyFromHistory() throws Exception {
 		
-		if (hasBeenComputedOnce) return false; // can't be dirty from history if the result has never been computed
+		//if (hasBeenComputedOnce) return false; // can't be dirty from history if the result has never been computed
 		
 		Class clazz = this.getClass();
 
@@ -1241,12 +1241,6 @@
 		else	{
 			ArrayList<TXMResult> results = root.getDeepChildren();
 			for (int i = 0; i < results.size(); i++) {
-
-				// FIXME: skipping invisible results
-				//				if(!results.get(i).isVisible())	{
-				//					continue;
-				//				}
-
 				if(results.get(i).getUUID().equals(UUID))	{
 					result = results.get(i);
 					break;
@@ -1281,7 +1275,7 @@
 					nodes.add(child);
 				}
 				
-				// FIXME: test to add children of a non visible result
+				// add children of a non visible result
 				else if (!child.isVisible() && child.hasChildren())	{
 					ArrayList<TXMResult> subChidlren = child.getChildren(type, onlyVisible);
 					nodes.addAll(subChidlren);
@@ -1676,9 +1670,14 @@
 		this.monitor = monitor;
 
 		if (!this.isDirtyFromHistory() && !this.isDirty()) {
-			Log.finest("TXMResult.compute(): " + this.getClass().getSimpleName() + ": result is not dirty, computing skipped.");
+			Log.finest("TXMResult.compute(): " + this.getClass().getSimpleName() + ": result parameters have not changed since last computing, computing skipped.");
 			skipComputing = true;
 		}
+	// FIXME: need to check if it's REALLY useless because the Progression is broken since the modifs
+//		else if (!this.isDirty()) {
+//			Log.finest("TXMResult.compute(): " + this.getClass().getSimpleName() + ": result is not dirty, computing skipped.");
+//			skipComputing = true;
+//		}
 
 		if(!skipComputing)	{
 
