Zobrazit příspěvky

Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.


Příspěvky - Idris

Stran: 1 ... 75 76 [77] 78 79 ... 153
1141
Vývoj / Re:CSP v embedded světě
« kdy: 24. 03. 2021, 22:45:31 »
Bez explicitního free.
A jak bys to delal v cistym C?
Jako jiné knihovny v čistém C, použít cleanup a někde bokem si držet informace o strukturách (to kvůli polymorfismu při úklidu). Na embedded bych tedy především nealokoval nic na haldě, ale obecně se používají v sofistikovaných knihovnách právě ukazatele na “typy”. Je to taková vyšší dívčí céčka, třeba CoreFoundation je dobrý příklad.

1142
Vývoj / Re:CSP v embedded světě
« kdy: 24. 03. 2021, 22:41:35 »
Hm, tak teď už to GCD nepřipomíná...
A je tam ten select, co ses na něj ptal.
Jak na to tak koukám, tak pro čisté C by se na embedded hodilo něco jako kqueue — kanály vyžadují extra syntax (nebo hnusné workaroundy).

1143
Vývoj / Re:CSP v embedded světě
« kdy: 24. 03. 2021, 22:35:51 »
Taky správa paměti by šla řešit elegantně, když už tam je tolik struktur, klidně by mohla alokace být transparentní.
Co je transparentní alokace?
Bez explicitního free.

1144
Studium a uplatnění / Re:Jak fungují rozvrhy na ČVUT?
« kdy: 24. 03. 2021, 22:33:43 »
žádné hodiny ráno, na to fakt z vysoka kašlu
Doporučuji Vysokou školu života.

1145
Studium a uplatnění / Re:Jak začít programovat od nuly?
« kdy: 24. 03. 2021, 20:55:35 »
I když LISP je jazyk napikaču.
Proč? Všechny jazyky konvergují k Lispu :)
Nemá typovou kontrolu. Napsat v tom i triviální kód bylo puzzle. Kůl mi přilo akorát že kód vypadal jako konfigurák.
Typovou kontrolu vskutku nemá, ale to nemá hodně jazyků. Třeba Smalltalk, a taky byl svým způsobem revoluční.

1146
Studium a uplatnění / Re:Jak začít programovat od nuly?
« kdy: 24. 03. 2021, 19:45:06 »
Kdo je autorem? Ta angličtina je otřesná.
Myslim, ze Linus Torvalds. Asi se mu tam pletla Finstina.
Torvalds má hodně dobrou angličtinu, soudě podle jeho projevů v diskusích.

Navíc ty příklady v Go jsou demagogické bláboly. Go má svoje mouchy, ale seriózní diskuse by se zaměřila na podstatné nevýhody. Tohle byl jen stupidní hejt.

1148
Vývoj / Re:CSP v embedded světě
« kdy: 24. 03. 2021, 00:52:52 »
Hm, tak teď už to GCD nepřipomíná...
Na API CSP se nic nezměnilo :)

A je tam ten select, co ses na něj ptal. Nakonec jsem ho implementoval jednoduše jako skupinu tasků. Spustí se jenom jeden, ale vymažou se z tabulky všechny.
Taky správa paměti by šla řešit elegantně, když už tam je tolik struktur, klidně by mohla alokace být transparentní.

Jak se přepíná kontext?

1149
Vývoj / Re:CSP v embedded světě
« kdy: 24. 03. 2021, 00:10:41 »
Na cem jedete, ja chci taky takovej caj :P
A ještě mi pořád nedošel!

"Migrující tasky" (kind of...) jsou na světě :)

https://youtu.be/GMtUod8J4GA

Zdroják: https://gist.github.com/mprymek/1b93972b71b8d3a59e143819356ea605
Hm, tak teď už to GCD nepřipomíná...

1150
Na "super skvělé" škole budeš muset projít řadou sít, která likvidují lidi
To je legitimní postup, jak vyfiltrovat lemply ;)

