judicious
judicious on Hacker News
I do seeing this becoming a trend more and more. A lot of open models are fairly strong and fine-tuning and other post-training techniques could easily make bespoke domain-specific inference considerably cheaper (in token usage and energy consumption) and allow for more data sovereignty.
Blank Space: A Cultural History of the Twenty-First Century by W. David Marx. A fascinating and approachable read.
Posted by
judicious on Sunday August 30, 2026 @02:12PM
from the hudsonrivertrading.com dept.
Posted by
judicious on Friday January 16, 2026 @02:42PM
from the worksinprogress.co dept.
Posted by
judicious on Friday January 16, 2026 @02:29PM
from the en.wikipedia.org dept.
Posted by
judicious on Thursday December 04, 2025 @11:49PM
from the functional.computer dept.
Posted by
judicious on Saturday November 01, 2025 @08:23PM
from the medium.com dept.
I’m by no means an expert on this topic, but what about using predefined hash map of value to function call/closure unless that also yields branched programming underneath? Additionally, maybe you want to use macros of some kind to generate the “magic” function you’re looking for, where it constructs a single branchless statement up to N terms, whether it’s procedural macros in Rust or C macros.
Posted by
judicious on Sunday September 28, 2025 @12:40PM
from the sanixdk.xyz dept.
Posted by
judicious on Friday September 26, 2025 @11:20AM
from the worksinprogress.co dept.
Posted by
judicious on Thursday September 25, 2025 @01:37PM
from the youtube.com dept.
Posted by
judicious on Saturday October 12, 2024 @02:06PM
from the loup-vaillant.fr dept.
Posted by
judicious on Tuesday October 08, 2024 @07:14PM
from the tigerbeetle.com dept.
That's incredibly clever, generators are underrated. I once challenged my friend to do leetcode problems with only expressions. Here's levenshtein distance, however it's incredibly clunky.
levenshtein_distance = lambda s1, s2: [matrix := [[0] * (len(s2) + 1) for _ in
range(len(s1) + 1)], [
[
(matrix[i].__setitem__(j, min(matrix[i-1][j] + 1, matrix[i][j-1] +
1, matrix[i-1][j-1] + (0 if s1[i-1] == s2[j-1] else 1))), matrix[i][-1])[1]
for j in range(1, len(s2) + 1)
]
for i in range(1, len(s1) + 1)
], matrix[-1][-1]][-1]
I guess for most purposes, OrderedDicts are then obsolete, but I believe there are some extra convenience methods that they have, but I've only really needed to preserve order.
Makes you think what other parts of Python have become obsolete.
I find converting things from map objects or filter objects back to lists to be a bit clunky. Not to mention chaining operations makes it even more clunky. Some syntatic sugar would go a long way.
Dictionary comprehensions can be very elegant. List and dictionary comprehensions are very powerful and expressive abstractions. In fact, while not good practice you can pretty much write all Python code inside comprehensions including stuff regarding mutation.
This is valid(as in it will run, but highly unidiomatic) code:
quicksort = lambda arr: [pivot:=arr[0], left:= [x for x in arr[1:] if x < pivot], right := [x for x in arr[1:] if x >= pivot],
quicksort(left) + [pivot] + quicksort(right)][-1] if len(arr) > 1 else arr
print(quicksort([1, 33, -4, -2, 110, 5, 88]))
There in lies another reason why OrderedDicts are still useful even in 3.12
I work with different versions of Python3 (and 2 unfortunately) and some code is still in 3.6, hence I used OrderedDicts.
I find defaultdict, OrderedDict, namedtuple among other data structures/classes in the collections module to be incredibly useful.
Another module that's packaged with the stdlib that's immensely useful is itertools. I especially find takewhile, cycle, and chain to be incredibly useful building blocks for list-related functions. I highly recommend a quick read.
EDIT: functools is also great! Fantastic module for higher-order functions on callable objects.
https://docs.python.org/3/library/itertools.html
Definitely very excited to see this be a thing. Genuinely liked the approach to make function calls strongly typed and rely on functional programming principles.
During my senior year, I worked on a research project very similar to this and I’m glad to see this out there for everyone. I’d love to connect with the team if possible!
Posted by
judicious on Thursday February 29, 2024 @04:06PM
from the engineering.ramp.com dept.
Posted by
judicious on Saturday February 10, 2024 @11:52AM
from the solutionspace.blog dept.
I’m always amazed by the level of the discussions on Signals and Threads. I especially enjoyed hearing about the challenges with performance engineering in OCaml versus C++. The work on unboxed types is very promising.
Posted by
judicious on Sunday November 26, 2023 @02:23PM
from the a16z.com dept.
Posted by
judicious on Saturday November 25, 2023 @07:01PM
from the databento.com dept.
This is unironically my plan/playbook with ideas I have for startups. Start with Python, node, or whatever. Then go to Rust once product-market fit has been established.
Rust really hits that sweet spot with memory-management, programming paradigm flexibility, and speed.
It’s precisely great for what I need because it’s essentially an ML with good imperative constructs.
I loved reading the “making of” post. I’m very interested in getting into technical writing and your post, really helped me understand your thought process behind “Elixir at Ramp”.