2009-04-04 14 views
6

SAP ogłosił Blue Ruby, wersję Ruby, która działa w maszynie wirtualnej ABAP.Jakie jest znaczenie dla programistów Rubiego w nowej implementacji Rubiego przez SAP?

Wydaje się, że nadaje to dodatkową wiarygodność językowi Ruby, ale oprócz programistów SAP ma to zastosowanie do reszty społeczności Ruby?

Zastanawiam się, jakie inne może to mieć znaczenie. Być może dodatkowe możliwości zatrudnienia dla programistów Ruby, którzy zostaną zatrudnieni przy projektach SAP?

Jakieś inne potencjalne korzyści dla programistów Ruby?

Co więcej, nie jestem do końca jasny: oprócz MRI i JRuby, ile jest różnych wersji i dlaczego ja, jako programista Ruby, potrzebuję jakiejkolwiek implementacji z wyjątkiem MRI? Rozumiem, że potrzebuję JRuby, jeśli chcę zintegrować się z bibliotekami Java. Czy są inne sytuacje, w których mógłbym zajrzeć do implementacji oprócz MRI lub JRuby?

Zauważam, że skompilowano Blue Ruby. Czy to jest duża korzyść i czy byłaby to pierwsza skompilowana wersja Ruby?

Przepraszamy - może za dużo pytań, ale jest to omawiane jako poważna sprawa, z wyjątkiem tego, że nie jestem pewien, dlaczego tak się dzieje. Byłbym wdzięczny za uzyskanie opinii od ludzi, którzy lepiej rozumieją Ruby (i I.T.) niż ja.

Odpowiedz

9

Istnieje kilka alternatywnych implementacji. Powodem tak wielu wersji jest częściowo dlatego, że podczas gdy sama Ruby ma wielu fanów, MRI jest często uważane za nie tak ładne, jak język, w którym się znajduje.

Jest to lista wszystkich innych implementacjach Ruby znam:

  • MRI

  • JRuby Java. Jego przewaga prędkości nie jest tak wielka, że ​​Ruby 1.9 już jest na zewnątrz, ale wciąż jest dużym graczem dla integracji z Javą.

  • IronRuby (jeszcze w fazie rozwoju) dla .NET

  • MacRuby do tworzenia natywnych aplikacji Mac OS X. Obecnie jest on oparty na Ruby 1.9, ale zamierzają wypuścić nową maszynę wirtualną opartą na LLVM do następnej wersji, która ma zapewniać znaczny wzrost prędkości i, miejmy nadzieję, być przenośna na inne platformy docelowe LLVM.

  • MagLev (wciąż bardzo rozbudowany) do aplikacji internetowych o dużej wydajności. Prawdopodobnie będzie to produkt komercyjny.

  • Rubinius to reimplementacja gruntująca jako alternatywa dla MRI o znacznie czystszym fundamencie.

Wątpię, czy Blue Ruby będzie miała duży wpływ na ogólny krajobraz rozwoju oprogramowania. Prawdopodobnie będzie to miłe dla programistów SAP i pozwoli im obsadzić szerszą sieć potencjalnych wypożyczeń, ponieważ Ruby jest nieco bardziej popularna niż ABAP.

Wszystkie bieżące implementacje języka Ruby są kompilowane do kodu bajtowego. W przeciwieństwie do twierdzeń SAP, od wersji Ruby 1.9, sam MRI zawiera kompilator kodu bajtowego, chociaż możliwość zapisania skompilowanego kodu bajtowego na dysk zniknęła gdzieś w procesie scalania maszyny wirtualnej YARV. JRuby jest wkompilowany w pliki Java .class. Nie mam zbyt wiele informacji na temat MagLev, ale wydaje się, że bezpiecznie można powiedzieć, że to też zabierze tę drogę.

+0

Uwaga: Ruby 1.9 używa YARV (http://en.wikipedia.org/wiki/YARV) (inaczej KRI). Oni wciąż nie nazywają MRI w 1.9, prawda? –

+0

MRI + YARV jest nadal ogólnie określany jako "MRI", mimo że Ko1 napisał centralną VM. – Chuck

+0

Dobra odpowiedź. Dzięki. Czy wiesz, że którakolwiek z tych innych wersji została skompilowana lub czy wszystkie są interpretowane tak, jak MRI (z wyjątkiem Blue Ruby)? Wygląda na to, że nie ma to większego sensu dla przeciętnego programisty Ruby. –

3

Każda implementacja ma własne przypadki użycia. JRuby jest przydatny z bardzo tych samych powodów, dla których Jython jest. IronRuby przyda się w środowisku .NET, gdy istnieje w stanie użytecznym.

Rzeczy takie sprawiają, że Ruby jest bardziej akceptowalna na poziomie Enterprise i przyspiesza rozprzestrzenianie się dobrych języków programowania.

2

Oczywiście Blue Ruby jest przeznaczony dla osób związanych z SAP. Nie sądzę, że będzie to miało większy wpływ na społeczność Ruby, ponieważ większość programistów Ruby nie jest związana z rozwojem ABAP.

Głównym celem Blue Ruby jest wprowadzenie potężnego języka skryptowego do świata ABAP, zapewniając więcej narzędzi dla programistów ABAP.

Możesz przeczytać mój blog na temat Blue Ruby, dostarczając emulator SE16 (Eksploratora tabel danych).

https://weblogs.sdn.sap.com/pub/wlg/14222

Pozdrowienia,

Alvaro "blag" Tejada Galindo.

Starszy konsultant ABAP - SAP Mentor.

Powiązane problemy