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

[D] D Programming Language

[es] :: Ostali programski jezici :: [D] D Programming Language

Strane: < .. 1 2 3 4 5 6 7

[ Pregleda: 29557 | Odgovora: 130 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

FuzzyCreation

Član broj: 112586
Poruke: 33
*.eunet.yu.



Profil

icon Re: [D] D Programming Language24.01.2007. u 18:28 - pre 210 meseci
Mislim da sam ti lepo kazao u prethodnim postovima (moze se naci u dva razlicita posta)
Gledano po paradigmama ja preferiram ovako: C(strukturalni), Modula-2(modularni), Java(OO), Scheme(funkcionalni), Prolog(logicki)
U poslednjih godinu dana najvise programiram u Javi, pre toga iskljucivo u Cu(ne u C++u).
Od C++ vise preferiram cak i brainfuck.

Drugo ja nisam nigde tvrdio da je minimalizam dobar (jedan od prvih postova, kao reakcija na ono programski
jezici bi trebali biti kao formalne teorije), nego suprotno. Kasnije se rasprava razvila o samom minimalizmu,
o njegovoj mogucnosti/nemogucnosti.

Druga stvar pragmaticno je i kada te neko necim ogranici. Nije pragmaticnost samo dozvoliti potpunu
slobodu, treba nesto i ograniciti, naci pravu meru, to je pragmaticnost sa stanovista programskog jezika.
 
Odgovor na temu

cynique
Ivan Štambuk
Zagreb@Croatia

Član broj: 93690
Poruke: 155
193.198.17.*

ICQ: 106979934
Sajt: istambuk.blogspot.com


Profil

icon Re: [D] D Programming Language24.01.2007. u 21:01 - pre 210 meseci
Citat:
NrmMyth: Ali po meni to nije problem sintaxe nego se problem javlja zato jer se pokusava stvoriti od templatea nesto za sto one nisu napravljene.


To jest problem sintakse neovisno o tome što ti mislio. Činjenica je da se templatei koriste debelo za metaprogramiranje, da krema kreme (Alexandrescu, Abrahams) piše o njima knjige koje se najbolje mogu opisati kao "101 novi prljavi trik sa C++ templateima za koje garantirano niste znali da su mogući", da se koriste u biblioteci iz koje se uzimaju ideje za sljedeću verziju C++ standarda (boost), da je programiranje u njima odvratno, nečitko, debuggiranje virtualno nemoguće, a održavanje tuđeg koda da i ne spominjem (mnijem da se ni osobe sa 10+ godina industrijskog C++ iskustva ne bi usudile tek tako modificirati neke core boost dijelove, i pri tome znati da će se kod dobro _kompajlirati_ (raditi je već kvantni skok :))

Citat:
Kad smo kod toga, jeli komitet za standard C++-a razmisljao o templateima i ovim stvarima?


Ne, C++ komitet je sastavljen od korporativnih plaćenika koji samo gledaju kako će što prije i sa što manjim implikacijama na već postojeću bazu programera/koda zakrpati probleme u trenutnoj varijanti jezika, ne od dizajnera jezika koji sustavno planiraju njegovu evoluciju anticiparajući nadolazeće paradigmatske posmake. Bolje pročitaj one Worse is better članke, pogotovo onaj o modelima prihvata softvera u industriji :)

Citat:
Ali nista se nebi promijenilo, on bi rekao da taj jezik stvara probleme, ja bi samo ponovio isto s zamjenom subjekta


I opet bi počinio istu falaciju. Bio bi to neki drugi odvratno mutirani C dijalekt sa navrat-nanos nakalemljenim OO ekstenzijama. Bio bi sredstvo, ne cilj.

To je isto kao da kažeš: "Da nema Alberta Einsteina, ne bi bilo STR/OTR", ili "Da nema Nikole Tesle, velikog SRBINA rođenog na području današnje HRVATSKE, ne bi bilo izmjenične struje". Bilo bi, u nekom relativnom malom vremenskom okviru (najviše 10 god) bi sve to netko drugi isto tako otkrio.

Da parafraziram Shakespearea, oprostite na vulgarizmu, "g**** bi pod bilo kojim drugim imenom jednako smrdilo" (tko razumije, shvatit će :)

Citat:
Za takvo sto nije uopce potrebna nova konstrukcija, moze sve ostati na kompajleru.
Kompajler simulira funkciju i vidi dali ona koristi ikakve runtime-promjenjive varijable, ako ne onda se izvrsava s konstantnim varijablama i moze se izvesti optimizacija. Okvirno... :)


Pa i odvija se sve compile-time...zato i jest neodlučivo...hello?!

Optimizaciju metafunkcije bi trebao odraditi neki metakompajler, što je u ovom slučaju semantički analizator, odnosno kojigod računski model da on koristi za reprezentaciju značenja izraza (jer se evaluacijom značenja nekog izraza u biti i izračunava arbitrarna funkcija). Postoje raznorazni teoretski modeli (aksiomatska, operacijska i denotacijska semantika, svaki sa svojim prednostima i nedostacima), svima je zajedničko da značenje nekog izraza predstavljaju na temelju nekog apstraktnog matematičkog formalizma (aksiomi, interpreter, funkcije+domene). Semantički analizator ne vrši nikakvu "optimizaciju" - on samo čuva značenje. Većina dobro dizajniranih jezika svjesno postavlja ograničenja nad sustavom tipova (type system) i izračunima kakve on može obaviti, baš kako bi se izbjegla potencijalna neodlučivost. Iako neki to predstavljaju kao "feature" (recimo ovaj LISP dijalekt) - to je općenito nepoželjna karakteristika.
 
Odgovor na temu

cynique
Ivan Štambuk
Zagreb@Croatia

Član broj: 93690
Poruke: 155
193.198.17.*

ICQ: 106979934
Sajt: istambuk.blogspot.com


Profil

icon Re: [D] D Programming Language24.01.2007. u 21:05 - pre 210 meseci
Citat:
Goran Arandjelovic: @cynique
Ako kažeš da boost gurui znaju zašto su onako napisali Monad, kaži mi da li misliš da je Microsoft pogrešio stvorivši C++/CLI?


Da li je pogriješio - to može samo vrijeme reći. Ja nisam Pitija iz Delfa.

Citat:
I sam je stvoren za one kojima je još uvek neophodan unmanaged kod i koji bi i dalje (manje-više) želeli da imaju moć C++-a. Ako su templejti isuviše ružni, zašto uopšte postoje sada genericsi?


Genericsi su svojstvo CLR-a, stvoreno za sve .NET jezika. U C++/CLI možeš koristiti i klasične templatea i genericse IIRC.
 
Odgovor na temu

cynique
Ivan Štambuk
Zagreb@Croatia

Član broj: 93690
Poruke: 155
193.198.17.*

ICQ: 106979934
Sajt: istambuk.blogspot.com


