Sobre Symbol

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Sobre Symbol

Edgar De Cleene
Quiero auto crear metodos de una clase, por lo que necesito Symbol
Me encuentro que un Symbol no puede comenzar con un numero ni contener
ningun caracter que no sea [a-z][A-Z][0-9]

Donde esta especificado que es así? No lo encuentro
Se puede modificar el sistema para que aceptara todos los caracteres ASCII
entre el 32 y el 127 ?
Que consecuencias traeria ?

Edgar
Reply | Threaded
Open this post in threaded view
|

Re: Sobre Symbol

Angel Java Lopez
Bien, si saber mucho....

El problema no deberia ser el Symbol.... tendras codigo para compartir?
Cual es el problema?

Un simbolo puede tener cualquier cosa, escribiendo

#'soy un simbolo que puede tener cualquier cosa adentro'

(uso comilla simple antes y despues).

Pero como vas a invocar ese metodo? dinamicamente con (hmmm.. no recuerdo)
perform:?

Nos leemos!

Angel "CobolScript" Lopez jejeje ver
http://ajlopez.wordpress.com/2012/12/22/cobolscript-1-cobol-compiler-to-javascriptnode-js/

2012/12/24 Edgar J. De Cleene <[hidden email]>

> **
>
>
> Quiero auto crear metodos de una clase, por lo que necesito Symbol
> Me encuentro que un Symbol no puede comenzar con un numero ni contener
> ningun caracter que no sea [a-z][A-Z][0-9]
>
> Donde esta especificado que es así? No lo encuentro
> Se puede modificar el sistema para que aceptara todos los caracteres ASCII
> entre el 32 y el 127 ?
> Que consecuencias traeria ?
>
> Edgar
>  
>
Reply | Threaded
Open this post in threaded view
|

Re: Sobre Symbol [Archivos adjuntos 3]

Edgar De Cleene
> Bien, si saber mucho....
>
>
> El problema no deberia ser el Symbol.... tendras codigo para compartir? Cual
> es el problema?
>
> Un simbolo puede tener cualquier cosa, escribiendo
>
> #'soy un simbolo que puede tener cualquier cosa adentro'
>
> (uso comilla simple antes y despues).
>
> Pero como vas a invocar ese metodo? dinamicamente con (hmmm.. no recuerdo)
> perform:?
>
> Nos leemos!

Tu ejemplo podria ser convertido a Symbol usando los dos metodos que paso y
que acabo de inventar ya que no existian en Squeak (y supong tampoco en Cuis
o Pharo)

Pero fijate mi codigo en proceso. Que es para hacer una interface gráfica al
Regex, copiada del Nisus Writer Pro

('0 or 1' '0+' '1+'  'N Times' 'N - M times' 'Shortest 0 or 1' 'Shortest 0'
'Shortest 1') do: [:ea | newMessage := (ea withoutAnyBlanks) asSymbol

Tal como es el sistema hoy dia #0or1 , #0+ y #1+ no son symbolos validos ,
no te los compila.


Pero si haces
('0 or 1' '0+' '1+'  'N Times' 'N - M times' 'Shortest 0 or 1' 'Shortest 0'
'Shortest 1') do: [:ea | newMessage := ('find',ea withoutAnyBlanks) asSymbol
.
#find0or1 si seria un Symbol valido e invocable al crear la instancia.

instancia  := RegexFindReplace new
 instancia find0or1

No me quiero poner ahora, pero probablemente la primera letra deba ser
minuscula.

Edgar