1
package examples.parsing.lambda
3
import scala.util.parsing.combinator.Parsers
4
import scala.util.parsing.input.StreamReader
7
import java.io.FileInputStream
8
import java.io.InputStreamReader
11
* Parser for an untyped lambda calculus
13
* Usage: scala examples.parsing.lambda.Main <file>
15
* (example files: see test/ *.kwi)
17
* @author Miles Sabin (adapted slightly by Adriaan Moors)
19
object Main extends Application with TestParser
21
override def main(args: Array[String]) =
23
val in = StreamReader(new InputStreamReader(new FileInputStream(new File(args(0))), "ISO-8859-1"))
26
case Success(term, _) =>
28
Console.println("Term: \n"+term)
30
case Failure(msg, remainder) => Console.println("Failure: "+msg+"\n"+"Remainder: \n"+remainder.pos.longString)
31
case Error(msg, remainder) => Console.println("Error: "+msg+"\n"+"Remainder: \n"+remainder.pos.longString)