Wasza opinia o implicitach w Scali

Czego najbardziej nie lubisz w implicitach w Scali?
składni
0%
0% [0]
pułapek przy konwersjach implicit
0%
0% [0]
bibliotek typu scalaz, które używają masy argumentów implicit
0%
0% [0]
pasują mi takie jakie są
100%
100% [1]
Odpowiedz Nowy wątek
2018-11-29 12:53
0

Martin Odersky przymierza się do przerobienia składni implicitów w Scali na coś odmiennego: https://github.com/lampepfl/dotty/pull/5458 Mechanika pozostaje podobna, ale składnia jest znacząco różna.

Implicity w Scali są okryte złą sławą. Zastanawia mnie czy to jest spowodowane przez składnię, pewne niedociągnięcia czy może mechanizm sam w sobie pozwala na pisanie kodu, którego programistom nie chce się analizować (typu biblioteki scalaz, cats, shapeless, etc)? Wydaje mi się, że zła sława implicitów wynika przede wszystkim z użycia bibliotek typu scalaz, które są trudne w użyciu i zrozumieniu dla typowego programisty OOP. Jakie jest wasze zdanie?


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.

Pozostało 580 znaków

2018-11-29 17:46
Zakręcony Kura
0

Szukam jakiegoś nowoczesnego języka do pisania hobbystycznie, ale ta Scala którą spróbowałem okazał się za trudna na pierwszy język. Powstało coś nowego na JVM o prostej składni jak w Swift, TypeScript?

Pozostało 580 znaków

2018-11-29 20:30
2

Implicity są raczej standardowym chłopcem do bicia dla ludzi, którzy się zniechęcili do scali, bo raczej nie da się pisać w Scali na rympał. A na coś winę trzeba zwalić. Też uległem kiedyś tej propagandzie.
Szczególnie mnie cieszy jak ktoś narzeka jakie to implicity złe, bo nie wiadomo co sie wstrzyknie... a potem bez mrugnięcia okiem wraca do kodzenia w Springu w Javie.

Raz jeden miałem istotny problem z implicitami, bo faktycznie komunikat błędu jaki dostałem był tak niezrozumiały, ze zajęło mi dzień ogarnięcie co się (od...ało) stało. Jest to zwykle najgorszy wymiar kary za implicity. Nadal, o wiele mniej groźny niż skutki zabaw runtimowych tak popularnych w innych językach na JVM ( i wyrypanie się dopiero na produkcji). A właśnie implicity to jeden z elementów Scali, który zastępuje zabawy z magią runtimową (typu refleksja, dynamic proxy).

Co do samych implicitów IMO są dziwne (nietypowy koncept), ale się już przyzwyczaiłem. Chętnie bym zobaczył jakąś ciekawą alternatywę, ale te witnessy jakoś nie widzę w czym są istotnie lepsze. Nazwa trochę lepsza, ale żadna rewolucja, albo bardzo nie kumam ( co jest dość możliwe). Lichuj widzę po tym pomyśle pojechał trochę.

Btw. Scalowe makra są dużo gorsze od implicitów, ale co gorsza też cholernie potrzebne i lepsze od obecnych runtimowych alternatyw z javy. Natomiast jest mniej na makra narzekania, bo chyba mało kto z przerabiających programowanie w Scali w weekend dochodzi do tego rozdziału.

Co do ankiety to jakbym miał doktorat to powiedziałbym, że mam stosunek ambiwaletny. Ale po swojemu to po prosu niie wiem co odpowiedzieć: ani do końca mnie nie radują, ani nie znam lepszej alternatywy pasującej do obecnej Scali.


Bardzo lubie Singletony, dlatego robię po kilka instancji każdego.
edytowany 7x, ostatnio: jarekr000000, 2018-11-29 20:35

Pozostało 580 znaków

2018-12-01 18:47
0

Wszystko zależy. Jeśli kodujesz off-line to wszystko będzie ok. Ot cała prawda

Co to znaczy kodujesz off-line? - Wibowit 2018-12-01 18:52
Może na kartce - baant 2018-12-01 19:00

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0