viXardHi, good afternoon, as fernand0 said, Alvaro and I will explain to you what is Mono
viXardand what is this platform about
viXardthis is the Free (Libre) version of .NET
viXardwe will talk about the technology and its consecuences
viXardand the change it will cause on the free software world
viXardNext, i´m gonna tell you what is .NET and what is Mono, after that Alvaro will talk about some little examples made in mono
viXardto get familiarized with the environment
viXardGo Ahead!
viXardWell, .NET is a platform of development-multilanguage initiated by MS
viXardit tryes to solve all thouse carencies brought by other technologies
josanabracs: una de las ventajas de java es que viene muchas clases estandarizadas por Sun
josanabracs: Microsoft, propietario de la tecnologia .NET que garantías da de dar sus clases para usarlas en mono?
acsyes, but .NET has a lot of classes also, and they are standarized
arashiviXard is giving the translation, be patient, he's on a big line now it seems ;)
josanabrthis classes are free?
josanabror i have to buy it?
daniplease questions in #qc
josanabrok, sorry...
acsok guys!
acsi am going to try to translate to english
arashi ... der, i had missed that. thanks, zanshin, acs :)
acsthe distributes model in .NET and Mono is called Remoting
acsit is similar to the CORBA model. To access the remote objects you use proxys. You don't need to know where the object is
acsabout the GUI libraries
acs.NET has the Window.Forms library
acsit is a nice library but currently Mono doesn't have 100% support for it
acsin Mono we are using the Wine project so we can have a implementation as soon as possible
acsabout the virtual machine
acsthe concept is the same we have in Java
acsbut Java focus in one language, the Java language
acs.NET plans to support also other languages like C, C++, Visual Basic, C#, Logo ...
danii'll try to translate skiping a lot things..
danithe first thing we must do is to instal the compiler and the runtime
daniif you use debian or redhat it's easy.. you have easily installable packets
danithere are not lots of dependencies.
daniin debian its enought with: apt-get install mono; apt-get install mcs
danionce we have installed we can start playing with first program.. a simple "Hello world"
danithe code will looks like that:
dani[22:32:01] <acs> public static void Main (string[] args)
dani[22:32:01] <acs> {
dani[22:32:01] <acs>         System.Console.WriteLine ("Hola chicos de Umeet");
dani[22:32:01] <acs> }
danihere there is the main sample class method which we are working on, we are working with C# objects, like java, to make a simple function that writes a message
daniwe  need to build a class with that function (method)
daniwe just want to use that method, so we declare it static
dani[22:33:54] <acs> class Hola {
dani[22:33:54] <acs>         public static void Main (string[] args)
dani[22:33:54] <acs>         {
dani[22:33:54] <acs>                 System.Console.WriteLine ("Hola chicos de Umeet");
dani[22:33:54] <acs>         }
dani[22:33:55] <acs> }
daniwe have a sample that we can compile
daninow its time to compile it
daniacs@linex:/tmp$ mcs Hola.cs
daniCompilation succeeded
danias it has a little amount of code, we don't neet to care about dependencies onothre libraries
danijust use the default basic libraries like System class
danithat's why its easi to compile
dani[22:35:46] <acs> acs@linex:/tmp$ ls -l Hola.*
dani[22:35:46] <acs> -rw-r--r--    1 acs      acs           116 dic  9 22:32 Hola.cs
dani[22:35:46] <acs> -rw-r--r--    1 acs      acs          2048 dic  9 22:32 Hola.exe
danionce we've compiled the result es a MSIL bytecode file
daniMicrosft Intermediate Language
danithis generated language consists on Mono virtual machine instructions that indecates what to do to reach the targets of the program
-> *one2* op #redes arador
danithe execution is also simple. we just need to call the virtual machine and tell it to execute  the MSIL we have generated..
daniwe reachi it with:   mono Hola.exe
daniacs@linex:/tmp$ mono Hola.exe
daniHola chicos de Umeet
danithe vm loading spead is very hight
danithis contrasts with java vm that slows down a lot with simple programs
dani <acs> acs@linex:/tmp$ date;mono Hola.exe;date
dani[22:38:36] <acs> lun dic  9 22:36:32 CET 2002
dani[22:38:36] <acs> Hola chicos de Umeet
dani[22:38:36] <acs> lun dic  9 22:36:32 CET 2002
danithat spends less than a seccond to load the vm and execute the code
danithere exists many optimizations for executing a MSIL
dani <acs> acs@linex:/tmp$ time mono Hola.exe
dani[22:39:53] <acs> Hola chicos de Umeet
dani[22:39:53] <acs> real 0m0.155s
dani[22:39:53] <acs> user 0m0.080s
dani[22:39:53] <acs> sys 0m0.010s
Aradorok, i'll continue the translation
Aradorthaks to the advices from of sorrodp and pancacke here we've here a more exact estimation
Aradorwe can see the MSIL that has been generated
Aradorwith monodis, that it's a MSIL disassembler
Arador<acs>   acs@linex:/tmp$ monodis Hola.exe
Arador <acs>   .assembly extern mscorlib
Arador <acs>   {
Arador <acs>     .ver 0:0:0:0
Arador<acs>   }
Arador <acs>   .assembly 'Hola'
Arador <acs>   {
Arador <acs>     .hash algorithm 0x00008004
Arador <acs>     .ver  0:0:0:0
Arador <acs>   }
Arador <acs>     .class private auto ansi beforefieldinit Hola
Arador <acs>           extends [mscorlib]System.Object
Arador <acs>     {
Arador <acs>   ...
Aradorby the moment,  we're not going to enter in details of this code
Aradornow it's reached the time of giving the witness to raciel
Aradorso he can continue talking about Mono's technologies
Arador<raciel>
Aradornow we can continue explaining a bit about graphic interfaces that we've available in Mono
Arador<fernand0>      <Kefar> raciel: it was absolutely neccesary use NET to develop MONO?
Arador<raciel> at the start when the compiler at mono started to being developed  it was dependant of NET (mcs) so it had to wait to being capable of compiling itself so we can say that isn't dependant of NET
Aradorthe runtime ,the clasess library and the compiler in the same way you use Mono in windows, without any problem
Aradorgood, i continue: in graphics interfaces we've System.Windows.Forms that' the clasess' library that windows uses to show graphic interfaces
Arador in GNU/linux, when it started a port of GTK to GTK# was made by a Ximian developer, Mike Kestner with  the support of Richard Hestilow, who ported gtk to gtk#
petitxainas
Aradorthe thechnical used to port was P/Invoke tha's the call to platform so we can do calss to dynamic libraries in other languages such as C
Aradorand example would be:
dani [DllImport (libc.so, Entrypoint=gets)]
danithis way we can use gets funcion in our program written in C#
daniadapting types to the C# types
daniafter that we call it with something like   int extern gets() ...
daniif you want more information there is a tutorial in spanish at mono.es.gnome.org
danithere are also documentation at msdn.microsoft.com
daniXlib and QT are portet to C# too.. this way you can use the easy API of C#
danithis way we can do it easier to make an aplication in time costs. an aplication build with C, could be build in less time and easily
danian other isue that mono gives us is what is called as Reflexion
danithat alows us to query about object properties and assemblies on runtime. this way we can know wicht methods belongs to a class and more information..
danijust comment that there is a project called OpenJIT that is a Jutter in native language that uses reflexion and invoques to the plataform to translate interchange code to native code.
daniother tecnologies supported are standards like Web Services
-> *one2* op #redes vizard
dani <nerdwell> C# source can be compiled on .NET and MONO? and keep compatibility?
daniyes, you can compile on .net and afterwards execute on MONO with absolute comatibility and viceversa
-> *one2* op #redes vixard
-> *one2* op #redes arador
viXardsorry guys
viXardi got late so i can't translate it all
viXardthe complete translation will be on log files
Aradorok, we're having some problems with the translation, i'll continue the translation when i have the full logs
Aradori start from 22:49 in #linux
Arador<ldipenti> a question, i've not ver clear hoe's the thing with the MS patents a bout .NET, isn't dangerous to work in a technology that is controlled by a enterprise that's not good as we know? what will happen when MS chage the conditions of their platform?
Arador<DrBig_Bec> how it's implemented thee garbage collector in mono? it's like the Sun's Java?
Arador<raciel>ldipenti: the thing is that the patents thing is a very fragile problem
Arador<ldipendi> of course. and because it's very fragile, wouldn't better to assure yourself before starting that proyect?
Arador<raciel> but if you have a standard wich is ECMA and you do a free implementation, you're not going to break any patent
Arador<viXard>tra: DrBig_Sec: how's mono implementing the garbage recollector? it's how Sun Java?
Arador<ldipenti> what will happen when, thnks to Mono, .NET has a huge number of users, and then MS closes all?
Arador<raciel>ldipenti: the runtime thing it's a standar, after that, if .NET does things above that, then yes, it's dangerous
Arador<ldipenti> Then, one can't be sure?
Arador<jmgv> raciel sasc... what types of agreements do you have with MS? it's transfered information or it's even more?
Arador<raciel> but by the moment there's not any problem, but i'm no layer...
Arador<raciel> jmvg: any, only i'm talking of mono as a framework, there isn't anything evil behind...
Aradorldipenti: thanks raciel
Aradorjmvg raciel, that's not the thing, i only tried to show MS intentions, not yours, which are good
Aradorraciel: DrBig_Bec: that's the IBM implementation, it only uses generations, when your objects brings X generations it's deallocated from memory
Aradorjmvg but i don't trust in m$, the broke agreements i.e: with sun
Arador<raciel> but there is some documentation about that in www.go-mono.com in papers section.
Aradorraciel: but'sjmvg: about that i can only tell you that the ECMA is who makes that the standards aren't broken and each change in the runtime's base has to be consulted and added to the specification
AradorKefar: raciel: What advances .NET in the colaborative implementation ? i think that it's a bit unilateral
Aradorraciel: Keafr:  people are annoyed with MS wth that, because mono is a proyect that with only 100 developers has gorown quickly, now yourself can use the framework, except some small things as System.Windows.Forms
Aradorraciel: For example, in the thing of accessing databases is frankly passed, in the same way that ASP.NET now ther's a implementation made by Gonzalo Panigua
Aradorraciel: now, in my opinion mono is walking quickly, and with the colaboration from everyone wil be completed faster than before
AradorKefar: in my opinion, i'm sorry.....you're being used as testers
Aradorraciel: so if you're interester in Mono Hispano, it's a comunity that's trying to cover proyects, documenting.....about mono, so it's a good way to enter in contact
Aradorraciel: in mono.es.gnome.org you've references to documentation, mailing lists where you can ask
AradorKefar: i don't see it in the same way, only you're implementing a free alternative to .NET
Aradorjmgv: mono is part of gnome, yes?
Aradorraciel: jmvg: no :)
AradorviZard: mono it's from Ximian :)
Aradorraciel: but they gave us the proyect's hosting and the dns is that
AradorviXard: I think XD
Aradorjmvg: raciel...
Aradorjmvg: don't misunderstood me
* MaSaRo is away: Estoy ocupado
* MaSaRo is back (gone 00:00:06)
* MaSaRo is away: ZzzzZzZZzZZZzZZZ
Aradorwell, i think the conferency has finished, sorry aboud the huge delays in the translation, i don't have a dvorak keyboard as riel
Aradoranyway, we've done our bests
Arador*sigh*
riel_well done Arador
sarnoldhehehehe :) thanks for translating at all... :) you're much better at it than I :)
Aradorsarnold: indeed
Aradori always look at the keyboard when typing, it's good when you have to look at the screen at the same time you write, manias from years ago...
Aradorand of course blame the xchat developers, i can't cut & paste in xchat itself, i've to retype *everything*
sarnoldreally? and people still use xchat? :)
Aradorthe middle button of the mouse doesn't work, i reinstalled the box yesterday......i've only crap :)
sarnoldArador: does paste work in xterm? :)
Aradorin gnome-terminal it works, that's what i used for copying code, but it was faster to type some things than c&p from less
Aradorwell xchat c&p used to work, but they must have too many users, so they decided to annoy people
Session Close: Mon Dec 09 23:43:53 2002

Generated by irclog2html.pl 2.1 by Jeff Waugh - find it at freshmeat.net!