HackerTrans
TopNewTrendsCommentsPastAskShowJobs

needlesslygrim

no profile record

comments

needlesslygrim
·4 months ago·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
·8 months ago·discuss
> extremely inefficient strings (erlang)

Doesn't most modern Erlang code use binaries instead of charlists? Elixir and Gleam certainly do.
needlesslygrim
·9 months ago·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
·11 months ago·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
·11 months ago·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
·last year·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
·last year·discuss
I'm curious, why don't you use GNU Emacs?
needlesslygrim
·last year·discuss
Oh I see. I assumed being able to explicitly yield unit meant statements were essentially just syntax sugar for unit. Thanks for the correction.
needlesslygrim
·last year·discuss
Well, Rust barely has statements [1]. Nearly everything in Rust is an expression, and AFAIK statements /are/ essentially expressions that yield `()` [2].

[1]: https://doc.rust-lang.org/reference/statements.html

[2]: https://play.rust-lang.org/?version=stable&mode=debug&editio...
needlesslygrim
·last year·discuss
In China WeChat is the dominant messaging platform, SMS is only used for delivery notifications, spam, etc.
needlesslygrim
·last year·discuss
That's probably fair.
needlesslygrim
·last year·discuss
> Async Rust is painful

On the other hand, I've found normal threading in Rust quite simple (generally using a thread pool).
needlesslygrim
·last year·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
·last year·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
·last year·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
·last year·discuss
Unfortunately, while `dynamic` is used for dynamic typing in C#, `var` is just type inferenfe like `auto` in C++.
needlesslygrim
·2 years ago·discuss
I'm also interested in why the MIT license was chosen. I guess it's because of the plan to create 'libghostty'?