--- gforth/environ.fs 2000/11/29 19:43:07 1.26 +++ gforth/environ.fs 2012/10/08 01:10:30 1.35 @@ -1,12 +1,12 @@ \ environmental queries -\ Copyright (C) 1995,1996,1997,1998,2000 Free Software Foundation, Inc. +\ Copyright (C) 1995,1996,1997,1998,2000,2003,2007 Free Software Foundation, Inc. \ This file is part of Gforth. \ Gforth is free software; you can redistribute it and/or \ modify it under the terms of the GNU General Public License -\ as published by the Free Software Foundation; either version 2 +\ as published by the Free Software Foundation, either version 3 \ of the License, or (at your option) any later version. \ This program is distributed in the hope that it will be useful, @@ -15,8 +15,10 @@ \ GNU General Public License for more details. \ You should have received a copy of the GNU General Public License -\ along with this program; if not, write to the Free Software -\ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA. +\ along with this program. If not, see http://www.gnu.org/licenses/. + +[IFUNDEF] cell/ : cell/ 1 cells / ; [THEN] +[IFUNDEF] float/ : float/ 1 floats / ; [THEN] \ wordlist constant environment-wordlist @@ -41,10 +43,10 @@ vocabulary environment ( -- ) \ gforth : e? name environment? 0= ABORT" environmental dependency not existing" ; -: has? name environment? 0= IF false THEN ; - : $has? environment? 0= IF false THEN ; +: has? name $has? ; + environment-wordlist set-current get-order environment-wordlist swap 1+ set-order @@ -95,19 +97,18 @@ version-string 2constant gforth ( -- c-a : return-stack-cells ( -- n ) \ environment \G Maximum size of the return stack, in cells. - [ forthstart 6 cells + ] literal @ cell / ; + [ forthstart 6 cells + ] literal @ cell/ ; : stack-cells ( -- n ) \ environment \G Maximum size of the data stack, in cells. - [ forthstart 4 cells + ] literal @ cell / ; + [ forthstart 4 cells + ] literal @ cell/ ; : floating-stack ( -- n ) \ environment \G @var{n} is non-zero, showing that Gforth maintains a separate \G floating-point stack of depth @var{n}. [ forthstart 5 cells + ] literal @ - [IFDEF] float float [ELSE] [ 1 floats ] Literal [THEN] / ; + [IFDEF] float/ float/ [ELSE] [ 1 floats ] Literal / [THEN] ; -\ !! max-float 15 constant #locals \ 1000 64 / \ One local can take up to 64 bytes, the size of locals-buffer is 1000 maxvp constant wordlists