Profil

icon Re: [D] D Programming Language24.01.2007. u 21:19 - pre 210 meseci
Citat:
Nedeljko: Slažem se ako posmatramo ceo računar kao zatvoren sistem. Ali, sa stanovišta jadne aplikacije, ona ne zna kada će naići komunalci, jer o tome odlučuje .NET, koji radi po algoritmu, ali izvan same aplikacije.


Otprilike tako - svaki pomak miša od strane korisnika, svaki primljeni mrežni paket sa NIC-a, općenito svaki oblik interakcije (koja nije algoritamska!) nadilazi deterministička svojstva modernog računala promatranog kao konačnog automata. Par zanimljivih linkova na uobičajene misinterpretacije Chuch-Turingove hipoteze:

http://lambda-the-ultimate.org/node/203

http://lambda-the-ultimate.org/node/1038


Citat:
FuzzyCreation: Jos nisam video C#, Java kompajler/interpreter koji radi na nekom
kvantnom racunaru. U stvari ja jos nisam video kvantni racunar. A i skeptican sam po tom pitanju na osnovu
dosadasnjih iskustava. Matematicki modeli postoje, ali konkretne realizacije nema.


Čini mi se da su na Caltechu (gdje predaje valjda više Nobelovaca nego na svim EU sveučilištima skupa ;) već napravili eksperimente u kojima su ostvarili osnovna logička vrata (ionske zamke, polivalentna kvantna logika i ostala čudesa) i neke elementarne operacije na njima.

Kvantni algoritmi su nešto fascinantno, i ne bih to tek tako prekrižio. Kvantna teorija informacije je eksplodirala tek kad je Peter Shor pokazao da kvantno računalo može odraditi faktorizaciju u polinomnom vremenu - sveti gral obavještajnih agencija ;)

Vjerojatno je svima poznata ona priča kako je NSA poznavala diferencijalnu kriptoanalizu 20 godina prije ostatka svijeta? Možda već sad u nekom labu kuca neki kvantni CPU ;)
 
Odgovor na temu

NrmMyth
Ivan Maček
Split

Član broj: 63456
Poruke: 849
*.adsl.net.t-com.hr.

Sajt: www.dump.hr


Profil

icon Re: [D] D Programming Language24.01.2007. u 22:24 - pre 210 meseci
Citat:
cynique: Pa i odvija se sve compile-time...zato i jest neodlučivo...hello?!
Nisam upoznat s turingovom masinom pa te ne mogu pratiti ovdje.


Citat:
cynique: Kvantni algoritmi su nešto fascinantno, i ne bih to tek tako prekrižio.

Fascinantni su samo zato jer su nesto sto jos nije duboko istrazeno. Nekada je i vatra bila fascinantna... :)

Nadam se da postoji buducnost u tome jer bi s tim mogla krenuti nova industrijska revolucija. Ali ne treba brzati s ocekvanjima, ako se pokaze efikasno, kad bude bit ce.


Citat:
Goran Arandjelovic: @cynique
Ako kažeš da boost gurui znaju zašto su onako napisali Monad, kaži mi da li misliš da je Microsoft pogrešio stvorivši C++/CLI?


Jedno vrijeme sam bio jako nastrojen 'pro' C++/CLI. Sad su se osjecaji promjenili.
Mislim da C# moze sve sto moze i C++/CLI i to jos lijepse i jednostavnije.
C++/CLI osim par zamjerki je solidan jezik, ali niakd nece postat korisniji od C# jer nema tako dobre alate koje ima C#. A u danasnjem vremenu alati su takodjer bitna stvar koja utjece na popularnost jezika.

MS nikako nije pogrijesio stvorivsi C++/CLI i time omogucio je da se iskoristi C++ kod uz "minimum" promjena za .NET. Ali nista vise od toga, ne vidim nijednu drugu beneficiju koju pruza C++/CLI naspram C#.
C++/CLI ce ostati tek dodatni jezik koji ce u C# projektima koristiti se samo kad je bas neophodan.
 
Odgovor na temu

cynique
Ivan Štambuk
Zagreb@Croatia

Član broj: 93690
Poruke: 155
193.198.17.*

ICQ: 106979934
Sajt: istambuk.blogspot.com


Profil

icon Re: [D] D Programming Language24.01.2007. u 22:47 - pre 210 meseci
Citat:
NrmMyth: Fascinantni su samo zato jer su nesto sto jos nije duboko istrazeno. Nekada je i vatra bila fascinantna... :)


Baš obrnuto...moj je (laički) dojam da je kvantna teorija informacije barem 10 godina ispred prakse. Imaš već (pored kvantnih algoritama sa superpolinomnim ubrzanjima) i kvantne programske jezike nad kvantnim lambda računom i sl. Naravno, sve na simulatorima :) Do prije 50-ak godina su i misaoni eksperimenti (gedankenexperiment) od strane Einsteina et al. bili čista teorija, danas su itekako praksa...

 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8632
*.sr.gov.yu.



+2790 Profil

icon Re: [D] D Programming Language25.01.2007. u 01:01 - pre 210 meseci
@FuzzyCreation

Da ne bi ispalo da vadim iz konteksta ono što si napisao, reći ću vrlo kratko, da Gedelove teoreme nekompletnosti nemaju ama baš nikakave veze sa kontekstom u kome si ih pominjao.

Drugo, naravno da je računar na kome ovo kucam konačna deterministička mašina, tako da je sve što se odigrava na njoj načelno predvidivo. Međutim, ne radi se o tome, već o nečemu drugom. Ti govoriš o determinizmu računara kao celine, a ja o determinizmu programskog jezika. Pošto kažeš da si familijaran sa C-om, uzeću njega kao primer. ANSI C standard ne predviđa kada će prilikom ispisa na ekran/upisa u datoteku doći do pražnjenja bafera, što uvodi nepredvidivost ponašanja C programa, kao i mogućnost korišćenja neinicijalizovanih pokazivača.

Da, proces koji se izvršava u mom računaru jeste predvidiv, ali kompletna specifikacija mog računara (koja je potrebna da bi se predvideo rezultat izvršavanja programa) nije deo specifikacije programskog jezika. Kada govoriš o osobinama programskog jezika, ne možeš se pozivati na specifikacije računara na kome se program izvršava, koje nisu deo specifikacije programskog jezika.

Da rezimiram. C programer, u praksi, mora da vodi računa o tome da do pražnjenja bafera može dolaziti bilo kada, ali svakako prilikom ispisa znaka za kraj reda, zatvaranja datoteke i izričitog zahteva da se bafer isprazni. Upravo tako, on mora reći: "Ja van toga ne mogu da znam kada će doći do pražnjenja bafera.", ili program neće ispravno raditi. Isto važi i za lutajuće pokazivače i još štošta. Znači, u praksi, programer mora voditi računa o tome da C nije deterministički jezik. Druga je stvar što je računar na kome se proces izvršava, kao celina, determinisan.
Citat:
FuzzyCreation: Rekao sam za svaku klasu izracunljivih funkcija a ne za svaku izracunljivu funkciju.

