General Programming Discussion

8665 readers
1 users here now

A general programming discussion community.

Rules:

  1. Be civil.
  2. Please start discussions that spark conversation

Other communities

Systems

Functional Programming

Also related

founded 6 years ago
MODERATORS
151
 
 

Since we first announced it last year, our Vulkan wrapper KDGpu has been busy evolving to meet customer needs and our own. Our last post announced the public release of v0.1.0, and version 0.5.0 is available today. It’s never been easier to interact with modern graphics technologies, enabling you to focus on the big picture instead of hassling with the intricacies and nuances of Vulkan.

152
153
 
 

I just want to build requests and read the responses, why the hell does everyone suddenly want me to make an account?

154
155
156
 
 

New language promises to reduce compilation times by using all threads and gpu cores available on your machine. What's your opinions on it so far?

157
158
 
 

Traditionally, algorithms for counting distinct items in a stream of data would store all the items. A new algorithm, called CVM, uses randomization to estimate the number of distinct items with minimal memory usage. The trick is to keep track of items by recording them and then randomly deleting some. The probability of an item staying on the list is related to the number of rounds it survives. With this method, the researchers were able to accurately estimate the number of distinct words in Hamlet.

159
 
 

The next major version of the GNU Compiler Collection (GCC), 14.1, was released on May 7 2024. Like every major GCC release, this version brings many additions, improvements, bug fixes, and new features.

160
 
 

cross-posted from: https://lemmy.ml/post/15607790

Just wanted to share some (exciting) news about my Common Lisp project, euler-cl. I finally got the time to sit down and integrate it with Codecov! This means a couple of cool things:

  • 📈 Test Coverage Tracking: I can now see how well my code is tested over time, giving valuable insights into code quality.
  • 🏅 Codecov Badge: euler-cl now sports a snazzy Codecov badge to show off!
  • 📦 Reusable Setup: The code and setup process should be simple enough to be used as a reference to integrate Codecov (and potentially other services) into your own Common Lisp projects!

If you're interested this commit is almost all you need: https://github.com/bahmanm/euler-cl/commit/855b014

Let me know in the comments if you have any questions or want to chat about integrating Codecov into your own projects!

161
162
 
 

A comprehensive guide to Hack Club's inner circle, potential labor law violations, union busting, and fundamental lack of transparency, democracy & respect for members.

163
 
 

im really tempted to quit my job and make this thing that has no potential for income.

50% of it is dissatisfaction with my day job. It pays the bills but i spend all of my time cleaning up after devs that are long gone.

50% is i want this project idea to exist. honestly i just want to make things. i dont remember the last time i just made a thing.

164
 
 

"Programming: Principles and Practice using C++ (3rd Edition)", aka PPP3, is an introduction to programming for people who have never programmed before. It will also be useful for people who have programmed a bit and want to improve their style and technique - or simply learn modern C++. It is designed for classroom use, but written with an eye on self study. Ealier versions of this book have been used as the basis for first programming classes for electrical engineering, computer engineering, and computer science students at Texas A&M University and in many other places.

People who have seen PPP2 will notice that PPP3 is about half its size. What I have done to keep the weight down is to

  • strengthen the foundational chapters usually covered in a one-semester course, utilizing key parts of C++20 and C+23, and re-basing the Graphics/GUI chapter code on Qt for portability (e.g., to browsers and phones).
  • placed the more specialized chapters (known as "broadening the view" in PPP2) on the Web for people to use as needed. See below.
  • eliminate the pure reference material. You now can find more and more up-to-date material on the web, e.g. cppreference.com.
165
166
167
 
 

The Khronos® Group, an open consortium of industry-leading companies creating advanced interoperability standards, announces the immediate availability of the OpenXR™ 1.1 specification. This release evolves the widely adopted OpenXR open API standard for high-performance, cross-platform access to VR, AR, and mixed reality (MR) — collectively known as XR—platforms and devices. OpenXR 1.1 consolidates widely used API extensions into the core specification to reduce fragmentation and adds new functionality to streamline the development of more powerful and efficient XR applications.

