All Projects → graphitemaster → Lambdapp

graphitemaster / Lambdapp

Licence: unlicense
Anonymous functions in C

Programming Languages

c
50402 projects - #5 most used programming language

Labels

Projects that are alternatives of or similar to Lambdapp

Alexaskillskit
Swift library to develop custom Alexa Skills
Stars: ✭ 160 (-17.95%)
Mutual labels:  lambda
Of Watchdog
Reverse proxy for STDIO and HTTP microservices
Stars: ✭ 175 (-10.26%)
Mutual labels:  lambda
Aws Lambda Fastify
Insipired by aws-serverless-express to work with Fastify with inject functionality.
Stars: ✭ 190 (-2.56%)
Mutual labels:  lambda
Sqs Worker Serverless
Example for SQS Worker in AWS Lambda using Serverless
Stars: ✭ 164 (-15.9%)
Mutual labels:  lambda
Pulumi Aws
An Amazon Web Services (AWS) Pulumi resource package, providing multi-language access to AWS
Stars: ✭ 169 (-13.33%)
Mutual labels:  lambda
Micro Aws Lambda
A 7KB and 0 dependencies AWS Lambda library which supports middleware and easy debug.
Stars: ✭ 181 (-7.18%)
Mutual labels:  lambda
Zappa
Serverless Python
Stars: ✭ 11,859 (+5981.54%)
Mutual labels:  lambda
React On Lambda
A JavaScript library for building React applications in more functional way. Alternative to JSX.
Stars: ✭ 192 (-1.54%)
Mutual labels:  lambda
Param.macro
Partial application syntax and lambda parameters for JavaScript, inspired by Scala's `_` & Kotlin's `it`
Stars: ✭ 170 (-12.82%)
Mutual labels:  lambda
Realworld Dynamodb Lambda
λ serverless backend implementation for RealWorld using AWS DynamoDB + Lambda
Stars: ✭ 185 (-5.13%)
Mutual labels:  lambda
Aws Lambda Wkhtmltopdf
Convert HTML to PDF using Webkit (QtWebKit) on AWS Lambda
Stars: ✭ 165 (-15.38%)
Mutual labels:  lambda
Es2017 Lambda Boilerplate
AWS Lambda boilerplate for Node.js 6.10, adding ES2018/7/6 features, Docker-based unit testing and various CI/CD configurations
Stars: ✭ 169 (-13.33%)
Mutual labels:  lambda
Eventstormingworkshop
EventStorming workshop, this is a hands-on workshop. Contains such topics: DDD, Event storming, Specification by example. Including the AWS product : Serverless Lambda , DynamoDB, Fargate, CloudWatch.
Stars: ✭ 184 (-5.64%)
Mutual labels:  lambda
Aws Serverless Appsync App
This workshop shows you how to build a Web Application that demonstrates how easy it is to create data driven web applications all with no servers. You will build a serverless web application that lets users search for popular tourist destinations. The application will use AWS AppSync and the AWS Serverless platform to provide real-time weather analysis of the indexed destinations.
Stars: ✭ 162 (-16.92%)
Mutual labels:  lambda
Bref
Serverless PHP on AWS Lambda
Stars: ✭ 2,382 (+1121.54%)
Mutual labels:  lambda
Aws Serverless Cicd Workshop
Learn how to build a CI/CD pipeline for SAM-based applications
Stars: ✭ 158 (-18.97%)
Mutual labels:  lambda
Serverlessish
Run the same Docker images in AWS Lambda and AWS ECS
Stars: ✭ 177 (-9.23%)
Mutual labels:  lambda
Serverless Sinatra Sample
Demo code for running Ruby Sinatra on AWS Lambda
Stars: ✭ 195 (+0%)
Mutual labels:  lambda
Aws Auto Remediate
Open source application to instantly remediate common security issues through the use of AWS Config
Stars: ✭ 191 (-2.05%)
Mutual labels:  lambda
Components
The Serverless Framework's new infrastructure provisioning technology — Build, compose, & deploy serverless apps in seconds...
Stars: ✭ 2,259 (+1058.46%)
Mutual labels:  lambda

Synposis

LambdaPP is a preprocessor for giving you anonymous functions in C.

Examples

// for an example the table consists of a string keyed (room) of occupants
// stored in a linked list.
hashtable_t *table;
hashtable_foreach(table,
    lambda void(list_t *list) {
        list_foreach(list,
            lambda void(const char *occupant) {
                printf(">> %s\n", occupant);
            }
        );
    }
);

Closures are not supported by this system. It's important to note these are not nested functions or blocks, for information on these please see the following links.

Nested functions

Blocks

This is a source translation that produces global functions and replaces instances of the lambda with the literal.

How it works

Given a lambda, a static function is created. The scope which implements the lambda is replaced with a reference to the static function by taking it's address.

Example

(lambda void(void) { printf("Hello world"); })();

Would be translated to

static void lambda_0(void);
(&lambda_0)();
static void lambda_0(void) { printf("Hello world"); }

To better see how it works, here's the original example expanded:

hashtable_t *table;
static void lambda_0(list_t *list);
hashtable_foreach(table, &lambda_0);
static void lambda_1(const char *occupant);
static void lambda_0(list_t *list) {
    list_foreach(list, &lambda_1);
}
static void lambda_1(const char *occupant) {
    printf(">> %s\n", occupant);
}

Diagnostics

LambdaPP inserts #file and #line directives into the source code such that compiler diagnostics will still work.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].