i love c++ mcyoung.xyz/2025/07/14/b...
14.07.2025 17:35 β π 32 π 6 π¬ 7 π 1@joomy.bsky.social
researcher at Bloomberg. somehow a computer doctor. posts about functional programming, dependent types, metaprogramming, linguistics, and Turkey. π¦: http://twitter.com/joomy πΈοΈ: http://joomy.korkutblech.com
i love c++ mcyoung.xyz/2025/07/14/b...
14.07.2025 17:35 β π 32 π 6 π¬ 7 π 1excited that my team at Bloomberg is supporting PhD students in certified programming (and other infra/sec topics too!) through a fellowship. π»π‘οΈ
includes stipend, tuition, and internship. timely for Rocq and proof assistant folks as science funding tightens. please apply by July 18th! π¬
Violating memory safety with Haskell's value restriction
welltypedwit.ch/posts/value-...
there are two lines of research I'd take a look at:
1. bidirectional predicates in the Prolog world (I think someone already mentioned logic programming)
2. bidirectional lenses. maybe too domain-specific, but probably a good start:
www.seas.upenn.edu/~harmony/
dl.acm.org/doi/10.1145/...
PLUM folks should be made honorary New Jerseyans...
25.04.2025 00:36 β π 1 π 0 π¬ 1 π 0hey, Iβm going to be the last talk of the upcoming NJPLS! now I really have to prepare a talkβ¦ ποΈ njpls.org/may2025.html
25.04.2025 00:33 β π 2 π 1 π¬ 1 π 0New York Ataturk Chorus Summer Concert flyer. Saturday, May 31, 2025. 2:30pm.
NYC folks, come hear me sing on May 31!
tickets available here: www.eventbrite.com/e/new-york-a...
I'm writing a paper and I once again found myself explaining intrinsic vs. extrinsic style of verification. I never know what to cite for this, so I decided to dig a bit deeper to find the origin of these terms. please lmk if you find anything else: joomy.korkutblech.com/posts/2024-1...
12.02.2025 08:04 β π 4 π 1 π¬ 0 π 0I see your cinnamon and raise you a cinnamon
04.12.2024 16:55 β π 3 π 0 π¬ 0 π 0A printed and bound copy of my dissertation. My title βForeign Function Verification Through Metaprogrammingβ, my name βJoomy Korkutβ, and the Princeton logo are gold foil stamped on a black leather cover.
bound copies of my dissertation arrived and they are so pretty βοΈ
27.11.2024 14:36 β π 14 π 1 π¬ 1 π 0thank you!
though to be fair, there is a lot of existing work on reasoning about C programs: softwarefoundations.cis.upenn.edu/vc-current/P...
in the paper, we are using one of them (VST) to reason about C foreign functions linked to CertiCoq-compiled Coq programs.
We didn't go the full ITree route in the paper since the tree is parametrized by a stack of event types, which complicates how the execution function has to be written. (can also have a runtime cost so we have to be careful) But I imagine the ITree approach would organize the proof+program better.
20.11.2024 11:55 β π 1 π 0 π¬ 0 π 0The path is less clear for other effectful programs. There is work on proving effectful programs correct:
* github.com/search?q=rep...
* doi.org/10.4230/LIPI...
* doi.org/10.1145/3293...
Expressing the program with an ITree and writing an execution function for it in C is probably the way to go.
Thank you!
I don't foresee a huge challenge for the mutable array example: We have a purely functional model that computes the same result; VST is good at such proofs. We also now have proofs about how the GC deals with mutation.
if I misunderstood and you were asking about dynamic checks for safe FFI, there's some work on that too: www.cs.princeton.edu/~appel/paper...
19.11.2024 23:25 β π 2 π 0 π¬ 1 π 0thank you!
can you clarify what you mean by dynamically changing models? do you mean based on input from the outside world? I think you would have to model that as an effect, like in section 12.2.
"A Verified Foreign Function Interface between Coq and C", by me, Kathrin Stark and Andrew W. Appel will appear at POPL 2025! www.cs.princeton.edu/~appel/paper...
this is the culmination of years of research (and most of my grad school work), so I'm excited to see it finally published! π
Is it cool if I post one of my favorite creations from the other place?
#functionalprogramming #math #programming
iβm prob too old to dare to explain, but in my understanding βcookedβ is bad. βcookingβ (as in βlet him cookβ) is good.
14.11.2024 18:46 β π 0 π 0 π¬ 0 π 0though the Twitter Circle was a decent temporary hack for this. I added some of those personal connections to my circle and exclusively tweeted in Turkish there.
02.07.2023 00:29 β π 0 π 0 π¬ 0 π 0Twitter was really bad at multilingualism. my followers were mostly English speakers (professional connections) and a few hundred Turkish speakers (personal connections). I avoided tweeting in Turkish because it could look unprofessional.
02.07.2023 00:28 β π 4 π 0 π¬ 1 π 0if you run haskell on an ibm laptop, call it a thunkpad
28.06.2023 17:19 β π 8 π 5 π¬ 0 π 0