sobota, września 17, 2011

Dajcie mi język marzeń ;-)

Ostatnie informacje o nowym języku Dart od Google (nic o nim nie wiemy :-)) i o Windows 8 z jego Metro w którym HTML5/JavaScript będą pełnoprawnymi graczami spowodowały, że znów zacząłem tęsknić za fajnym językiem ;-)

Fajny język to taki, który byłby lekki i mocny jednocześnie ;-)

Lekki oznacza, że uruchomienie programu byłoby szybkie i nie zżerałoby od razu całej pamięci, do tego by programy w tym języku można było pisać "z palca" gdyby nam się to podobało.

Mocny oznacza, że nie musielibyśmy się ograniczać do pisania "z palca", że istniałaby cała armia narzędzi do refactoringu, deployowania, profilowania i projektowania UI. Do tego, że aplikacje w tym języku mogłyby swobodnie korzystać z całego asortymentu komputera. Że nie byłoby kretyńskich ograniczeń bezpieczeństwa. Najlepiej gdyby aplikacje uruchamiane "z dysku" mogły używać całej sieci i zapisywać na dysku, a takie z internetu musiałyby przychodzić z polityką bezpieczeństwa, np. podobną do tej z Androida z zastrzeżeniem, że i programista i użytkownik mogliby sobie zażyczyć by pozwolenie na daną rzecz było przyznane, odebrane, przyznane na sesję, przyznane jednorazowo. Powinny mieć też możliwość ingerowania w system, np. korzystania z traya (czy tego co wtedy będzie) albo tworzenia wirtualnych dysków/folderów.
Powinny też w razie konieczności móc "gadać z systemem", czyli w wersji dla takiego Windows powinny być dostarczone interfejsy do gadania np. z ActiveX.

Lekkość ma JavaScript i HTML5 jeśli chodzi o pisanie z palca, HTA miała lekkość w uruchamianiu, podobnie mają teraz aplikacje dla Chrome, choć tu jest to lekkość pozorna, bo nadal taka aplikacja dla Chrome potrzebuje masy pamięci na Chrome.

JavaScript nie jest jednak "mocny", nie ma dla niego zbyt wielu narzędzi do "prawdziwego programowania", do tego dystrybucja takiego programu jest utrudniona (CRX z Google Chrome pomaga). Aplikacje nie mogą się z systemem integrować. Np. dostęp do systemu plików był możliwy w HTA, ale nie w Chrome. Do tego choć HTML jest fajny to nie pozwala na wszystko, może by dodać do niego zestawy bibliotek do UI? By nie było tak, że chcąc autocomplete trzeba pisać swój (lub szukać w sieci).

Chciałbym np. by Dart był lekki, tak lekki by można było w nim popełniać np. aplikacje dla Androida, bo przecież do większości rzeczy, w stylu wyświetlania newsów czy kursów walut nie potrzebujemy niczego innego niż HTML z natywnymi dodatkami. Ale by jednocześnie był na tyle mocny, że można by było w nim pisać większe aplikacje bez obawy tego, że się osiwieje gdy trzeba będzie je debugować albo refactorować....

Pewnie się jednak tego czego chcę nie doczekam ;-)

Moje marzenie na start Darta to wrzucenie go od razu do Chrome, wrzucenie Chrome do Androida i to takie, że "tabki" mogłyby być osadzane jako widgety, albo mogłyby działać jak strony (np. z własnym stackiem "aktywności"), do tego by istniała możliwość dostępu do sieci (nawet po czymś podobnym do HttpXMLRequest z HTML/JavaScript/DOM). Wtedy ta sama niemal aplikacja mogłaby działać na telefonie, tablecie, chromebooku czy PC.
Do tego Google Drive, na którym przy użyciu prostego API można by było składować dane takich aplikacji.....

Pomarzyć można, nie? ;-)


Podobne postybeta
Złośliwe pytania
O wyższości aplikacji natywnych nad tymi w HTML5 - od strony developera
Chromium OS na Asus EEE PC 900
Chromebook w praniu, czyli tam i z powrotem, Kraków - Londyn - Kraków w 30 godzin
3 najlepsi przyjaciele web developera (ale nie tyle front end developera czy UI developera, a developera który pracuje po obu stronach i po stronie klienta i serwera ;-))