File: TODO

package info (click to toggle)
happy 1.18.9-1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 1,024 kB
  • sloc: haskell: 6,327; xml: 3,388; yacc: 809; makefile: 263
file content (59 lines) | stat: -rw-r--r-- 1,682 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
* happyError should take the current token as an argument in %lexer mode;
  it's silly not to, because it means the monad has to keep track of the
  previous token in order to report it in the error message.

* BUG in error handling without %lexer: see tests/ParGF.y

* allow polymorphic type signatures for productions.
* allow omitted semnatic values, defaulting to $1?

* unlit properly

* maintain indentation in code between { } so that layout works.

-OLD-------------------------------------------------------------------------

1. Add in a simple lexical analyser

2. Add in choice for lexical analyis

%lexerstyle original		-- the default
%lexerstyle auto	
%lexerstyle monadic

---[1] :: [Token] -> a ---------------------------------------------------------

 As things are now :-(
	
---[2] :: String -> a ----------------------------------------------------------

 Using the special lexer, as defined using

  %macro letter		( [A-Z][a-z] )
  %autotoken
	id		( {letter}({digit}|{letter}) )

---[3] :: ParseM Token -> ParseM a ---------------------------------------------

    This presumes the exsitance of the defintions:

	type ParseM a b c = a -> ParseR a b
	data ParseR a b c = ParseSucc a b | ParseFail c
	thenPM :: a -> ParseM a b c
	returnPM :: ParseM a b c -> (a -> ParseM d b c) -> ParseM d b c -> 

    and is intended for *serious* parsers, like our Haskell parser.


    You need to give a %eof 

-----------------------------------------------------------------------------

******************************************************************************

ToAdd:

	--magic-name Sad

	allows other names to be used as the *Magic* name, currently
	only Happy.