[-] arendjr@programming.dev 12 points 3 months ago

Nothing wrong with them! But since I want to build another tool on top of it (for fiction/novel outlining and writing) I figured this was a good exercise to become familiar with the codebase. And since I still do some Rust development, having control over both my IDE and my writing software seemed an added benefit :)

19

cross-posted from: https://lemmy.dbzer0.com/post/56676015

Their findings, published in the Journal of Holography Applications in Physics, go beyond simply suggesting that we're not living in a simulated world like The Matrix. They prove something far more profound: the universe is built on a type of understanding that exists beyond the reach of any algorithm.

2

As I'm writing my work on Philosophy of Balance I also want to write something on moral views around the topic of property ownership. But to be honest, it's probably the topic I have the least clear answers to right now. As a quick primer, the Philosophy of Balance is aimed to provide both rational as well as emphatic guidance to improve balance, both inwards within oneself, as well as outwards with those around us.

This means I'm trying to avoid extremes, and I'm trying to find nuance in sometimes difficult topics. In this particular case, that means I'm not going for either absolute capitalism (for obvious reasons) nor for absolute communism or anarchism (I don't believe absolute equality necessarily implies balance, but feel free to offer arguments to the contrary). So I think I'd prefer to find something that allows for personal ownership, but which avoids excesses, although I struggle at where to draw the line. Maybe that means the premise is flawed, so any help is appreciated!

Thanks for hearing me out, and looking forward to your suggestions!

8
14

cross-posted from: https://programming.dev/post/32376875

Biome is a formatter and linter for web languages: JavaScript, TypeScript, CSS, HTML, JSON, and GraphQL.

Version 2 adds type-aware lint rules and it is the first TypeScript linter that does not require tsc. Other new features include:

  • Monorepo support
  • GritQL Plugins
  • Revamped, configurable import sorting
  • Linter domains
  • Bulk suppressions
  • Analyzer assists
  • Many new lint rules
24

Biome is a formatter and linter for web languages: JavaScript, TypeScript, CSS, HTML, JSON, and GraphQL.

Version 2 adds type-aware lint rules and it is the first TypeScript linter that does not require tsc. Other new features include:

  • Monorepo support
  • GritQL Plugins
  • Revamped, configurable import sorting
  • Linter domains
  • Bulk suppressions
  • Analyzer assists
  • Many new lint rules
8

Biome is an integrated linter/formatter for JavaScript/TypeScript, CSS, HTML and GraphQL.

We are now in the process of implementing TypeScript-like inference (not full type checking!) that allows us to enable type-informed lint rules. This is similar to typescript-eslint except instead of using tsc we attempt to implement the inference ourselves.

This post describes our progress thus far, with a detailed overview of our type architecture.

12

Biome is a formatter and linter for JavaScript, TypeScript and other web languages.

With this partnership, we aim to develop TypeScript-compatible type inference that works out of the box for use in our lint rules.

10
Biome v2.0 beta (biomejs.dev)
submitted 1 year ago* (last edited 1 year ago) by arendjr@programming.dev to c/webdev@programming.dev

Biome lead here, so feel free to ask anything!

Biome is an integrated linter and formatter with support for JavaScript, TypeScript, CSS, and more.

Highlights of the release:

  • Plugins: You can write custom lint rules using GritQL.
  • Domains: Domains help to group lint rules by technology, framework, or well, domain. Thanks to domains, your default set of recommended lint rules will only include those that are relevant to your project.
  • Multi-file analysis: Lint rules can now apply analysis based on information from other files, enabling rules such as noImportCycles.
  • noFloatingPromises: Still a proof-of-concept, but our first type-aware lint rule is making an appearance.
  • Our Import Organizer has seen a major revamp.
  • Assists: Biome Assist can provide actions without diagnostics, such as sorting object keys.
  • Improved suppressions: Suppress a rule in an entire file using // biome-ignore-all, or suppress a range using // biome-ignore-start and // biome-ignore-end.
  • HTML formatter: Still in preview, this is the first time we ship an HTML formatter.
  • Many, many, fixes, new lint rules, and other improvements.
[-] arendjr@programming.dev 12 points 1 year ago

I found the title of that section slightly triggering too, but the argument they lay down actually makes sense. Consistency helps you to achieve correctness in large codebases, because it means you don’t have to reinvent what is correct over and over in separate pockets of the codebase. Such pockets also make incremental improvements to the codebase harder and harder, so they do come back to bite you.

