Mono – wolna implementacja .NET dla Linuksa – w wersji 2.2

Nowe wydanie oprócz usuwania błędów i uzupełniania kolejnych części API oryginalnego .NET Framework przynosi kilka nowych funkcjonalności których nie ma w .NET Microsoftu.

Prawdopodobnie najważniejsza zmiana względem poprzedniego wydania dokonała się w trzewiach Mono i jest nią zamiana sposobu reprezentacji kodu pośredniego z drzewiastego na liniowy, co powoduje znaczne przyspieszenie wykonania programu.

Szczególnie ciekawe wydają się także dwie nowe funkcjonalności:

  • możliwość pełnego kompilowania kodu przed wykonaniem (ang. Full Ahead of Time Compilation)
    dzięki czemu potencjalnie możliwe jest uruchamianie programów C# na urządzeniach takich jak np. IPhone, gdzie istnieje blokada wykonywania instrukcji programu z zapisywalnych stron pamięci
  • wsparcie dla instrukcji SIMD (przyspieszających obliczenia)
    Mono oferuje bibliotekę która – upraszczając nieco – tłumaczy operacje wykonywane na typach zdefiniowanych w Mono.Simd na instrukcje rozszerzone np. SSE2
    Na tej stronie Miguel De Icaza (założyciel projektu Mono) pokazuje przykład użycia.

Z pozostałych ważnych zmian wymienić należy:

  • dodano nową usługę kompilatora Mono.CSharp.Evaluator, umożliwiającą zastosowanie C# jako języka skryptowego wewnątrz aplikacji programisty.
  • interaktywny shell C# (komenda ‘csharp’ – czyli coś jak irb w Ruby)
  • ponad 200 poprawionych błędów w implementacji Windows.Forms (biblioteka do okienek)
  • przepisano interpreter wyrażeń regularnych używany przez System.Text.RegularExpressions
  • okienkowe narzędzie ‘mperfmon’ mające ułatwić monitorowanie wydajności systemu.

Jak to się zwykło robić, zachęcam do przeczytania oryginalnej informacji o wydaniu.

żadnych reklam, sama wiedza.

Zarejestruj się na BEZPŁATNY NEWSLETTER i raz w tygodniu otrzymuj najważniejsze wiadmości
ze świata IT, nowych technologii i kryptowalut.

