HackerTrans
TopNewTrendsCommentsPastAskShowJobs

needlesslygrim

no profile record

comments

needlesslygrim
·il y a 4 mois·discuss
While Swift now has the `borrowing` and `consuming` keywords, support for storing references is nonexistent, and the only way to return/store `Span`s, etc, is only possible through using experimental `@lifetime` annotations.

Swift is a nice language, and it's new support for the bare necessity of affine types is a good step forward, but it's not at all comparable with Rust.
needlesslygrim
·il y a 8 mois·discuss
> extremely inefficient strings (erlang)

Doesn't most modern Erlang code use binaries instead of charlists? Elixir and Gleam certainly do.
needlesslygrim
·il y a 9 mois·discuss
> Rust has some support for zero-runtime, but a lot of it's features is either useless of outright in the way when you are not using a heap.

Could you give some examples?
needlesslygrim
·il y a 11 mois·discuss
That's good to hear, I guess it's possible a thicker module could be made in the future with more cooling potential?
needlesslygrim
·il y a 11 mois·discuss
I'm very impressed you managed to get nvidia to give you access to the 5070! I have one queetion though, is the 5070 limited to 100W because of the docking connector, or for cooling reasons?
needlesslygrim
·l’année dernière·discuss
That makes sense, and it's interesting that both you and Linus Torvalds maintain your own versions of Micro Emacs. Sign of greatness perhaps :)
needlesslygrim
·l’année dernière·discuss
I'm curious, why don't you use GNU Emacs?
needlesslygrim
·l’année dernière·discuss
Well if you're going to eat crow, I may as well eat pigeon, for I didn't realise that paper wasn't showing real source.

Thanks for the link to the LCF text though :^)
needlesslygrim
·l’année dernière·discuss
I think this criticism is silly. Here's what your first example would look like in a language with keywords (where reasonable, perhaps like C#) instead:

  pub fn play<lifetime p>(in out self, player: mut ref AnimationPlayer lifetime p, new_animation: AnimationNodeIndex, transition_duration: Duration) -> mut ref AnimationPlayer lifetime p
But, this is still confusing! Let's remove even more symbols, and make the syntax more obvious by removing abbreviations:

  PUBLIC FUNCTION Play
  LIFETIMES
    P
  PARAMETERS
    IN OUT Self
  Player AS MUTABLE REFERENCE TO AnimationPlayer WITH LIFETIME P
  NewAnimation AS AnimationNodeIndex
  TransititionDuration AS Duration
  RETURNS MUTABLE REFERENCE TO ActiveAnimation
  BEGIN
  ...
  END
IMO, using keywords instead of symbols for references, lifetimes, etc, would just make Rust overly verbose, and there's a reason BCPL used braces instead of BEGIN/END :^)
needlesslygrim
·l’année dernière·discuss
Well, ML (or at least the first versions of it) used a λx • x syntax [1] for λ-abstractions, the same (excluding the use of • over .) notation as used with the Lambda Calculus, and I've always assumed \ was an ASCII stand in.

[1]: https://homepages.inf.ed.ac.uk/wadler/papers/papers-we-love/... (can be spotted on page 353)
needlesslygrim
·il y a 2 ans·discuss
I'm also interested in why the MIT license was chosen. I guess it's because of the plan to create 'libghostty'?