Coś do nauki dla funu w wolnych chwilach - co?

Coś do nauki dla funu w wolnych chwilach - co?
W0
  • Rejestracja:ponad 12 lat
  • Ostatnio:5 minut
  • Postów:3543
0

Jak w temacie - szukam jakiegoś języka, w którym można by sobie popisać funkcjonalne aplikacje domowe w ramach poszerzania horyzontów i odskoczni od pracy. Chciałbym, żeby to nie był żaden z mainstreamowych języków korporacyjnych (Java, C#, C++, .JS), najlepiej żeby nie był też to jakiś brainfuck :)

Jakieś pomysły? Z góry dzięki.

DD
  • Rejestracja:ponad 10 lat
  • Ostatnio:ponad 5 lat
  • Lokalizacja:Kraków
  • Postów:27
0
W0
Właśnie wolałem unikać brainfucków, Shakespear'ów i tym podobnych.
CA
  • Rejestracja:ponad 9 lat
  • Ostatnio:ponad 9 lat
  • Postów:3
0

Ruby?

edytowany 1x, ostatnio: Cachorro
DD
  • Rejestracja:ponad 10 lat
  • Ostatnio:ponad 5 lat
  • Lokalizacja:Kraków
  • Postów:27
0

a tak na serio to może Scala?

W0
Scali uczę się jako języka korporacyjnego, tzn. do pracy
NZ
  • Rejestracja:ponad 9 lat
  • Ostatnio:ponad 8 lat
  • Postów:93
1
fasadin
  • Rejestracja:ponad 13 lat
  • Ostatnio:prawie 3 lata
  • Postów:4882
0

jezyk googla... Go ;)

katelx
  • Rejestracja:prawie 10 lat
  • Ostatnio:4 miesiące
  • Lokalizacja:Hong Kong
1

naucz sie pythona bo na twojej liscie nie ma zadnego jezyka skryptowego

Zobacz pozostałe 6 komentarzy
fasadin
@RideorDie przewaznie uzywa sie kilku technologii w jednym projekcie. Teraz np robie w html, css, js, c#, c++
W0
@somekind: nie pisałem nic bardziej skomplikowanego w .JS, ot zwykły tinkering HTMLi. Co jest z nim nie tak?
somekind
@RideorDie, to nie jest tak, że się przerzuciłem. Od zawsze pracuję jako full stack developer w projektach webowych, a w tych bez JS nie da się właściwie stworzyć GUI, więc zawsze coś w tym języku pisałem (chociaż starałem się unikać). Na początku roku trafiłem do projektu, w którym backend był tak spieprzony, że wolałem już frontend. Później przez chwilkę pisałem aplikacje mobilną w Apache Cordova - znowu JS. A teraz przepisuję aplikację z Silverlighta na HTML i TypeScript. Po prostu tak się w tym roku złożyło, że 95% mojego kodu w pracy to JS (i teraz TS).
somekind
@wartek01, a co w nim jest tak? :) Język, który nigdy nie został zaprojektowany, słabo typowany, z nadmiernie utrudnionym dziedziczeniem, nieintuicyjną automatyczną konwersją typów, co implikuje dziwne zachowanie operatorów, konieczność samodzielnego przechowywanie referencji do obiektu w callbackach, nieużywalny typ Date... To wszystko sprawia, że jest nieintuicyjny i upośledzony. Do tego cała ta "popularność" objawiająca się głównie niedojrzałością - milionami ciągle zmieniających się frameworków. Strach opierać o coś aplikację, bo nie wiadomo, kiedy zostanie porzucony.
RD
@somekind teraz rozumiem, bo to co kiedyś napisałeś gdzieś tam w komentarzu odebrałem jak zostawiłem c# i przerzuciłem się na frontend ;]
datdata
  • Rejestracja:prawie 11 lat
  • Ostatnio:prawie 7 lat
  • Postów:957
0

A w jakim języku pracujesz?


"A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects." Robert Heinlein.
W0
W typowym grajdołku korporacyjnym: C#, Java, JS, czasem coś przykręcę w JVMowych (Groovy do testów, Scala - teraz się uczę, chwilowo zarzuciłem przez Javę 8 + Akkę/Quasara)
2

