LARA

import java.io._
class EndOfInput(stream : String) extends Exception
class CharStream(fileName : String) {
  val file = new BufferedReader(new FileReader(fileName))
  var current : Char = ' '
  var eof : Boolean = false
 
  def next = {
    if (eof) throw new EndOfInput("reading" + file)
    val c = file.read()
    eof = (c == -1)
    current = c.asInstanceOf[Char]
  }
 
  next
}
 
object Test {
  // test for using CharStream
  def main(args : Array[String]) = {
    val s = new CharStream(args(0))
    while (!s.eof) {
      print(if (s.current==' ') '_' else s.current)
      s.next
    }
  }
}