Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

C ispred Jave po popularnosti?

[es] :: Advocacy :: C ispred Jave po popularnosti?

Strane: << < .. 15 16 17 18 19 20 21 22 23

[ Pregleda: 85363 | Odgovora: 443 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p1-76.bvcom.net.



+1064 Profil

icon Re: C ispred Jave po popularnosti?30.05.2017. u 18:09 - pre 84 meseci
Valjda computer scientists prave programske jezike ;)
Pogle Idris ugradili su dokazivanje teorema pa sad ti vidi ;)
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8632
*.ptt.rs.



+2790 Profil

icon Re: C ispred Jave po popularnosti?30.05.2017. u 18:26 - pre 84 meseci
Aha, a ko je napravio uspešne jezike PHP, Python i Ruby?
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: C ispred Jave po popularnosti?30.05.2017. u 18:33 - pre 84 meseci
jezike pravi ko zeli kad za to ima potrebu .. to na kojim se studijama
to uci nije preterano bitno (i na telekomunikacijama na etf-u se pre 20+
godina ucilo kako se pisu kompajleri)

php je napisao zend kao diplomski rad na faxu... njegov profesor,
mentor, bio ovde u beogradu tamo 2000 na java danima (kada smo sa
ictt-om dovukli sun-ove inzenjere iz izraela, tad je bio i taj profa, ne
secam se kako se zove, treba da ima negde slika na netu sa tog eventa)
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8632
*.ptt.rs.



+2790 Profil

icon Re: C ispred Jave po popularnosti?30.05.2017. u 18:35 - pre 84 meseci
Pravi onaj ko misli da ima dobru ideju. Šta će od toga da uspe, vreme će pokazati.

Ja ne msilim da je budućnost u jezicima nalik na idris i F*.Net, nego u jezicima nalik na Lean. Nisam rekao da će on biti taj, ali nalik na taj. Eto, MS je razvojno krenuo u dobrom pravcu.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p1-76.bvcom.net.



+1064 Profil

icon Re: C ispred Jave po popularnosti?30.05.2017. u 20:39 - pre 84 meseci
Cek, taj Lean nema ga ni u listi programkih jezika na wikipediji ;p
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8632
*.ptt.rs.



+2790 Profil

icon Re: C ispred Jave po popularnosti?30.05.2017. u 20:46 - pre 84 meseci
Pa šta.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p1-76.bvcom.net.



+1064 Profil

icon Re: C ispred Jave po popularnosti?30.05.2017. u 20:51 - pre 84 meseci
Pa kako ako je buducnost da nema kompajler za njega niti bilo kakav info? Jezici od interesa su Coq, Agda i Idris, to je taj fazon.
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8632
*.ptt.rs.



+2790 Profil

icon Re: C ispred Jave po popularnosti?31.05.2017. u 05:12 - pre 84 meseci
https://leanprover.github.io/

Nije bitno ni da li danas ima kompajler. Bitna je paradigma. Naravno da se nijedan jezik neće koristiti pre nego što bude imao sve šta treba. Što se LEAN-a tiče, ima kompajler.

https://leanprover.github.io/

Idris nije taj fazon. Coq donekle jeste.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: C ispred Jave po popularnosti?31.05.2017. u 10:43 - pre 84 meseci
Napraviti jezik je prosto kao pasulj, ne moras zavrsiti CS da bi to uradio, treba samo da znas Lex&Yacc.
Realni problem zapravo nastaje kad treba da emitujes nesto iz kompajlera, sta je to nesto i koliko je dobro optimizovano, leksicka analiza i parsiranje na koju se svi primaju je najmanje vazna u celoj prici.

Ti pure functional i specijalizovani jezici kao sto su Coq, Idris i Lean, to je niche market, to interesuje samo primace i uzak krug profesionalaca (tipa matematicara). Moracu da vas razocaram ali ti jezici nikad nece videti svetlo dana van tog kruzooka.
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p1-76.bvcom.net.



+1064 Profil

icon Re: C ispred Jave po popularnosti?31.05.2017. u 15:24 - pre 84 meseci
Pa nije bas tako da je prosto. Svaki jezik iza sebe ima neku teoriju, parsiranje dolazi na kraju ...Naravno mozes uvek poceti od postojeceg jezika pa ja onda lakse. Sto se tice funkcionalnog programiranja ono je uslo u mainstream samo ne u svom cistom obliku.
Recimo Haskell je strahovito popularan iako je cist funkcionalan jezik. Idris takodje ima sledbenike iako je kompajler tek pre par meseci dostigao verziju 1.0. Ali to je daleko od nivoa optimizacije koje nudi GHC ...
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8632
*.static.sbb.rs.