Hajde, reci šta podrazumevaš pod klasom izračunljivih funkcija.
Citat:
FuzzyCreation: Koje su to slozene konstrukcije?

Recimo, ona dva BASIC programa koja sam priložio imaju različite sintaksne reprezentacije, ali je tok izvršavanja isti.
Citat:
FuzzyCreation: U stvari ja jos nisam video kvantni racunar. A i skeptican sam po tom pitanju na osnovu
dosadasnjih iskustava. Matematicki modeli postoje, ali konkretne realizacije nema.

Ima. IBM je u laboratorijama proizveo kvantni računar, doduše sa jednocifrenim brojem qubita. Ideja je ostvariva. Ostaje samo pitanje vremena i ulaganja u razvoj, pa da se dobije nešto što će biti komercijalno upotrebljivo.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
*.hsd1.ma.comcast.net.



+6 Profil

icon Re: [D] D Programming Language25.01.2007. u 02:38 - pre 210 meseci
Citat:
cynique: To jest problem sintakse neovisno o tome što ti mislio. Činjenica je da se templatei koriste debelo za metaprogramiranje


Preteruješ, kao i obično. U praksi se TMP (template metaprogramming) skoro uopšte ne koristi, osim preko gotovih biblioteka kao što je Blitz++, a kladim se da 90% profesionalnih C++ programera nikad nije ni čulo za koncept.

Citat:
cynique: Ne, C++ komitet je sastavljen od korporativnih plaćenika


Kamo sreće da je tako - C++ komitet je skup genijalnih volontera koji su u stanju da godinama raspravljaju gde da stave zarez u sledećoj verziji standarda umesto da rešavaju konkretne probleme, kao što je nedostatak modula i podrška za Unicode.

Citat:
cynique:Bio bi to neki drugi odvratno mutirani C dijalekt sa navrat-nanos nakalemljenim OO ekstenzijama. Bio bi sredstvo, ne cilj.


To je jednostavno zbog toga što postoji realna potreba za "odvratno mutiranim C dijalektom sa navrat-nanos nakalemljenim OO ekstenzijama". C je lingua franca sistemskog programiranja, a nema skoro nikakvih mehanizama apstrakcije. C++ je jednostavno rezultat stvarne potrebe, a ne akademskih mudrovanja o "čistim" jezicima.

Uostalom, ima jedna jako lepa knjiga u kojoj je detaljno objašnjeno zašto je C++ takav kakav je: http://www.research.att.com/~bs/dne.html
 
Odgovor na temu

srki
Srdjan Mitrovic
Auckland, N.Z.

Član broj: 2237
Poruke: 3654
..lecom.global-gateway.net.nz.



+3 Profil

icon Re: [D] D Programming Language25.01.2007. u 11:52 - pre 209 meseci
Citat:
Dragi Tata
U praksi se TMP (template metaprogramming) skoro uopšte ne koristi, osim preko gotovih biblioteka kao što je Blitz++, a kladim se da 90% profesionalnih C++ programera nikad nije ni čulo za koncept.

Slazem se, ja nikada nisam imao potrebe da radim metaprogramiranje iako stalno koristim sablone. Sablone je veoma lako koristiti iako ih je tesko programirati tako da meni to uopste ne predstavlja manu C++ a verujem da je isti slucaj i sa 99,99% drugih C++ programera koji uglavnom koriste sablone i biblioteke koje to implementiraju ali ih ne programiraju oni sami.
 
Odgovor na temu

cynique
Ivan Štambuk
Zagreb@Croatia

Član broj: 93690
Poruke: 155
193.198.17.*

ICQ: 106979934
Sajt: istambuk.blogspot.com


Profil

icon Re: [D] D Programming Language25.01.2007. u 19:58 - pre 209 meseci
Citat:
Dragi Tata: Preteruješ, kao i obično. U praksi se TMP (template metaprogramming) skoro uopšte ne koristi


Rekao sam da se templatei debelo koriste za metaprogramiranje, ne i da se metaprogramiranje debelo koristi. Mala, ali važna razlika :)

Diskusija je inače i krenula u ovom smjeru nakon što je Nrmyth spomenuo kako je TMP uporaba templatea za nešto što "nisu namijenjeni". I nisu izvorno, ali se itekako koriste (barem od strane ljudi koji žele izgubiti dovoljno živaca) za TMP.

Citat:
Kamo sreće da je tako - C++ komitet je skup genijalnih volontera koji su u stanju da godinama raspravljaju gde da stave zarez u sledećoj verziji standarda umesto da rešavaju konkretne probleme, kao što je nedostatak modula i podrška za Unicode.


I kad dođe MS i napravi C++/CLI koji zaista rješava neke konkretne probleme, svi ga kolektivno ismijavaju i bojkotiraju kao da se radi o nekom trećerazrednom nebitnom isprtku :)

Citat:
To je jednostavno zbog toga što postoji realna potreba za "odvratno mutiranim C dijalektom sa navrat-nanos nakalemljenim OO ekstenzijama". C je lingua franca sistemskog programiranja, a nema skoro nikakvih mehanizama apstrakcije. C++ je jednostavno rezultat stvarne potrebe, a ne akademskih mudrovanja o "čistim" jezicima.


To i govorim cijelo vrijeme. C++ je izuzetno ružan i gadno koncipiran alat koji jako učinkovito rješava neke od stvarnih problema. Ništa više od toga. Ne baš tako daleko u budućnosti, moderna će potrošačka računala itekako arhitekturalno odudarati od apstraktnog C stroja, i favorizirat će se korištenje drugih alata koji će puno učinkovitije rješavati tad znatno važnije probleme poput konkurentnosti, dostupnosti i sigurnosti koda.

Citat:
srki: Sablone je veoma lako koristiti iako ih je tesko programirati tako da meni to uopste ne predstavlja manu C++ a verujem da je isti slucaj i sa 99,99% drugih C++ programera koji uglavnom koriste sablone i biblioteke koje to implementiraju ali ih ne programiraju oni sami.


Koja smijurija...dakle "svi koriste boost, a nitko nema muda modificirati njegov kod". LOL.

C++ polako postaje write-only jezik kao Perl.

Sva sreća da postoje alternative.
 
Odgovor na temu

bkaradzic
Branimir Karadžić
ArenaNet
Seattle, WA

Član broj: 14953
Poruke: 1630
67.151.201.*

Sajt: https://github.com/bkarad..


+11 Profil

icon Re: [D] D Programming Language25.01.2007. u 21:23 - pre 209 meseci
Citat:
I kad dođe MS i napravi C++/CLI koji zaista rješava neke konkretne probleme, svi ga kolektivno ismijavaju i bojkotiraju kao da se radi o nekom trećerazrednom nebitnom isprtku :)