In particular, OpenXR 1.1 consolidates multiple vendor extensions for key functionality to reduce differences in application code across multiple platforms, while still remaining flexible and extensible to foster innovation in a rapidly growing and evolving market. The OpenXR Working Group will focus on managing a pipeline of extensions to develop and seek feedback on new functionality, while proactively integrating proven technology into the core specification to provide developers with robust cross-platform XR capabilities.

Today, most major XR platforms have transitioned to using OpenXR to expose current and future device capabilities. Vendors with conformant OpenXR implementations include Acer, ByteDance, Canon, HTC, Magic Leap, Meta, Microsoft, Sony, XREAL, Qualcomm, Valve, Varjo, and Collabora’s Monado open source runtime. OpenXR is also supported by all the major game and rendering engines, including Autodesk VRED, Blender, Godot, NVIDIA’s Omniverse, StereoKit, Unreal Engine, and Unity.

The OpenXR 1.1 specification can be found on the Khronos website and on GitHub OpenXR Registry.

168
 
 

While the task of writing a brand new standard-compliant browser engine is infamous as being almost unachievable nowadays (and certainly so with Chromium coming in at 31 million lines of code), the Rust ecosystem has been brewing up a new web rendering engine called Servo. Initially created by Mozilla in 2012, Servo is still being developed today, now under the stewardship of the Linux Foundation.

At KDAB they managed to embed the Servo web engine inside Qt, by using their CXX-Qt library as a bridge between Rust and C++. This means that we can now use Servo as an alternative to Chromium for webviews in Qt applications.

169
 
 

Qt 6.7 is out with lots of large and small improvements for all of us who like to have fun when building modern applications and user experiences. Several additions are released as technology previews, and we are looking forward to your feedback so that we can get everything ready for the next LTS release!

170
 
 

AMD's HIP Ray-Tracing library "HIP RT" has been one of the few projects under the GPUOpen umbrella that starts off as closed-source software but then is eventually open-sourced... That happened now with the HIP ray-tracing code becoming publicly available.

171
 
 

If you've found yourself manually crafting complex Docker images or repeatedly installing tools, I've got something for you 😁

Check out "fusions" in bdockerimg project (https://github.com/bahmanm/bdockerimg).


With fusions, you merge base images into powerful composite images.

Currently there are:

  • sdkman.bmakelib
  • quicklisp.bmakelib

Let me know what other fusions would make your Docker life easier 🙏

172
 
 

There’s been a lot of noise recently about contributing to Open Source. Many developers contribute to Open Source projects for various reasons, including building their commit history for recruiters or gaining visibility through badges. However, experienced Open Source contributors have observed a troubling trend: contributing is seen as an obligation and a badge of honor, leading to frustration when it’s not straightforward.

173
174
 
 

Andrzej Janik has released ZLUDA 3, a new version of his open-source project that enables GPU-based applications designed for NVIDIA GPUs to run on other manufacturers’ hardware. The wrapper technology is designed to enable existing applications to run on new hardware unmodified, without the need for any work on their developers’ part.

175
 
 

I've been working on a small project called bdockerimg.

It's a collection of pre-built Docker images for some less common development tools (currently bmakelib, QuickLisp, and SDKMAN).

The idea is to streamline setup, especially for CI/CD pipelines, where I found myself repeating the same Dockerfile steps a lot. Basic functionality tests are included for a bit of extra peace of mind.


👀 Here's the repo if you're interested: https://github.com/bahmanm/bdockerimg
🗣 And here's the the Matrix room: https://matrix.to/#/#bdockerimg:matrix.org


I'm curious:

  • Does this seem like something you might find useful?
  • Are there any specific tools you'd love to see as easy-to-use Docker images?

This project is still in its early stages, so any feedback or contributions are much appreciated 🙏

view more: ‹ prev next ›