1151
Studium a uplatnění / Re:Jak začít programovat od nuly?
« kdy: 23. 03. 2021, 21:09:14 »
I když LISP je jazyk napikaču.
Proč? Všechny jazyky konvergují k Lispu :)

1152
Nejlehčí je Vysoká škola života.

1153
Vývoj / Re:Arduino a knihovny
« kdy: 19. 03. 2021, 18:31:24 »
Ty argumenty mi nepříjdou dvakrát přesvědčivé, myslel jsem, že to bude silnější. Navíc lecos z toho už asi neplatí nebo nebude platit v blízké budoucnosti. Například u defer, dokumentace tvrdí:
Citace
The defer keyword is almost entirely supported, with the exception of deferring some builtin functions.
Navíc i když zpřehledňuje kód, dá se bez něj docela dobře žít.

Recover osobně nepoužívám, takže mi taky nechybí, net není a nebude v dohledné době podporován, takže to mne taky neomezuje. Externí síťová knihovna recover nepoužívá. Problémem je map, ani ne tak to omezení typů, ale co jsem četl, tak jeho neoptimalizovanost v některých případech. Chtěl bych věřit, že tohle se brzy spraví.

GC mi připadá, že není tak hrozný jak bylo prezentováno. Zaprvé jde vypnout (jinak by to na malých AVR ani nejelo) a s příchodem čipů s větší pamětí to není kritické. Je jasné, že na alokace člověk musí myslet, ale to platí i když to píše v C. Zadáním gc=none lze navíc trasovat místa, kde se alokuje paměť a jestli s tím nejde něco udělat. RT byl vždy vyšší dívčí a člověk musí myslet na věci, které jinde řešit nemusí. A co se týče zmiňovaného Pythonu, ve zdrojových kódech autoři píší, že se silně inspirovali GC z MicroPythonu. :)

Co se týče knihoven driverů, kupodivu jsem zatím nenarazil. Osobně to zatím jako velký problém nevidím. V projektech, které plánuji, těch používaných zařízení zase tolik není a přepsat případně driver z C do Go nevidím jako zásadní problém (největší může být s časováním). Zvláště poté, co jsem viděl jaká zvěrstva tam jsou občas páchána, takže bych to musel stejně upravovat. Navíc mi i myšlenka naprototypovat to rychle v Go a pak to případně přepsat do C, pokud je potřeba, připadá jako zajímavá.

Nejsem naivní a je mi jasné, že určitě někde narazím, ale zatím to zkusím dál. Pro kontext ještě jednou doplním, že se primárně bavím o CortexM.
Jo, výhled je pozitivní, určitě to postupně vylepší. Go by bylo pro MCU ideální jazyk, kdyby se podařilo nějak eliminovat GC (což je jednodušší, než se může zdát).

1154
Vývoj / Re:Arduino a knihovny
« kdy: 18. 03. 2021, 23:29:48 »
Python nemá klasický GC. Nebo se něco měnilo?
Vůbec nevím, co má nebo nemá Python, ale vím, že paměť nějak hlídá a tyhle brikule nedělá :)
Protože počítá reference. Když napíšu, že se tracing GC chová jako v Go obecně, tak nemůžeš argumentovat něčím, co má počítání referencí, to je zjevně irelevantní ;) (Python má i mark-and-sweep jen pro cykly, jako zadní vrátka, což ovšem na věci nic nemění)

[edit] P.S. Kolega mě předběhl s vysvětlením.

1155
Vývoj / Re:Arduino a knihovny
« kdy: 18. 03. 2021, 23:24:27 »
Takhle funguje každý GC (pokud nějak drasticky nesnížíš GOGC).
Nepamatuju si, že bysme tohle řešili s Pythonem.
Python nemá klasický GC. Nebo se něco měnilo?

Stran: 1 ... 75 76 [77] 78 79 ... 153