Lex is an actively used grammar language created in 1975. Lex is a computer program that generates lexical analyzers ("scanners" or "lexers"). Lex is commonly used with the yacc parser generator. Lex, originally written by Mike Lesk and Eric Schmidt and described in 1975, is the standard lexical analyzer generator on many Unix systems, and an equivalent tool is specified as part of the POSIX standard. Read more on Wikipedia...

45Years Old 20Users ?Jobs
  • Lex ranks in the top 10% of languages
  • the Lex wikipedia page
  • Lex first appeared in 1975
  • file extensions for Lex include l and lex
  • See also: yacc, unix, c, regex, bison, ragel
  • Have a question about Lex not answered here? Email me and let me know how I can help.

Example code from Linguist:

   | Zend Engine                                                          |
   | Copyright (c) 1998-2012 Zend Technologies Ltd. (http://www.zend.com) |
   | This source file is subject to version 2.00 of the Zend license,     |
   | that is bundled with this package in the file LICENSE, and is        |
   | available through the world-wide-web at the following url:           |
   | http://www.zend.com/license/2_00.txt.                                |
   | If you did not receive a copy of the Zend license and are unable to  |
   | obtain it through the world-wide-web, please send a note to          |
   | license@zend.com so we can mail you a copy immediately.              |
   | Authors: Zeev Suraski <zeev@zend.com>                                |
   |          Jani Taskinen <jani@php.net>                                |
   |          Marcus Boerger <helly@php.net>                              |
   |          Nuno Lopes <nlopess@php.net>                                |
   |          Scott MacVicar <scottmac@php.net>                           |

/* $Id$ */

#include <errno.h>
#include "zend.h"
#include "zend_globals.h"
#include <zend_ini_parser.h>
#include "zend_ini_scanner.h"

#if 0
# define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c)
# define YYDEBUG(s, c)

#include "zend_ini_scanner_defs.h"

#define YYCTYPE   unsigned char
/* allow the scanner to read one null byte after the end of the string (from ZEND_MMAP_AHEAD)
 * so that if will be able to terminate to match the current token (e.g. non-enclosed string) */
#define YYFILL(n) { if (YYCURSOR > YYLIMIT) return 0

Example code from Wikipedia:

Saw an integer: 123
Saw an integer: 2
Saw an integer: 6

Trending Repos

repo stars description

Last updated August 9th, 2020

Edit Lex on GitHub