Your example of vendors doesn’t relate to that, because you don’t control your vendor’s code. But you do control your organisation’s.

[-] arendjr@programming.dev 15 points 2 years ago

That now involves fixing Rust drivers, so you’re going to need to know Rust.

I also don’t think the latter follows from the former. You can continue to not know Rust as long as you’re willing to work with those that can. Problems only start if you’re unwilling to collaborate.

13

Recent events in #politics triggered me to write a manifesto on the values of #Democracy and what we can to do preserve them.

4

Recent events in #politics triggered me to write a manifesto on the values of #Democracy and what we can to do preserve them.

2

Biome project lead here, so feel free to ask questions!

39
[-] arendjr@programming.dev 17 points 2 years ago

If we’re looking at it from a Rust angle anyway, I think there’s a second reason that OOP often becomes messy, but less so in Rust: Unlimited interior mutability. Rust’s borrow checker may be annoying at times, but it forces you to think about ownership and prevents you from stuffing statefulness where it shouldn’t be.

[-] arendjr@programming.dev 13 points 2 years ago* (last edited 2 years ago)

I would say at this point in time it’s clearly decided that Rust will be part of the future. Maybe there’s a meaningful place for Zig too, but that’s the only part that’s too early to tell.

If you think Zig still has a chance at overtaking Rust though, that’s very much wishful thinking. Zig isn’t memory safe, so any areas where security is paramount are out of reach for it. The industry isn’t going back in that direction.

I actually think Zig might still have a chance in game development, and maybe in specialized areas where Rust’s borrow checker cannot really help anyway, such as JIT compilers.

[-] arendjr@programming.dev 15 points 2 years ago* (last edited 2 years ago)

0° being “very cold” and 100° being “very hot” is intuitive.

As someone who’s not used to Fahrenheit I can tell you there’s nothing intuitive about it. How cold is “very cold” exactly? How hot is “very hot” exactly? Without clear references all the numbers in between are meaningless, which is exactly how I perceive any number in Fahrenfeit. Intuitive means that without knowing I should have an intuitive perception, but really there’s nothing to go on. I guess from your description 50°F should mean it’s comfortable? Does that mean I can go out in shorts and a t-shirt? It all seems guesswork.

[-] arendjr@programming.dev 12 points 2 years ago

And conversely, something Go is very bad at. For example, os.Chmod silently not doing anything on Windows.

[-] arendjr@programming.dev 11 points 2 years ago

Please, please make a blog and spew your tirades there 😂

[-] arendjr@programming.dev 16 points 2 years ago

It’s a bit arguing about semantics really. But Rust and Haskell are merely the first ones with patches out. The issue affects other languages as well, including Java, Node.js, Python and seemingly every language with Windows support. I think it’s fair to call it a Windows problem, since it affects everyone there.

But languages like Rust and Haskell are promising their users that they are protected from this kind of behavior, which is why they want to patch it quickly. Some of the others merely updated the documentation, effectively saying yeah it’s a risk. Java went as far as saying they won’t fix the issue.

[-] arendjr@programming.dev 15 points 2 years ago

Good question! 😂 maybe I’m overthinking it, but you seem to be making the point that it’s silly for people to like WASM based on the argument the JVM already exists and people are not fond of it/Java. If that’s not the point, why did you make the meme at all?

[-] arendjr@programming.dev 15 points 2 years ago

I totally agree with this comment, and on top of that I would recommend anyone who really cares about the current state of affairs regarding safety in C++ to read this overview: https://accu.org/journals/overload/32/179/teodorescu/

Quote:

Personally, I am not convinced that in the near future, C++ can do something to stop this trend. C++ will leak talent to other languages (currently Rust, but perhaps in the future to Cppfront, Carbon, Hylo or Swift). If the progress towards safety started in 2015 as Bjarne suggested, the last 8 years have seen very little progress in safety improvements. Even with accelerated efforts, the three-year release cycle and slow adoption of new standards will keep C++ a decade away from addressing major safety concerns.

[-] arendjr@programming.dev 12 points 2 years ago

Zig is better than C, but still a far stretch from the memory safety of Rust: https://www.scattered-thoughts.net/writing/how-safe-is-zig/

view more: ‹ prev next ›

arendjr

0 post score
0 comment score
joined 2 years ago