+2790 Profil

icon Re: C ispred Jave po popularnosti?31.05.2017. u 16:10 - pre 84 meseci
mmix

Ni ja ne mislim da ce bas ti jezici zaziveti, ali ta paradigma hoce.

Napises specifikaciju, pola implementacije napises ti, a pola masina i na kraju je garantovano da kod odgovara specifikaciji (bug free). Imas compile time error za nesaglasnost koda sa specifikacijom.

Naravno da su Coq i Agda daleko od toga, ali polako. Lean se trudi da bude blizi, mada ce i on u djubre, da bi neki sledeci zaziveo.

Danas je specifikacija odvojena od implmentacije. Nemas compile time error za semanticke greske. Sav kod pises ti i na kraju ti nije garantovano da radi.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: C ispred Jave po popularnosti?31.05.2017. u 16:30 - pre 84 meseci
> Napises specifikaciju, pola implementacije napises ti,
> a pola masina i na kraju je garantovano da kod odgovara
> specifikaciji (bug free).

probano vec mnogo puta, nikad zazivelo, 99.9999% nikad nece zaziveti..

za sada najblize tome je ASN.1 https://en.wikipedia.org/wiki/Abstract_Syntax_Notation_One
a svi znamo koliko (ni)je isti zaziveo

specijalizovanih jezika ce uvek biti, hype-a ce uvek biti, ova situacija sada sa visokoproduktivnim uzasno neefikasnim jezicima (npr maloprepomenuti haskel) nikad nije bila ovako izrazena, i mene zanima kako ce se to zavrsiti.. mada obzirom na to da se ide ka ukidanju desktopa jasno je da javascript uzima ogroman deo kolaca, ma koliko gadno to zvucalo, i naravno ovi mobilni - java i swift .. a bekend mi opet nesto smrdi da ce 95+% posla raditi mikroservisi velikih provajdera (amazon, oracle, google, microsnot..) te ces kod njih imati bazu, queue, storage.. a tvoj app ces biti u stvari samo neka glue logika koju ces moci u bilo kom jeziku da pises ma koliko spor bio.. tako da tu ovi spori-visokoproduktivni jezici imaju neku buducnost..

a onih ~5% ce biti razvoj svih tih servisa i slicno i tu ce uvek dominirati c/c++ uz postapalice php/ruby/piton/..

naravno, mozda sam 100% omasio :D

