[HP-PRIME prg] 1



#3

In spanish =(


Otro problema (posible nuevo BUG) , si hay dos archivos DIFERENTES como por ejemplo DIR1 & DIR2 y si estos contienen los mismos nombres de funciones, y cuando desde el entry-line se llaman a estas funciones por medio de CATALOG/USER algo muy estranio sucede y siempre se llaman a las funciones de un solo directorio, por favor alguien lo puede comprobar

Una solucion al problema seria renombrar las funciones de un directorio, pero supongamos que por coincidencia DIR1 y DIR2 fueron desarrollados por dos personas diferentes y contienen algunos comandos o programas o funciones con el mismo nombre

En HOME MODE

para reproducir el posible BUG por favor seguir los siguientes pasos: Crear un Archivo llamado DIR1 que contiene:
EXPORT fnt1()
BEGIN
return("dir1/fnt1");
END;

EXPORT fnt2()
BEGIN
return("dir1/fnt2");
END;
[TOOLS]>[USER]>[DIR1]fnt1

fnt1(); [ENTER] => "dir1/fnt1" // ok
fnt2(); [ENTER] => "dir1/fnt2" // ok

Crear Otro archivo llamado DIR2 que contiene:

EXPORT fnt1()
BEGIN
return("dir2/fnt1");
END;

EXPORT fnt2()
BEGIN
return("dir2/fnt2");
END;

[TOOLS]>[USER]>[DIR 2 ]fnt1

fnt1(); [ENTER] => "dir2/fnt1" // OK
fnt2(); [ENTER] => "dir2/fnt2" // OK

But

[TOOLS]>[USER]>[DIR 1 ]fnt1

fnt1(); [ENTER] => "dir2/fnt1" // ERROR debe ser "dir1/fnt1"
fnt2(); [ENTER] => "dir2/fnt2" // ERROR debe ser "dir1/fnt2"

El ultimo EXPORt es el que prevalece

si no se soluciona este posible BUG, los programas creados por terceros fallarian si contienen nombres iguales en otros archivos


/!\ los ejemplos anteriores son para HOME_MODE pues en modo CAS aun no se como se puede crear un directorio de funciones dentro de un solo archivo :( , ademas note que DIR1 / DIR2 solo tiene igual nombre de funciones la salida es diferente

[REQUEST for HP-PRIME TEAM] al crear un nuevo archivo, dentro del editor, la plantilla de la función ( name BEGIN END; ) NO nombrarla con el mismo nombre del archivo, desplegar un campo para que el usuario nombre la función a su gusto (+1)

La solucion al problema anterior (ambigüedad de los nombres de las funciones) es que desde CATALOG/USER al llamar a una función le incorpore (.) con el nombre del prefijo del archivo actual, (la TI-nspire utiliza sino me equivoco /) yo prefiero el punto

asi por ejemplo

DIR2.p1(); [ENTER] => "dir2/fnt1"
DIR2.p2(); [ENTER] =>"dir2/fnt2"

DIR1.p1(); [ENTER] => "dir1/fnt1"
DIR1.p2(); [ENTER] =>"dir1/fnt2"

Good idea?

y crear un comando para fijar el archivo o directorio actual de trabajo como lo hace la TI89/V200

setFolder( nameFile ), en la HP-Prime puede ser setDirectory ( );

este comando específica el archivo actual de trabajo y no tiene en cuenta nombres o funciones de otros dirtectorios


#4

This is a known issue.


Possibly Related Threads...
Thread Author Replies Views Last Post
  Wp34s STAT and PRG doubts Cristian Arezzini 5 374 06-13-2011, 05:02 PM
Last Post: Walter B
  HP-67 Diagnostic Prg SD-15C Daniel Conde 3 241 02-24-2003, 03:38 PM
Last Post: Daniel Conde
  Somebody using this prg? R Lion (Spain) 0 141 02-18-2003, 05:33 PM
Last Post: R Lion

Forum Jump: