Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Jan 16 19:06
    @CyrusNajmabadi banned @JuliusRFriedman_twitter
  • Nov 01 2020 06:15
    @CyrusNajmabadi banned @juliusfriedman
  • Jan 31 2019 21:39

    gafter on master

    Propose Feb 11 agenda (#2187) (compare)

  • Jan 31 2019 21:39
    gafter closed #2187
  • Jan 31 2019 19:42
    gafter edited #2115
  • Jan 31 2019 15:46
    jcouv edited #1565
  • Jan 31 2019 14:51
    yigitgursoy closed #1958
  • Jan 31 2019 13:43
    ichensky closed #2190
  • Jan 31 2019 12:17
    ichensky opened #2190
  • Jan 31 2019 04:38
    MarkPflug edited #2189
  • Jan 31 2019 04:37
    MarkPflug edited #2189
  • Jan 31 2019 04:37
    MarkPflug edited #2189
  • Jan 31 2019 04:36
    MarkPflug opened #2189
  • Jan 30 2019 23:15
    MohammadHamdyGhanem opened #2188
  • Jan 30 2019 20:01
    gafter review_requested #2187
  • Jan 30 2019 20:01
    gafter review_requested #2187
  • Jan 30 2019 20:01
    gafter review_requested #2187
  • Jan 30 2019 20:01
    gafter assigned #2187
  • Jan 30 2019 20:01
    gafter opened #2187
  • Jan 30 2019 20:00

    gafter on gafter-2019-02-11-agenda

    Propose Feb 11 agenda (compare)

Yair Halberstadt
@YairHalberstadt
I guess shouldn't have joined Google if I don't like Go :-)
Maybe I'll fall in love with it over time, but initial impressions is: this isn't a terrible language, but it's a pretty pathetic language - it feels like a step backwards 30 years in language evolution.
Michał Zegan
@webczat
but you can't deny it's very readable :) that was my first impression of it even if I wouldn't want to learn it because reasons.
Yair Halberstadt
@YairHalberstadt

Is it more readable than C#/Java?

I don't see how?

Michał Zegan
@webczat
I was not comparing. I just stated the fact that it is very readable from the perspective of me who knew/knows more than one language but never learned go. including that I have never seen things like language with multiple return values etc.
I just randomly went into sources of boulder and started to read, because I was playing with the acme protocol (letsencrypt in case you don't know what I am talking about).
it's not, however, a comparison to java/c# because I have never tried to read java/c# when not knowing them previously by any means. also my programming knowledge when I was learning java for the first time was way smaller
and java/c# are also amongs the more readable ones. and, surprisingly to me, php. lol
Yair Halberstadt
@YairHalberstadt
I find list.Select(x => x * x).Where(x < 100) far more readable than:
updated := []int {}
for _, v in range list {
    squared = v * v
    if squared < 100 {
        updated = append(updated, squared)
    }
}
Michał Zegan
@webczat
although I have read less php than java/c#
Bernd Baumanns
@bernd5
@YairHalberstadt I can only agree 😀
Michał Zegan
@webczat
well it's definitely longer. but for someone not used to linq or similar syntax like java streams... not sure
I don't think this is natural for someone who has never seen such a thing in his life. but these things are hard to tell, my first lang was pascal. if it were c# I could tell
but then I was 9 when I learned pascal. if I was 9 now and learning c# as a first lang, it would be interesting.
and I learned java far before c#, and that was way before lambdas existed there
well it was java6
Bernd Baumanns
@bernd5
But to be fair I assume, the equiliant in csharp is:
var updated = new List<int>();
foreach(var v in list) {
    var squared = v * v;
    if (squared < 100) {
        updated.Add(squared);
    }
}
Michał Zegan
@webczat
well or linq.
this was the point
Yair Halberstadt
@YairHalberstadt
Yes, but then they're identically readable so nothing to compare
The argument can only be Go is more readable because you can't use linq and have to write it out in full. To which I strongly disagree
Bernd Baumanns
@bernd5
things like []int {} look weird at least to me
Michał Zegan
@webczat
well, still note I was not comparing, just stating it without relation to other languages.
still it matters considering it's considerably different in some respects from all other languages I know. things like methods declared out of types, structural typing/interfaces, multiple return values, etc.
at least what happens and why was easy for me
definitely easier than in things like c/c++ that I am still confronted with.
but most things are easier than that
Bernd Baumanns
@bernd5
C is very easy
but very limited, too
Michał Zegan
@webczat
well, before probably java I was afraid of/could not easily read foreign code.
the first language where I tried and succeeded in that, like reading/digging into foreign code including standard libs, was java for me
Bernd Baumanns
@bernd5
In C++ I love templates and constexpr functions
Michał Zegan
@webczat
mhm sure.
templates are often the most unreadable thing ever invented. well at least when someone is doing metaprogramming
Bernd Baumanns
@bernd5
yes, sometimes
Michał Zegan
@webczat
or things like using iterator tags or... eh I had some nice code fragment like this, template usage, not writing one
Bernd Baumanns
@bernd5
or they can at least create really large diagnostics
Michał Zegan
@webczat
oh that. yeah
the thing is they are not themselves compiled, they live in headers, it's suddenly... so weird :) you cannot even theoretically interface it with any other programming language
Bernd Baumanns
@bernd5
but the equals example we had you can write in C++ really easily
Michał Zegan
@webczat
and now it's normal functions in cpp files, but these go in headers. mess
Bernd Baumanns
@bernd5
Michał Zegan
@webczat
I don't consider that easy, I don't know c++20 concepts although I realize what this probably is, and generally ... nooo!
maybe I am in a bad mood to interpret c++ :)
also a static equals you proposed is something you can write easily using the equality comparer
ahh I think the unreadable part I made I was talking about was something like static_asserting type characteristics. then I pasted it to few people to show them how amazing c++ is <sarcasm>
Bernd Baumanns
@bernd5
static_asserts have to be type dependent - so you see often something like static_assert(alwaysFalse<T>::value, "Foo") - it looks weird, I agree
Michał Zegan
@webczat
noo mine was far more complex and not always false
not sure what it was, likely checking for enums. as in pre concept
I don't have the relevant code anymore
that was in a function template