Tryt (język programowania)

Tryt
Zaprojektowany przez Hamptona Catlina
Rozszerzenia nazw plików ts
Strona internetowa tryt.io
Pod wpływem
XSLT , Sass (język arkuszy stylów)

Tritium to prosty język skryptowy do wydajnego przekształcania danych strukturalnych, takich jak HTML , XML i JSON . Ma podobny cel do XSLT , ale ma składnię, na którą wpływają jQuery , Sass i CSS w porównaniu ze składnią opartą na XML XSLT.

Historia

Tritium zostało zaprojektowane przez Hamptona Catlina, twórcę języków Sass i Haml , i jest obecnie dostarczane w pakiecie z platformą mobilną Moovweb .

Podobnie jak Sass (stworzony w celu usunięcia braków w CSS) i Haml (stworzony w celu usunięcia braków w kodowaniu szablonów HTML), Catlin zaprojektował Tritium, aby rozwiązać problemy, które zauważył w XSLT, zachowując jednocześnie podstawowe zalety języka transformacji. Wiele z tego opierało się na jego wcześniejszych doświadczeniach w przenoszeniu witryny Wikipedii na komputery stacjonarne do sieci mobilnej.

Open Tritium to implementacja języka Tritium typu open source. Został zaprezentowany na O'Reilly Open Source Convention 2014, a kompilator jest zaimplementowany w Go .

Pojęcie

Tritium pobiera jako dane wejściowe dokumenty HTML, XML lub JSON i wysyła dane HTML, XML lub JSON, które zostały przekształcone zgodnie z regułami zdefiniowanymi w skrypcie Tritium. Podobnie jak jQuery, idiomatyczny kod Tritium opiera się na wybieraniu kolekcji elementów za pomocą selektora CSS lub XPath , a następnie łączeniu serii operacji na nich.

Na przykład poniższy skrypt wybierze wszystkie elementy tabeli HTML o identyfikatorze foo i zmieni ich atrybuty width na 100% .




 
	
 # Wybierz wszystkie węzły HTML, które są elementami tabeli z ID foo.  # Funkcja $$() przyjmuje zwykły selektor CSS  $$  (  “table#foo”  )  {  # zmień atrybuty width na  atrybut “100%”   (  “width”, “100%”  )  } 

Podczas gdy Tritium obsługuje zarówno selektory XPath, jak i CSS za pośrednictwem funkcji $() i $$() (odpowiednio), preferowanym zastosowaniem jest XPath. Na przykład powyższy kod przepisany w celu użycia równoważnego selektora XPath wyglądałby następująco:




 
	
 # Wybierz wszystkie węzły HTML, które są elementami tabeli z ID foo.  # $() używa XPath  $(  “//table  [  @id  =  'foo'  ]  )  {  # zmień atrybuty width na  atrybut „100%”   (  „szerokość”, „100%”  )  } 

Porównanie z XSLT

Zarówno Tritium, jak i XSLT są przeznaczone do przekształcania danych. Jednak Tritium różni się w kluczowych aspektach, aby uczynić go bardziej znanym i łatwiejszym w użyciu dla twórców stron internetowych:

  • Znana składnia: Składnia Tritium jest podobna do CSS i jQuery, dzięki czemu jest bardziej znana i czytelna dla twórców stron internetowych niż składnia XSLT oparta na XML.
  • Styl imperatywny: Tritium używa imperatywnego stylu programowania zamiast funkcjonalnego i rekurencyjnego modelu przetwarzania XSLT. Chociaż programowanie funkcjonalne ma kluczowe zalety, jest mniej znane projektantom stron internetowych niż programowanie imperatywne.
  • Przezroczystość danych wejściowych: w XSLT wszystkie elementy wejściowe, które nie są określone przez regułę przekształcania, są usuwane z danych wyjściowych. Tryt odwraca to zachowanie: wszelkie elementy wejściowe, które nie są określone przez regułę przekształcania, są przekazywane do wyjścia bez zmian.
  • Kompatybilny z HTML: Tritium został zaprojektowany do przetwarzania HTML, XML i JSON, podczas gdy XSLT działa tylko na XML.

Linki zewnętrzne