I think this will certainly be great for new users and hopefully
others as well. A "filter" has the advantage of not changing the
default but having something immediately available to new users (if
they know about it, which I guess is the next best thing to a
default).
**Another possibility: **
A web form that you can copy and paste an error from patscc in and
choose various output/analysis options. Aside from pretty printing, it
could possibly consult a database of errors and solutions/commentary.
Of course, it would be great if these could be pulled from this
discussion group.
A web form that you can copy and paste an error from patscc in and
choose various output/analysis options. Aside from pretty printing, it
could possibly consult a database of errors and solutions/commentary.
Of course, it would be great if these could be pulled from this
discussion group.
make 2>&1 | ack "([^/]*\.([sdhv]ats))|(line=\d+)"
[…] Another possibility:
A web form that you can copy and paste an error from patscc in and
choose various output/analysis options. Aside from pretty printing, it
could possibly consult a database of errors and solutions/commentary.
Of course, it would be great if these could be pulled from this
discussion group.
make 2>&1 | em "line=\d+" -f red | em "\[\w+\]" -f yellow | em "SHOWTYPE" -f blue
patscc util/*.dats parcc.dats -g -DATS_MEMALLOC_LIBC -o main -latslib -lm/home/hwwu/GitHub/ats-parcc/parcc.dats: 7588(line=235, offs=13) -- 7636(line=235, offs=61): error(3): the symbol [show] cannot be resolved as no match is found./home/hwwu/GitHub/ats-parcc/parcc.dats: 7674(line=237, offs=13) -- 7723(line=237, offs=62): error(3): the symbol [show] cannot be resolved as no match is found./home/hwwu/GitHub/ats-parcc/parcc.dats: 7761(line=239, offs=13) -- 7808(line=239, offs=60): error(3): the symbol [show] cannot be resolved as no match is found./home/hwwu/GitHub/ats-parcc/parcc.dats: 7846(line=241, offs=13) -- 7894(line=241, offs=61): error(3): the symbol [show] cannot be resolved as no match is found.
/home/yannick/Bureau/Logique/ATS/UTF_8.dats: 16442(line=508, offs=26) -- 16444(line=508, offs=28): error(3): unsolved constraint: C3NSTRprop(C3TKmain(); S2Eapp(S2Ecst(||); S2Eapp(S2Ecst(||); S2Eapp(S2Ecst(||); S2Eapp(S2Ecst(||); S2Eapp(S2Ecst(||); S2Eapp(S2Ecst(||); S2Eapp(S2Ecst(||); S2Eapp(S2Ecst(||); S2Eapp(S2Ecst(&&); S2Eapp(S2Ecst(<=); S2Eintinf(0), S2Evar(c(4157))), S2Eapp(S2Ecst(<=); S2Evar(c(4157)), S2Eintinf(127))), S2Eapp(S2Ecst(&&); S2Eapp(S2Ecst(<=); S2Eintinf(128), S2Evar(c(4157))), S2Eapp(S2Ecst(<=); S2Evar(c(4157)), S2Eintinf(2047)))), S2Eapp(S2Ecst(&&); S2Eapp(S2Ecst(<=); S2Eintinf(2048), S2Evar(c(4157))), S2Eapp(S2Ecst(<=); S2Evar(c(4157)), S2Eintinf(4095)))), S2Eapp(S2Ecst(&&); S2Eapp(S2Ecst(<=); S2Eintinf(4096), S2Evar(c(4157))), S2Eapp(S2Ecst(<=); S2Evar(c(4157)), S2Eintinf(53247)))), S2Eapp(S2Ecst(&&); S2Eapp(S2Ecst(<=); S2Eintinf(53248), S2Evar(c(4157))), S2Eapp(S2Ecst(<=); S2Evar(c(4157)), S2Eintinf(55295)))), S2Eapp(S2Ecst(&&); S2Eapp(S2Ecst(<=); S2Eintinf(57344), S2Evar(c(4157))), S2Eapp(S2Ecst(<=); S2Evar(c(4157)), S2Eintinf(65535)))), S2Eapp(S2Ecst(&&); S2Eapp(S2Ecst(<=); S2Eintinf(65536), S2Evar(c(4157))), S2Eapp(S2Ecst(<=); S2Evar(c(4157)), S2Eintinf(262143)))), S2Eapp(S2Ecst(&&); S2Eapp(S2Ecst(<=); S2Eintinf(262144), S2Evar(c(4157))), S2Eapp(S2Ecst(<=); S2Evar(c(4157)), S2Eintinf(1048575)))), S2Eapp(S2Ecst(&&); S2Eapp(S2Ecst(<=); S2Eintinf(1048576), S2Evar(c(4157))), S2Eapp(S2Ecst(<=); S2Evar(c(4157)), S2Eintinf(1114111)))))
UTF_8.dats:508:26: unsolved constraint: …
(
(
(
(
(
(
(
(((0 <= c) && (c <= 127)) || ((128 <= c) && (c <= 2047)))
|| ((2048 <= c) && (c <= 4095))
)
|| ((4096 <= c) && (c <= 53247))
)
|| ((53248 <= c) && (c <= 55295))
)
|| ((57344 <= c) && (c <= 65535))
)
|| ((65536 <= c) && (c <= 262143))
)
|| ((262144 <= c) && (c <= 1048575))
)
|| ((1048576 <= c) && (c <= 1114111))
)
/home/yannick/Bureau/Logique/ATS/test-21.dats: 562(line=21, offs=23) -- 564(line=21, offs=25): error(3): unsolved constraint: C3NSTRprop(C3TKmain(); S2Eeqeq(S2Eintinf(1); S2Eapp(S2Ecst(sub_int_int); S2EVar(0->S2Eapp(S2Ecst(sub_int_int); S2EVar(5), S2Eintinf(1))), S2Eintinf(1))))
test-21.dats:21:23: unsolved constraint: …
(1 == (S2EVar(0 -> (S2EVar(5) * 1)) * 1))
/home/admin/org/ats/lmacrodeftest.dats: 576(line=38, offs=12) -- 611(line=38, offs=47): error(mac): the form of dynamic expression [D2Esing(D2Eifhead(D2Emacfun(iscons; D2Evar(xs$3803(-1))); D2Emacsyn(MSKencode; D2Eseq(D2Eapplst(D2Esym(print); D2EXPARGdyn(-1; D2Emacsyn(MSKdecode; D2Emacfun(car; D2Evar(xs$3803(-1)))))), D2Emacsyn(MSKdecode; D2Eapplst(D2Emac(auxlist); D2EXPARGdyn(-1; D2Emacfun(cdr; D2Evar(xs$3803(-1))), D2Evar(y$3804(-1))))))); Some(D2Evar(y$3804(-1)))))] is unsupported for macro expansion.
../../../../admin/org/ats/lmacrodeftest.dats:38:12: the form of dynamic expression […] is unsupported for macro expansion.
D2Esing(
D2Eifhead(
D2Emacfun(iscons; xs$3803);
D2Emacsyn(
MSKencode;
D2Eseq(
D2Eapplst(
D2Esym(print);
D2EXPARGdyn(-1; D2Emacsyn(MSKdecode; D2Emacfun(car; xs$3803)))
),
D2Emacsyn(
MSKdecode;
D2Eapplst(
D2Emac(auxlist); D2EXPARGdyn(-1; D2Emacfun(cdr; xs$3803), y$3804)
)
)
)
);
Some(y$3804)
)
)
--
You received this message because you are subscribed to the Google Groups "ats-lang-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ats-lang-user...@googlegroups.com.
To post to this group, send email to ats-lan...@googlegroups.com.
Visit this group at https://groups.google.com/group/ats-lang-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/ats-lang-users/4b264fc6-2e32-4a1a-af49-58d763586a78%40googlegroups.com.
Thanks!
It really helps. Quite a few students taking my programming classes benefited from using it.
It's very useful! I tried to explain it at Wiki page.
https://github.com/githwxi/ATS-Postiats/wiki/Error-messages#pretty-print-error-messages
Thanks,
I recommended this to the students taking my programming class today :)
Yannick: Could you put some usage examples about pats-filter in your git-hub
directory? Such examples should make it a lot easier for users to figure out how
to use pats-filter. Examples for other commands are welcome as well.
Cheers!