Bez reklam.

  1. Awatar oi
    oi

    Mono i .NET dla Linuksa to dwie rozne rzeczy. Chocby dlatego, ze to drugie nie isntnieje.

    1. Awatar j23tom
      j23tom

      Oczywiście to skrót myślowy, zawsze można być bardziej precyzyjnym … ale w sumie uwaga słuszna – dzięki.

    2. Awatar MRX
      MRX

      Logiczność twojej wypowiedzi mnie rozwaliła 🙂

    3. Awatar niedzwiedz_2
      niedzwiedz_2

      Mono jest właśnie taką wersją .NET dla Linuksa 😉

    4. Awatar Maciej Piechotka
      Maciej Piechotka

      .Net Framework 1.1 (czy ileśtam) dla Linuxa istnieje. Tylko miało ~ 0 oddźwięk (

      1. Awatar j23tom
        j23tom

        Nie! Bill nie wydał nigdy .Net na Linuksa. Koledze "oi" chodzi o to, że Mono, to nie jest port windowsowego .NET Framework
        tylko osobny projekt który implementuje .NET.

        1. Awatar borizm
          borizm

          CLI (runtime .NET) 1.1 dla BSD można było kiedyś ściągnąć z microsoft.com. Wersji dla Linux nie było.

  2. Awatar LM
    LM

    Dla Linuksa w wersji 2.2? Ktoś gdzieś jeszcze tego używa? 😀 Pytam poważnie…

    1. Awatar Azazel
      Azazel

      To Mono jest w wersji 2.2, a nie na linuksa 2.2

      1. Awatar skiter
        skiter

        No tak, my to wiemy, za to skladania zdania jest taka a nie inna ze chodzi o Linux 2.2 😉
        A powino byc:
        "Mono – wolna implementacja .NET w wersji 2.2 dla Linuksa."

        Lub podobnie by nie bylo nieporozumien.

    2. Awatar j23tom
      j23tom

      Pisanie newsów to ciężki kawałek chleba :)… Nie pomyślałem o takiej interpretacji. Ale nie zmieniam już za bardzo.

      1. Awatar LM
        LM

        Dostałeś już odpowiedź z KOPIPOLU? 🙂
        http://prawo.vagla.pl/node/7274

  3. Awatar houp
    houp

    A wracając do tematu tym wydaniem Mono pokazało (nie po raz pierwszy!), że nie służy tylko do nieudolnego klonowania rozwiązań Microsoft, ale wprowadza własne innowacyjne rozwiązania.

    Z tego co pisał Miguel na swoim blogu, jest szansa, że na przykład biblioteka Mono.SIMD będzie przeniesiona przez Microsoft z Mono do Microsoft .NET Framework.

    Warto też zwrócić uwagę, że dostępnych jest coraz więcej aplikacji (głównie gier) na iPhone napisanych w oparciu o Mono! Coraz bardziej wygląda na to, że Mono staje się wygodną i ogólnie dostępną platformą do tworzenia różnych aplikacji i nie jest tworzona tylko pod dyktando tego co sobie Microsoft wymyśli gdzieś tam.

    Shell csharp wydaje się być fajny – tym bardziej, że pokazuje bardzo fajną funkcjonalność, którą stworzono w Mono – czyli kompilator C# napisany w C# działający w czasie uruchomienia i pozwalający np. na oskryptowanie aplikacji w C#. Sama biblioteka z kompilatorem jest lekka i przenośna – super! Właśnie tak powinno to działać. I działa.

  4. Awatar melkor
    melkor

    Tylko C# i C#, a VB jak zwykle po macoszemu :/

    1. Awatar Arkadiusz
      Arkadiusz

      Cale szczescie…

      1. Awatar Budyń
        Budyń

        Jak dla kogo… VB.NET tak czy inaczej nie zdobył uznania na miarę poprzedników, ale w VB jednak duuuużo powaznych narzędzi, wiekowych ale wciąż utrzymywanych, powstało. W ten sposób odcina się znaczącą grupę potencjalnych użytkowników / klientów no i C# to nie synonim .NET… ciekawe, kiedy np. mono F# się doczeka.

  5. Awatar satuq
    satuq

    @Arkadiusz "Cale szczescie…" czemu piszesz takie głupoty masz to poparte jakimiś argumentami czemu niby C# i z czym ma być lepszy od VB, bo ja osobiście różnicy poza zapisem nie widzę.

    1. Awatar mby7930
      mby7930

      Myślę, że C# to taka "JAVA do MS", wydaje mi się więc, że nie tyle nawet różnic, ale zwyczajnych przewag C# and VB jest chyba dość dużo.

      1. Awatar j23tom
        j23tom

        Rożnice w funkcjonalności (np. brak 'unsafe' w VB.NET) są znikome po prostu więcej ludzi zna języki składniowo C-podobne

        1. Awatar mby7930
          mby7930

          Przecież ja pisałem o VB, a nie o VB.NET (który raczej się nie przyjmie, jak to już zresztą zostało wyżej napisane).

        2. Awatar j23tom
          j23tom

          Nikt wcześniej oprócz Ciebie nie miał na myśli VB6, czy VBA. Cały temat jest o technologii .NET, więc jak sądzę kolega który się żali ze C# jest dominujący miał na myśli VB.NET. VB6 to masakra, ale w połowie lat 90-tych to musiał być wypas (zwłaszcza GUI designer).

        3. Awatar mby7930
          mby7930

          "Kolega, który się żali", bardzo dokładnie wskazał, iż chodzi mu o VB, a nie VB.NET. Zalecam powtórne wczytanie się w treść postu Budynia z 19 stycznia 2009 o godz. 9:53.

        4. Awatar j23tom
          j23tom

          Wszystko jest kwestią interpretacji.

          1. Wątek rozpoczął 'melkor'
          2. Wypowiedź 'melkora', w Twojej interpretacji nie miałby specjalnie sensu bo Mono – którego dotyczy komentarz 'melkora' – w ogóle nie zajmuje się VB "nie .Net'owym", stąd założyłem że miał na myśli VB.NET
          3. Wspomniany Budyń pisze
          "jak dla kogo" odnosząc się do "całe szczęście"
          po czym dodaje "VB.NET tak czy inaczej nie zdobył uznania na miarę poprzedników" i dalej już o VB6 czy tam innych VBA
          Tak więc jego wypowiedź także dotyczy VB.NET

        5. Awatar mby7930
          mby7930

          Myślę, że powinieneś zakończyć te bezowocne rozważania.
          Wątek, w którym obaj piszemy akurat rozpoczął satuq.
          Natomiast w wątku melkora bardzo jednoznacznie został wspomniany "net .NETowy" VB.

        6. Awatar j23tom
          j23tom

          Dlaczego bezowocnej… ja się świetnie bawię 🙂

          Wątek w sensie 'pisanie o tej samej sprawie' rozpoczął 'melkor'. Ponieważ wypowiedź satuqa odnosiła
          się do wypowiedzi Arkadiusza który odpowiadał na komentarz 'melkora'.

          Natomiast w wątku melkora bardzo jednoznacznie został wspomniany “net .NETowy” VB.

          Parafrazując wypowiedź klasyka –
          "Zalecam powtórne wczytanie się w treść mojego poprzedniego postu" (dokładnie pkt 2 poprzedniego komentarza)

  6. Awatar mby7930
    mby7930

    Correct me if I'm wrong, ale wydaje mi się, że VB i tak użytkowany jest tylko przez tych, którzy pracują na Windowsach, na których nie ma problemów z jego obsługą.
    Mono ma przede wszystkim zapewniać możliwość korzystania z oprogramowania napisanego z C#, a tym samym wszystkiego, co zostanie napisane przy pomocy C#, co oznacza także używanie np. F#.

    Link opisujący instalację F# na Linuksie (oczywiście z użyciem Mono).
    http://strangelights.com/fsharp/wiki/default.aspx…

    1. Awatar Budyń
      Budyń

      Na Windowsach – nie ma problemów (innych niż zwykłe). Tyle że gdyby VB.NET (a jeszcze lepiej, dodatkowo – VB.6) był traktowany tak samo, otworzyłoby to drogę do masy migracji rozwiązań których nie da się / nie opłaca zastąpić na tańsza platformę. A tak zostaje 1. ciągnięcie staroci 2. przepisanie od podstaw. A w swoim czasie w różnych wersjach VB naprawdę masa, często b. poważnego softu, powstała na świecie.

      1. Awatar mby7930
        mby7930

        Myślę, że, jak to napisano w wątku o Sambie, MS postawił wszystko na .NET i C# w szczególności i chce odciąć się od wszystkiego (w tym dotychczasowych kłopotów ), co było wcześniej. "Nowy porządek", które zapowiedzią jest (miała być) Vista. Fakt słabego jej przyjęcia wskazuje, że ludzie jakoś nie wydają się być ani gotowi ani chętni. Zobaczymy, czy Windows 7 naprawi błędy poczynione z Vistą.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *