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 ... 3 4 [5] 6 7 ... 153
61
Vývoj / Re:Rychlost Chez Scheme
« kdy: 21. 01. 2023, 12:01:04 »
U těchto jazyků je hlavní problém v syntaxi - Lisp je slepá ulička, kterou (skoro) nikdo fakt chodit nechce. Tu abstrakci si tam představit dovedu, ale za jakou cenu...
Muzes dat nejakej priklad problemu v syntaxi Lispu?

Ja se netajim tim, ze mi to vyhovuje a furt nedokazu pochopit co na tom komu muze vadit....
OK oteviraci zavorku pisu na trochu jiny misto nez v jinych jazycich, ale na to se prece snadno da zvyknout.
A vyhody ktery to prinasi jsou obrovske... homoikonicita, structured editing, nemusim resit priority operatoru ...
Samozřejmě tam žádný problém není, jen praktické výhody. Subjektivní preference jsou jiná věc.

Když už by se mělo kritizovat, tak spíše sémantiku, například typová dynamičnost, ale i na to jsou řešení (přinejmenším dvě).

62
Vývoj / Re:Rychlost Chez Scheme
« kdy: 21. 01. 2023, 11:57:31 »
autoři Chez Scheme dosahují rychlosti srovnatelné s Céčkem/Rustem
Nově ověřeno na novém projektu :) Klobouk dolů :D
Mohla by být nějaká ukázka pls? Jde mi o to, jaký "level" abstrakce ten kód má, jestli to třeba jen nění "prekabátěné céčko" (nic ve zlém, ale třeba na https://benchmarksgame-team.pages.debian.net/benchmarksgame/index.html je vidět, jak lidi ohýbají řešení až do extrému jen proto, aby z nějakého jazyka dostali další % speedupu). Fakt mě to zajímá, zrovna u Scheme.
Scheme je jen cíl transpilace, ten kód je dost nečitelný a plný lambd, podobný guláš jako výsledek překladu TS nebo Javy (GWT) do JS. Výchozí kód je čistě funkcionální (à la Haskell), do C má hodně daleko :)

63
Vývoj / Re:Rychlost Chez Scheme
« kdy: 20. 01. 2023, 22:37:25 »
autoři Chez Scheme dosahují rychlosti srovnatelné s Céčkem/Rustem
Nově ověřeno na novém projektu :) Klobouk dolů :D

64
zkušenosti se studiem zahraniční vysoké školy kompletně online
Britská Open University je hodně kvalitní, má kromě výuky i svůj výzkum a všechny úrovně studia. S uznáním v EU není problém a má akreditaci i v USA.

65
Vývoj / Re:Regulérní výraz pro funkce a metody v Go
« kdy: 18. 01. 2023, 23:51:36 »
Ta gramatika bude (přinejmenším) bezkontextová. Jak je zmíněno výše, Go má ve standardní knihovně prostředky pro parsing zdrojáků a práci s AST.
No "vic" nez bezkontextova urcite nebude, to by uz byl prirozeny jazyk :D tedy alespon dle Chomskeho hierarchie...
Přirozené jazyky v Chomského hierarchii vůbec nejsou. A programovací jazyky dost často bývají context-sensitive.
Nicmene, troufam si tvrdit, ze je fer mluvit o drtive vetsine programovacich jazyku jako o bezkontextovych - parser funguje nad gramatikou a ta je IMO bezkontextova takrka vzdy. Zbytek jsou uz semanticka pravidla aplikovana v jine fazi, neni-liz pravda?
Zhruba řečeno ano, ale ne nutně, parserů existuje hromada a některé jsou kontextové, ještě než se začne řešit sémantika. Někdy to jsou spíše anomálie.

66
Vývoj / Re:Regulérní výraz pro funkce a metody v Go
« kdy: 18. 01. 2023, 20:59:30 »
to by uz byl prirozeny jazyk
Přirozené jazyky bývají dost často bezkontextové, hlavně ty s bohatou morfologií nebo polysyntetické. Jsou výjimky, holandština nebo švýcarská němčina mají konstrukce, které bezkontextově vyjádřit nejdou, ale to jsou spíše netypické příklady.

67
Vývoj / Re:Regulérní výraz pro funkce a metody v Go
« kdy: 18. 01. 2023, 20:56:11 »
ok, diky za info. nenapadlo by ma ze spravit regex ktory len vyhlada funkciu ktorej telo medzi {} moze byt hocico(tzn len naparuje tu zatvorku) je taky problem.

tak som si spravil skript na to na koniec. na kolene na rychlo ale funguje:
Kód: [Vybrat]
package main

import (
"bufio"
"bytes"
"errors"
"io"
"os"
"path/filepath"
)

func main() {
args := os.Args

if len(args) != 2 {
println("missing file argument")
return
}

src, err := os.OpenFile(filepath.Clean(args[1]), os.O_RDWR, 0666)
if err != nil {
println(err.Error())
return
}

defer func() {
if err := src.Close(); err != nil && errors.Is(err, os.ErrClosed) == false {
println(err.Error())
}
}()

s := bufio.NewScanner(src)
s.Split(bufio.ScanLines)

fTok := []byte("func ")
openTok := []byte{'{'}
closeTok := []byte{'}'}
emptyTok := []byte{'{', '}'}

matches := make([][]byte, 0, 500)
var match bool
for {
if s.Scan() == false {
break
}
if match == false {
if bytes.HasPrefix(s.Bytes(), fTok) && (bytes.HasSuffix(s.Bytes(), openTok) || bytes.HasSuffix(s.Bytes(), emptyTok)) {
matches = append(matches, append(make([]byte, 0, len(s.Bytes())), s.Bytes()...))
matches[len(matches)-1] = append(matches[len(matches)-1], '\n')
match = bytes.HasSuffix(s.Bytes(), openTok)
}
} else {
matches[len(matches)-1] = append(matches[len(matches)-1], s.Bytes()...)
matches[len(matches)-1] = append(matches[len(matches)-1], '\n')
match = bytes.Equal(s.Bytes(), closeTok) == false
}
}

if len(matches) == 0 {
return
}

if _, err := src.Seek(0, io.SeekStart); err != nil {
println(err.Error())
return
}

data, err := io.ReadAll(src)
if err != nil {
println(err.Error())
return
}

for k := range matches {
data = bytes.Replace(data, matches[k], nil, 1)
}

if _, err := src.Seek(0, io.SeekStart); err != nil {
println(err.Error())
return
}

if err := src.Truncate(0); err != nil {
println(err.Error())
return
}

if _, err := src.Write(data); err != nil {
println(err.Error())
return
}
}

Pozor na pumping lemma ;)

68
Vývoj / Re:Regulérní výraz pro funkce a metody v Go
« kdy: 18. 01. 2023, 20:07:40 »
Ta gramatika bude (přinejmenším) bezkontextová. Jak je zmíněno výše, Go má ve standardní knihovně prostředky pro parsing zdrojáků a práci s AST.
No "vic" nez bezkontextova urcite nebude, to by uz byl prirozeny jazyk :D tedy alespon dle Chomskeho hierarchie...
Přirozené jazyky v Chomského hierarchii vůbec nejsou. A programovací jazyky dost často bývají context-sensitive.

69
Vývoj / Re:Regulérní výraz pro funkce a metody v Go
« kdy: 18. 01. 2023, 19:23:38 »
Ta gramatika bude (přinejmenším) bezkontextová. Jak je zmíněno výše, Go má ve standardní knihovně prostředky pro parsing zdrojáků a práci s AST.

70
Studium a uplatnění / Re:Studium IT na vysoké
« kdy: 18. 01. 2023, 00:23:11 »
spoustu lidí naučí VŠ lépe myslet
To se ale špatně vysvětluje.

71
Studium a uplatnění / Re:Studium IT na vysoké
« kdy: 17. 01. 2023, 14:39:57 »
Strach odpovědět, že? Zajímavé, jak nejpřesněji ví, že 5 let VŠ je na nic ti, co na té VŠ těch 5 let nevydrželi...
Ale no tak, někteří z nás vydrželi na VŠ i šest let :)
Někdo i 13 (navazující PhD) :)