a sto se razvijanja jezika tice, imam ja jednog poznanika koji je za svaki svoj projekat imao ideju da pise novi jezik, pa je tako bio glavni razlog za unistenje jedne multimilionske kompanije za vreme .com balona .. pritom svaki jezik koji je napravio je bio, po mom misljenju, a i po rezultatima, losiji od svega sto je u tom trenutku bilo dostupno, nego covek voli lex/yac vise nego da ode na internet i informise se o tome sta vec postoji :( .. taj kompleks "ja sam najpametniji na svetu" je sve cesci :(
**
 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 3453

Jabber: djoka_l


+1462 Profil

icon Re: C ispred Jave po popularnosti?31.05.2017. u 16:48 - pre 84 meseci
Sa novim razvojnim alatom XYZ, čak i oni koji nisu programeri mogu da naprave aplikaciju koja će profesionalno da izgleda.

Ovo slušam već 25 godina. I napravio sam u 50 različitih razvojnih okruženja aplikaciju Hello World koja izgleda profesionalno. Dalje od toga, potrebni su meseci mukotrpnog učenja i čukanje od strane visoko obućenih timova da se bilo šta drugo napravi...
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8632
*.static.sbb.rs.



+2790 Profil

icon Re: C ispred Jave po popularnosti?31.05.2017. u 16:59 - pre 84 meseci
bogdan.kecman

Pa, nije probano mnogo puta. Mozda je Coq prvi pokusaj. Nisi u tom fazonu da znas sta mu pripada, a sta ne. To je kao mesanje panka i hevi metala.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: C ispred Jave po popularnosti?31.05.2017. u 17:15 - pre 84 meseci
coq je samo "kako matematicar vidi resenje tog problema" naravno kroz
svoje matematicarske naocare - ko ima cekic njemu sve ekser.

asn1 jezicki moze da odradi i sve sto moze coq, pitanje je sad
okruzenja, ko/sta ce daj kod posle da procita i sta sa njim radi, coq
ima tu ideju da njegov env radi proveru dokaza i slicno, ali to je sad
externi env, nema veze sa samim jezikom.. jezicki nema nista vise od
asn1 ... asn1 je opet generalno "telekomunikaciono" okrenut (za
transmisiju, enkripciju i slicno) .. te sav njegov env gadja tu pricu ..
ali to je opet env, sam jezik moze da opise sta oces :D ...

no tih raznih "high order abstract syntax" ima dosta, sreo sam bar 10
standardizovanih ili polustandardizovanih sa donekle uradjenim env. koji
radi ovo i ono .. sve se to na kraju svede na "ja sam napravio zato sto
mi treba za X i koristim za X" i onda jos po neko to iskoristi za X i to
je to .. i vrlo je jednostavan razlog - sintaksa je generalno pdim,
kakvu god sintaksu oces to se lako napravi i isparsira .. ono "posle" je
ono sto predstavlja ozbiljan problem, a to posle da napravis
"univerzalno" ... nije jednostavno, a postavlja se pitanje dal za to
uopste ima potrebe
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8632
*.static.sbb.rs.



+2790 Profil

icon Re: C ispred Jave po popularnosti?31.05.2017. u 17:39 - pre 84 meseci
"high order abstract syntax" znaci da su tu rok i narodnjaci isto.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: C ispred Jave po popularnosti?31.05.2017. u 17:41 - pre 84 meseci
yup rok, dzihad, akvarel, ulje na platnu, odeca, radio talasi... zavisi
koliko je "high order" :D
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p1-76.bvcom.net.



+1064 Profil

icon Re: C ispred Jave po popularnosti?31.05.2017. u 17:56 - pre 84 meseci
bogdane haskell je kompajlirani jezik, mozes da pises C u njemu ;)
Ljudi koji stoje iza toga su se potrudili da bude kompetentan bilo cemu. Sad ako hoces da koristis njegov String koji je linked lista karaktera ili ByteString stvar je na tebi ;p
GHC je prosao veliki put i sad je na verziji 8.x i zaista je dobar u tome . Mozda da si me pitao negde 2007 rekao bih batali Haskell ali sad nesto nisam vise ubedjen u to.
Ono sto ovaj jezik ima je neverovatna ekspresivnost da sa malo koda zavrsis posao. Naravno paradigma mora da se menja, i nacin razmisljanja ali sto se tice performansi sasvim je ok.
Cak ima eksperimentalnu podrsku za SIMD u jednoj grani ;)
Ono sto Haskell omogucava je bezbolna integracija sa C-om pa cak ima i StablePtr da mozes iz C-a da petljas sa Haskell podacima a da ne brines da ce GC da pretumbava ;)
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.com
Via: [es] mailing liste

Sajt: mysql.rs


+2377 Profil

icon Re: C ispred Jave po popularnosti?31.05.2017. u 18:09 - pre 84 meseci
znam ja dobro sta moze a sta ne, jedan kolega iz svedske je jedan od
core developera tamo, smara non stop sta su novo uradili sta nisu, sta
valja, sta ne valja i slicno .. ide mi na ganglije .. do duse mnogo
bolje poznajem erlang i elixir (jedan od "izmisljaca" erlanga je lik
koji je dosao kao mccge developer u mysql kada smo otkupili mccge tim od
eriksona :D, ne znam dal je norvezanin ili sved, posto ih je bilo nesto
pola pola, mislim da je sved ... i on je do skoro non stop tupeo o
erlangu .. ) .. a danas *sve* moze se integrise sa c-om, ako ne radi
integracija sa c-om jezik ima nikakve sanse da uspe

> negde 2007 rekao bih batali...

nikad nisam bio u fazonu da bilo kome govorim sta da koristi a sta ne,
ako je dovoljno inteligentan znace sta treba da koristi za koju priliku,
ako nije svejedno mu nece pomoci da mu ja tupim sta da radi :D tako da
.. nikad nisam bio od tih koji smaraju da nesto treba ili ne ... ja imam
sta ja volim da kucam, sta mogu da kucam a sta necu da kucam ni pod
kojim uslovima .... ja recimo piton organski ne podnosim a pola sveta ga
obozava.. sigurno necu nikom reci "batali piton"
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p1-76.bvcom.net.



+1064 Profil

