A Brief Introduction to Julia

  Рет қаралды 21,135

Exercism

Exercism

Күн бұрын

Пікірлер: 38
@yaskygaming
@yaskygaming Жыл бұрын
First thing I thought about Julia was "Oh this would be a breeze. It's yet another Python variant!" - boy was I wrong. Julia shifts my thinking from programming as an engineering activity to programming as a science.
@exercism_org
@exercism_org Жыл бұрын
Nice! That's a lovely way of describing it 💙
@ErikSchierboom
@ErikSchierboom Жыл бұрын
It is a really cool and unique language.
@ErikSchierboom
@ErikSchierboom Жыл бұрын
One thing I forgot to show/stress is that functions also have a shorthand syntax, which is really nice: docs.julialang.org/en/v1/manual/functions/
@DaveParr
@DaveParr Жыл бұрын
This is really neat. Great demo of function overloading ❤
@DaveParr
@DaveParr Жыл бұрын
Just got to the bit about latex 😮 I 'knew' Julia had unicode support but I hadn't clicked that it had that kind of integer/float division behaviour
@halneufmille
@halneufmille Жыл бұрын
Very nice, I know a bit of Julia, but didn't know about this sum trick x->x^2, 1:n or about this ÷ division. One thing that could have improved the code further is defining the functions by assignment: square_of_sum(n) = (n * (n + 1) ÷ 2)^2 sum_of_squares(n) = (n * (n + 1) * (2n + 1)) ÷ 6
@ErikSchierboom
@ErikSchierboom 5 ай бұрын
I totally should have done that, just forgot to do that!
@mattpiz
@mattpiz Жыл бұрын
Really nice introduction Erik!
@benitoe.4878
@benitoe.4878 9 ай бұрын
About the functions looking like regular math. The (short) assignment form of functions makes for an even more mathy look, e.g.: sum_of_squares(n::Integer) = (n * (n + 1) * (2n + 1)) ÷ 6
@megakek4457
@megakek4457 Жыл бұрын
Julia is great so far. With just this video, a bit of documentation and a background in Python I'm already solving Exercism challenges. And I just found out it even has a pipe operator (`|>`) like Haskell and Elixir. Amazing. (I'm still learning Haskell on the side since Functional February but what a difference that learning process is compared to Julia!)
@exercism_org
@exercism_org Жыл бұрын
Nice. This is great to hear! 💙
@ErikSchierboom
@ErikSchierboom Жыл бұрын
Great work!
@ItamarOliveira
@ItamarOliveira Жыл бұрын
Excellent video!
@exercism_org
@exercism_org Жыл бұрын
Thank you! :)
@mailsiraj
@mailsiraj Жыл бұрын
Thanks Erik for the wonderful intro. I am intrigued about multiple dispatch, but could NOT fully understand why it is such a killer feature in Julia - i would check out the video mentioned. It would be good to add links to the resources you described. Do we use Julia anywhere in Exercism - it would be good to get some real-life use cases of where these languages are used (from your own experience) - these might enrich these track introductions?
@ErikSchierboom
@ErikSchierboom Жыл бұрын
Good shout about the links! I'll try add add those. For the moment, here is the link: kzbin.infokc9HwsxE1OY?feature=share We use Julia in our cross-repo syncing code: github.com/exercism/org-wide-files/blob/main/scripts/apply-track-config.jl
@mailsiraj
@mailsiraj Жыл бұрын
@@ErikSchierboom Thanks Erik. Nice to see how readable the Julia code is. I have now seen a video about multiple dispatches and how nice it is. I was very happy to learn that the indexing starts at 1 in Julia - you should mention it :)
@nickboyadjian367
@nickboyadjian367 Жыл бұрын
Great video!
@exercism_org
@exercism_org Жыл бұрын
Thanks! 💙
@ErikSchierboom
@ErikSchierboom Жыл бұрын
Thanks~
@hewhointheearthlydomainsee1272
@hewhointheearthlydomainsee1272 Жыл бұрын
I wish they would add the terseness/structure of F# and efficiency at low level programming of C next. I would like be able to write code that generates code. Supposedly there millions of lines of code in an operating system like Windows and Linux, and writing too much for one person, but if there were a language that generated code using expressions and descriptions, maybe.
@j.abrahamhernandez3629
@j.abrahamhernandez3629 Жыл бұрын
i had the hope you would discuss multiple dispatch for user defined functions in the example since you (rightly so) hyped it as a core feature of the language dispatching of multiple types of the n input variable for example could be an idea
@ErikSchierboom
@ErikSchierboom Жыл бұрын
It's always hard to try and balance the things one wants to show, versus the available time. Sorry
@jeffreywhewhetu
@jeffreywhewhetu Жыл бұрын
Julia it is, for Analytical April
@ErikSchierboom
@ErikSchierboom Жыл бұрын
Enjoy!
@exercism_org
@exercism_org Жыл бұрын
Have fun!
@nickfmt
@nickfmt Жыл бұрын
I missed Analytical April 😢 Mathy May it is!
@DeclanMBrennan
@DeclanMBrennan 5 ай бұрын
Is *multiple dispatch* an alternative phrase for *function overloading* ?
@ErikSchierboom
@ErikSchierboom 5 ай бұрын
They're very similar, but the key difference is that function overloading happens at compile time, whereas multiple dispatch happens at run time.
@DeclanMBrennan
@DeclanMBrennan 5 ай бұрын
@@ErikSchierboom Thank you.
@Jan_van_Waaij
@Jan_van_Waaij Жыл бұрын
Leuke video!
@ErikSchierboom
@ErikSchierboom Жыл бұрын
Bedankt!
@Mojo_DK
@Mojo_DK Жыл бұрын
How does mojo compare to Julia. The developer of Mojo claims, that Mojo is more advanced because it is newer. Is that true? In what way is it better? Or is Julia still the faster language?
@blaisepascal3905
@blaisepascal3905 5 ай бұрын
Hi, Beginner in Julia and Mojo (for about 5 and 3 months now). I can give you my beginner point of view. Both Julia and Mojo are fast. But if you are looking for pure speed, Mojo should be theoretically faster since it uses a "new technology" (MLIR) and is basically a static language. But Julia is really fast and it is easier/flexible to optimize your code and go even faster even though it is "optionally typed" and interactive. I would say it depends the use case. In my opinion, Julia is fast enough for most cases and can be improved using Julia code. While Mojo, was mostly designed to speed up Python code by replacing it with Mojo syntax. Keep in mind that the situation is not set in stone. Both Julia and specifically Mojo are young languages that are still growing. For instance, Julia is already more established than Mojo and has started projects to leverage MLIR (Brutus.jl or MLIR.jl). While Mojo has not reached a perfect compatibility with Python yet (coming soon), I believe many Python libraries should work. There is room for improvement in both Mojo (was open sourced recently) and Julia (ever growing and nice community).
@delightful-ish
@delightful-ish 2 ай бұрын
Why does the philosophy of this language seem to be that everyone has 3 hours to wade through cruft to learn how to just get some code running?
A Brief Introduction to Python
27:20
Exercism
Рет қаралды 11 М.
Mojo - First Impression [Programming Languages Episode 29]
1:10:21
Cute
00:16
Oyuncak Avı
Рет қаралды 9 МЛН
[UPDATE] Mojo Is Faster Than Rust - Mojo Explains More
52:09
ThePrimeTime
Рет қаралды 263 М.
The purest coding style, where bugs are near impossible
10:25
Coderized
Рет қаралды 966 М.
Python vs Julia
7:10
IBM Technology
Рет қаралды 127 М.
The Best Package to Plot in Julia
6:02
Numeryst
Рет қаралды 7 М.
why rust libraries may never exist.
7:26
Low Level Learning
Рет қаралды 252 М.