# \[feedback\] Make Julia as Pythonic as possible

**URL:** <https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216>\
**Category:** Meta Discussion\
**Tags:** python\
**Created:** [September 7, 2020, 6:40pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216 "2020-09-07T18:40:24Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![newtojulia](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/newtojulia/32/17754_2.png) [@newtojulia](https://discourse.julialang.org/u/newtojulia)\
**Post date:** [September 7, 2020, 6:40pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216/1 "2020-09-07T18:40:24Z")

</div>

I was searching for best programming language which format and syntaxes like Python but as fast as c programming.

I found Julia, and i am very thankful to that. But seeing those codes, Julia programming have stepper learning curve.  
Dear developers of Julia, Is it possible to make Julia as pythonic as possible,

As we know,  
There is reason why python become popular is because of simpleness.

**Can Julia adopt python zen principles?**

> \*\*\* Beautiful is better than ugly.\*\*  
> \*\*\* Explicit is better than implicit.\*\*  
> \*\*\* Simple is better than complex.\*\*  
> \*\*\* Complex is better than complicated.\*\*  
> \*\*\* Flat is better than nested.\*\*  
> \*\*\* Sparse is better than dense.\*\*  
> \*\*\* Readability counts.\*\*  
> \*\*\* Special cases aren’t special enough to break the rules.\*\*  
> \*\*\* Although practicality beats purity.\*\*  
> \*\*\* Errors should never pass silently.\*\*  
> \*\*\* Unless explicitly silenced.\*\*  
> \*\*\* In the face of ambiguity, refuse the temptation to guess.\*\*  
> \*\*\* There should be one—and preferably only one—obvious way to do it.\*\*  
> \*\*\* Although that way may not be obvious at first unless you’re Dutch.\*\*  
> \*\*\* Now is better than never.\*\*  
> \*\*\* Although never is often better than right\*\*  
> \*\*\* If the implementation is hard to explain, it’s a bad idea.\*\*  
> \*\*\* If the implementation is easy to explain, it may be a good idea.  
> \*\*\* Namespaces are one honking great idea—let’s do more of those!

Please make it total pythonic like ASAP,

Please!! please!!

---

<div class="post-metadata">

**Author:** ![lmiq](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lmiq/32/18314_2.png) [@lmiq](https://discourse.julialang.org/u/lmiq)\
**Post date:** [September 7, 2020, 6:53pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216/2 "2020-09-07T18:53:27Z")

</div>

Could you provide an example of two codes doing the same thing, at the same speed, and which you think is more readable in python than in Julia?

I think you will find plenty of codes which are faster in Julia and perhaps harder to read, but the equivalent in python does not exist, the equivalent is probably a C++ implementation which is even harder.

---

<div class="post-metadata">

**Author:** ![austinbean](https://avatars.discourse-cdn.com/v4/letter/a/839c29/32.png) [@austinbean](https://discourse.julialang.org/u/austinbean)\
**Post date:** [September 7, 2020, 6:54pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216/3 "2020-09-07T18:54:31Z")

</div>

> [@PSA: Julia is not at that stage of development anymore](https://discourse.julialang.org/t/psa-julia-is-not-at-that-stage-of-development-anymore/44872):
>
> You heard about this brand new exciting programming language called Julia and have some suggestions for how it should work. Wonderful! We’re happy to have you here and help you learn the language and listen to your ideas! However, please be aware that “new” is a relative term. Yes, Julia is newer than, say, C, which was first created in 1972 and standardized in 1989. It is not, however, new in the sense that it is still being freely designed and changed in arbitrary ways. Julia development start…

---

<div class="post-metadata">

**Author:** ![jkbest2](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jkbest2/32/7350_2.png) [@jkbest2](https://discourse.julialang.org/u/jkbest2)\
**Post date:** [September 7, 2020, 6:55pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216/4 "2020-09-07T18:55:13Z")

</div>

It’s great that you’re excited about Julia (and Python)!

At this point the syntax is [not going to change in major ways](https://discourse.julialang.org/t/psa-julia-is-not-at-that-stage-of-development-anymore/44872). If you spend time with Julia you will find that the learning curve is not overly steep (just remember that it _isn’t_ Python). The language has been carefully designed, and it shows!

---

<div class="post-metadata">

**Author:** ![chakravala](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chakravala/32/6832_2.png) [@chakravala](https://discourse.julialang.org/u/chakravala)\
**Post date:** [September 7, 2020, 6:59pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216/5 "2020-09-07T18:59:35Z")

</div>

If you want python, then why don’t you use python?

Julia is its own language at this point.

I think it is fine if some people stick with python, if that’s what they truly prefer.

---

<div class="post-metadata">

**Author:** ![DNF](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dnf/32/10191_2.png) [@DNF](https://discourse.julialang.org/u/DNF)\
**Post date:** [September 7, 2020, 7:01pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216/6 "2020-09-07T19:01:43Z")

</div>

I don’t think that python is simpler than julia, and julia code is certainly much better looking! What examples do you have where python code is simpler and nicer?

---

<div class="post-metadata">

**Author:** ![lmiq](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lmiq/32/18314_2.png) [@lmiq](https://discourse.julialang.org/u/lmiq)\
**Post date:** [September 7, 2020, 7:03pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216/7 "2020-09-07T19:03:30Z")

</div>

I always wondered why people repeat that this is easy to read (what are those `__` about, anyway?):

```julia
class Person:
  def __init__ (self, name, age):
    self.name = name
    self.age = age

p1 = Person("John", 36)

```

In particular in comparison to this:

```julia
struct Person
  name
  age
end
p1 = Person("John",36)

```

---

<div class="post-metadata">

**Author:** ![newtojulia](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/newtojulia/32/17754_2.png) [@newtojulia](https://discourse.julialang.org/u/newtojulia)\
**Post date:** [September 7, 2020, 7:08pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216/8 "2020-09-07T19:08:13Z")

</div>

Indeed, Performance matters , It is not forgotting that Julia syntax is cool+speedy, thats also matters, that is the it is getting popular as people are telling (as high level syntax and as fast as c).

Please dont mine my words, It is only my suggestion, as I am user,as new programming language It is my right to give feedback to developers, Hope they will listen.  
thanks 🙂

---

<div class="post-metadata">

**Author:** ![lmiq](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lmiq/32/18314_2.png) [@lmiq](https://discourse.julialang.org/u/lmiq)\
**Post date:** [September 7, 2020, 7:18pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216/9 "2020-09-07T19:18:17Z")

</div>

I am being honest in my question. I am a Former Fortran programmer, and, compared to Fortran, I never felt that Python was particularly easy to read. Of course Python offered a lot of things that Fortran didn’t, such that I had to use it often.

Julia I think is easier to read than Python, except if you try to read heavily optimized code for performance (much of the base Julia is, and I have a hard time reading it as well), but that kind of code don’t even exist in Python, so think there is no comparison there.

The more “script like” code is, in my opinion, the same or even easier to read in Julia than in Python, and will probably be faster in Julia, if that matters.

---

<div class="post-metadata">

**Author:** ![newtojulia](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/newtojulia/32/17754_2.png) [@newtojulia](https://discourse.julialang.org/u/newtojulia)\
**Post date:** [September 7, 2020, 7:20pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216/10 "2020-09-07T19:20:46Z")

</div>

> [@chakravala](#):
>
> if you want python, then why don’t you use python?

Yes , Julia is its own language c++ had, r had, matlab had, c had, java had, but you didnt get **ZEN principal**

Your comment is is rude,  
if theres something extraodinary on another concept it is good to import it.

---

<div class="post-metadata">

**Author:** ![Albert\_Zevelev](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/albert_zevelev/32/11844_2.png) [@Albert\_Zevelev](https://discourse.julialang.org/u/Albert_Zevelev)\
**Post date:** [September 7, 2020, 7:24pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216/11 "2020-09-07T19:24:34Z")

</div>

@newtojulia

1. welcome to Julia
2. Python was built on the [Zen of Python](https://www.python.org/dev/peps/pep-0020/)  
Julia was build on the [Greed of Julia](https://julialang.org/blog/2012/02/why-we-created-julia/)  
Part of this greed is to take the best features of the other languages & build them into Julia. Hence, in some ways the best parts of the Zen of Python are built into Julia.
3. Give it some time. As you learn more Julia I think you will come to appreciate the beauty & power of the Julian Greed.

---

<div class="post-metadata">

**Author:** ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)\
**Post date:** [September 7, 2020, 7:25pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216/12 "2020-09-07T19:25:36Z")

</div>

Thanks for the enthusiasm, @newtojulia and welcome to the community! I’m afraid that I’ve seen this sort of vague comparison thread go poorly too often and be productive never so I’m gonna just close it before it gets heated.

---

<div class="post-metadata">

**Author:** ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)\
**Post date:** [September 7, 2020, 7:26pm UTC](https://discourse.julialang.org/t/feedback-make-julia-as-pythonic-as-possible/46216/13 "2020-09-07T19:26:07Z")

</div>