icon Re: C ispred Jave po popularnosti?31.05.2017. u 18:36 - pre 84 meseci
Pa pazi ako si prosao kroz nesto, onda coveku ustedis vreme.... da ne mora da prolazi kroz isto. Sto se tice integracije sa C-om, hm , retko koji jezik ima dobru. Recimo Go, katastrofa. Sta mislis zasto za go nema GUI? Pa zato sto su od verzije 1.6 zabranili da prenosis Go pointere u C.
A tek Java? Sto se pythona tice to je interpretirani jezik pa je neefikasan i spor tamo gde ga koristis za bilo kakvu vrstu racunanja. Recimo uporedi ova dva primera resenja problema 512 (jedan u pythonu jeda nu haskellu) na project euleru:

Code:

import math
import sys

class OddPrimeTable():
    def get(n):
        visited_range = n // 2 + 1
        visited = [False for i in range(visited_range)]
        sqrt_n = int(math.sqrt(n)) + 1 
        for i in range(3, sqrt_n, 2):
            if visited[i // 2]:
                continue
            for j in range((i**2) // 2, visited_range, i):
                visited[j] = True
        return [i for i in range(3, n + 1, 2) if not visited[i // 2]]
        
class Problem():
    def solve(self):
        for n in [100, 500000000]:
            print(n, '=>', self.get(n))

    def get(self, n):
        odd_bound = (n + 1) // 2     
        result = [2 * i + 1 for i in range(odd_bound)]
        prime_list = OddPrimeTable.get(n)
        print('odd prime list size =>', len(prime_list))
        for prime in prime_list:
            double_prime = prime * 2
            for j in range(prime, n, double_prime):
                result[j // 2] = result[j // 2] // prime * (prime - 1)
        return sum(result)

def main():
    problem = Problem()
    problem.solve()

if __name__ == '__main__':
    sys.exit(main())



Code:

import qualified Data.Vector.Unboxed.Mutable as V
import qualified Data.Vector.Unboxed as VU
import Text.Printf
import Control.Monad

odd_get n = do
    let visited_range = (n `quot` 2)+1
        sqrt_n :: Int
        sqrt_n = truncate (sqrt (fromIntegral  n::Double))
    visited <- V.replicate visited_range False
    mapM_ (\i-> do
            let ind = (i*i)`quot`2
            v <- V.unsafeRead visited $ i `quot` 2
            when (not v) $ do
                mapM_ (\j-> do
                        V.unsafeWrite visited j True)
                      [ind,ind + i..visited_range-1]
          )      
        [3,5..sqrt_n]
    VU.filterM (\i-> do
                v <- V.unsafeRead visited (i`quot`2)
                return $ not v)
        $ VU.enumFromStepN 3 2 (n`quot`2-1)

get :: Int -> IO Int
get n = do
    let odd_bound = (n+1)`quot`2
    let tmp = VU.generate odd_bound (\i->2*i+1) :: VU.Vector Int
    result <- VU.unsafeThaw tmp :: IO(V.IOVector Int)
    prime_list <- odd_get n
    printf "odd prime list size => %d\n" (VU.length prime_list)
    VU.mapM_ (\prime-> do
        let double_prime = prime*2
        mapM_ (\j-> do
            v <- V.unsafeRead result (j`quot`2)
            V.unsafeWrite result (j`quot`2) ((v`quot`prime)*(prime-1))
            )
            [prime,prime+double_prime..n-1])
            prime_list
    result1 <- VU.unsafeFreeze result
    VU.foldM (\i j->return $ i+j) 0 result1

solve = mapM_ (\n -> do
    getn <- get n :: IO Int
    printf "%d => %d\n" (n::Int) getn) [100,500000000]

main = solve


Ono sto ces primetiti da pitonu treba jedno 5 x vise rama i 5 minuta a haskellu jedno 20 ak sekundi (koristeci llvm bekend) ;p

edit: ne pokusavajte ako nemate bar 16GB rama ;p
Imam i resenje koje ne zahteva mnogo rama ali zato je CPU time mnogo veci, to ni ne pokusavam u pythonu ;p



[Ovu poruku je menjao Branimir Maksimovic dana 31.05.2017. u 20:02 GMT+1]
 
Odgovor na temu

[es] :: Advocacy :: C ispred Jave po popularnosti?

Strane: << < .. 15 16 17 18 19 20 21 22 23

[ Pregleda: 85363 | Odgovora: 443 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.