Recimo radim na nekom embedded OS-u koji nije pravljen u MS... Koje probleme mi C++/CLI rešava?

 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
65.213.80.*



+6 Profil

icon Re: [D] D Programming Language25.01.2007. u 22:12 - pre 209 meseci
Citat:
cynique: Diskusija je inače i krenula u ovom smjeru nakon što je Nrmyth spomenuo kako je TMP uporaba templatea za nešto što "nisu namijenjeni". I nisu izvorno, ali se itekako koriste (barem od strane ljudi koji žele izgubiti dovoljno živaca) za TMP.


Ti ljudi izgube živce, a ja koristim njihove gotove biblioteke bez gubljenja živaca - život je lep.

Citat:
cynique: I kad dođe MS i napravi C++/CLI koji zaista rješava neke konkretne probleme, svi ga kolektivno ismijavaju i bojkotiraju kao da se radi o nekom trećerazrednom nebitnom isprtku :)


C++/CLI je dobar jezik i rešava konkretne probleme, ali nije C++ niti rešava probleme C++-a. Inače, osnovni problem sa C++/CLI je što ga i sam MS slabo promoviše, i marketinški, i još gore kroz jako slabu podrušku u VS-u.

Citat:
cynique: Koja smijurija...dakle "svi koriste boost, a nitko nema muda modificirati njegov kod". LOL.


Zašto "LOL"? To je dobro - ne želim da koristim biblioteke koje svaki priučeni "programer" menja kako mu se ćefne.


Citat:
cynique:
Sva sreća da postoje alternative.


Na žalost, ne postoje.
 
Odgovor na temu

srki
Srdjan Mitrovic
Auckland, N.Z.

Član broj: 2237
Poruke: 3654
*.adsl.xtra.co.nz.



+3 Profil

icon Re: [D] D Programming Language26.01.2007. u 00:58 - pre 209 meseci
Citat:
cynique: Koja smijurija...dakle "svi koriste boost, a nitko nema muda modificirati njegov kod". LOL.

Nema to veze sa mudima nego sa time da li zelim da ispravljam tudji kod. Da ja to zelim ja bih koristio Linux. Posto ne zelim da ispravljam gotove stvari nego da ih samo koristim onda cu da ostanem na Windowsu i koristicu gotove biblioteke. Ne slazes li se da je to uobicajeno razmisljanje u realnom svetu dok je u studentskom svetu gikova uobicajeno da oni mogu sami da tumace tudji kod i da ispravljaju tudje bagove jer imaju previse slobodnog vremena ili su dokoni. Jos je smesnije sto dosta linuksovaca prica kako im je bitno to sto mogu sami da isprave bagove iako njih 0.0001% to zaista i radi. Ne verujem da me mozes ubediti da je dobro da ja mogu da tumacim i ispravljam tudje template biblioteke jer cak i da je sintaksa mnogo lepsa opet to ne bih radio jer nisam neki gnu/linux zealot.

Citat:
C++ polako postaje write-only jezik kao Perl.

Za mene ne jer koristim samo onaj nivo apstrakcije koji mi odgovara i koristim gotove biblioteke tako da i drugi mogu da tumace moj kod bez mnogo muke.

Citat:
Sva sreća da postoje alternative.

Koja alternativa mi nudi toliko nivoa apstrakcije kao C++ pa da mogu da koristim OOP a takodje mogu i da se spustim na nivo sistemskog programiranja i direktnog pristupa memoriji (jako bitno u mnogim slucajevima)?

[Ovu poruku je menjao srki dana 26.01.2007. u 09:30 GMT+1]
 
Odgovor na temu

cynique
Ivan Štambuk
Zagreb@Croatia

Član broj: 93690
Poruke: 155
*.adsl.net.t-com.hr.

ICQ: 106979934
Sajt: istambuk.blogspot.com


Profil

icon Re: [D] D Programming Language28.01.2007. u 22:30 - pre 209 meseci
Citat:
bkaradzic: Recimo radim na nekom embedded OS-u koji nije pravljen u MS... Koje probleme mi C++/CLI rešava?


Bojim se da su tvoji problemi manje odraz fundamentalno loše dizajniranog jezika kakav je C++, a više nekih tehničkih aspekata dostupnih razvojnih okruženja.

S obzirom da za standardizirani jezik, kakav već C++/CLI jest, ne postoje non-MS prevoditelji, ne mogu ne primjetiti u gorenavedenom pitanju suptilnu autoironiju autora: "jebiga, ponekad nemaš izbora!". Ili je možda ni nema? :)

Također, moja iskrena sućut zbog bakćanja konkurentnosti dijeljenim stanjem u jeziku u kojem je izraz "a = a + 1" nedeterministički.

Glede C++/CLI, toplo preporučam:

http://www.gotw.ca/publications/C++CLIRationale.pdf

Citat:
Dragi Tata: Ti ljudi izgube živce, a ja koristim njihove gotove biblioteke bez gubljenja živaca - život je lep.


Koristiš u produkciji te biblioteke? Što kad linija koda u stilu:

Code:
compM<ListM>()[ makePair[X,Y] | X<=list_with(1,2), guard[true], Y<=list_with(3,4), guard[ (Y %divides% X) %equal% 3 ] ] ]


uzrokuje neki suptilni race condition na nekoj upravo izašloj big-endian arhitekturi sa 16 jezgri, na nekom komercijalnom slabo-poznatom prevoditeelju - što možeš učinit sa nekom open source bibliotekom iza koje nijedna velika kompanija (što je i očekivano, s obzirom koliko kaubojskog koda sadrži) nema svoj potpis, dakle nikakav QA i garancija stabilnosti sučelja? Prijavljivati bug na mailing liste i polagati nade u elitne Kauboje, genijalne volontere, da se udostoje ispraviti bug ASAP?

C'mon, valjda netko sa toliko iskustva poput TEBE zna da tako Stvarni Svijet ne funkcionira :)

Citat:
Zašto "LOL"? To je dobro - ne želim da koristim biblioteke koje svaki priučeni "programer" menja kako mu se ćefne.


Slabo opravdanje za ovakav "elitizam" koji je više iznuđen odvratnom C++ TMP sintaksom nego "kvalitetom programera" - bilo koji "priučeni programer" nema teoretske šanse da razumije kod iza biblioteki poput Blitz++, Phoneixa i boost, i ti to dobro znaš.

Osim toga, open source model je odavno pokazao da, što više ljudi kontribuira u nekom projektu, to se brže trijebe bugovi i on evoluira, ma koliko on gadan bio.

Citat:
Na žalost, ne postoje.


