|
|
last edited 1 year ago by test1 |
1 2 3 4 5 6 7 8 9 | ||
Editor: alfredo
Time: 2008/04/25 01:43:40 GMT-7 |
||
Note: Fix formatting |
removed:
-From BillPage Sun Mar 4 19:38:24 -0600 2007
-From: Bill Page
-Date: Sun, 04 Mar 2007 19:38:24 -0600
-Subject: four is not prime
-Message-ID: <20070304193824-0600@wiki.axiom-developer.org>
-
-\begin{aldor}
-#include "axiom.as"
-macro Z == Integer;
-
-main(): Boolean == {
- import from Z;
- b: Boolean := prime? 4;
- return b;
-}
-\end{aldor}
-
-\begin{axiom}
-main()
-\end{axiom}
-
From section 1.2 of Aldor Users Guide
aldor# include "axiom.as" import from Boolean, Integer, NonNegativeInteger; sieve(n: Integer): Integer == { isprime: OneDimensionalArray Boolean := new(n::NonNegativeInteger, true); np:Integer := 0; for p in 2..n | isprime p repeat { np := np + 1; for i in (p+p)..n by p repeat isprime i := false; } np }
Compiling FriCAS source code from file /var/zope2/var/LatexWiki/8473420842059482192-25px001.as using AXIOM-XL compiler and options -O -Fasy -Fao -Flsp -laxiom -Mno-AXL_W_WillObsolete -DAxiom -Y $AXIOM/algebra Use the system command )set compiler args to change these options. #1 (Warning) Deprecated message prefix: use `ALDOR_' instead of `_AXL' Compiling Lisp source code from file ./8473420842059482192-25px001.lsp Issuing )library command for 8473420842059482192-25px001 Reading /var/zope2/var/LatexWiki/8473420842059482192-25px001.asy
axiom)lisp (si::allocate-contiguous-pages 1500 t) Value = T )lisp (si::allocate 'sfun 50 t) Value = T for i in 1..4 repeat n := 10^i outputList ["There are ", sieve n, " primes <= ", n] There are 4 primes <= 10 There are 25 primes <= 100 There are 168 primes <= 1000 There are 1229 primes <= 10000
To run this program on your own computer you need linux and Axiom+Aldor from AxiomBinaries?.
$ vi sieve.as
$ AXIOMsys
(1) -> )compile sieve.as
for i in 1..6 repeat ( _ n := 10^i; _ outputList ["There are ", sieve n, " primes <= ", n] _ )