Zon semi-live zooi wat one2xs heeft is beter volgens jou?
Wat heb jij vandaag geprogrammeerd? 2.0
Een linkje gelegd tussen de actuele vertrektijden, en het bekende materieelinformatie popupje op Treinenweb:
Afbeelding niet beschikbaarDe bron kon niet worden geladen (i61.tinypic.com).Bron openen ↗Dit is nog in ontwikkeling, Eerst moet ik mijn database en het importeerscript voor de planningen nog even klaarstomen om ook treinlengtes te kunnen tonen.
Ook denk ik erover na om dit venstertje met tabbladen te laten werken ( [Real-time] en [Planning] ). Wat dachten jullie er van? Het wordt dan sowieso compacter.
Afbeelding niet beschikbaarDe bron kon niet worden geladen (i61.tinypic.com).Bron openen ↗Ook denk ik erover na om dit venstertje met tabbladen te laten werken ( [Real-time] en [Planning] ). Wat dachten jullie er van? Het wordt dan sowieso compacter.
Jessee schreef:misschien vindt hij live en semi-live allebei niet goed? Wat ik wel snap. Tenslotte is een forum een forum en geen chatroom.Zon semi-live zooi wat one2xs heeft is beter volgens jou?
Jessee schreef:Nee, persoonlijk vind ik dat beide nogal onnodig. Daarbij denk ik niet dat CakePHP sockets ondersteunt.Zon semi-live zooi wat one2xs heeft is beter volgens jou?
toevoeging op 18 september 2015, 19:53:23:
Overigens heb ik alle features die echt nodig zijn al op een lijst staan, alle overige features komen bij een tweede of derde update. Anders krijg ik het nooit voor de 30e af.
Backend login, uitloggen en zo gemaakt in Symfony
Errors
Codeblok (voorbeeld.php):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
5534356
@[
foreach
loop
@[
stuff
];
#[
hello
]
];
@[
lol
];
Codeblok (voorbeeld.php):
1
Unable to parse line ] on line 12
Codeblok (voorbeeld.php):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
5534356
@[
foreach
loop
@[
stuff
];
#[
hello
]
];
@[
lol
];
Codeblok (voorbeeld.php):
1
Unable to parse line ] on line 12
Raoul schreef:Daarom is het ook een vraag.misschien vindt hij live en semi-live allebei niet goed? Wat ik wel snap. Tenslotte is een forum een forum en geen chatroom.Eerdere citaten tonen
Jessee schreef:Zon semi-live zooi wat one2xs heeft is beter volgens jou?
het is me gelukt om de lesonderwerpen op te halen van de schoolsite en weer te geven in mijn rooster website.
weg
Afbeelding niet beschikbaarDe bron kon niet worden geladen (i.imgur.com).Bron openen ↗
Afbeelding niet beschikbaarDe bron kon niet worden geladen (i.imgur.com).Bron openen ↗Angular

