SQLite parse_number eklentisinde C ve Rust performans karşılaştırmasıC vs Rust performance comparison in the SQLite parse_number extensionHabere gitRead the article Türkçe (otomatik çeviri) English (automatic translation) |
ÖzetSummarySimon Willison, SQLite'in parse_number() uzantıları için dört farklı sürümü (iki C, iki Rust) kıyasladı. Clinger'ın hızlı yolunu kullanan C uygulaması satır başına 16–19 ns'ye ulaştı; bu süre, Rust sürümlerinin yaklaşık iki katı kadar hızlı. Dört uygulamanın tamamı ise 8 milyon bulanık testten başarıyla geçti. İlk istemden nihai araştırma raporuna kadar tüm deney, Claude Opus 5.5 tarafından yönlendirildi.Simon Willison compared four different versions (two in C, two in Rust) of SQLite's parse_number() extension. The C implementation using Clinger's fast path achieved 16–19 ns per line, roughly twice as fast as the Rust versions. All four implementations successfully passed 8 million fuzz tests. The entire experiment, from initial prompt to final research report, was orchestrated by Claude Opus 5.5. |
Neden ÖnemliWhy it mattersBu sonuç, sistem yazılımında C ile Rust arasındaki tartışmaya somut ve tekrarlanabilir bir veri noktası sunuyor. Dil seçimi, kullandığınız belirli ayrıştırma algoritmasından daha az önemli. Ayrıca büyük dil modeli (LLM) ile sistem düzeyinde bir mikro kıyaslamanın uçtan uca oluşturulup, iyileştirilip belgelendiği pratik bir iş akışını gösteriyor. Bu yaklaşım, derin C bilgisi olmadan SQLite'ı genişletmek isteyen geliştiriciler için engeli düşürüyor.This result provides a concrete and reproducible data point for the debate between C and Rust in systems programming. It suggests that language choice matters less than the specific parsing algorithm employed. Additionally, it demonstrates a practical workflow where an LLM end-to-end builds, optimizes, and documents a systems-level micro-benchmark. This approach lowers the barrier for developers who want to extend SQLite without deep C expertise. |
Öne ÇıkanlarHighlights
|
EleştiriCritical take“C, Rust'u yeniyor” başlığı aslında “elle ayarlanmış bir hızlı yol, kütüphane çağrısını yeniyor” demek. Bu karşılaştırma, algoritma seçimini dil seçimiyle karıştırıyor. Üstelik tüm kod tabanı tek bir sohbet oturumunda yapay zeka tarafından üretildi. Bu durum, “araştırma rapor” ifadesini cömert kılıyor. Deneyimli bir C geliştiricisinin, LLM'in yinelemeli istemleri olmadan aynı sonuca ulaşıp ulaşamayacağı ise belirsiz.The headline 'C beats Rust' actually means 'a hand-tuned fast path beats a library call.' This comparison conflates algorithm selection with language choice. Furthermore, the entire codebase was generated by an AI in a single chat session, making the term 'research report' generous. It remains unclear whether an experienced C developer could reach the same result without the LLM's iterative prompting. |