Maxim
Maxim
MModular
Created by Krisztian Szucs on 7/19/2024 in #community-showcase
Firebolt: In-progress implementation of Apache Arrow in Mojo
πŸ™
25 replies
MModular
Created by bunny on 6/21/2024 in #questions
software cost estimating
Reminded me of my game dev days. We had multiple city builder games developed at the company. My team built a game with just ~12K LOC of production code and ~36K LOC of test code in one year. Other team had ~100K LOC production code and no tests in 2-3 years. Just looking at the LOC is like buying software by the byte πŸ˜„. 2GB = 2M $. 😜
84 replies
MModular
Created by Jack Clayton on 5/11/2024 in #community-showcase
mojo-sort
Long story short with just < you might get a undefined behaviour and it is also unstable (I think. :))
47 replies
MModular
Created by Jack Clayton on 5/11/2024 in #community-showcase
mojo-sort
It's is also discussed in the video I posted above here is the link with th etime stamp directly relevant for the comparison function https://youtu.be/jz-PBiWwNjc?si=BQLYQYj-BTusYjy-&t=827
47 replies
MModular
Created by Jack Clayton on 5/11/2024 in #community-showcase
mojo-sort
Thanks @dan13llljws ! I will have a look
47 replies
MModular
Created by Jack Clayton on 5/11/2024 in #community-showcase
mojo-sort
Please let me know if you do! There are also benchmarks in the repo.
47 replies
MModular
Created by Jack Clayton on 5/11/2024 in #community-showcase
mojo-sort
Have you had a look at my repo and algorithms there? Curious how they compare to what you implemented.
47 replies
MModular
Created by Jack Clayton on 5/11/2024 in #community-showcase
mojo-sort
Oh I forgot to post the link to mentioned PR: https://github.com/modularml/mojo/issues/3022
47 replies
MModular
Created by Jack Clayton on 5/11/2024 in #community-showcase
mojo-sort
BTW many other standard libraries use pattern-defeating quicksort (https://youtu.be/jz-PBiWwNjc?si=2ad9-LvxRbA_S8VY). @dan13llljws if you intend in writing a quick sort derivative I think it will be more interesting. But on the other hand
47 replies
MModular
Created by Jack Clayton on 5/11/2024 in #community-showcase
mojo-sort
No, I am having this PR in the pipeline to introduce benchmark for the sorting of scalars and a start with a data driven approach for algorithm optimizations. What I had in mind is, if you have an algorithm improvement you want to contribute, first make a PR with a separate benchmark where you execute the current algorithm and the contending algorithm. As there is no infrastructure to check performance on different hardware we ask Modular folks and other contributors to run benchmarks locally and share results. Based on those we can discuss if it is suitable to replace current algorithm with provided one, or maybe just add another algorithm to the module.
47 replies
MModular
Created by Maxim on 6/4/2024 in #community-showcase
Quick and Dirty JSON parser
Updated the Gist with a more robust version of the parser and a few tests for the previous buggy cases like:
{ "a": [1, "]", 3] }
[ [1, "]", 3] ]
[ {"a": 1, "b": "}", "c": 3} ]
{"first": {"a": 1, "b": "}", "c": 3}, "second" : true }
{ "a": [1, "]", 3] }
[ [1, "]", 3] ]
[ {"a": 1, "b": "}", "c": 3} ]
{"first": {"a": 1, "b": "}", "c": 3}, "second" : true }
9 replies
MModular
Created by Maxim on 6/4/2024 in #community-showcase
Quick and Dirty JSON parser
Also just realized there is a bug. [β€œa”, β€œ]”, β€œb”] would not parse correctly. Will fix tomorrow. Now I am already on myπŸ“±. Or maybe someone else wants to take a stab at it?
9 replies
MModular
Created by Maxim on 6/4/2024 in #community-showcase
Quick and Dirty JSON parser
Best case scenario JSONValue has a reference to the initial string and start, stop indices. This way no copying needed. We still scan through the string a lot but we don’t need to copy it all the time.
9 replies
MModular
Created by Maxim on 6/4/2024 in #community-showcase
Quick and Dirty JSON parser
There are still a few special cases which are not covered, like scientific notation for numeric values, hex and escaping stuff. But generally this should be it. It is a slow implementation as I am duplicating Strings everywhere.
9 replies
MModular
Created by Jack Clayton on 5/11/2024 in #community-showcase
mojo-sort
they are actually vectorized
47 replies
MModular
Created by Jack Clayton on 5/11/2024 in #community-showcase
mojo-sort
Generally interesting πŸ˜„ before MSB Radix sort was an obvious winner. Now TimSort / parallel TimSort is faster in some cases.
47 replies
MModular
Created by Jack Clayton on 5/11/2024 in #community-showcase
mojo-sort
Updated the lib after the ComparableCollectionElement landed in nightly. Benchmarks for string sorting are quite interesting.
47 replies
MModular
Created by Maxim on 5/12/2024 in #community-showcase
Mojo CSV
Updated to work with current nightly
2 replies
MModular
Created by bunny on 5/14/2024 in #community-showcase
toybox
A few months back I looked into Judy Array, but decided life is too short πŸ˜„. But it would be definitely an interesting experiment to compare it against different implementations of HashMap. And there is also HAMT (used in Clojure), main feature is, it’s a persistent Dictionary. There is an implementation in C as well https://github.com/mkirchner/hamt
13 replies