Ir al contenido principal

Entradas

Mostrando entradas de 2024

Más sobre Prolog, el lenguaje de programación lógica

En anteriores entregas hemos hablado de Prolog y cómo este lenguaje de programación difiere de los más populares como lo son Java, Python, C# y otros más. Y es que con este lenguaje hay que pensar de manera diferente. Un problema que se puede resolver en un lenguaje funcional como Scala o Kotlin no necesariamente se podrá resolver usando Prolog . Un programa hecho en Java, C, Python o C# tampoco será fácil de trasladar a Prolog , ya que el paradigma es bastante distinto. Prolog es de paradigma declarativo, el cual consiste en decirle a un programa lo que tiene que hacer en lugar de decirle cómo debería hacerlo. Es decir, le decimos lo que queremos obtener, pero no cómo hacerlo . Un programador Java o Python se podrían volver locos al tratar de trasladar esto a lo que están acostumbrados hacer, y a su vez un programador Prolog se quebraría la cabeza al tratar de resolver problemas de otra índole que no tienen nada que ver con Prolog. Las dos ramas de la

Haskell: como instalar en Windows (vídeo Youtube)

He aquí un curso sobre el lenguaje de programación funcional Haskell. En primer lugar, como se instala.

Prolog en otro vistazo (4) vídeo Youtube

Curso completo de programación que te llevará desde cero conocimientos de programación a poder resolver juegos como Sudoku o desactivar la bomba💥 de la película Jungla de Cristal (Duro de Matar) aplicando técnicas de Inteligencia Artificial!! He aquí un curso sobre el lenguaje Prolog. Enlaces: http://ferestrepoca.github.io/paradigmas-de-programacion/proglogica/tutoriales/prolog-gh-pages/index.html

Silicon Wadi (el Silicon Valley Israelí)

Silicon Valley ha sido objeto de muchas historias verídicas y otras no tanto. Historias de millonarios que dicen haber creado una gran empresa en un simple garage (sin olvidar los millones de dólares que sus padres les dieron para hacerlo). Historias de verdaderos emprendedores que han fracasado miles de veces, pero vuelven a intentarlo una y otra vez hasta alcanzar algo (al menos obtener una pizca del sueño es más que no tener nada). En ese lugar hay de todo para quien aspira ser el nuevo "Steve Jobs". Un sueño inalcanzable para muchos, un lugar accesible a quienes tienen el presupuesto necesario. Películas, series y hasta historietas sobre personas célebres que han triunfado en el Valle del Silicón. Se han escrito hasta libros sobre empresas que han pasado de ser un sueño a una realidad. Varios países han intentado replicar ese ídilico lugar. En México, Guadalajara ha sido considerado el Silicon Valley mexicano. En China, Shenzhen es considerado su propio Silicon

FastAPI: Creando un servicio REST con Python

FastAPI es: un Framework para desarrollar APIs de manera fácil y de alto rednimiento. Instalamos con este comando: pip install fastapi "uvicorn[standard]" Verificamos instalación con: pip list Creamos un "Hola, mundo" main.py from typing import Union from fastapi import FastAPI app = FastAPI( title = "Programando con FastAPI y Python" ) @app.get ( "/" ) def read_root (): return { "message" : "Hola, mundo con FastAPI" } @app.get ( "/items/{item_id}" ) def read_item (item_id: int , q: Union[ str , None ] = None ): return { "item_id" : item_id, "q" : q} Probamos con: uvicorn main:app --reload --port 5000 Abrimos el navegador en: http://localhost:5000/ La salida será: { "message" : "Hola, mundo con FastAPI!" } Otras URL: http://localhost:5000/docs http://localhost:5000/redoc http://localhos

Un vistazo a "nuevos" lenguajes de programación (Zig Language, Carbon Language, Odin Language & V Language)

