Skip to content

Instantly share code, notes, and snippets.

View kant2002's full-sized avatar
🚩
NativeAOT all the things! Buy Me a Coffee - https://ko-fi.com/andriikurdiumov

Andrii Kurdiumov kant2002

🚩
NativeAOT all the things! Buy Me a Coffee - https://ko-fi.com/andriikurdiumov
View GitHub Profile
@kant2002
kant2002 / Dependencies.md
Last active April 8, 2024 14:03
Іструкції по збірці ісходного коду Дії локально

Аплікації

Репозиторій Мій Опис Опис Дії
android-diia Андроід версій Дія.Апплікація
ios-diia iOS версій Дія.Апплікація

Сервіси

Репозиторій Опис Опис Дії
be-auth-service Керування авторізаціі через інші сервіси. This repository contains the service which provides authorization functionality with different strategies for the application.
@kant2002
kant2002 / Урок из Цезиума.md
Created March 7, 2024 08:33
Урок из Цезиума

Урок из Цезиума

Цезиум дает мне кучу анти-уроков по архитектуре компиляторов. Это явно не самый эффективный способ построения компилятора, так как вечный рефакторинг деморализует даже оптимистов вроде меня. Потому попробую рассказать как выглядит лень и не желание учить теорию.

Есть такая маленькая особенность в С, это то что в main последний return не обязателен и компилятор может его сам вставить за программиста. Мы как большие прагматики, сперва сделали какой-то костыль, чтобы тестовые програмки которые мы писали проходили. Просто смотрели на наличие return в теле функции и если его не было, компилятор возмущался. у нас тогда не было даже нормальных циклов в свитчей, потому это была победа. Но пришли циклы и с ними новые вызовы, добрый человек взял и начал строить граф зависимости между стейтментами, и пытался найти все ли пути ведут к выходу. Зашибись, прогресс идет. Но кто же знал что бывают бесконечные циклы, в которых есть return. Новый алгоритм с графами сломался :(. Сломался он пото

@kant2002
kant2002 / митні_правила.fsx
Created February 28, 2024 15:05
Тестування на базі властивостей
#r "nuget: FsCheck, 3.0.0-rc2"
#r "nuget: FSharp.Core.Ukrainian, 0.0.6"
open FsCheck
open FsCheck.FSharp
type ТипПалива = Дизель | Бензін | Електрика | Гибрид | REXГибрид
type НапрямокПродаж = Казахстан | Киргизстан
type Авто = {
Паливо:ТипПалива
@kant2002
kant2002 / 6 - targets.csproj
Created January 19, 2024 16:54
What MSBuild do
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<RootNamespace>_6___targets</RootNamespace>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
@kant2002
kant2002 / Гакст.cs
Created October 25, 2023 15:27
Интерпретатор Гакст
using System.Diagnostics;
using System.Text;
var программа = $@"12>
{{
42+
|
56=
{{
3?
@kant2002
kant2002 / gpu.fsx
Created October 7, 2023 05:59
Trivial ILGPU sample
#r "nuget: ILGPU"
open ILGPU
open ILGPU.Runtime
let ShiftBy42 (index: Index1D) (buffer: ArrayView1D<int, Stride1D.Dense>) (constant: int) =
buffer.[index] <- int(index) + constant
// Create main context
use context = Context.CreateDefault()
@kant2002
kant2002 / sqlparser.fsx
Last active September 29, 2023 11:19
Simple SQL Parser
#r "nuget: fparsec"
open FParsec
let test p str =
match run p str with
| Success(result, _, _) ->
printfn "Success: %A" result
| Failure(errorMsg, _, _) -> printfn "Failure: %s" errorMsg
let ws = spaces
@kant2002
kant2002 / Program.cs
Created July 7, 2023 12:31
translation
#line 1 "test.txt"
Console.WriteLine("hello world");
@kant2002
kant2002 / Program.fs
Last active June 23, 2023 13:47
CNCF claim check
open Octokit
open LibGit2Sharp
open System.IO
open System.Linq
let github_token = "changeme"
let rec queryRepos (github:GitHubClient) page items =
task {
let searchRequest = SearchRepositoriesRequest(Topic = "cncf", Page = page, SortField = RepoSearchSort.Stars)
using System.Collections.Generic;
using System.IO;
using System.Net;
using System.Net.Http;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
internal class FromFolderDelegatingHandler : DelegatingHandler
{