defect-process
Guava
defect-process | Guava | |
---|---|---|
19 | 58 | |
204 | 49,466 | |
- | 0.4% | |
3.5 | 9.6 | |
10 months ago | 4 days ago | |
Haskell | Java | |
BSD 3-clause "New" or "Revised" License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
defect-process
-
Is it possible to write games like Pac-Man in a functional language?
Totally possible. Here’s a link to a game recently released on Steam that is written in Haskell and whose source is open: https://github.com/incoherentsoftware/defect-process
I recently hacked together an asteroids clone in Haskell with SDL2 and not much else. It’s not super pretty but it works.
I’ve talked to folks who’ve been using the newer effects libraries taking advantage of the new delimited continuation primops in GHC 9.6 for their game dev. Even with very high level libraries their reporting acceptable performance.
With enough dedication I’m certain anyone could make whatever game they wanted in an FP language.
-
Genuine question: how do you all use Haskell IRL?
And the full code (w/o assets) is available too https://github.com/incoherentsoftware/defect-process
- [FOR HIRE] Illustrator / Animator / UI / Background Artist.
-
Why the gc?
Or as mentioned recently... a game written in Haskell, published on steam: https://incoherentsoftware.com/defect-process/docs/ https://store.steampowered.com/app/1136730/Defect_Process/
-
Defect Process - Incoherent Software LLC - 2d character action game / spectacle fighter
Steam | YouTube
-
Defect Process full haskell source (~62k LOC | action game on Steam)
Hi I added the full source code for Defect Process to coincide with the full game release on Steam. See the brief overview docs for a high level tour of the code design.
-
Is there anyone here using Haskell for anything other than web development?
A haskell game on steam: https://store.steampowered.com/app/1136730/Defect_Process/
-
The Source Code of Defect Process
Over the Christmas break I took some time to study the source code of Defect Process (https://github.com/incoherentsoftware/defect-process) to better understand industry-strength software architecture in Haskell and Game Engines. I have written a longer article about my analysis: https://www.lambdabytes.io/articles/defectprocess/
-
Defect Process - 2d hack n' slash game (Steam + GitHub)
Thanks, good to hear that learning haskell has been rewarding so far! For code questions later on, feel free to open a github discussion if this reddit thread is inactive at that point.
Guava
-
Lists: do you know the nature of yours? The strange story of a data container in Java
The first problem is at the level of Type System, given that a situation more correct would allow us to distinguish through the Collection Type which abstraction we are operating with, species if definable as mutable or immutable. The JCF was born at a time when great care was taken to offer immediate operational data structures, and with attention to performance, but with less attention to constructs or uses that are now seen as common. These concepts have been taken up by other infrastructures from which we certainly cannot fail to mention: Eclipse Collection, Guava Collections, and VAVR.
-
Google/guava: Google core libraries for Java
Even better is getting Gradle/Maven to correctly pull "plain" vs "Android" versions of the package instead of them just publishing the diverging code base as two repository packages.
https://github.com/google/guava/issues/2914
-
Guava 32.0 (released today) and the @Beta annotation
I'll admit I'm surprised to see that BOMs have been documented on maven.apache.org since mid-2008. It looks like Spring, for example, didn't adopt them until mid-2014. I don't know how widely they caught on in other areas. The first discussion of them in the context of Guava may have been in 2018, as I don't see mention of them in the various issues from 2011-2015 (#605, #1329, #1471, #1954.
-
Best Practice of Guava ImmutableList
And a quick peek at the source code for ImmutableList seems to confirm this (https://github.com/google/guava/blob/master/guava/src/com/google/common/collect/ImmutableList.java - it goes via a bunch of methods, but ends up using Arrays.copyOf(), which creates a fixed-size array).
-
Genuine question: how do you all use Haskell IRL?
The guava library of Java has some of these data structures implemented: https://github.com/google/guava/wiki/ImmutableCollectionsExplained , but implementations of the above book in many languages can be found on github (say, this one for Haskell: https://github.com/aistrate/Okasaki )
- Murmurhash -criando um rollout progressivo via backend
-
Один из примеров почему ChatGPT еще очень далеко до замены программистов, та и остальных профессий тоже.
Java Mask: Java Mask is a library that offers various string masking techniques for sensitive data such as credit card numbers, email addresses, and more. You can find the library at: https://github.com/miguelfreitas93/java-mask DataMasker: DataMasker is a Java library specifically designed for masking sensitive data, including credit card numbers, using customizable masking patterns. Visit the GitHub repository for more information and usage examples: https://github.com/GDSSecurity/DataMasker Maskify: Maskify is a simple Java library that can be used to mask credit card numbers, Social Security numbers, and other sensitive information. You can find the library at: https://github.com/jonathancarvalhoalves/maskify CreditCardUtils: This is a lightweight Java library that provides utility methods for validating, formatting, and masking credit card numbers. Visit the GitHub repository for more information: https://github.com/malkusch/creditcardutils Google Guava: Google Guava is a popular set of Java libraries containing a wealth of utilities for working with strings, collections, and more. While not specifically designed for masking credit card information, you can use Guava's string manipulation methods to mask sensitive data: https://github.com/google/guava
-
Twitter makes some of its source code public
I mean, I guess, technically? If you define it like that, then Microsoft has people working for them for free, as does Google, as does Apple, etc. It's not that weird, and you can try to twist it to be weird, but those of us in the software industry largely regard this as a good thing.
-
Managing unfixable CVEs
So we have https://github.com/google/guava/issues/4011
-
Java 17 migration: bias locks regression
Ok, so let's implement our lazy initialization more smartly to avoid acquiring the lock every time and use old fashion but still working double-checked locking. I've found it implemented by Suppliers.memoize in guava library.
What are some alternatives?
Tidal - Pattern language
JGit - JGit project repository (jgit)
chips - A clone of Chips Challenge in Haskell
javatuples - Typesafe representation of tuples in Java.
fmod - dump of minimal haskell FMOD bindings, this is not a proper library
Caffeine - A high performance caching library for Java
Okasaki - Code from the book "Purely Functional Data Structures" by Chris Okasaki (both original and my own solutions to the exercises, in Haskell)
Eclipse Collections - Eclipse Collections is a collections framework for Java with optimized data structures and a rich, functional and fluent API.
zazengine - Automatically exported from code.google.com/p/zazengine
Hashids.java - Hashids algorithm v1.0.0 implementation in Java
quantum-chemistry
Gephi - Gephi - The Open Graph Viz Platform