En ésta ocasión veremos a simple detalle 4 nuevos lenguajes de programación que han estado dando de que hablar últimamente. Nos referimos a: Odin language:  https://odin-lang.org/ Zig language:  https://ziglang.org/ Carbon language:  https://github.com/carbon-language V language:  https://vlang.io/ ¿Qué es Odin language? Odin es un lenguaje de programación de propósito general con tipos distintos creado para sistemas modernos de alto rendimiento y programación orientada a datos. Odin es la alternativa C para el placer de programar. Descargar desde Github: git clone https://github.com/odin-lang/Odin La extensión de un programa en este lenguaje no podía ser otro que *.odin.   Un programa "Hola, mundo" en Odin. holamundo.odin package main import "core:fmt" main :: proc() { fmt.println( "Hola, mundo!" ) } Compilar: odin build <dir> Ejecutar: odin run . ¿Qué es Zig language? Zig es un l

COBOL para principiantes (#5)

  Hace tiempo que leí un artículo sobre lenguajes de programación más usados en el mundo y veo sin sorpresa que COBOL a pesar de ser un lenguaje bastante vetusto sigue siendo uno de los más utilizados, sobre todo en la industria bancaria. Ya sea por su alta capacidad para procesar grandes cantidades de archivos y  realizar complejas operaciones lógicas y aritméticas. En ésta ocasión veremos como crear varios programas usando este lenguaje. Usaremos OpenCOBOLIDE como editor de código. Ejemplo 1. Crear un programa que muestre la dirección de una persona. Deberá contar con estos campos: Calle. Número de casa. Ciudad. País. direccion.cbl ****************************************************************** * Author: Alquimista * Date: 23/03/2024 * Purpose: Mostrar una direccion * Tectonics: cbl, cob ****************************************************************** IDENTIFICATION DIVISION . PROGRAM-ID . VARIABLES. DATA

Aprendiendo HTML, CSS & JS by ManzDev

  Si quieres aprender HTML, CSS y JS ya no hay excusa para decir que no hay cómo obtener información. Gracias a  https://manz.dev/  quien creó tres sitios para ello: https://lenguajehtml.com/ https://lenguajecss.com/ https://lenguajejs.com/ Los sitios tienen enlaces a vídeos del canal de Youtube  https://www.youtube.com/@ManzDev  y no hay pierde en dar un vistazo a cada uno de ellos.

Ballerina en un vistazo (5)

Continuamos con esta serie de entregas sobre el lenguaje Ballerina. Vamos a crear un proyecto básico y modificaremos el programa principal para crear un sencillo servicio RestAPI. Abrimos una terminal y tecleamos: $ bal $ bal version Esto es para visualizar la versión instalada en nuestra máquina. Creamos un nuevo proyecto: $ bal new auditor Nos creará un directorio llamado ``auditor``: auditor/ ├── Ballerina.toml └── main.bal El programa será: main.bal import ballerina/io; public function main() { io:println( "Programando con Ballerina" ); } Ejecutamos: $ bal run Nos deberá mostrar el mensaje: Programando con Ballerina Editamos el programa main.bal para crear un REST API: import ballerina/http; listener http:Listener httpListener = new ( 8088 ); service / on httpListener { resource function get saludando() returns string { return "Programando con Ballerina!" ; } resource function get saludando/[string nombr

Hello Ballerina (vídeo YouTube)

Presentación del lenguaje de programación Ballerina. Un lenguaje de programación flexible, poderoso y bello de escribir. El vídeo tiene ya tiempo de estar en la plataforma de Youtube pero no tiene desperdicio.

Herramientas que debería tener todo programador

  En esta lista incluiré solo las herramientas que considero todo programador debería usar. SDKMAN! , Una herramienta muy útil para instalar SDKs en sistemas Linux. Desde la clásica JDK de Java hasta GraalVM y muchos otros más. https://sdkman.io/ Chocolatey , El administrador de paquetes de sistemas Windows. Muy útil para quienes usan Windows, reduce tiempo de descarga e instalación de paquetes. https://chocolatey.org/ Scoop , Un instalador de paquetes para Windows. Similar a Chocolatey. https://scoop.sh/ Visual Studio Code , Un editor de código que parece IDE, pero no lo es. Se pueden instalar múltiples plugins para hacer del desarrollo algo más fácil. https://code.visualstudio.com/ GitHub Desktop , Una herramientra gráfica para administrar repositorios de Github. https://desktop.github.com/ DBeaver , Una herramienta que te permite conectarte a múltiples fuentes de datos (data bases). Desde MySQL, PostgreSQL, etc. https://dbeaver.io/ PyPI , El administrador de paquetes

Probando Rust OnLine

  Quienes quieran probar Rust sin tener que instalarlo hay un sistio web para que lo prueben: https://play.rust-lang.org/ Solo hay que escribir el código y probarlo. Un ejemplo de ciclo infinito: fn main() { let mut cont = 0 ; loop { cont = cont + 1 ; if cont == 5 { break ; } } println ! ( "Cont: {}" ,cont); } Abortar un programa cuando se cumple una condición: use std :: f64 ; fn main() { let numero = - 6 ; if numero <= 0 { panic ! ( "Error: no se puede realizar la operación!!" ); } let raiz = f64 :: sqrt(numero as f64 ); println ! ( "Raiz de {} es {}" ,numero, raiz); } Este sitio te permitirá aprender Rust sin la necesidad de instalarlo.

Groovy: Grape

Grape (Groovy Advanced Packaging Engine) es un gestor de dependencias que nos permite usar librerías sin la necesidad de agregarlas a nuestro CLASSPATH . Básicamente, te permite agregar librerías a tus scripts de una manera muy fácil. Pero antes de hacer nada, recordemos algunas cosas: Compilamos: groovyc Programa.groovy Ejecutamos (de hecho podemos omitir la compilación con esto): groovy Programa.groovy Ejemplo. Crear un documento PDF con itextpdf. import java.io.FileOutputStream import java.io.IOException import com.itextpdf.text.Document import com.itextpdf.text.DocumentException import com.itextpdf.text.Paragraph import com.itextpdf.text.pdf.PdfWriter @Grapes ( @Grab (group= 'com.itextpdf' , module= 'itextpdf' , version= '5.5.13.3' )) def documentoPDF () throws DocumentException, IOException { def documento= "MyDocument.pdf" Document document = new Document(); PdfWriter. getInstance (docum

Clojure for Beginners(4): Instalando Clojure en Windows

En este post veremos como instalar Clojure en Windows. Empezemos con Chocolate, elrepositorio más grande de paquetes de Windows (sic). choco install clojure Otra alternativa es: https://github.com/clojure/tools.deps.alpha/wiki/clj-on-Windows Seguimos los pasos de instalación: iwr -useb github . com/clojure/brew-install/releases/latest/download/win-install . ps1 | iex O ejecutando un script: PS Y: \ Downloads > . \ win - install.ps1 Downloading Clojure tools WARNING: Clojure will install as a module in your PowerShell module path. Possible install locations: 1 ) \\ Drive \ Home \ Documents \ WindowsPowerShell \ Modules 2 ) C: \ Program Files \ WindowsPowerShell \ Modules 3 ) C: \ WINDOWS \ system32 \ WindowsPowerShell \ v1. 0 \ Modules \ Enter number of preferred install location: 1 Cleaning up existing install Installing PowerShell module Removing download Clojure now installed. Use "clj -h" for he

Poetry: la alternativa a Pip

  ¿Qué es Poetry? Es una herramienta que sirve de gestor de paquetes y dependencias, similar a Pip. Para poder instalarlo necesitaremos: Instalar Pipx Linux Ubuntu sudo apt update sudo apt install pipx pipx ensurepath Windows py -m pip install --user pipx Verificamos instalación: pipx ensurepath Listamos dependencias (no habrán): pipx list Instalamos Poetry: pipx install poetry pipx list Creamos un proyecto básico: poetry new poetry-demo Si todo va bien, veremos algo como esto: poetry-demo ├── pyproject.toml ├── README.md ├── poetry_demo │ └── __init__.py └── tests └── __init__.py pyproject.toml [tool.poetry] name = "poetry-demo" version = "0.1.0" description = "" authors = [ "Sébastien Eustace <sebastien@eustace.io>" ] readme = "README.md" packages = [{include = "poetry_demo" }] [tool.poetry.dependencies] python = &qu