omfg
Codeblok (voorbeeld.php):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
string(7) "DYNAMIC"
string(7) "DYNAMIC"
string(7) "DYNAMIC"
string(7) "DYNAMIC"
string(7) "DYNAMIC"
Hello World!string(7) "DYNAMIC"
string(7) "DYNAMIC"
string(7) "DYNAMIC"
string(6) "STATIC"
string(7) "DYNMAIC"
string(7) "DYNAMIC"
string(7) "DYNMAIC"
string(7) "DYNMAIC"
Codeblok (voorbeeld.php):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Hello World!
#[
@[
Afbeelding niet beschikbaarDe bron kon niet worden geladen (i.imgur.com).Bron openen ↗(
@Raoul
Ik heb nu een lexer gebruikt met deze regex:
Codeblok (voorbeeld.php):
1
2
3
4
5
6
7
8
9
10
protected $_terminals = array(
"/^(s+)/" => "T_WHITESPACE",
"/^(<.+>)/" => "T_HTML_CODE",
"/^(@[)/" => "T_CODEBLOCK_OPEN_DYNAMIC",
"/^(#[)/" => "T_CODEBLOCK_OPEN_STATIC",
"/^(]
/" => "T_CODEBLOCK_CLOSE",
"/^(".+?")/" => "T_STRING",
"/^(@[^d][w]+)/" => "T_VARIABLE"
);
Nu moet ik toch voor een FOREACH (bijv) een nieuwe lexer aanmaken met andere terminals?

Codeblok (voorbeeld.php):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
string(7) "DYNAMIC"
string(7) "DYNAMIC"
string(7) "DYNAMIC"
string(7) "DYNAMIC"
string(7) "DYNAMIC"
Hello World!string(7) "DYNAMIC"
string(7) "DYNAMIC"
string(7) "DYNAMIC"
string(6) "STATIC"
This is a static code block
string(6) "STATIC"string(7) "DYNMAIC"
string(7) "DYNAMIC"
This is a dynamic code block (default state)
string(7) "DYNAMIC"string(7) "DYNMAIC"
string(7) "DYNMAIC"
Codeblok (voorbeeld.php):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Hello World!
#[
This is a static code block
];@[
This is a dynamic code block (default state)
];
Afbeelding niet beschikbaarDe bron kon niet worden geladen (i.imgur.com).Bron openen ↗@Raoul
Ik heb nu een lexer gebruikt met deze regex:
Codeblok (voorbeeld.php):
1
2
3
4
5
6
7
8
9
10
protected $_terminals = array(
"/^(s+)/" => "T_WHITESPACE",
"/^(<.+>)/" => "T_HTML_CODE",
"/^(@[)/" => "T_CODEBLOCK_OPEN_DYNAMIC",
"/^(#[)/" => "T_CODEBLOCK_OPEN_STATIC",
"/^(]
/" => "T_CODEBLOCK_CLOSE","/^(".+?")/" => "T_STRING",
"/^(@[^d][w]+)/" => "T_VARIABLE"
);
Nu moet ik toch voor een FOREACH (bijv) een nieuwe lexer aanmaken met andere terminals?
1) ik zie weeral te veel onnodige statics ([c]Token:
tokens[/c], [c]System[/c]?
) injecteer toch gewoon die tokenList in de constructor
2) Als je [c]use lexerSystem;[/c] doet krijg je gewoon direct [c]System[/c] hoor, geen nood voor die [c]as[/c]
3) wtf zijn terminals?
4) vergelijken op strings is slecht, gebruik constanten ([c]$token->type == Token::T_CODEBLOCK_OPEN_DYNAMIC[/c])
5) good practice: base package hebben, dus [c]programmeertaallexer[/c] en [c]programmeertaalexec[/c]
6) truukje: ipv [c]$openBlocks[/c] en [c]$closedBlocks[/c], heb gewoon [c]$depth[/c] en increment / decrement dat wanneer nodig. wanneer depth 0 is = klaar
7) wat doen die exec classes?
8) en volgens mij is dat geen compiler? ben je nu HTML aan het compilen ofzo?
tokens[/c], [c]System[/c]?
) injecteer toch gewoon die tokenList in de constructor
2) Als je [c]use lexerSystem;[/c] doet krijg je gewoon direct [c]System[/c] hoor, geen nood voor die [c]as[/c]
3) wtf zijn terminals?4) vergelijken op strings is slecht, gebruik constanten ([c]$token->type == Token::T_CODEBLOCK_OPEN_DYNAMIC[/c])
5) good practice: base package hebben, dus [c]programmeertaallexer[/c] en [c]programmeertaalexec[/c]
6) truukje: ipv [c]$openBlocks[/c] en [c]$closedBlocks[/c], heb gewoon [c]$depth[/c] en increment / decrement dat wanneer nodig. wanneer depth 0 is = klaar
7) wat doen die exec classes?
8) en volgens mij is dat geen compiler? ben je nu HTML aan het compilen ofzo?

Raoul schreef:1) ik heb geen tokenlist, ik zet alles gewoon in een static var1) ik zie weeral te veel onnodige statics ([c]Token:tokens[/c], [c]System[/c]?
) injecteer toch gewoon die tokenList in de constructor
2) Als je [c]use lexerSystem;[/c] doet krijg je gewoon direct [c]System[/c] hoor, geen nood voor die [c]as[/c]
3) wtf zijn terminals?
4) vergelijken op strings is slecht, gebruik constanten ([c]$token->type == Token::T_CODEBLOCK_OPEN_DYNAMIC[/c])
5) good practice: base package hebben, dus [c]programmeertaallexer[/c] en [c]programmeertaalexec[/c]
6) truukje: ipv [c]$openBlocks[/c] en [c]$closedBlocks[/c], heb gewoon [c]$depth[/c] en increment / decrement dat wanneer nodig. wanneer depth 0 is = klaar
7) wat doen die exec classes?
8) en volgens mij is dat geen compiler? ben je nu HTML aan het compilen ofzo?
Afbeelding niet beschikbaarDe bron kon niet worden geladen (i.imgur.com).Bron openen ↗3) ja ik had eerst een tutorial gevolgd over hoe je een lexer maakt in php en daar gebruikte ze het woord terminals (http://nitschinger.at/Writing-a-simple-lexer-in-PHP)
5) ik weet nog geen naam, wil het inbouwen in mijn framework
7) dat zijn de functies, deze is voor strings:
Afbeelding niet beschikbaarDe bron kon niet worden geladen (i.imgur.com).Bron openen ↗deze gebruik ik voor een opening van een static block ( moet ik dus nog veranderen )
Afbeelding niet beschikbaarDe bron kon niet worden geladen (i.imgur.com).Bron openen ↗(ik had MethodExcutable beter gewoon Excutable kunnen noemen)
8) ja
ik moet de lexer weer gaan ombouwen zodat ie html buiten een block gewoon skiptik heb geen idee of ik het goed doe hoor
ik probeer maar wat@Dylan: Voor puntje 5 is er altijd nog de "Working Title" die je uiteindelijk in je project kunt Refactoren/Renamen zodat je project niet stuk gaat. Als je overal gewoon DylansHTMLLexer gebruikt, dan kan je dat makelijk aanpassen naar een mooiere naam wanneer er eentje te binnen schiet.
Aangezien je het toch al hebt over je framework kan je al meteen denken aan subnamespaces: DylansFrameWork*HTMLLexer
Aangezien je het toch al hebt over je framework kan je al meteen denken aan subnamespaces: DylansFrameWork*HTMLLexer