Na svu sreću, sve je manje domena u kojima je C++ jedini mogući izbor. Ne tako davno, managed DirectX je bio puka fantazija... U vrlo bliskoj budućnosti, svi MS-ovi kompajleri će biti izgrađeni na istom compiler pipelineu, (čitaj: emitirati izvršni kod jednake kvalitete), od Excel makroa pa do cl.exe...

Citat:
srki: Nema to veze sa mudima nego sa time da li zelim da ispravljam tudji kod. Da ja to zelim ja bih koristio Linux. Posto ne zelim da ispravljam gotove stvari nego da ih samo koristim onda cu da ostanem na Windowsu i koristicu gotove biblioteke. Ne slazes li se da je to uobicajeno razmisljanje u realnom svetu dok je u studentskom svetu gikova uobicajeno da oni mogu sami da tumace tudji kod i da ispravljaju tudje bagove jer imaju previse slobodnog vremena ili su dokoni. Jos je smesnije sto dosta linuksovaca prica kako im je bitno to sto mogu sami da isprave bagove iako njih 0.0001% to zaista i radi. Ne verujem da me mozes ubediti da je dobro da ja mogu da tumacim i ispravljam tudje template biblioteke jer cak i da je sintaksa mnogo lepsa opet to ne bih radio jer nisam neki gnu/linux zealot.


I te kako ćeš to raditi, i za tebe vrijedi isti odgovor kao i za Nemanju. Who you gonna call? :)

Samo je fora sa linuxom što obični C kod možeš razumjeti, modificirati, i u krajnjoj liniji ispravljati bugove, barem 100 puta lakše nego u heavily templated C++ bibliotekama.

Citat:
Koja alternativa mi nudi toliko nivoa apstrakcije kao C++ pa da mogu da koristim OOP a takodje mogu i da se spustim na nivo sistemskog programiranja i direktnog pristupa memoriji (jako bitno u mnogim slucajevima)?


Imaš npr. u C# P/Invoke koji izuzetno lagano veže nativne sistemske API-je, i pruža direktan pristup memoriji preko pokazivača i sl. kroz "unsafe" blokove.
 
Odgovor na temu

alexione
Aleksa Todorovic
Sremski Karlovci

Član broj: 46927
Poruke: 29
*.dialup.neobee.net.



Profil

icon Re: [D] D Programming Language28.01.2007. u 23:18 - pre 209 meseci
Citat:
srki: Nema to veze sa mudima nego sa time da li zelim da ispravljam tudji kod. Da ja to zelim ja bih koristio Linux. Posto ne zelim da ispravljam gotove stvari nego da ih samo koristim onda cu da ostanem na Windowsu i koristicu gotove biblioteke.


Interesantan pogled na programiranje. Nazalost, (bar moje iskustvo tako govori), veliki deo vremena u programiranju upravo ispravljas (svoj ili) tudji kod. Nakon nekoliko nedelja/meseci rada na projektu apsolutno ti je do kraja svejedno da li si ti ili neko drugi pisao doticni kod, jer moras ponovo da ga tumacis. Hm, a sto se tice gotovih stvari spremnih za koriscenje, poredjenje gnu-a i Windows-a bas i nije na mestu.

Citat:
srki: Ne verujem da me mozes ubediti da je dobro da ja mogu da tumacim i ispravljam tudje template biblioteke jer cak i da je sintaksa mnogo lepsa opet to ne bih radio jer nisam neki gnu/linux zealot.


Ako zaista ne zelis da mozes takvo nesto, niko te na to ne moze naterati, naravno! Moje je vidjenje da je sposobnost tuamcenja tudjeg koda i shvatanje kako funkcionise, veoma pozitivna osobina. Stavise, od svakog ozbiljnijeg programera apsolutno bih ocekivao da je sposoban da moze da tumaci i ispravlja tudji kod. Cak i u slucaju da je to kod biblioteke zakopan ispod template-ova, visestrukog nasledjivanja, i ostalih "fency" konstrukcija :)
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8632
*.sr.gov.yu.



+2790 Profil

icon Re: [D] D Programming Language29.01.2007. u 03:58 - pre 209 meseci
@cynique

Ti kao da si isfrustriran C++ -om i njegovim šablonima. Potpuno si nerealan. Ne radi se o jeziku koji je katastrofalno dizajniran, već o jeziku koji je odslužio svoje i zreo je za penziju. 90-tih je bio najbolje rešenje u većini slučajeva. Najveći broj komercijalnih programa u tom periodu je napisan upravo na njemu. Sada su se, jednostavno, pojavila naprednija rešenja, i to nije ništa neobično. Sutra će se pojaviti bolja rešenja od današnjih popularnih upravljanih rešenja, ali to ne znači da su ona bila loše dizajnirana. Nađi mi programski opšte namene jezik iz 90-tih koji je bio bolje dizajniran od C++ -a. Nađi mi mašine iz 90-tih koje su u stanju da poteraju nešto kao što je .NET Framework. Odmeri recimo, koliko megabajta zauzima .NET, a koliki su bili memorijski kapaciteti tadašnjih računara. C++ će, pošto se u svim područjima budu našla bolja rešenja (Windows se i dalje razvija na neupravljanom C++ -u, kao i Majkrosoftov .NET Framework), otići u potpuno zasluženu penziju.

@srki

Vidim da te kritikuju i osnovano i neosnovano, ali poređenje GNU/Linux-a i Wondows-a ti zaista nije na mestu. Ko tebe tera da čačkaš kod Open Source rešenja ako nećeš. Meni se, recimo, sviđaju gcc, g++, mono, Ultimate++, fpc, SWI PROLOG, Lazarus, Qt, wxWidgets, ali mi bez obzira na otvorenost njihovog koda, ne pada na pamet da (bez potrebe) prčkam po njima. Ponekad prčkam po tuđem kodu, ali samo kada se za tim zaista ukaže potreba. Do sada mi se dva puta desilo da menjam kod i koristim ga u izmenjenom obliku, i oba puta su izmene bile sasvim jednostavne i sa kompajliranjem su trajale manje od pola sata. No, prihvatam da se softver tipišno koristi onakav kakav jeste.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

srki
Srdjan Mitrovic
Auckland, N.Z.

Član broj: 2237
Poruke: 3654
..lecom.global-gateway.net.nz.



+3 Profil

icon Re: [D] D Programming Language29.01.2007. u 11:11 - pre 209 meseci
Citat:
cynique:Slabo opravdanje za ovakav "elitizam" koji je više iznuđen odvratnom C++ TMP sintaksom nego "kvalitetom programera" - bilo koji "priučeni programer" nema teoretske šanse da razumije kod iza biblioteki poput Blitz++, Phoneixa i boost, i ti to dobro znaš.

Bas zbog toga sam sigurniji da te biblioteke nisu pisali priuceni programeri vec koristim template biblioteke koje su prosle nekakvu reviziju ili ako neka jaka kompanija stoji iza njih, recimo Microsoftove biblioteke Active Template Library i Windows Template Library koje izuzetno olaksavaju pisanje programa.