72
Studium a uplatnění / Re:Studium IT na vysoké
« kdy: 16. 01. 2023, 21:00:13 »
Filozoficke predmety, ktore som absolvoval ja, neboli utrpenie, ale ze by som z nich mal prinos povedat nemozem :)
Záleží na škole, vyučujícím a syllabu. Matfyz nezklamal. Ale Kryl byl svéráz.

73
Studium a uplatnění / Re:Studium IT na vysoké
« kdy: 16. 01. 2023, 13:03:03 »
Studovat nahodne predmety typu "analyza4", ci "filozofia pre matfyzakov",
Zrovna první semestr (nebo spíše dva) analýzy použije každý, protože se tam  probírají naprosté základy formalismu, na kterých stojí všechny ostatní informatické předměty (logické a FP, složitost, vyčíslitelnost, optimalizace…). Stejně tak temno. A filosofie programovacích jazyků byla na Matfyzu jedním z nejpřínosnějších předmětů (v podání Kryla).

74
Studium a uplatnění / Re:Studium IT na vysoké
« kdy: 13. 01. 2023, 21:17:29 »
Argument proti je jednoduchy: za povedzme 1 rok snahy sa bezne sikovny clovek moze naucit vsetko zaujimave, co mu povedzme studium informatiky na Matfyze ponuka. Zvysne 4 roky je premarneny cas.

...
Fojaky, databazy, UI, nejake alternativne programovanie, statistika. Plus povedzme Fourierova transformacia.

Este nieco, co nie je trivalne a je zaujimave niekoho napada? :)

Tak ty so svojim zjednodusovanim, asi tiez patris k tym vedomostami nezatazenym stastlivcom, ktorym sa podarilo zamestnat v IT  :)
 
keby si chodil na VS, tak by si vedel ze tam nebolo nic trivialne. Ti co uz o tom dost vedia, aby sa zviditelnili casto pouzivaju toto slovo ze to je "trivialne", ale pre tych co o tom vedia uplne hovno to trivialne vobec nie je.

Tak si teda zober cim vsetkym dneska student musi prejst:
zaklady:
linearna algebra, maticovy pocet, matematicka analyza funkcii jednej a viac premennych, diferencialne rovnice, numericke metody, linearne programovanie, nelinearne programovanie, pravdepodobnost+ statistika+nahodne provcesy, ...
teoreticka informatika a teoria zlozitosti
aplikacny software: matlab, R
programovanie proceduralne + objektove: python, C/C++, Java
programovanie strojove: assembler
programovanie funkcionalne + logicke: LISP, Scheme, alebo Haskell, Prolog
databazy: SQL
...
teraz ma viac nenapada
a daj to za rok
Chybí tam přinejmenším teorie množin, diskrétní matematika a obecná algebra. Takže to bude nejméně na rok a půl  ;D

75
Studium a uplatnění / Re:Studium IT na vysoké
« kdy: 13. 01. 2023, 20:24:31 »
pockej, na to snad staci 1 - 2 tydny max.
at nezeru, v podstate by si dal matfyz do mesice.

ja teda samozrejme nevim kefalin, co presne znamena to "trivialni".
ja tyhle modni cizi slova moc nemusim


jojo, to sou ty paralelni vesmiry.
ze se ale protinaji zrovna na rootu.


Argument proti je jednoduchy: za povedzme 1 rok snahy sa bezne sikovny clovek moze naucit vsetko zaujimave, co mu povedzme studium informatiky na Matfyze ponuka. Zvysne 4 roky je premarneny cas.
  ;D

Fojaky, databazy, UI, nejake alternativne programovanie, statistika. Plus povedzme Fourierova transformacia.

Este nieco, co nie je trivalne a je zaujimave niekoho napada? :)
Matfyz je pro lůzry :D

Stran: 1 ... 3 4 [5] 6 7 ... 153