[Off] Aprendamos y usemos squirrel!
#1

SQUIRREL


Estaba pensando que serнa una buenisima idea que aprendamos squirrel y lo usemos en SA-MP, pero para que o por quй, aquн les respondo con una lista.
  • 1.- Dado que squirrel se puede correr compilado o sin compilar( la maquina virtual lo compila al momento de cargarlo o en tiempo de ejecucion), usarнamos el que no es necesario usar un compilador por lo que contribuirнamos al cуdigo libre.
  • 2.- Si bien es mбs extenso que pawn, muchas cosas se pueden hacer que en pawn no.
  • 3.- Es mбs facil de scriptear en algunas cosas
  • 4.- Evitamos strings de tamaсos grandisimos, en squirrel se hace de forma mбs sencilla
    ej:
    PHP код:
    SendClientMessageToAll(0x00FF00FFGetPlayerName(playerid) + " ha entrado al server!"); 
  • 5.- Tenemos la posibilidad de crear clases, esto es algo mбs avanzado que no todos comprenderбn pero con un poco de practica lo tendrбn.. Ejemplo tomado de la documentacion de squirrel
    PHP код:
     
    class Entity
    {    
        
    constructor(etype,entityname)
        {
            
    name entityname;
            
    type etype;
        }
                                        
        
    0;
        
    0;
        
    0;
        
    name null;
        
    type null;
    }
     
    function 
    Entity::MoveTo(newx,newy,newz)
    {
        
    newx;
        
    newy;
        
    newz;
    }
     
    class 
    Player extends Entity {
        
    constructor(entityname)
        {
            
    base.constructor("Player",entityname)
        }
        function 
    DoDomething()
        {
            ::print(
    "something");
        }
        
    }
     
    local newplayer Player("da playar");
     
    newplayer.MoveTo(100,200,300); 
  • 6.- El uso de clases les ayudarб en el futuro si quieren aprender C++
  • 7.- Aprendemos algo nuevo y distinto

їCуmo usamos squirrel?
En el sub-foro plugin deveploment, hay un plugin para utilizar squirrel, esta desactualizado, pero yo lo he utilizado squirrel y estarнa dispuesto a actualizarlo para hacer uso de el.

Aquн les dejo el link de la documentaciуn oficial:
http://www.squirrel-lang.org/doc/squirrel3.html
Reply
#2

їCуmo se podrнa usar en SA-MP? їCon un plugin?
їEn quй se usa este lenguaje? Segъn leн por ahн se usa en IV:MP, їEn quй mбs?
Reply
#3

Interesante..

Sн, MrKaiser, hay plugins para usar muchнsimos lenguajes de programaciуn dentro de PAWN.
Reply
#4

Buenisimo, yo lo usaria pero tendria que ver un Test de velocidad para observar si SQUIRREL es mбs rapido en ejecuciуn de cуdigo que PAWN.

Quote:
Originally Posted by DeadSkyTkb
Посмотреть сообщение
Interesante..

Sн, MrKaiser, hay plugins para usar muchнsimos lenguajes de programaciуn dentro de PAWN.
No exactamente dentro de PAWN si no dentro de SA-MP, por la sencilla razуn que usted no puede compilar squirrel en un compilador PAWN ya que no reconoceria todo el cуdigo.

PD: Si solamente queremos aprender C++ basta con utilizar el SAMPGDK para crear nuestro GameMode en C++, menciono esto para los que piensen en utilizar squirrel solamente para aprender el uso de las clases.

Un saludo.
Reply
#5

Quote:

Dado que squirrel se puede correr compilado o sin compilar( la maquina virtual lo compila al momento de cargarlo o en tiempo de ejecucion), usarнamos el que no es necesario usar un compilador por lo que contribuirнamos al cуdigo libre.

Los lenguajes que no se compilan reciben el nombre de lenguajes interpretados.

Dudo que la gente lo use, ya que casi todo el mundo prefiere tener sus scripts compilados, para evitar robos.
De todas formas me gusta la idea, suerte.

@MrKaiser: este lenguaje estб bбsicamente orientado a objetos, es usado en eventos, es un lenguaje bastante dinбmico. Se usa principalmente en videojuegos.
Reply
#6

Quote:
Originally Posted by [DOG]irinel1996
Посмотреть сообщение
Los lenguajes que no se compilan reciben el nombre de lenguajes interpretados
No lo sabнa, pero si lo hubiera sabido y puesto asн, no muchos hubieran entendido

Quote:
Originally Posted by oOFotherOo
Посмотреть сообщение
Buenisimo, yo lo usaria pero tendria que ver un Test de velocidad para observar si SQUIRREL es mбs rapido en ejecuciуn de cуdigo que PAWN.
Un buen test serнa crear 1 funcion que retorne x cosa para pawn y otra para squirrel, la cosa es que si utilizas funciones de samp para hacer el test, puede que pawn gane dado que el plugin usa "Invoke" lo cual puede "alentar" el proceso
Reply
#7

Quote:
Originally Posted by Josstaa
Посмотреть сообщение
No lo sabнa, pero si lo hubiera sabido y puesto asн, no muchos hubieran entendido



Un buen test serнa crear 1 funcion que retorne x cosa para pawn y otra para squirrel, la cosa es que si utilizas funciones de samp para hacer el test, puede que pawn gane dado que el plugin usa "Invoke" lo cual puede "alentar" el proceso
Bueno en esa parte usted tiene razуn si el plugin trae las funciones de SA-MP con el metodo Invoke entonces se retrasaria demasiado el proceso de estas funciones, si usted llega a actualizar el plugin reemplazando el metodo Invoke por las funciones del SAMPGDK creo que hay si se podria apreciar la velocidad de SQUIRREL.

Un saludo.
Reply
#8

Perdonen mi ignorancia pero cuando hablan de velocidad, estan hablando del tiempo en el que tarda en compilar o en la velocidad In-Game... solo es una duda que quisiera sacarmelo xD...
Reply
#9

Quote:
Originally Posted by Dreyfuz
Посмотреть сообщение
Perdonen mi ignorancia pero cuando hablan de velocidad, estan hablando del tiempo en el que tarda en compilar o en la velocidad In-Game... solo es una duda que quisiera sacarmelo xD...
Nos referimos a la velocidad de ejecuciуn de cуdigos In Game, por ejemplo cuбl de los 2 lenguajes ejecuta mбs rapido un Loop para mostrar un dialog a cada jugador conectado.

Un saludo.
Reply
#10

Quote:
Originally Posted by oOFotherOo
Посмотреть сообщение
Nos referimos a la velocidad de ejecuciуn de cуdigos In Game, por ejemplo cuбl de los 2 lenguajes ejecuta mбs rapido un Loop para mostrar un dialog a cada jugador conectado.

Un saludo.
Ahhhhhh.. Ahora entendi muchas Gracias
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)