axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Axiom-developer] [reading structures from a file] (nouveau)


From: kratt6
Subject: [Axiom-developer] [reading structures from a file] (nouveau)
Date: Fri, 26 Aug 2005 16:02:15 -0500

Changes 
http://page.axiom-developer.org/zope/mathaction/ReadingStructuresFromAFile/diff
--
This package provides operations that all take a filename and return an axiom 
structure which is supposed to be in some standard notation in this file. 
Geared towards polymake.

\begin{axiom}
)abbrev package READFILE ReadFile
ReadFile(): Exports == Implementation where
    Exports == with

      getBoolean: FileName -> Boolean

      getInteger: FileName -> Integer

      getListInteger: FileName -> List Integer

      getListFraction: FileName -> List Fraction Integer

      getVectorInteger: FileName -> Vector Integer

      getVectorFraction: FileName -> Vector Fraction Integer

      getSetInteger: FileName -> Set Integer

      getMatrixInteger: FileName -> Matrix Integer

      getMatrixFraction: FileName -> Matrix Fraction Integer

      getListSetInteger: FileName -> List Set Integer

    Implementation == add

      getBoolean polytmpfile ==
        f := open(polytmpfile)$TextFile
        read!(f)$TextFile
        r:String := read!(f)$TextFile
        close!(f)$TextFile

        (r="1")

      getInteger polytmpfile ==
        f := open(polytmpfile)$TextFile
        read!(f)$TextFile
        r:String := read!(f)$TextFile
        close!(f)$TextFile

        coerce(r)$StringConversions

      getListInteger polytmpfile ==
        f := open(polytmpfile)$TextFile
        read!(f)$TextFile
        r:String := read!(f)$TextFile
        close!(f)$TextFile
        coerce(r)$StringConversions

      getListFraction polytmpfile ==
        f := open(polytmpfile)$TextFile
        read!(f)$TextFile
        r:String := read!(f)$TextFile
        close!(f)$TextFile
        coerce(r)$StringConversions

      getVectorInteger polytmpfile == 
        vector(getListInteger polytmpfile)$Vector(Integer)

      getVectorFraction polytmpfile == 
        vector(getListFraction polytmpfile)$Vector(Fraction Integer)

      getSetInteger polytmpfile == 
        f := open(polytmpfile)$TextFile
        read!(f)$TextFile
        r:String := read!(f)$TextFile
        close!(f)$TextFile
        coerce(r)$StringConversions

      getMatrixInteger polytmpfile ==
        f := open(polytmpfile)$TextFile
        read!(f)$TextFile
        m: List List Integer := []
        r: String
        while not endOfFile?(f) repeat
          r := read!(f)$TextFile
          if not empty? r then 
            m := cons(coerce(r)$StringConversions, m)

        close!(f)$TextFile
        matrix(reverse m)$Matrix(Integer)

      getMatrixFraction polytmpfile ==
        f := open(polytmpfile)$TextFile
        read!(f)$TextFile
        m: List List Fraction Integer := []
        r: String
        while not endOfFile?(f) repeat
          r := read!(f)$TextFile
          if not empty? r then 
            m := cons(coerce(r)$StringConversions, m)

        close!(f)$TextFile
        matrix(reverse m)$Matrix(Fraction Integer)

      getListSetInteger polytmpfile ==
        f := open(polytmpfile)$TextFile
        read!(f)$TextFile
        m: List Set Integer := []
        r: String
        while not endOfFile?(f) repeat
          r := read!(f)$TextFile
          if not empty? r then 
            m := cons(coerce(r)$StringConversions, m)

        close!(f)$TextFile
        reverse m
\end{axiom}
--
forwarded from http://page.axiom-developer.org/zope/mathaction/address@hidden




reply via email to

[Prev in Thread] Current Thread [Next in Thread]