Интересное для любителей rust-lang
Привет, попробую сюда постить интересное про раст
хорошая репа с консольным утилитам
github.com/Canop
1) github.com/Canop/whalespotter
Привет, попробую сюда постить интересное про раст
хорошая репа с консольным утилитам
github.com/Canop
1) github.com/Canop/whalespotter
На Go теж доволі швидко, може запропонувати порівняти в наступній статті
playground
package gouuid import ( "github.com/google/uuid" "github.com/stretchr/testify/require" "strings" "testing" ) const ( input = `53d33661-95f4-4410-8005-274cb477c318, fd9cef68-7783-449e-bd02-f6aa1591de84, 6160607e-c770-40ab-94be-ddd5dd092300, 4a35fac7-6768-4c57-8a06-42b96c5b3438,7864a0db-1707-4358-b877-594bc4648f6b, 68d2091f-e194-4361-a1a4-f38332b1ab13, 979cde21-0b24-433e-9790-8d52daf125fd, 83a36f67-db75-4b8f-92a8-369001416a5e, I_AM_NOT_A_GUID,3f4d46ca-0b38-4f65-b915-d280187bcc4f, 71ba44b1-eb6d-472c-841a-56f08f08ec87, d12be9e7-2eb6-4841-b9d0-275db66a4d6e, f9942cff-c51e-4d48-9b8e-225edc397528, ` ) func ExtractIDs(input string) []string { var tokens = strings.Split(input, ",") var result = tokens[:0] // reuse for _, token := range tokens { var trimmed = strings.TrimSpace(token) if _, err := uuid.Parse(trimmed); err == nil { result = append(result, trimmed) } } return result } func TestExtractIDs(t *testing.T) { require.Equal( t, []string{"53d33661-95f4-4410-8005-274cb477c318", "fd9cef68-7783-449e-bd02-f6aa1591de84", "6160607e-c770-40ab-94be-ddd5dd092300", "4a35fac7-6768-4c57-8a06-42b96c5b3438", "7864a0db-1707-4358-b877-594bc4648f6b", "68d2091f-e194-4361-a1a4-f38332b1ab13", "979cde21-0b24-433e-9790-8d52daf125fd", "83a36f67-db75-4b8f-92a8-369001416a5e", "3f4d46ca-0b38-4f65-b915-d280187bcc4f", "71ba44b1-eb6d-472c-841a-56f08f08ec87", "d12be9e7-2eb6-4841-b9d0-275db66a4d6e", "f9942cff-c51e-4d48-9b8e-225edc397528"}, ExtractIDs(input), ) } func BenchmarkExtractIDs(b *testing.B) { for i := 0; i < b.N; i++ { _ = ExtractIDs(input) } }
BenchmarkExtractIDs 655533 1627 ns/op 328 B/op 6 allocs/op PASS
Небольшая печалька для скала програмистов(scala vs rust)
cobalt-org.github.io , github.com/cobalt-org/cobalt.rs — тоже интересный генератор статических сайтов. :-)
было бы клево если бы функи можно было так декларировать
#i32,i32->i32
fn add(x,y){
}
вместо
fn add(x:i32, y:i32) -> i32{}
если бы еще создали предефайнед сборки с самыми популярными пакетами, чтобы не компилировать под каждый проект заново, иногда занимают по
gluon-lang.org — ИМХО как по-мне этот язык, написанный на расте, 100% должен быть интересен любителям раста. :-)
15 комментариев
Добавить комментарий Подписаться на комментарииОтписаться от комментариев