Archief - Irritant extra spatie probleem

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

taLa.

Legacy Member
Cycloon zei:
Nope, het ligt niet aan de foreach maar aan het feit dat 0..length($string) gaat geëxpandeerd worden naar een lijst/array en dat niet telkens opnieuw gaat gedaan worden. Mocht dit wel zo zijn dan zou het normaal allemaal lopen zoals "verwacht" werd.

Bon, mijn punt was gewoon dat je in sommige situaties vreemde zaken kan tegenkomen en dat het taal afhankelijk is en niet compiler afhankelijk (zoals hier beweerd werd).

Ehm, neen en neen.

Cycloon zei:
Nope, het ligt niet aan de foreach maar aan het feit dat 0..length($string) gaat geëxpandeerd worden naar een lijst/array en dat niet telkens opnieuw gaat gedaan worden.

... hetgeen een gevolg is van de definitie van een foreach :ironic:

Cycloon zei:
Bon, mijn punt was gewoon dat je in sommige situaties vreemde zaken kan tegenkomen en dat het taal afhankelijk is en niet compiler afhankelijk (zoals hier beweerd werd).

Volledig naast de kwestie. Er werd hier nergens beweerd dat het de compiler is die ervoor verantwoordelijk is dat die 0..length($string) niet opnieuw werd geëvalueerd, want dat is eigen aan een foreach-loop. Er werd wel beweerd dat de compiler slim genoeg is om in te zien dat een $i++ of ++$i zonder assignment zoals in de doorsnee for-loop (dus niet in een foreach) allebei naar dezelfde meest optimale vorm kunnen herleid worden. Maw. de compiler zal inzien dat het nutteloos is om die extra kopie van $i aan te maken om te returnen aangezien er niets wordt gedaan met de returnwaarde.

killgore

Legacy Member
Cycloon zei:
Wat was er tegen? Dat ze ook een voorbeeld hebben gegeven waar het wel goed gaat?

Kindje toch :)


We zitten bezig over de karakteristieken van een for loop, tyfius bewijst dat deze gaat zoals iedereen zegt (en niet gelijk gij zegt) en uw tegenvoorbeeld is een foreach construct, waar niet eens over gepraat is.

Kmoet zeggen: ge hebt uw gelijk wel zeer overtuigend gekregen :ironic:.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan