Skip to Main content Skip to Navigation
Reports

Parser in ML

Michel Mauny 1 Daniel de Rauglaudre 1
1 FORMEL
INRIA Rocquencourt
Abstract : We present the operational semantics of stream matching as discussed. Streams are data structures such as lists, but with different primitive operations. Streams not only provide an interface to usual input/ output channels, but may used as a data structure per se, holding any kind of element. A special pattern matching construct is dedicated to streams and the actual matching process will be called parsing. The primary parsing semantics that we propose here is predictive parsing, i.e. recursive descent semantics with a one token look-ahead: although this choice seems to restrict us to the recognition of LL(1) languages, we show by examples that full functionality and parameter passing allow us to write parsers for complex languages. The operational semantics of parsers is given by transforming parsers into regular functions. We introduce a non)strict semantics of streams by translating stream expressions into more classical data structures ; we also investigate different sharing mechanisms for some of the stream operations.
Document type :
Reports
Complete list of metadata

https://hal.inria.fr/inria-00074898
Contributor : Rapport de Recherche Inria <>
Submitted on : Wednesday, May 24, 2006 - 4:49:55 PM
Last modification on : Thursday, February 11, 2021 - 2:50:07 PM
Long-term archiving on: : Tuesday, April 12, 2011 - 7:59:27 PM

Identifiers

  • HAL Id : inria-00074898, version 1

Collections

Citation

Michel Mauny, Daniel de Rauglaudre. Parser in ML. [Research Report] RR-1659, INRIA. 1992. ⟨inria-00074898⟩

Share

Metrics

Record views

152

Files downloads

94