Learn You A Haskell For Great Good!

Wizzie
  • Rejestracja:prawie 11 lat
  • Ostatnio:ponad 7 lat
1

Rust jak chcesz coś poszturać w niskopoziomowych rzeczach albo czysto funkcyjny Haskell jeśli chcesz się podszkolić w programowaniu funkcyjnym (ale jeśli uczysz się już Scali to niekoniecznie).

mr_jaro
  • Rejestracja:ponad 13 lat
  • Ostatnio:około 3 lata
  • Lokalizacja:Grudziądz/Bydgoszcz
  • Postów:5300
1

R :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D


It's All About the Game.
Wizzie
jeśli chce sobie popracować z jakąś analizą danych to czemu nie
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:minuta
  • Postów:8400
0

Albo Octave (open source'owa wersja MatLaba), będziesz mógł różne rzeczy szybko policzyć.


0

Groovy, JS i pochodne lub ... Swift

pingwindyktator
  • Rejestracja:ponad 12 lat
  • Ostatnio:19 dni
  • Lokalizacja:Kraków
  • Postów:1055
0

Nigdzie nie ma tyle funu jak w Haskellu :D A z bardziej praktycznych polecałbym Pythona.


do not code, write prose
edytowany 1x, ostatnio: pingwindyktator
perotin
  • Rejestracja:ponad 10 lat
  • Ostatnio:prawie 5 lat
  • Postów:174
0

Linux Device Drivers :)

feni000
  • Rejestracja:ponad 9 lat
  • Ostatnio:5 miesięcy
  • Lokalizacja:Kraków
  • Postów:124
0

Fajną odskocznią może być arduino, zawsze sympatycznie jest zobaczyć jakieś migające lampki/sprzęt. Idzie zrobić fajne rzeczy.

W0
  • Rejestracja:ponad 12 lat
  • Ostatnio:5 minut
  • Postów:3543
1

Dzięki wszystkim za odpowiedzi, padło na Haskella :)

Wibowit
w takim razie polecam: learn you a haskell for a great good
NZ
https://github.com/bitemyapp/learnhaskell bo jak zaczniesz czytać LYAH to się raczej niczego nie nauczysz pożytecznego. :\
Wibowit
moim zdaniem LYAH jest niezłe i spokojnie się z niego uczyłem Haskella
Wizzie
uczyłem się tylko podstaw z LYAH (tj. nie przeczytałem całego), ale wszystko było raczej zrozumiałe i przyjemnie napisane
MA
  • Rejestracja:około 12 lat
  • Ostatnio:około 3 godziny
  • Postów:217
0

Zastanów się jeszcze nad Clojure - język funkcyjny (nie czysty) działający na JVM, łatwo integrujący się z Javą co daje możliwość łatwego stworzenia czegoś użytecznego :)

M9
  • Rejestracja:prawie 10 lat
  • Ostatnio:prawie 6 lat
0

A wiecie, że powstał dialekt Haskella na JVM: Frege. To podobno był jeden z gorętszych tematów na Java One.
https://github.com/Frege/frege
http://www.slideshare.net/Mittie/frege-tutorial-at-javaone-2015

edytowany 1x, ostatnio: margor90
Wibowit
no ale już było wcześniej coś podobnego, np https://en.wikipedia.org/wiki/Jaskell
M9
Projekt chyba jednak zdechł bo ostatnie zmiany są 9 lat temu: https://java.net/projects/scripting/sources/svn/show/trunk/engines/jaskell?rev=236. A przy rosnącej popularności paradygmatu funkcyjnego fajnie jakby Ferge przeżył w swojej niszy. Myślę, że obecność na znanych konferencjach może pomóc.
katelx
  • Rejestracja:prawie 10 lat
  • Ostatnio:4 miesiące
  • Lokalizacja:Hong Kong
1

jeszcze dodam od siebie - f# jest dobrym wyborem (z haskella jest w nim zmalpowane pare dobrych rzeczy, pare zlych jest pominiete), jesli juz sie dobrze c# zna to jest troche z gorki. dobra ksiazka - http://www.amazon.com/Expert-3-0-Experts-Voice-Syme/dp/1430246502

Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)