Citat:
Citat:
srki:Ne verujem da me mozes ubediti da je dobro da ja mogu da tumacim i ispravljam tudje template biblioteke jer cak i da je sintaksa mnogo lepsa opet to ne bih radio jer nisam neki gnu/linux zealot.

I te kako ćeš to raditi, i za tebe vrijedi isti odgovor kao i za Nemanju. Who you gonna call? :)

Skoro nikada to necu raditi i nikoga necu zvati i to nema veze sa sintaksom vec sa zeljom da gledam kod biblioteka koje koristim. Cak i da je sintaksa 100 puta laksa za citanje opet to ne bih radio ali zato koristim proverene biblioteke. Ovako zvucis kao neki linuksovci koji su nas pre ubedjivali da je to bolje koristiti jer ako nesto ne radi onda mozemo sami da ispravimo. Neka hvala. Ako se nekada zaista ukaze potreba da menjam kod u biblioteci ne smeta mi da to bude malo teze jer to ne radim tako cesto nego da mi to bude lakse ali zato i koriscenje toga da mi bude teze.

Citat:
Samo je fora sa linuxom što obični C kod možeš razumjeti, modificirati, i u krajnjoj liniji ispravljati bugove, barem 100 puta lakše nego u heavily templated C++ bibliotekama.

Stvar navike, meni je lakse da citam template kod nego c kod.

Citat:
 Imaš npr. u C# P/Invoke koji izuzetno lagano veže nativne sistemske API-je, i pruža direktan pristup memoriji preko pokazivača i sl. kroz "unsafe" blokove.

Ne bih se slozio. Mozda tebi to jeste lagano ali vecini ljudi to nije i ja se slazem sa njima da C# P/Invoke izgleda izuzteno ruzno. Evo iskustva jos nekih ljudi:
http://blogs.msdn.com/jeremykuhne/archive/2005/06/11/428363.aspx

Uostalom da je to lagano kako ti kazes ne bi postojao web site posvecem samo tome:
http://www.pinvoke.net/

Citat:
Adam Nathan, author of ".NET and COM: The Complete Interoperability Guide", has created a website for P/Invoke declarations, as a way to avoid developers writing their own, because "The rules are complex, and if you make a mistake, you’ll probably corrupt memory".


A evo i iskutva ljudi sa es-a:
http://www.elitesecurity.org/t18365-Zanimljiv-PInvoke
Relja koji radi u MS-u je na kraju odustao od koriscenja PInvoke-a.

Nemoj pogresno da me shvatis, ja verujem da ce se u bliskoj boducnosti stvari promeniti ali moras da se slozis da trenutno za neke stvari C++ jednostavno nema alternativu. Ako ima alternativu ja bih voleo da znam za nju. Ovo sto si ponudio nije dobra alternativa jer je to mnogo lakse uraditi u C++ a pored toga se i brze izvrsava.

Citat:
alexione: Interesantan pogled na programiranje. Nazalost, (bar moje iskustvo tako govori), veliki deo vremena u programiranju upravo ispravljas (svoj ili) tudji kod.

Da, ali ne kod biblioteke nego kog koji kompanija u kojoj radim razvija.

Citat:
Hm, a sto se tice gotovih stvari spremnih za koriscenje, poredjenje gnu-a i Windows-a bas i nije na mestu.

Prihvatam kritiku, pogresno poredjenje. I tu ima lepih biblioteka koje bih koristio ali poenta je da to ne bih radio zato sto mogu da ispravljam tudji kod.

Citat:
Citat:
srki: Ne verujem da me mozes ubediti da je dobro da ja mogu da tumacim i ispravljam tudje template biblioteke jer cak i da je sintaksa mnogo lepsa opet to ne bih radio jer nisam neki gnu/linux zealot.

Ako zaista ne zelis da mozes takvo nesto, niko te na to ne moze naterati, naravno! Moje je vidjenje da je sposobnost tuamcenja tudjeg koda i shvatanje kako funkcionise, veoma pozitivna osobina.

Slazem se, nisam ni rekao da je to lose.
Citat:
Stavise, od svakog ozbiljnijeg programera apsolutno bih ocekivao da je sposoban da moze da tumaci i ispravlja tudji kod.

Naravno. Meni nije problem da tumacim tudji kod i tudje template biblioteke ali jednostavno ne zelim na to da gubim vreme vec cu da predjem na drugu biblioteku. Jos pre 13 godina je Steve McConnell u knjizi Code Complete pisao koliko se poveca produktivnost ako se koriste vec gotove biblioteke drugih kompanija (a one uglavnom daju samo izvrsne verzije biblioteka). Ali ako se zaista ukaze potreba onda mi uopste nije problem protumaciti tudji kod i lakse mi je da to bude teze jer tu potrebu imam 0.01% vremena nego da mi bude teze koriscenje tih biblioteka. Tu se cynique ne slaze sa mnom.

Citat:
Nedeljko: @srki
Vidim da te kritikuju i osnovano i neosnovano, ali poređenje GNU/Linux-a i Wondows-a ti zaista nije na mestu. Ko tebe tera da čačkaš kod Open Source rešenja ako nećeš.

Niko naravno, poenta je bila samo u tome da kao razlog koriscenja Open Source biblioteka nece da bude to sto mogu da menjam tudji kod. Boost biblioteke su Open Source pa ih koristim. To sam pomenuo samo zato sto je cyniq poceo da mi zvuci kao neki zealot koji nagovara ljude da koriste nesto zato sto je lako menjati i tumaciti kod tudjih biblioteka a meni to uopste nije toliko bitno.

Citat:
Meni se, recimo, sviđaju gcc, g++, mono, Ultimate++, fpc, SWI PROLOG, Lazarus, Qt, wxWidgets, ali mi bez obzira na otvorenost njihovog koda, ne pada na pamet da (bez potrebe) prčkam po njima. Ponekad prčkam po tuđem kodu, ali samo kada se za tim zaista ukaže potreba.

Upravo to. Tu potrebu imam zaista retko ali onda kada se ukaze potreba mi nije problem da protumacim kod i ispravim bagove ali posto se to retko desava onda mi je bitnije da ja mogu lakse koristim te biblioteke i lakse da menjam nivoe apstrakcije nego da koristim P/Invoke u C#. Ali opet stojim iza toga da 99,99% ljudi nikada ne menja tudje biblioteke ali ako cyniq misli da je zbog tih 0.01% ljudi bitno da template sintaksa bude drugacija onda ga ja ne mogu razuveriti. Svako ima pravo na svoje misljenje.

[Ovu poruku je menjao srki dana 29.01.2007. u 12:59 GMT+1]
 
Odgovor na temu

cynique
Ivan Štambuk
Zagreb@Croatia

Član broj: 93690
Poruke: 155
193.198.17.*

