Página 1 de 1

Scalars y vitaminas

Publicado: Vie Jun 04, 2021 7:58 pm
por hmpaquito
Hola,

Acabo ver conferencia scalares de Victor Casajuana. Gracias Víctor. Me parece muy interesante, tema que desconocia.

Seria intesante vitaminar al tipo codeblock. ¿ Podremos conocer alguna vez como string la cadena del codeblock ?
Vendria muy bien para tener {|| Date()+ 5 }:Str() y que nos devolviera la string "Date()+ 5". Pero me temo que esta faena no es para los scalars, diría yo que es mas cosa del preprocesador, pero no lo sé.

Tambien comentar que probablemente la semantica sin parentesis funcionara, al menos cuando no haya parámetros... Date():AddDay:Str:Len

Siempre supimos que los datos de Harbour eran un objeto puesto que podiamos hacer 10:ClassName() o Date():ClassName() o incluso NIL:ClassName() Quizá yendo a la definicion podamos encontrar mas metodos. Pero lo que ignoraba es que era posible su vitaminación.

Y un apunte final. Los scalars tratan un tema muy delicado: los tipos basicos que son la base y el eje de la velocidad de nuestras aplicaciones. ¿ Reduce la vitaminación, considerablemente, la velocidad de ejecucion ?

Salu2

Re: Scalars y vitaminas

Publicado: Vie Jun 04, 2021 9:55 pm
por Baxajaun
Paco,

acabo de ver el vídeo en skype. Me ha parecido superinteresante. Lo de dar semántica al código simplemente maravilloso.

Víctor, muchísimas gracias !!!

Saludos,

Re: Scalars y vitaminas

Publicado: Sab Jun 05, 2021 7:37 am
por VictorCasajuanaMas
hmpaquito escribió: Vie Jun 04, 2021 7:58 pm Seria intesante vitaminar al tipo codeblock. ¿ Podremos conocer alguna vez como string la cadena del codeblock ?
Vendria muy bien para tener {|| Date()+ 5 }:Str() y que nos devolviera la string "Date()+ 5". Pero me temo que esta faena no es para los scalars, diría yo que es mas cosa del preprocesador, pero no lo sé.
Se puede definir un scalar para los tipos de datos mCodeBlock:

Código: Seleccionar todo

CREATE CLASS Block INHERIT HBScalar FUNCTION HBBlock
puedes probar a ver si hace el comportamiento que necesitas.
hmpaquito escribió: Vie Jun 04, 2021 7:58 pm Tambien comentar que probablemente la semantica sin parentesis funcionara, al menos cuando no haya parámetros... Date():AddDay:Str:Len
sí, funciona perfectamente
hmpaquito escribió: Vie Jun 04, 2021 7:58 pm Y un apunte final. Los scalars tratan un tema muy delicado: los tipos basicos que son la base y el eje de la velocidad de nuestras aplicaciones. ¿ Reduce la vitaminación, considerablemente, la velocidad de ejecucion ?
Hace un año que los utilizo y no he visto afectado el rendimiento, no obstante no he realizado ningún test de rendimiento sobre los scalar, si me indicas un caso a probar lo miro.

Re: Scalars y vitaminas

Publicado: Sab Jun 05, 2021 3:45 pm
por hmpaquito
Víctor,

Esperaré más entregas de tu curso de escalares. No pretendo destripar lo que pueda venir

Salu2

Re: Scalars y vitaminas

Publicado: Sab Jun 05, 2021 4:09 pm
por VictorCasajuanaMas
Hola!

Que yo sepa, no hay un curso de Scalares, lo que sí se podría hacer es abrir un espacio para tener unas clases conjuntas de Scalar e ir aportando por la comunidad y llegar a algo parecido a lo que tienen el resto de lenguajes. Pero eso hay que hacerlo mediante colaboración.

Salud!

Re: Scalars y vitaminas

Publicado: Jue Jun 09, 2022 5:56 pm
por VictorCasajuanaMas
Repositorio actualizado con los test unitarios de todos los métodos de cada tipo de dato y también el debug para vscode por si alguien quiere trastear:
https://github.com/VictorCasajuanaMas/scalar

Re: Scalars y vitaminas

Publicado: Mié Jul 27, 2022 11:17 am
por VictorCasajuanaMas
Repositorio actualizado con un método ToDate() añadido al tipo Caracter que lo hace muy interesante en la introducción rápida de fechas.
Clase original de Joan Pastor.
https://github.com/VictorCasajuanaMas/scalar

Re: Scalars y vitaminas

Publicado: Jue Sep 01, 2022 11:16 am
por VictorCasajuanaMas
Repositorio actualizado con reestructuración de métodos alfabéticamente, nuevos métodos añadidos y mejora de anteriore por Juan Pastor
https://github.com/VictorCasajuanaMas/scalar