Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] Annotation of /branches/vis15/src/compiler/WISHLIST.md
ViewVC logotype

Annotation of /branches/vis15/src/compiler/WISHLIST.md

Parent Directory Parent Directory | Revision Log Revision Log


Revision 4384 - (view) (download)

1 : jhr 4381 ## Current status as of August 8, 2016
2 : jhr 4103
3 :     ### Major bugs
4 :    
5 :     * https://github.com/Diderot-Language/examples dvr/dvr.diderot (Feb 14 email from glk subject
6 :     "memory errors, possibly cause of crashing"): memory errors cause crashing. Error messages
7 :     suggest incorrect use of free().
8 : jhr 4223 - fixed; the crashing bugs are gone. There is a small amount of memory leaking, but it
9 :     appears to be leaking from teem (hest).
10 : jhr 4103 * bug054.diderot: return from inside a conditional in a function causes uncaught exception
11 : jhr 4175 - fixed
12 : jhr 4103 * bug047.diderot: don't know what's wrong; this is a program that used to work in the vis12 branch.
13 :     - fixed
14 :     * bug052.diderot: inside() doesn't work on 1D fields
15 : jhr 4229 - fixed
16 : jhr 4103 * bug053.diderot: differentiation doesn't work on 1D fields
17 : cchiw 4227 - fixed
18 : jhr 4103 * bug043.diderot: generated broken C code (was: no output ints?)
19 :     - fixed
20 :     * bug045.diderot: missing determinant on tensor[2,2] and tensor[3,3]
21 :     - fixed
22 :     * bug050.diderot: tensor[3,3] output not working
23 :     - fixed
24 :     * bug055.diderot: conditional field assignment causes an uncaught exception
25 :     - fixed (typechecker rejects program)
26 :    
27 :     ### Minor bugs
28 :    
29 :     * bug029.diderot missing code generation for printing matrices and higher-order tensors.
30 :     - fixed
31 :     * bug051.diderot: 10x increase in compile time changing from bspln3 to c4hexic (can use --disable-mid-check)
32 :     - vis15 compiles the c4hexic version in 1.16 seconds without checking and in 29s with --check-all
33 :     So it is faster than vis12, but still slow when internal checking is enabled.
34 : jhr 4229 * bug028.diderot: missing forms of matrix multiplication; Charisee's work will address this issue
35 : jhr 4103 - fixed
36 : jhr 4381 * bug048.diderot: can't use one int and one real in a conditional expression
37 : jhr 4103 - fixed
38 : jhr 4381 * bug049.diderot: bogus types parsed as strand names create uncaught exceptions
39 : jhr 4103 - fixed, but the error message could be improved
40 :     * bug007.diderot: no codegen support for tensor slices; Charisee's work will address this issue
41 :     - fixed
42 :     * bug038.diderot: (re-opening an older bug) run-time should check on existence of field orientation meta-data before use
43 :     - fixed
44 :     * bug044.diderot: either implement or disallow "output bool"
45 :     - fixed
46 :     * bug040.diderot: "The avoidance of redundant Inside tests is not working."
47 :     - still open
48 :    
49 :     ### Wish list (from high to low priority)
50 :    
51 : jhr 4384 * add `#version` directive. `#version 1.0` will be old syntax (some merge of charisee and lamont's
52 :     branches); `#version 2.0` will be the new syntax. No directive will be interpreted as the
53 :     same as `#version 1.0`. Include a `--warn-deprecated` compiler flag to generate
54 :     warnings about deprecated syntax.
55 :    
56 : jhr 4120 * add clerp, with the following semantics:
57 : jhr 4162 ````
58 :     clerp(A,B,U,x,V) == clamp(A,B,lerp(A,B,U,x,V))
59 :     clerp(A,B,x) == clamp(A,B,lerp(A,B,x))
60 :     ````
61 : jhr 4120 - still open
62 : jhr 4103 * allow a "continue" statement within the update method to go to the beginning of
63 :     the next update iteration
64 :     - fixed
65 :     * print(): either implement for --target=pthread, or have compiler warn that it won't work
66 :     - still open; pthread support is not yet complete in vis15
67 :     * print(): should be possible during strand initialization. Otherwise have to create an iteration
68 :     counter initialized to zero, and print from inside update() only on first iteration
69 :     - fixed
70 :     * remove restriction on .diderot filename extension for Diderot program (or at least allow .ddro)
71 : jhr 4124 - fixed
72 : jhr 4103 * syntax errors from the compiler should just say "syntax error". The "try" suggestions are
73 :     almost always confusing, sometimes laughable (e.g. printf() not a valid function; should be
74 :     print() but compiler suggests to try inserting "%=". nope!). For now, all suggestions should
75 :     be removed, because on average they create more confusion. More carefully crafted suggestions
76 :     can be added on a case by case basis.
77 : jhr 4381 - fixed; we now just print "syntax error". A better fix will require improvements to ml-antlr.
78 : jhr 4120 * with "if (true) { foo } else { bar }", prune the dead code (in simplify?)
79 : jhr 4124 - fixed
80 : jhr 4103 * using "kern#N" syntax to assert C^N continuity
81 :     - fixed
82 :     * odd-support kernels
83 :     - still open
84 : jhr 4124

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0