ICQ: 106979934
Sajt: istambuk.blogspot.com


Profil

icon Re: [D] D Programming Language29.01.2007. u 12:28 - pre 209 meseci
Citat:
srki: Bas zbog toga sam sigurniji da te biblioteke nisu pisali priuceni programeri vec koristim template biblioteke koje su prosle nekakvu reviziju ili ako neka jaka kompanija stoji iza njih, recimo Microsoftove biblioteke Active Template Library i Windows Template Library koje izuzetno olaksavaju pisanje programa.


Miješaš babe i žabe, biblioteke iza kojih neka kompanija (podrška, QA, garancija unazadne kompatibilnosti) su potpuno druga stvar. Spomenute C++ TMP biblioteke se nimalo ne razlikuju od open-source "sam svoj majstor" rješenja. I opet nisi odgovorio na pitanje, što ćeš kad se npr. negdje pri kraju razvojnog ciklusa aplikacije, u fazi temeljitog testiranja otkrije neki izuzetno suptilan bug, u nekoj opskurnoj kombinaciji prevoditelja/hardvera. Who you gonna call?

Citat:
Skoro nikada to necu raditi i nikoga necu zvati i to nema veze sa sintaksom vec sa zeljom da gledam kod biblioteka koje koristim.


Ima itekako veze sa sintaksom jer je sintaksa odvratna i nečitka. Da i tebi pejstam neke linije koda iz npr. bost::spirit pa da te pitam da mi objasniš što one rade? Ne da minimalno modificiraš funkcionalnost, samo da objasniš što rade. Bolje ne, jeli?

Citat:
Cak i da je sintaksa 100 puta laksa za citanje opet to ne bih radio ali zato koristim proverene biblioteke.


"Provjereno" je vrlo mutan kvalifikator. Nekome je i OpenBSD "provjereno siguran" OS, COBOL "provjereno kvalitetan" jezik. Elitizam iza izjave "provjeren jer samo najveći C++ jebači dovoljno znaju da mogu kontribuirati boost-u" mi je se gadi.

Citat:
Ovako zvucis kao neki linuksovci koji su nas pre ubedjivali da je to bolje koristiti jer ako nesto ne radi onda mozemo sami da ispravimo.


Korisnik takve biblioteke nije isto što i korisnik OS-a, on je programer za kojeg je i poželjno da može otkloniti bug ukoliko za tim bude potrebe. Za biblioteke iza koje ne stoji neka kompanija to je jako poželjno.

Citat:
Stvar navike, meni je lakse da citam template kod nego c kod.


Lažeš.

Citat:
Uostalom da je to lagano kako ti kazes ne bi postojao web site posvecem samo tome:
http://www.pinvoke.net/

...

Nemoj pogresno da me shvatis, ja verujem da ce se u bliskoj boducnosti stvari promeniti ali moras da se slozis da trenutno za neke stvari C++ jednostavno nema alternativu. Ako ima alternativu ja bih voleo da znam za nju. Ovo sto si ponudio nije dobra alternativa jer je to mnogo lakse uraditi u C++ a pored toga se i brze izvrsava.



Baš zato je i lagano - samo c/p definicije sa tog sajta i možeš koristiti bilo koji neupravljani Win32 API. Jest da ružno izgleda, ali je mnogo lakše od FFI u većini drugih upravljanih jezika (uključujući javu i python), jer dobar dio .NET API-ja i jest samo OO wrapper za win32 ekvivalente.

Nadalje, primjer na ovom blogu koji si naveo nije C++ već C++/CLI - jezik koji na kraju završi kao .NET bajtkod (primjeti /clr zastavicu). Nitko ti ne brani da u jednom .NET projektu koristiš više .NET jezika, na kraju sve može završiti u istoj izvršnoj datoteci (assemblyu). Nije .NET samo zvanična multijezičnost kao Java.

Citat:
Ali ako se zaista ukaze potreba onda mi uopste nije problem protumaciti tudji kod i lakse mi je da to bude teze jer tu potrebu imam 0.01% vremena nego da mi bude teze koriscenje tih biblioteka. Tu se cynique ne slaze sa mnom.


Blago tebi John "srki" Maddock kad ti 0.01% vremena treba da otkloniš bug u kaubojštini od koda kakav već boost dobrim dijelom jest. Ostatak smrtničkog svijeta te pozdravlja sa udivljenjem.


 
Odgovor na temu

srki
Srdjan Mitrovic
Auckland, N.Z.

Član broj: 2237
Poruke: 3654
..lecom.global-gateway.net.nz.



+3 Profil

icon Re: [D] D Programming Language29.01.2007. u 12:58 - pre 209 meseci
Citat:
cynique:Miješaš babe i žabe, biblioteke iza kojih neka kompanija (podrška, QA, garancija unazadne kompatibilnosti) su potpuno druga stvar. Spomenute C++ TMP biblioteke se nimalo ne razlikuju od open-source "sam svoj majstor" rješenja.

Nije tacno, probaj sam da sklepas nesto i da ubacis u boost pa ces videti da to nije tako. Recimo ja koristim Generic Image Library koja je deo Boost-a a kompanija Adobe stoji iza projekta: http://opensource.adobe.com/gil/
Toliko o tome da su u boost sve biblioteke neproverene bez qa analize. Izvini ali jednostavno si neupucen kako se ubacuju biblioteke u boost. Sve biblioteke koje su prihvacene u boost su peer-reviewed.

Citat:
I opet nisi odgovorio na pitanje, što ćeš kad se npr. negdje pri kraju razvojnog ciklusa aplikacije, u fazi temeljitog testiranja otkrije neki izuzetno suptilan bug, u nekoj opskurnoj kombinaciji prevoditelja/hardvera. Who you gonna call?

Odgovorio sam ali ti ne citas. Ako se tako nesto desi na kraju razvojnog ciklusa onda cu da potrosim neko vreme da vidim u cemu je greska i ne bi mi smetalo sto je sintaksa ruzna ako mi je zato bilo lakse da napravim tu aplikaciju umesto da mi je bilo mnogo teze da napravim tu aplikaciju a lakse da ispravim taj bag pri kraju razvojnog ciklusa. Jednostavno se vise vremena provodi na pravljenju aplikacije i koriscenju gotovih stvari nego na ispravljanju bagova u bibliotekama koje koristim. Posto meni ne verujes onda neka se drugi izjasne, npr. Dragi Tata, bkaradzic...Ako ni njima svima ne verujes onda ne vredi raspravljati jer te nije moguce ubediti.

Citat:
Ima itekako veze sa sintaksom jer je sintaksa odvratna i nečitka. Da i tebi pejstam neke linije koda iz npr. bost::spirit pa da te pitam da mi objasniš što one rade? Ne da minimalno modificiraš funkcionalnost, samo da objasniš što rade. Bolje ne, jeli?


