<br><div><span class="gmail_quote">On 11/30/06, <b class="gmail_sendername">Rodrigo Fuentealba</b> &lt;<a href="mailto:darkprox@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">darkprox@gmail.com
</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
2006/11/30, Hector Vergara R. &lt;<a href="mailto:hvergara@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">hvergara@gmail.com</a>&gt;:<br>&gt; A ver...<br><br>aere...<br><br>&gt; Ruby no tiene por que 'emular' bien las sesiones de PHP. Simplemente no esta
<br>
&gt; hecho para eso.<br><br>Un lenguaje que no implementa algún tipo de persistencia de datos<br>entre sus múltiples fases es un lenguaje inútil, más aún en web...<br>Meter todo entre POST y GET está mal cuando se trata de logging, ¿no?
</blockquote><div><br>no se realmente a que te refieres con esto.&nbsp;</div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">&gt; Las sesiones de PHP las entiende PHP y las sesiones de Ruby las entiende
<br>&gt; Ruby.<br><br>ya, pero las sesiones de Ruby, aún en Rails tienen que ser emuladas, y<br>son bastante complejas de manejar... Y es sumamente difícil que haya<br>mecanismos fáciles como $_SESSION['variable'] = $variable;
</blockquote><div><br>session[:variable] = variable<br><br>fácil, no? <br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">&gt; Respecto a las cosas que no se pueden hacer en PHP, hay muchos ejemplos.
<br><br>esto /ya se ha discutido/ en threads anteriores.<br><br>&gt; - Uno de ellos es el bug (que se ha repetido continuamente y que solo en php<br>&gt; 5.2 es resuelto) que no permite obtener el nombre de la clase de una
<br>&gt; instancia heredada. Un ejemplo:<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; &lt;......&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; class MiClase extends Clase<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; function getName() {<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return __CLASS__;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&gt;<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp; $instancia = new MiClase();
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; print $instancia-&gt;getName();<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; En teoria deberia entregar 'MiClase', sin embargo devuelve 'Clase'.<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp; Esto no permite la implementación _limpia_ del patron ActiveRecord. Muy<br>
&gt; importante.
<br>&gt;<br>&gt; - Muchas de las cosas que se pueden hacer en Rails (mas bien Ruby) es<br>&gt; extender las clases ya definidas. Un ejemplo:<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;class Numeric<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; def sqrt<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return self ^ 
0.5
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;end<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;puts 16.sqrt<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;Dime como puedo hacer eso en PHP y mañana mismo vuelvo a programar en<br>&gt; PHP.<br><br>¿no se puede hacer extensión de clases? (si vienes del mundo PHP como
<br>afirmas, deberías saber que PHP no es un lenguaje orientado a objetos,<br>sino que es capaz de manejar objetos: cosas que no son &quot;tan&quot;<br>distintas, pero tampoco son lo mismo.) Mientras Rails hace todo en<br>

clases, en PHP puedes trabajar con objetos, clases, extensiones y<br>meter código estructurado entre medio. También es importante hacer<br>notar que /si/ existen ciertas clases predefinidas (no para numéricos,<br>como el ejemplo) y que puedes extender... sin problemas.
</blockquote><div><br>claro que se puede hacer extension de clases. A lo que me referia era a que puedes extender las clases que ya existen (cosa que no se puede hacer ni en PHP ni en Java), y no tener que hacer clases especiales para extender el comportamiento de integers y strings.
<br><br>Otra cosa, que no le hace bien al OOP, es la falta de rigurosidad en PHP para mantener el scope de las variables.<br>&nbsp;</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

&gt; Que quede algo claro: yo vengo del mundo PHP. No odio a PHP.<br>&gt; Ocupe casi 5 años PHP y tengo muy buenos recuerdos de haberlo utilizado.<br><br>bkn.<br><br>&gt; Respecto a porque RubyOnRails.com usa PHP en su index, ni idea. Quizas sólo
<br>&gt; por diversion ;-)<br><br>nope... David Heinemeier Hansson no programa exclusivamente de Ruby.<br>Hizo esta página hace tiempo y desde entonces no la ha cambiado. Por<br>demás, la gente de Rails parece muy inmadura en la forma de gestionar
<br>su proyecto</blockquote><div><br>podrias dar un ejemplo de eso?&nbsp;</div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">, así es que si por el lado de PHP se puede copiar la idea,
<br>obteniendo resultados como los de Symfony al respecto, bueno sería<br>(total, PHP está en gran parte de las máquinas Linux para Web)<br><br>Estamos de acuerdo con Franco Catrín en que PHP tiene sus<br>limitaciones... pero no existe un lenguaje en el que puedas
<br>implementar toooooooooooooodo lo que se te ocurra (quiero ver el día<br>en que Java permita crear módulos de kernel o que alguien programe una<br>página web usando las bibliotecas ncurses.).</blockquote><div><br>Nadie esta tratando de decir que PHP ni Ruby son perfectos. Cada lenguaje esta pensado para un entorno en especial.&nbsp;
</div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">--<br>Rodrigo Fuentealba Cartes<br>Desarrollador de Sistemas Web<br>Registered User 387639 - 
<a href="http://counter.li.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://counter.li.org</a><br><br></blockquote></div><br><br clear="all"><br>-- <br>Hector Vergara Reinoso<br>Aardvark Labs - 
<a href="http://aardvark.cl" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://aardvark.cl</a><br>hvergara [at] 
<a href="http://gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">gmail.com</a>