Path: csiph.com!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news.iecc.com!.POSTED.news.iecc.com!nerds-end From: Kaz Kylheku <686-678-9105@kylheku.com> Newsgroups: comp.compilers Subject: Re: CfP: 1st Workshop on Incremental Computing 2017 (Barcelona, June 2017) Date: Wed, 19 Apr 2017 23:03:21 +0000 (UTC) Organization: Aioe.org NNTP Server Lines: 31 Sender: news@iecc.com Approved: comp.compilers@iecc.com Message-ID: <17-04-020@comp.compilers> References: <17-04-019@comp.compilers> Injection-Info: miucha.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="47478"; mail-complaints-to="abuse@iecc.com" Keywords: parse, incremental, comment Posted-Date: 19 Apr 2017 19:58:35 EDT X-submission-address: compilers@iecc.com X-moderator-address: compilers-request@iecc.com X-FAQ-and-archives: http://compilers.iecc.com Xref: csiph.com comp.compilers:1859 On 2017-04-19, Matthew Hammer wrote: > CfP: 1st Workshop on Incremental Computing (IC) 2017 ... > A computation is incremental if repeating it with a changed input is > faster than from-scratch recomputation. Incremental computations can > be found across a wide range of computing domains, and thus across > many areas of computer science. Consider the following examples: > > - spreadsheet evaluation, > - the database view maintenance problem > - incremental compilation management Just adjusted an old Makefile recipe this morning to detect that a new y.tab.h after executing "yacc parser.y" is exactly the same as the previous y.tab.h, and so we can just restore the previous one, thereby avoiding recompilation of everything that depends on y.tab.h. Most parser changes are localized: they do not introduce new tokens, nor change the YYSTYPE node structure. If these changes do not take place, then the callers of yyparse() don't have to be recompiled. (We wouldn't have to do hacks like this if make relied on file hashes rather than modification time stamps, needless to say.) In any case, cheers to incremental computing. [A long time ago when I was editing the Journal of C Language Translation, we had a series of articles on incremental parser generation. It was quite good, look at the change in the grammar, figure out what the change in the state machine would be. Usually small changes produced small changes and there was a large win over recompiling the whole thing. -John]