Plutus, Haskell, Nix, Purescript, Swift/Kotlin. laser-focused on FP: formality, purity, and totality; repulsed by pragmatic, unsafe, “move fast and break things” approaches


AC24 1DE5 AE92 3B37 E584 02BA AAF9 795E 393B 4DA0

  • 1 Post
  • 99 Comments
Joined 1 year ago
cake
Cake day: June 17th, 2023

help-circle



  • RISC-V is an open instruction set, which should be what the Pi foundation (if their open source mission is to be taken at face value) would be switching to if they weren’t just a way for Broadcom to push their chips on the maker community under the guise of open source.

    https://riscv.org/news/2024/01/what-is-risc-v-and-why-is-it-important/#:~:text=Unlike proprietary architectures such as,the evolving landscape of computing.

    RISC-V, an open-source instruction set architecture (ISA), has been making waves in the world of computer architecture. “RISC-V” stands for Reduced Instruction Set Computing (RISC) and the “V” represents the fifth version of the RISC architecture. Unlike proprietary architectures such as ARM and x86, RISC-V is an open standard, allowing anyone to implement it without the need for licensing fees. This openness has led to a surge in interest and adoption across various industries, making RISC-V a key player in the evolving landscape of computing. At its core, an instruction set architecture defines the interface between software and hardware, dictating how a processor executes instructions. RISC-V follows the principles of RISC, emphasizing simplicity and efficiency in instruction execution. This simplicity facilitates easier chip design, reduces complexity, and allows for more straightforward optimization of hardware and software interactions. This stands in contrast to Complex Instruction Set Computing (CISC) architectures, which have more elaborate and versatile instructions, often resulting in more complex hardware designs. The open nature of RISC-V is one of its most significant strengths. The ISA is maintained by the RISC-V Foundation, a non-profit organization that oversees its development and evolution. The RISC-V Foundation owns, maintains, and publishes the RISC-V Instruction Set Architecture (ISA), an open standard for processor design. The RISC-V Foundation was founded in 2015 and comprises more than 200 members from various sectors of the industry and academia.








  • I’ve been looking into building and developing a Lemmy fork using Nix but I got stuck on nixifying the part of the build instructions where you have to combine front end and back end in git submodules. It’s a bummer too because I won’t even write a single line of code on this fork until I have it properly setup with flakes. It’s just how I am. 🤣

    Maybe my flake can help you get Tauri working and maybe that would motivate you to help me get Lemmy working with Nix tooling instead of Ansible and Docker as it is now? ;)




  • Learn Haskell.

    Since it is a research language, it is packed with academically-rigorous implementations of advanced features (currying, lambda expressions, pattern matching, list comprehension, type classes/type polymorphism, monads, laziness, strong typing, algebraic data types, parser combinators that allow you to implement a DSL in 20 lines, making illegal states unrepresentable, etc) that eventually make their way into other languages. It will force you to learn some of the more advanced concepts in programming while also giving you a new perspective that will improve your code in any language you might use.

    I was big into embedded C programming years back … and when I got to the pointers part, I couldn’t figure out why I suddenly felt unsatisfied and that I was somehow doing something wrong. That instinct ended up being at least partially correct. I sensed that I was doing something unsafe (which forced me to be very careful around footguns like pointers, dedicating extra mental processes to keep track of those inherently unsafe solutions) and I wished there was some more elegant way around unsafe actions like that (or at least some language provided way of making sure those unintended side effects could be enforced by the compiler, which would prevent these kinds of bugs from getting into my code).

    Years later, after not enjoying JS, TS (IMO, a porous condom over the tip of JavaScript), Swift, Python, and others, my journey brought me to FRP which eventually brought me to FP and with it, Haskell, Purescript, Rust, and Nix. I now regularly feel the same satisfaction using those languages that I felt when solving a math problem correctly. Refactoring is a pleasure with strictly typed languages like that because the compiler catches almost everything before it will even let you compile.







  • Do you count the core devs (who maintain/write the core protocol), the foundation (preferably a DAO or voting based organization that is responsible for earmarking the funding for the upgrades and projects for the community), and treasury (that distributes mining/staking rewards and collects the fees for later distribution) as fair distribution? I do (depending on the structure of the aforementioned organizations obviously). Just wondering where you sit on that issue and any of projects that you can point to that have that ideal token allocation you speak of.

    I haven’t found a more fair ITA than Ergo but then again, the Ergo project seems to have trouble paying/attracting really solid core devs other than the founder, Kushti.

    Edit: took out some mention of my favorite project. Want to be impartial here.