Ja to ne zelim da radim ali ako te to moze naterati da priznas da nisi u pravu onda vazi. Deal?

Citat:
Lažeš.

Ako ti tako kazes. Verovatno me bolje poznajes od mene samog.

Citat:
Nadalje, primjer na ovom blogu koji si naveo nije C++ već C++/CLI - jezik koji na kraju završi kao .NET bajtkod (primjeti /clr zastavicu).

Nisam uopste zbog toga stavio taj link nego zbog primera koriscenja P/Invoke u C# posto si to pominjao.

Citat:
Blago tebi John "srki" Maddock kad ti 0.01% vremena treba da otkloniš bug u kaubojštini od koda kakav već boost dobrim dijelom jest. Ostatak smrtničkog svijeta te pozdravlja sa udivljenjem.


Ako si ti isfrustriran C++ sablonima ne mora da znaci da su i ostali. Nista, bezi od C++-a kao djavo od krsta (nije to za tebe) i drzi se samo C# i koristi P/Invoke i bice sve u redu.

[Ovu poruku je menjao srki dana 29.01.2007. u 14:32 GMT+1]
 
Odgovor na temu

cynique
Ivan Štambuk
Zagreb@Croatia

Član broj: 93690
Poruke: 155
*.adsl.net.t-com.hr.

ICQ: 106979934
Sajt: istambuk.blogspot.com


Profil

icon Re: [D] D Programming Language29.01.2007. u 14:46 - pre 209 meseci
Citat:
srki:Nije tacno, probaj sam da sklepas nesto i da ubacis u boost pa ces videti da to nije tako. Recimo ja koristim Generic Image Library koja je deo Boost-a a kompanija Adobe stoji iza projekta: http://opensource.adobe.com/gil/
Toliko o tome da su u boost sve biblioteke neproverene bez qa analize. Izvini ali jednostavno si neupucen kako se ubacuju biblioteke u boost. Sve biblioteke koje su prihvacene u boost su peer-reviewed.


Ja nisam ni tvrdio da su boost biblioteke "neprovjerene bez analize", ne znam odakle mi uopće imputiraš tu izjavu. Bolje čitaj malo pomnije što pišem, jer sam samo sprdao kontekstno jako ovisan pridjev "provjeren". To što neke 3rd party kompanije djelomično kontribuiraju boost projektu ne odgovara na moje pitanje: Who you gonna call? Tko garantira podršku za bugove i QA?

Mailing liste i bugtrackeri na volonterskoj bazi?

Tako pingvinski.

Citat:
Odgovorio sam ali ti ne citas. Ako se tako nesto desi na kraju razvojnog ciklusa onda cu da potrosim neko vreme da vidim u cemu je greska i ne bi mi smetalo sto je sintaksa ruzna ako mi je zato bilo lakse da napravim tu aplikaciju umesto da mi je bilo mnogo teze da napravim tu aplikaciju a lakse da ispravim taj bag pri kraju razvojnog ciklusa.


Jako trivijaliziraš proces otkrivanja i ispravljanja buga. C se i dan danas koristi naveliko za low-level programiranje ne primarno zbog kvalitete prevoditelja, već zbog transparentne apstrakcije računalnih resursa koje omogućava. C++ template metaprogramiranje debelo odudara od takvog pristupa, namećući svoj turing-ekvivalentan računski model.

Već sam rekao - ako si John "srki" Maddock može dopustiti ad-hoc kastomiziranje boost biblioteke nauštrb "ljepše" (de gustibus non est disputandum) sintakse - neka mu. Ostatak smrtničkog svijeta ne može. Ostatak smrtničkog svijeta ne zna gdje je glava a gdje rep kad gleda izvorni kod od biblioteki poput boost i Blitz++.

Smrtnički će svijet jednostavno koristiti C biblioteku istovjetne funkcionalnosti, znajući da si štedi beskrajno mnogo živaca.

Citat:
a to ne zelim da radim ali ako te to moze naterati da priznas da nisi u pravu onda vazi. Deal?


Jedino što bi me moglo natjerati da priznam da sam u krivu je da su već na drugoj-trećoj stranici ove teme se javili ljudi koji su rekli kako C++ TMP i nije neki bauk, i ispričali par lovačkih priča o fascinantnim mogućnostima koje metaprogramiranje pruža. Nažalost, takvih ovdje nema (pošto svi takvi kad-tad otkriju Common Lisp i nikad više ne gledaju unazad).

No kad se već nudiš, objasni mi ti za početak što ona linija koda iz monada radi? :)

Citat:
Ako ti tako kazes. Verovatno me bolje poznajes od mene samog.


Nemoj se ljutiti, ali izjavom da je ti je "čitljiviji templated kod nego C kod" si izgubio svaki kredibilitet u mojim očima. Mogu navesti iz literature nekih par kanonskih primjera funkcija implementiranih i u običnom C-u, i kroz templated metafunkcije, pa da svi vide koliko su "čitljiviji".

Citat:
Nisam uopste zbog toga stavio taj link nego zbog primera koriscenja P/Invoke u C# posto si to pominjao.


LOL, a pri čemu si slavodobitno zaključio:

Citat:
Ovo sto si ponudio nije dobra alternativa jer je to mnogo lakse uraditi u C++ a pored toga se i brze izvrsava.


ni ne shvačajući da to nije C++ već C++/CLI, i to emitiran u MSIL/CIL bajtkod.

Rekao si da tražiš jezik, citiram:

Citat:
pa da mogu da koristim OOP a takodje mogu i da se spustim na nivo sistemskog programiranja i direktnog pristupa memoriji


Naveo sam C# i unsafe konstrukte koji omogućuju korištenje pointera, pri čemu obično završe u bajtkodu u tzv. "native unmanaged" blokovima koji nisu upravljani već sadrže nativni kod (bez gubitka performansi - moguće je čak i ručno u MSIL/CIL bajtkodu heksadecimalno pisati opkode :), te sam naveo i P/Invoke kao dobar interop mehanizam sa već postojećom bazom neupravljanih API-ja.

Jedina točka gdje si pokušao to osporiti jest tobožnja "loša kvaliteta interoperabilnosti", i teškoća pisanja P/Invoke definicija. Sad kad imamo C++/CLI koji "samo radi" (it just works), slažeš li se da bi .NET mogla biti platforma koja zadovoljava uvjete postavljenog pitanja?

Citat:
Ako si ti isfrustriran C++ sablonima ne mora da znaci da su i ostali. Nista, bezi od C++-a kao djavo od krsta (nije to za tebe) i drzi se samo C# i koristi P/Invoke i bice sve u redu.


Argumentum ad hominem.


 
Odgovor na temu

[es] :: Ostali programski jezici :: [D] D Programming Language

Strane: < .. 1 2 3 4 5 6 7

[ Pregleda: 29557 | Odgovora: 130 ] > FB > Twit

Postavi temu Odgovori

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