amuletml / amulet

An ML-like functional programming language
https://amulet.works/
BSD 3-Clause "New" or "Revised" License
328 stars 16 forks source link

Feature: What Is That Error #204

Closed plt-amy closed 5 years ago

plt-amy commented 5 years ago

plt-amy commented 5 years ago

@SquidDev NonRecursiveRhs is literally as far from a meaningful name as you can get—The error is for recursive rhs's!

SquidDev commented 5 years ago

Just keeping track of current progress as a shell script:

$ find doc/errors/ -type f -size -50c | sort
doc/errors/parser/0002.txt
doc/errors/parser/0003.txt
doc/errors/parser/0006.txt
doc/errors/parser/0007.txt
doc/errors/parser/0008.txt
doc/errors/resolve/1008.txt
doc/errors/resolve/1012.txt
doc/errors/resolve/1013.txt
doc/errors/types/2006.txt
doc/errors/types/2008.txt
doc/errors/types/2009.txt
doc/errors/types/2010.txt
doc/errors/types/2011.txt
doc/errors/types/2012.txt
doc/errors/types/2013.txt
doc/errors/types/2014.txt
doc/errors/types/2015.txt
doc/errors/types/2017.txt
doc/errors/types/2018.txt
doc/errors/types/2019.txt
doc/errors/types/2020.txt
doc/errors/types/2021.txt
doc/errors/types/2022.txt
doc/errors/types/2023.txt
doc/errors/types/2024.txt
doc/errors/types/2025.txt
doc/errors/types/2026.txt
doc/errors/types/2027.txt
doc/errors/types/2028.txt
doc/errors/types/2029.txt
doc/errors/types/2030.txt
doc/errors/types/2031.txt
doc/errors/types/2032.txt
doc/errors/types/2035.txt
doc/errors/types/2038.txt
doc/errors/types/2039.txt
doc/errors/verify/3001.txt
doc/errors/verify/3002.txt
doc/errors/verify/3003.txt
doc/errors/verify/3004.txt
doc/errors/verify/3005.txt
doc/errors/verify/3006.txt
doc/errors/verify/3007.txt
doc/errors/verify/3008.txt
doc/errors/verify/3009.txt

There's a couple within the parser which I may remove for now - there's a limited amount which can be said on "unexpected character" without making it incredibly general.

plt-amy commented 5 years ago

Here's what we're missing:

% find doc/errors/ -type f -size -50c | sort
doc/errors/parser/0002.txt
doc/errors/parser/0003.txt
doc/errors/parser/0006.txt
doc/errors/parser/0007.txt
doc/errors/parser/0008.txt
doc/errors/resolve/1008.txt
doc/errors/resolve/1012.txt
doc/errors/resolve/1013.txt
doc/errors/types/2008.txt
doc/errors/types/2013.txt -- This one is actually just really short
doc/errors/types/2028.txt
doc/errors/types/2029.txt
doc/errors/types/2030.txt
doc/errors/types/2031.txt
doc/errors/types/2032.txt
doc/errors/types/2035.txt
doc/errors/types/2038.txt
doc/errors/types/2039.txt
doc/errors/verify/3001.txt
doc/errors/verify/3002.txt
doc/errors/verify/3005.txt
doc/errors/verify/3006.txt
doc/errors/verify/3009.txt
plt-amy commented 5 years ago

I finished resolve and did one in verify:

doc/errors/parser/0002.txt
doc/errors/parser/0003.txt
doc/errors/parser/0006.txt
doc/errors/parser/0007.txt
doc/errors/parser/0008.txt
doc/errors/types/2008.txt
doc/errors/types/2013.txt
doc/errors/types/2028.txt
doc/errors/types/2029.txt
doc/errors/types/2030.txt
doc/errors/types/2031.txt
doc/errors/types/2032.txt
doc/errors/types/2035.txt
doc/errors/types/2038.txt
doc/errors/types/2039.txt
doc/errors/verify/3001.txt
doc/errors/verify/3002.txt
doc/errors/verify/3005.txt
doc/errors/verify/3006.txt